@orioncactuscorp/ui 1.17.0 → 1.18.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 (58) hide show
  1. package/CHANGELOG.md +91 -0
  2. package/README.md +16 -14
  3. package/dist/components/BackgroundIconButton/BackgroundIconButton.css +1 -1
  4. package/dist/components/Modal/Modal.css +1 -1
  5. package/dist/components/Modal/Modal.js +514 -471
  6. package/dist/components/Modal/Modal.module.scss.js +59 -57
  7. package/dist/components/Modal/fieldReveal.js +57 -0
  8. package/dist/components/Modal/headerTapScroll.js +10 -0
  9. package/dist/components/Modal/keyboardEditable.js +31 -0
  10. package/dist/components/Modal/keyboardInsetMemory.js +24 -0
  11. package/dist/components/Modal/keyboardSession.js +46 -73
  12. package/dist/components/Modal/scrollportScroller.js +43 -0
  13. package/dist/components/Modal/tapCaret.js +32 -0
  14. package/dist/components/Modal/useBottomSheetIntrinsicHeight.js +26 -23
  15. package/dist/components/Modal/useFieldReveal.js +81 -0
  16. package/dist/components/Modal/useModalDrag.js +1025 -977
  17. package/dist/components/Modal/useModalKeyboardAvoidance.js +200 -117
  18. package/dist/components/Modal/useModalViewportGeometry.js +35 -19
  19. package/dist/components/PositionSnap/policy.js +40 -43
  20. package/dist/styles.css +2 -2
  21. package/dist/ui/src/components/Modal/Modal.d.ts +1 -1
  22. package/dist/ui/src/components/Modal/Modal.d.ts.map +1 -1
  23. package/dist/ui/src/components/Modal/Modal.test.utils.d.ts +12 -0
  24. package/dist/ui/src/components/Modal/Modal.test.utils.d.ts.map +1 -0
  25. package/dist/ui/src/components/Modal/contexts.d.ts +5 -0
  26. package/dist/ui/src/components/Modal/contexts.d.ts.map +1 -1
  27. package/dist/ui/src/components/Modal/fieldReveal.d.ts +18 -0
  28. package/dist/ui/src/components/Modal/fieldReveal.d.ts.map +1 -0
  29. package/dist/ui/src/components/Modal/headerTapScroll.d.ts +5 -0
  30. package/dist/ui/src/components/Modal/headerTapScroll.d.ts.map +1 -0
  31. package/dist/ui/src/components/Modal/keyboardEditable.d.ts +6 -0
  32. package/dist/ui/src/components/Modal/keyboardEditable.d.ts.map +1 -0
  33. package/dist/ui/src/components/Modal/keyboardInsetMemory.d.ts +5 -0
  34. package/dist/ui/src/components/Modal/keyboardInsetMemory.d.ts.map +1 -0
  35. package/dist/ui/src/components/Modal/keyboardSession.d.ts +4 -11
  36. package/dist/ui/src/components/Modal/keyboardSession.d.ts.map +1 -1
  37. package/dist/ui/src/components/Modal/scrollportScroller.d.ts +20 -0
  38. package/dist/ui/src/components/Modal/scrollportScroller.d.ts.map +1 -0
  39. package/dist/ui/src/components/Modal/tapCaret.d.ts +10 -0
  40. package/dist/ui/src/components/Modal/tapCaret.d.ts.map +1 -0
  41. package/dist/ui/src/components/Modal/useBottomSheetIntrinsicHeight.d.ts +8 -1
  42. package/dist/ui/src/components/Modal/useBottomSheetIntrinsicHeight.d.ts.map +1 -1
  43. package/dist/ui/src/components/Modal/useFieldReveal.d.ts +28 -0
  44. package/dist/ui/src/components/Modal/useFieldReveal.d.ts.map +1 -0
  45. package/dist/ui/src/components/Modal/useModalDrag.d.ts.map +1 -1
  46. package/dist/ui/src/components/Modal/useModalKeyboardAvoidance.d.ts +6 -1
  47. package/dist/ui/src/components/Modal/useModalKeyboardAvoidance.d.ts.map +1 -1
  48. package/dist/ui/src/components/Modal/useModalViewportGeometry.d.ts +1 -0
  49. package/dist/ui/src/components/Modal/useModalViewportGeometry.d.ts.map +1 -1
  50. package/dist/ui/src/components/PositionSnap/policy.d.ts.map +1 -1
  51. package/dist/ui/src/utils/gesture.d.ts +58 -0
  52. package/dist/ui/src/utils/gesture.d.ts.map +1 -0
  53. package/dist/utils/gesture.d.ts +2 -0
  54. package/dist/utils/gesture.js +103 -0
  55. package/docs/gesture.md +64 -0
  56. package/docs/selector-contract.md +5 -1
  57. package/docs/spring.md +4 -0
  58. package/package.json +5 -1
@@ -1,14 +1,16 @@
1
- import { useRef as w, useLayoutEffect as j, useCallback as f, useEffect as Nt } from "react";
2
- import { createSpringAnimator as qt } from "../../utils/spring/animator.js";
3
- import { resolveOcMotion as te } from "../../utils/motion.js";
4
- import { resolveModalPopupSnapPositions as ur } from "./snapPoints.js";
5
- import { setModalBodyTouchScrollLock as ee, shouldLockModalBodyTouchScroll as dr, shouldIgnoreDragTarget as re, getScrollableAncestor as pr, hasActiveTextSelection as fr, getBottomTouchDragDecision as mr, getPopupTouchDragDecision as gr } from "./modalScrollArbitration.js";
6
- import { resolveResizedBottomSheetTranslate as hr, resolveBottomSheetRestState as yr, resolveUndimmedCollapseTranslate as Tr } from "./bottomSheetGeometry.js";
7
- import { getPositionSnapPointDistance as ht, getReleasePositionSnapTarget as xr } from "../PositionSnap/policy.js";
8
- import { POSITION_SNAP_DRAG_FOLLOWER_SPRING as Pr } from "../PositionSnap/gesture.js";
9
- import { resolveBottomSheetRelease as vr } from "./bottomSheetRelease.js";
10
- import { isModalResizeTargetPublished as wr, clearModalResizeTarget as Ne, publishModalResizeTarget as Sr } from "./modalResizeTarget.js";
11
- const $ = {
1
+ import { ocGesture as mr } from "../../utils/gesture.js";
2
+ import { useRef as w, useLayoutEffect as G, useCallback as f, useEffect as Yt } from "react";
3
+ import { createSpringAnimator as re } from "../../utils/spring/animator.js";
4
+ import { resolveOcMotion as ne } from "../../utils/motion.js";
5
+ import { resolveModalPopupSnapPositions as gr } from "./snapPoints.js";
6
+ import { setModalBodyTouchScrollLock as ae, shouldLockModalBodyTouchScroll as hr, shouldIgnoreDragTarget as oe, getScrollableAncestor as yr, hasActiveTextSelection as Tr, getBottomTouchDragDecision as xr, getPopupTouchDragDecision as Pr } from "./modalScrollArbitration.js";
7
+ import { resolveResizedBottomSheetTranslate as vr, resolveBottomSheetRestState as wr, resolveUndimmedCollapseTranslate as Sr } from "./bottomSheetGeometry.js";
8
+ import { getPositionSnapPointDistance as Tt, getReleasePositionSnapTarget as Dr } from "../PositionSnap/policy.js";
9
+ import { POSITION_SNAP_DRAG_FOLLOWER_SPRING as Xr } from "../PositionSnap/gesture.js";
10
+ import { resolveBottomSheetRelease as Yr } from "./bottomSheetRelease.js";
11
+ import { isModalResizeTargetPublished as Er, clearModalResizeTarget as Re, publishModalResizeTarget as Mr } from "./modalResizeTarget.js";
12
+ import { isPinchZoomedViewport as br } from "./useModalViewportGeometry.js";
13
+ const j = {
12
14
  dragStartThresholdPx: {
13
15
  touch: 10,
14
16
  mouse: 2
@@ -25,99 +27,105 @@ const $ = {
25
27
  minDistancePx: 24
26
28
  },
27
29
  rubberBand: {
28
- resistance: 0.55,
29
30
  // Calibrated from iOS bottom-sheet recordings: upward approx 10.3vh, downward approx 15.6vh.
30
31
  observedViewportLimitRatio: {
31
32
  top: 0.105,
32
33
  bottom: 0.16
33
34
  }
34
35
  }
35
- }, Dr = [], Xr = [];
36
- function Fe(r) {
36
+ }, Ar = [], Lr = [];
37
+ function $e(r) {
37
38
  r.cancelable !== !1 && r.preventDefault();
38
39
  }
39
- function N(r, s, l) {
40
- return Math.min(Math.max(r, s), l);
40
+ function H(r, o, l) {
41
+ return Math.min(Math.max(r, o), l);
41
42
  }
42
- function ze({
43
+ function Ue({
43
44
  deltaX: r,
44
- deltaY: s,
45
+ deltaY: o,
45
46
  placement: l
46
47
  }) {
47
- return l === "bottom" ? Math.abs(s) : Math.hypot(r, s);
48
+ return l === "bottom" ? Math.abs(o) : Math.hypot(r, o);
48
49
  }
49
- function He(r, s) {
50
- if (s <= 0) return 0;
51
- const l = s, { resistance: o } = $.rubberBand;
52
- return r * o * l / (l + o * r);
50
+ function _e(r, o) {
51
+ return o <= 0 ? 0 : mr.rubberBand(r, o);
53
52
  }
54
- function ne({
53
+ function se({
55
54
  targetTranslate: r,
56
- minTranslate: s,
55
+ minTranslate: o,
57
56
  maxTranslate: l,
58
- minBoundaryLimit: o,
57
+ minBoundaryLimit: s,
59
58
  maxBoundaryLimit: i
60
59
  }) {
61
- return r < s ? s - He(s - r, o) : r > l ? l + He(r - l, i) : r;
60
+ return r < o ? o - _e(o - r, s) : r > l ? l + _e(r - l, i) : r;
62
61
  }
63
- function Re(r) {
64
- return typeof Element > "u" || !(r instanceof Element) ? !1 : !!r.closest('[data-oc-part="handle"], [data-oc-part="header"]');
62
+ function We(r) {
63
+ return typeof Element > "u" || !(r instanceof Element) ? !1 : !!r.closest(
64
+ '[data-oc-part="handle-area"], [data-oc-part="handle"], [data-oc-part="header"]'
65
+ );
65
66
  }
66
- function $e(r) {
67
+ function Ge(r) {
67
68
  return typeof Element > "u" || !(r instanceof Element) ? !1 : !!r.closest(
68
- '[data-oc-part="handle"], [data-oc-component="modal-navigation"]'
69
+ '[data-oc-part="handle-area"], [data-oc-part="handle"], [data-oc-component="modal-navigation"]'
69
70
  );
70
71
  }
71
- function Yr(r) {
72
+ function Br(r) {
72
73
  return typeof Element > "u" || !(r instanceof Element) ? !1 : !!r.closest('[data-oc-component="modal-navigation"]');
73
74
  }
74
- function Er(r) {
75
+ function Cr(r) {
75
76
  return typeof Element > "u" || !(r instanceof Element) ? null : r.closest('[data-oc-component="modal-navigation"]');
76
77
  }
77
- function Mr(r, s) {
78
- return s ? !0 : r.pointerType ? r.pointerType === "touch" : typeof window > "u" ? !1 : window.matchMedia?.("(pointer: coarse)").matches ?? !1;
78
+ function Ir(r) {
79
+ return typeof Element > "u" || !(r instanceof Element) ? null : r.closest('[data-oc-part="handle-area"]');
80
+ }
81
+ function je(r, o) {
82
+ const l = r.getBoundingClientRect();
83
+ return o.x >= l.left && o.x <= l.right && o.y >= l.top && o.y <= l.bottom;
79
84
  }
80
- function Ue(r, s) {
85
+ function Or(r, o) {
86
+ return o ? !0 : r.pointerType ? r.pointerType === "touch" : typeof window > "u" ? !1 : window.matchMedia?.("(pointer: coarse)").matches ?? !1;
87
+ }
88
+ function Ke(r, o) {
81
89
  if (!r.length)
82
90
  return {
83
91
  minTranslate: 0,
84
92
  maxTranslate: 0
85
93
  };
86
- const l = r.map((h) => h[s]), o = Math.min(...l), i = Math.max(...l);
87
- if (Math.abs(i - o) < 0.5) {
88
- const h = (o + i) / 2;
94
+ const l = r.map((y) => y[o]), s = Math.min(...l), i = Math.max(...l);
95
+ if (Math.abs(i - s) < 0.5) {
96
+ const y = (s + i) / 2;
89
97
  return {
90
- minTranslate: h,
91
- maxTranslate: h
98
+ minTranslate: y,
99
+ maxTranslate: y
92
100
  };
93
101
  }
94
102
  return {
95
- minTranslate: o,
103
+ minTranslate: s,
96
104
  maxTranslate: i
97
105
  };
98
106
  }
99
- function _e(r, s) {
107
+ function Ze(r, o) {
100
108
  for (let l = 0; l < r.length; l += 1) {
101
- const o = "item" in r && typeof r.item == "function" ? r.item(l) : r[l];
102
- if (o?.identifier === s) return o;
109
+ const s = "item" in r && typeof r.item == "function" ? r.item(l) : r[l];
110
+ if (s?.identifier === o) return s;
103
111
  }
104
112
  return null;
105
113
  }
106
- function qe(r) {
114
+ function ar(r) {
107
115
  if (!r) return { x: 0, y: 0 };
108
- const s = window.getComputedStyle(r).transform;
109
- if (!s || s === "none") return { x: 0, y: 0 };
110
- const l = s.match(/^matrix\((.+)\)$/);
116
+ const o = window.getComputedStyle(r).transform;
117
+ if (!o || o === "none") return { x: 0, y: 0 };
118
+ const l = o.match(/^matrix\((.+)\)$/);
111
119
  if (l) {
112
- const i = l[1].split(",").map((h) => h.trim());
120
+ const i = l[1].split(",").map((y) => y.trim());
113
121
  return {
114
122
  x: Number.parseFloat(i[4] ?? "0") || 0,
115
123
  y: Number.parseFloat(i[5] ?? "0") || 0
116
124
  };
117
125
  }
118
- const o = s.match(/^matrix3d\((.+)\)$/);
119
- if (o) {
120
- const i = o[1].split(",").map((h) => h.trim());
126
+ const s = o.match(/^matrix3d\((.+)\)$/);
127
+ if (s) {
128
+ const i = s[1].split(",").map((y) => y.trim());
121
129
  return {
122
130
  x: Number.parseFloat(i[12] ?? "0") || 0,
123
131
  y: Number.parseFloat(i[13] ?? "0") || 0
@@ -125,315 +133,315 @@ function qe(r) {
125
133
  }
126
134
  return { x: 0, y: 0 };
127
135
  }
128
- function ae(r) {
129
- return qe(r).y;
136
+ function ie(r) {
137
+ return ar(r).y;
130
138
  }
131
- function We(r) {
132
- return qe(r);
139
+ function Je(r) {
140
+ return ar(r);
133
141
  }
134
- function gt(r) {
142
+ function yt(r) {
135
143
  if (!r || !/^-?\d*\.?\d+(?:px)?$/.test(r.trim())) return;
136
- const s = Number.parseFloat(r);
137
- return Number.isFinite(s) ? s : void 0;
144
+ const o = Number.parseFloat(r);
145
+ return Number.isFinite(o) ? o : void 0;
138
146
  }
139
147
  function q() {
140
148
  return Date.now();
141
149
  }
142
- function br(r, s) {
143
- const l = s - $.releaseVelocity.sampleWindowMs;
144
- for (; r.length > 2 && (r[1]?.time ?? s) < l; )
150
+ function kr(r, o) {
151
+ const l = o - j.releaseVelocity.sampleWindowMs;
152
+ for (; r.length > 2 && (r[1]?.time ?? o) < l; )
145
153
  r.shift();
146
154
  }
147
- function St(r, s) {
148
- const l = s.time ?? q();
155
+ function Et(r, o) {
156
+ const l = o.time ?? q();
149
157
  r.samples.push({
150
158
  time: l,
151
- pageX: s.pageX,
152
- pageY: s.pageY,
153
- translateX: s.translateX,
154
- translateY: s.translateY
155
- }), br(r.samples, l);
159
+ pageX: o.pageX,
160
+ pageY: o.pageY,
161
+ translateX: o.translateX,
162
+ translateY: o.translateY
163
+ }), kr(r.samples, l);
156
164
  }
157
- function Ft(r, s) {
165
+ function Rt(r, o) {
158
166
  return {
159
- x: r.startTranslateX + s.pageX - r.startX,
160
- y: r.startTranslate + s.pageY - r.startY
167
+ x: r.startTranslateX + o.pageX - r.startX,
168
+ y: r.startTranslate + o.pageY - r.startY
161
169
  };
162
170
  }
163
- function Ge(r, s) {
164
- const l = Ft(r, s);
165
- St(r, {
166
- pageX: s.pageX,
167
- pageY: s.pageY,
171
+ function Qe(r, o) {
172
+ const l = Rt(r, o);
173
+ Et(r, {
174
+ pageX: o.pageX,
175
+ pageY: o.pageY,
168
176
  translateX: l.x,
169
177
  translateY: l.y
170
178
  });
171
179
  }
172
- function je({
180
+ function qe({
173
181
  session: r,
174
- fallbackDeltaY: s,
182
+ fallbackDeltaY: o,
175
183
  fallbackElapsed: l
176
184
  }) {
177
- const o = r.samples[r.samples.length - 1], { maxPxPerSecond: i, sampleWindowMs: h } = $.releaseVelocity;
178
- if (o) {
179
- const y = o.time - h, x = r.samples.find((v) => v.time >= y) ?? r.samples[0];
180
- if (x && x !== o) {
181
- const v = Math.max(o.time - x.time, 1), L = (o.translateY - x.translateY) / v * 1e3;
182
- if (Number.isFinite(L))
183
- return N(L, -i, i);
185
+ const s = r.samples[r.samples.length - 1], { maxPxPerSecond: i, sampleWindowMs: y } = j.releaseVelocity;
186
+ if (s) {
187
+ const T = s.time - y, x = r.samples.find((S) => S.time >= T) ?? r.samples[0];
188
+ if (x && x !== s) {
189
+ const S = Math.max(s.time - x.time, 1), A = (s.translateY - x.translateY) / S * 1e3;
190
+ if (Number.isFinite(A))
191
+ return H(A, -i, i);
184
192
  }
185
193
  }
186
- return N(
187
- s / Math.max(l, 1) * 1e3,
194
+ return H(
195
+ o / Math.max(l, 1) * 1e3,
188
196
  -i,
189
197
  i
190
198
  );
191
199
  }
192
- function Ke({
200
+ function tr({
193
201
  session: r,
194
- fallbackDelta: s,
202
+ fallbackDelta: o,
195
203
  fallbackElapsed: l
196
204
  }) {
197
- const o = r.samples[r.samples.length - 1], { maxPxPerSecond: i, sampleWindowMs: h } = $.releaseVelocity;
198
- if (o) {
199
- const y = o.time - h, x = r.samples.find((v) => v.time >= y) ?? r.samples[0];
200
- if (x && x !== o) {
201
- const v = Math.max(o.time - x.time, 1), L = {
202
- x: (o.translateX - x.translateX) / v * 1e3,
203
- y: (o.translateY - x.translateY) / v * 1e3
205
+ const s = r.samples[r.samples.length - 1], { maxPxPerSecond: i, sampleWindowMs: y } = j.releaseVelocity;
206
+ if (s) {
207
+ const T = s.time - y, x = r.samples.find((S) => S.time >= T) ?? r.samples[0];
208
+ if (x && x !== s) {
209
+ const S = Math.max(s.time - x.time, 1), A = {
210
+ x: (s.translateX - x.translateX) / S * 1e3,
211
+ y: (s.translateY - x.translateY) / S * 1e3
204
212
  };
205
- if (Number.isFinite(L.x) && Number.isFinite(L.y))
213
+ if (Number.isFinite(A.x) && Number.isFinite(A.y))
206
214
  return {
207
- x: N(L.x, -i, i),
208
- y: N(L.y, -i, i)
215
+ x: H(A.x, -i, i),
216
+ y: H(A.y, -i, i)
209
217
  };
210
218
  }
211
219
  }
212
220
  return {
213
- x: N(
214
- s.x / Math.max(l, 1) * 1e3,
221
+ x: H(
222
+ o.x / Math.max(l, 1) * 1e3,
215
223
  -i,
216
224
  i
217
225
  ),
218
- y: N(
219
- s.y / Math.max(l, 1) * 1e3,
226
+ y: H(
227
+ o.y / Math.max(l, 1) * 1e3,
220
228
  -i,
221
229
  i
222
230
  )
223
231
  };
224
232
  }
225
- function tr(r) {
233
+ function or(r) {
226
234
  return r === "top" || r.startsWith("top-") ? "top" : r === "bottom" || r.startsWith("bottom-") ? "bottom" : "center";
227
235
  }
228
- function Lr({
236
+ function Vr({
229
237
  target: r,
230
- targets: s
238
+ targets: o
231
239
  }) {
232
- const l = s.filter((o) => o !== r);
240
+ const l = o.filter((s) => s !== r);
233
241
  if (l.length)
234
242
  return l.reduce(
235
- (o, i) => Math.min(
236
- o,
237
- ht(r, i)
243
+ (s, i) => Math.min(
244
+ s,
245
+ Tt(r, i)
238
246
  ),
239
247
  Number.POSITIVE_INFINITY
240
248
  );
241
249
  }
242
- function Br({
250
+ function Hr({
243
251
  closeThreshold: r,
244
- currentTarget: s,
252
+ currentTarget: o,
245
253
  surfaceSize: l,
246
- targets: o
254
+ targets: s
247
255
  }) {
248
- const i = tr(s.key), h = i === "center" ? Math.min(l.width, l.height) : l.height, y = Math.max(
249
- $.dismissal.minDistancePx,
250
- h * r
256
+ const i = or(o.key), y = i === "center" ? Math.min(l.width, l.height) : l.height, T = Math.max(
257
+ j.dismissal.minDistancePx,
258
+ y * r
251
259
  );
252
- if (i !== "center") return y;
253
- const x = Lr({
254
- target: s,
255
- targets: o
260
+ if (i !== "center") return T;
261
+ const x = Vr({
262
+ target: o,
263
+ targets: s
256
264
  });
257
- return !x || !Number.isFinite(x) ? y : Math.max(y, x * 0.75);
265
+ return !x || !Number.isFinite(x) ? T : Math.max(T, x * 0.75);
258
266
  }
259
- function Ar({
267
+ function Nr({
260
268
  currentTarget: r,
261
- currentTranslate: s
269
+ currentTranslate: o
262
270
  }) {
263
- switch (tr(r.key)) {
271
+ switch (or(r.key)) {
264
272
  case "top":
265
- return r.y - s.y;
273
+ return r.y - o.y;
266
274
  case "bottom":
267
- return s.y - r.y;
275
+ return o.y - r.y;
268
276
  case "center":
269
- return ht(r, s);
277
+ return Tt(r, o);
270
278
  }
271
279
  }
272
- function Cr({
280
+ function Fr({
273
281
  closeThreshold: r,
274
- currentTarget: s,
282
+ currentTarget: o,
275
283
  currentTranslate: l,
276
- releaseTarget: o,
284
+ releaseTarget: s,
277
285
  surfaceSize: i,
278
- targets: h
286
+ targets: y
279
287
  }) {
280
- if (o.key !== s.key) return !1;
281
- const y = Ar({
282
- currentTarget: s,
288
+ if (s.key !== o.key) return !1;
289
+ const T = Nr({
290
+ currentTarget: o,
283
291
  currentTranslate: l
284
292
  });
285
- return y <= 0 ? !1 : y >= Br({
293
+ return T <= 0 ? !1 : T >= Hr({
286
294
  closeThreshold: r,
287
- currentTarget: s,
295
+ currentTarget: o,
288
296
  surfaceSize: i,
289
- targets: h
297
+ targets: y
290
298
  });
291
299
  }
292
- function Ir({
300
+ function zr({
293
301
  presentationState: r,
294
- releaseTranslate: s,
302
+ releaseTranslate: o,
295
303
  visibleTranslate: l
296
304
  }) {
297
- return r !== "visible" || Math.abs(s - l) > 1;
305
+ return r !== "visible" || Math.abs(o - l) > 1;
298
306
  }
299
- function Or({
307
+ function Rr({
300
308
  drag: r,
301
- placement: s,
309
+ placement: o,
302
310
  snapPositionCount: l
303
311
  }) {
304
- return s === "popup" && (r === "content" || r === "handle") && l > 0;
312
+ return o === "popup" && (r === "content" || r === "handle") && l > 0;
305
313
  }
306
- function kr({
314
+ function $r({
307
315
  dismissible: r,
308
- peekTranslate: s,
316
+ peekTranslate: o,
309
317
  sheetHeight: l,
310
- visibleTranslate: o
318
+ visibleTranslate: s
311
319
  }) {
312
320
  return {
313
- maxTranslate: s > 0 ? s : r ? l : o,
321
+ maxTranslate: o > 0 ? o : r ? l : s,
314
322
  minTranslate: 0
315
323
  };
316
324
  }
317
- function Je(r, s = 1) {
318
- const l = Math.max(s, 1);
325
+ function er(r, o = 1) {
326
+ const l = Math.max(o, 1);
319
327
  return r && Math.abs(r.maxTranslate - r.minTranslate) || l;
320
328
  }
321
- function Qe({
329
+ function rr({
322
330
  limit: r,
323
- viewportSize: s,
331
+ viewportSize: o,
324
332
  viewportLimitRatio: l
325
333
  }) {
326
- const o = Math.max(r, 0);
327
- return s <= 0 ? o : Math.min(o, s * l);
334
+ const s = Math.max(r, 0);
335
+ return o <= 0 ? s : Math.min(s, o * l);
328
336
  }
329
- function Vr({
337
+ function Ur({
330
338
  minTranslate: r,
331
- sheetHeight: s,
339
+ sheetHeight: o,
332
340
  surfaceMotion: l
333
341
  }) {
334
- const o = l.parentElement?.getBoundingClientRect(), i = o?.top ?? 0, h = o && o.height > 0 ? o.height : window.innerHeight, y = l.getBoundingClientRect(), x = ae(l), v = y.top - x + r, L = Math.max(v - i, 0), { observedViewportLimitRatio: V } = $.rubberBand;
342
+ const s = l.parentElement?.getBoundingClientRect(), i = s?.top ?? 0, y = s && s.height > 0 ? s.height : window.innerHeight, T = l.getBoundingClientRect(), x = ie(l), S = T.top - x + r, A = Math.max(S - i, 0), { observedViewportLimitRatio: V } = j.rubberBand;
335
343
  return {
336
- minBoundaryLimit: Qe({
337
- limit: L,
338
- viewportSize: h,
344
+ minBoundaryLimit: rr({
345
+ limit: A,
346
+ viewportSize: y,
339
347
  viewportLimitRatio: V.top
340
348
  }),
341
- maxBoundaryLimit: Qe({
342
- limit: s,
343
- viewportSize: h,
349
+ maxBoundaryLimit: rr({
350
+ limit: o,
351
+ viewportSize: y,
344
352
  viewportLimitRatio: V.bottom
345
353
  })
346
354
  };
347
355
  }
348
- function Ze({
356
+ function nr({
349
357
  sheetHeight: r,
350
- peekTranslate: s,
358
+ peekTranslate: o,
351
359
  snapHeights: l,
352
- backdropFromHeight: o
360
+ backdropFromHeight: s
353
361
  }) {
354
- const i = s > 0 ? Math.max(0, r - s) : 0;
355
- if (o !== void 0) {
356
- let y = -1;
362
+ const i = o > 0 ? Math.max(0, r - o) : 0;
363
+ if (s !== void 0) {
364
+ let T = -1;
357
365
  for (const x of l)
358
- x < o - 0.5 && x > y && (y = x);
366
+ x < s - 0.5 && x > T && (T = x);
359
367
  return {
360
- dimmedHeight: o,
361
- undimmedHeight: y >= 0 ? y : i
368
+ dimmedHeight: s,
369
+ undimmedHeight: T >= 0 ? T : i
362
370
  };
363
371
  }
364
- let h = r;
365
- for (const y of l)
366
- y < h && (h = y);
367
- return { dimmedHeight: h, undimmedHeight: i };
372
+ let y = r;
373
+ for (const T of l)
374
+ T < y && (y = T);
375
+ return { dimmedHeight: y, undimmedHeight: i };
368
376
  }
369
- function Nr({
377
+ function _r({
370
378
  clampToBounds: r,
371
- rubberBand: s,
379
+ rubberBand: o,
372
380
  targetTranslate: l,
373
- sheetHeight: o,
381
+ sheetHeight: s,
374
382
  bounds: i,
375
- rubberBandLimits: h,
376
- backdropBoundaries: y
383
+ rubberBandLimits: y,
384
+ backdropBoundaries: T
377
385
  }) {
378
- const x = r ? N(
379
- s ? ne({
386
+ const x = r ? H(
387
+ o ? se({
380
388
  targetTranslate: l,
381
- ...h,
389
+ ...y,
382
390
  ...i
383
391
  }) : l,
384
- i.minTranslate - h.minBoundaryLimit,
385
- i.maxTranslate + h.maxBoundaryLimit
386
- ) : l, v = Math.max(-x, 0);
392
+ i.minTranslate - y.minBoundaryLimit,
393
+ i.maxTranslate + y.maxBoundaryLimit
394
+ ) : l, S = Math.max(-x, 0);
387
395
  return {
388
396
  translate: x,
389
- overshootFillHeight: v,
390
- backdropOpacity: er({
397
+ overshootFillHeight: S,
398
+ backdropOpacity: sr({
391
399
  translate: x,
392
- sheetHeight: o,
393
- backdropBoundaries: y
400
+ sheetHeight: s,
401
+ backdropBoundaries: T
394
402
  })
395
403
  };
396
404
  }
397
- function er({
405
+ function sr({
398
406
  translate: r,
399
- sheetHeight: s,
407
+ sheetHeight: o,
400
408
  backdropBoundaries: l
401
409
  }) {
402
- const o = Math.max(r, 0), h = (s - o - l.undimmedHeight) / Math.max(
410
+ const s = Math.max(r, 0), y = (o - s - l.undimmedHeight) / Math.max(
403
411
  l.dimmedHeight - l.undimmedHeight,
404
412
  1
405
413
  );
406
- return N(h, 0, 1);
414
+ return H(y, 0, 1);
407
415
  }
408
- function Kr({
416
+ function an({
409
417
  enabled: r,
410
- drag: s,
418
+ drag: o,
411
419
  open: l,
412
- placement: o,
420
+ placement: s,
413
421
  surfaceMotionRef: i,
414
- surfaceMotionNode: h,
415
- backdropRef: y,
422
+ surfaceMotionNode: y,
423
+ backdropRef: T,
416
424
  bodyNode: x,
417
- snapHeights: v = Dr,
418
- sheetHeight: L,
425
+ snapHeights: S = Ar,
426
+ sheetHeight: A,
419
427
  backdropFromHeight: V,
420
- onBackdropDimRestChange: zt,
421
- snapPositions: yt = Xr,
422
- defaultSnapPosition: Dt,
423
- peekHeight: Ht,
424
- peekFallback: oe,
425
- presentationState: F,
426
- setPresentationState: Rt,
427
- requestClose: nt,
428
- canCloseAttempt: se,
429
- dismissible: H = !0,
430
- backdropHidden: $t = !1,
431
- visibleTranslate: S = 0,
432
- shouldDeferBottomSettle: ie,
433
- refreshScrollState: Ut,
434
- closeThreshold: Xt = 0.35,
435
- scrollLockTimeout: le = 500,
436
- popupSnapLayoutVersion: ce = 0
428
+ onBackdropDimRestChange: $t,
429
+ snapPositions: xt = Lr,
430
+ defaultSnapPosition: Mt,
431
+ peekHeight: Ut,
432
+ peekFallback: le,
433
+ presentationState: N,
434
+ setPresentationState: _t,
435
+ requestClose: at,
436
+ canCloseAttempt: ce,
437
+ dismissible: z = !0,
438
+ backdropHidden: Wt = !1,
439
+ visibleTranslate: D = 0,
440
+ shouldDeferBottomSettle: ue,
441
+ refreshScrollState: Gt,
442
+ closeThreshold: bt = 0.35,
443
+ scrollLockTimeout: de = 500,
444
+ popupSnapLayoutVersion: pe = 0
437
445
  }) {
438
446
  const X = w({
439
447
  dragging: !1,
@@ -454,82 +462,83 @@ function Kr({
454
462
  startTime: 0,
455
463
  samples: [],
456
464
  pointerId: null,
457
- touchId: null
458
- }), U = w(x), _t = w(null), ue = w($t), de = w(!1), pe = w(!1), rr = w((t) => {
465
+ touchId: null,
466
+ pressedHandleArea: null
467
+ }), $ = w(x), jt = w(null), fe = w(Wt), me = w(!1), ge = w(!1), ir = w((t) => {
459
468
  t.preventDefault();
460
- }), Yt = w(0), Wt = w(!1), z = w(null), R = w(
469
+ }), At = w(0), Kt = w(!1), F = w(null), R = w(
461
470
  null
462
- ), Et = w(null), K = w(null), Tt = w(0), _ = w(null), Gt = w(!1), jt = w(!1), fe = w(F), Mt = w({
471
+ ), Lt = w(null), K = w(null), Pt = w(0), U = w(null), Zt = w(!1), Jt = w(!1), he = w(N), Bt = w({
463
472
  kind: "default-snap"
464
- }), me = w(L ?? null), ge = w(S), he = w(v), Kt = w(!1), at = w(!1), E = Or({
465
- drag: s,
466
- placement: o,
467
- snapPositionCount: yt.length
468
- }), ye = `${Dt ?? ""}:${yt.join("|")}`, Te = w(yt), bt = w(Dt);
469
- j(() => {
470
- Te.current = yt, bt.current = Dt;
471
- }, [Dt, ye, yt]), j(() => {
472
- ue.current = $t;
473
- }, [$t]), j(() => {
474
- l || (_t.current = null);
475
- }, [l]), j(() => {
476
- const t = U.current;
477
- t && t !== x && ee(t, !1), U.current = x, de.current && ee(x, !0);
473
+ }), ye = w(A ?? null), Te = w(D), xe = w(S), Qt = w(!1), ot = w(!1), E = Rr({
474
+ drag: o,
475
+ placement: s,
476
+ snapPositionCount: xt.length
477
+ }), Pe = `${Mt ?? ""}:${xt.join("|")}`, ve = w(xt), Ct = w(Mt);
478
+ G(() => {
479
+ ve.current = xt, Ct.current = Mt;
480
+ }, [Mt, Pe, xt]), G(() => {
481
+ fe.current = Wt;
482
+ }, [Wt]), G(() => {
483
+ l || (jt.current = null);
484
+ }, [l]), G(() => {
485
+ const t = $.current;
486
+ t && t !== x && ae(t, !1), $.current = x, me.current && ae(x, !0);
478
487
  }, [x]);
479
- const ot = f((t) => {
480
- de.current = t, ee(U.current, t);
481
- }, []), J = f((t) => {
482
- if (pe.current === t) return;
483
- pe.current = t;
484
- const e = rr.current;
488
+ const st = f((t) => {
489
+ me.current = t, ae($.current, t);
490
+ }, []), Z = f((t) => {
491
+ if (ge.current === t) return;
492
+ ge.current = t;
493
+ const e = ir.current;
485
494
  if (t) {
486
495
  document.addEventListener("selectstart", e, !0), document.addEventListener("dragstart", e, !0);
487
496
  return;
488
497
  }
489
498
  document.removeEventListener("selectstart", e, !0), document.removeEventListener("dragstart", e, !0);
490
- }, []), Lt = f(
499
+ }, []), It = f(
491
500
  ({ chrome: t, target: e }) => {
492
- const n = dr({
501
+ const n = hr({
493
502
  target: e,
494
503
  chrome: t,
495
- bodyNode: U.current
504
+ bodyNode: $.current
496
505
  });
497
- return ot(n), n;
506
+ return st(n), n;
498
507
  },
499
- [ot]
500
- ), I = f(() => i.current?.getBoundingClientRect().height ?? window.innerHeight, [i]), Bt = f(() => {
501
- if (Ht !== void 0) return Ht;
502
- if (oe === "header")
508
+ [st]
509
+ ), O = f(() => i.current?.getBoundingClientRect().height ?? window.innerHeight, [i]), Ot = f(() => {
510
+ if (Ut !== void 0) return Ut;
511
+ if (le === "header")
503
512
  return i.current?.querySelector('[data-oc-part="header"]')?.getBoundingClientRect().height ?? void 0;
504
- }, [oe, Ht, i]), xt = f(
513
+ }, [le, Ut, i]), vt = f(
505
514
  (t) => {
506
- const e = Bt();
507
- return e === void 0 || e <= 0 ? 0 : N(t - e, 0, t);
515
+ const e = Ot();
516
+ return e === void 0 || e <= 0 ? 0 : H(t - e, 0, t);
508
517
  },
509
- [Bt]
510
- ), Q = f(() => {
511
- const t = Bt();
512
- return t === void 0 || t <= 0 ? 0 : xt(I());
513
- }, [Bt, xt, I]), Jt = f(
514
- () => F === "peeked" ? Q() : S,
515
- [Q, F, S]
516
- ), W = f(() => {
518
+ [Ot]
519
+ ), J = f(() => {
520
+ const t = Ot();
521
+ return t === void 0 || t <= 0 ? 0 : vt(O());
522
+ }, [Ot, vt, O]), qt = f(
523
+ () => N === "peeked" ? J() : D,
524
+ [J, N, D]
525
+ ), _ = f(() => {
517
526
  const t = i.current;
518
- if (!t) return Jt();
519
- const e = gt(
527
+ if (!t) return qt();
528
+ const e = yt(
520
529
  t.style.getPropertyValue("--oc-modal-translate-y")
521
530
  );
522
531
  if (e !== void 0) return e;
523
- const n = gt(
532
+ const n = yt(
524
533
  window.getComputedStyle(t).getPropertyValue("--oc-modal-translate-y")
525
534
  );
526
- return n !== void 0 ? n : Jt();
527
- }, [Jt, i]), At = f(() => {
535
+ return n !== void 0 ? n : qt();
536
+ }, [qt, i]), kt = f(() => {
528
537
  const t = i.current;
529
538
  if (!t) return { x: 0, y: 0 };
530
- const e = gt(
539
+ const e = yt(
531
540
  t.style.getPropertyValue("--oc-modal-translate-x")
532
- ), n = gt(
541
+ ), n = yt(
533
542
  t.style.getPropertyValue("--oc-modal-translate-y")
534
543
  );
535
544
  if (e !== void 0 || n !== void 0)
@@ -539,269 +548,269 @@ function Kr({
539
548
  };
540
549
  const c = window.getComputedStyle(t);
541
550
  return {
542
- x: gt(c.getPropertyValue("--oc-modal-translate-x")) ?? 0,
543
- y: gt(c.getPropertyValue("--oc-modal-translate-y")) ?? 0
551
+ x: yt(c.getPropertyValue("--oc-modal-translate-x")) ?? 0,
552
+ y: yt(c.getPropertyValue("--oc-modal-translate-y")) ?? 0
544
553
  };
545
- }, [i]), st = f(() => {
546
- const t = W(), e = ae(i.current);
554
+ }, [i]), it = f(() => {
555
+ const t = _(), e = ie(i.current);
547
556
  return Math.abs(e - t) > 1 ? e : t;
548
- }, [W, i]), Pt = f(
557
+ }, [_, i]), wt = f(
549
558
  (t, e, n = 1) => Math.abs(t - e) <= n,
550
559
  []
551
- ), it = f(() => {
552
- const t = At(), e = We(i.current);
553
- return ht(e, t) > 1 ? e : t;
554
- }, [At, i]), A = f(
560
+ ), lt = f(() => {
561
+ const t = kt(), e = Je(i.current);
562
+ return Tt(e, t) > 1 ? e : t;
563
+ }, [kt, i]), C = f(
555
564
  (t, {
556
565
  active: e,
557
566
  canvas: n,
558
- nextDismissible: c = H,
559
- rubberBand: a = !1,
560
- sheetHeightOverride: u,
561
- peekTranslateOverride: d,
567
+ nextDismissible: c = z,
568
+ rubberBand: u = !1,
569
+ sheetHeightOverride: a,
570
+ peekTranslateOverride: p,
562
571
  settled: m
563
572
  }) => {
564
- const p = i.current;
565
- if (!p) return;
566
- const g = u ?? I(), Y = p.parentElement, C = d ?? Q(), T = kr({
573
+ const d = i.current;
574
+ if (!d) return;
575
+ const h = a ?? O(), P = d.parentElement, I = p ?? J(), g = $r({
567
576
  dismissible: c,
568
- peekTranslate: C,
569
- sheetHeight: g,
570
- visibleTranslate: S
571
- }), b = Vr({
572
- minTranslate: T.minTranslate,
573
- sheetHeight: g,
574
- surfaceMotion: p
575
- }), B = Nr({
577
+ peekTranslate: I,
578
+ sheetHeight: h,
579
+ visibleTranslate: D
580
+ }), M = Ur({
581
+ minTranslate: g.minTranslate,
582
+ sheetHeight: h,
583
+ surfaceMotion: d
584
+ }), L = _r({
576
585
  clampToBounds: n === void 0,
577
- rubberBand: a,
586
+ rubberBand: u,
578
587
  targetTranslate: t,
579
- sheetHeight: g,
580
- bounds: T,
581
- rubberBandLimits: b,
582
- backdropBoundaries: Ze({
583
- sheetHeight: g,
584
- peekTranslate: C,
585
- snapHeights: v,
588
+ sheetHeight: h,
589
+ bounds: g,
590
+ rubberBandLimits: M,
591
+ backdropBoundaries: nr({
592
+ sheetHeight: h,
593
+ peekTranslate: I,
594
+ snapHeights: S,
586
595
  backdropFromHeight: V
587
596
  })
588
597
  });
589
- X.current.lastTranslate = B.translate, p.style.setProperty(
598
+ X.current.lastTranslate = L.translate, d.style.setProperty(
590
599
  "--oc-modal-translate-y",
591
- `${B.translate}px`
592
- ), m === "frame" || !e ? p.style.setProperty(
600
+ `${L.translate}px`
601
+ ), m === "frame" || !e ? d.style.setProperty(
593
602
  "--oc-modal-settled-translate-y",
594
- `${B.translate}px`
595
- ) : typeof m == "number" && p.style.setProperty(
603
+ `${L.translate}px`
604
+ ) : typeof m == "number" && d.style.setProperty(
596
605
  "--oc-modal-settled-translate-y",
597
606
  `${m}px`
598
607
  );
599
- const k = n?.restBackdropOpacity ?? B.backdropOpacity, wt = ue.current ? 0 : k;
600
- if (p.style.setProperty(
608
+ const rt = n?.restBackdropOpacity ?? L.backdropOpacity, ht = fe.current ? 0 : rt;
609
+ if (d.style.setProperty(
601
610
  "--_-modal-elevation-shadow-opacity",
602
- String(1 - wt)
603
- ), p.dataset.ocModalDragging = e ? "true" : "false", Y?.style.setProperty(
611
+ String(1 - ht)
612
+ ), d.dataset.ocModalDragging = e ? "true" : "false", P?.style.setProperty(
604
613
  "--oc-modal-overshoot-fill-height",
605
- `${B.overshootFillHeight}px`
606
- ), Y && (Y.dataset.ocModalDragging = e ? "true" : "false"), e ? p.style.setProperty("transition", "none") : p.style.removeProperty("transition"), y.current && (y.current.style.setProperty(
614
+ `${L.overshootFillHeight}px`
615
+ ), P && (P.dataset.ocModalDragging = e ? "true" : "false"), e ? d.style.setProperty("transition", "none") : d.style.removeProperty("transition"), T.current && (T.current.style.setProperty(
607
616
  "--oc-modal-backdrop-opacity",
608
- String(k)
609
- ), y.current.style.transition = e && n === void 0 ? "none" : ""), !e && o === "bottom" && zt) {
610
- const et = V === void 0 || g - B.translate >= V - 0.5;
611
- _t.current !== et && (_t.current = et, zt(et));
617
+ String(rt)
618
+ ), T.current.style.transition = e && n === void 0 ? "none" : ""), !e && s === "bottom" && $t) {
619
+ const B = V === void 0 || h - L.translate >= V - 0.5;
620
+ jt.current !== B && (jt.current = B, $t(B));
612
621
  }
613
622
  },
614
623
  [
615
624
  V,
616
- y,
617
- H,
618
- Q,
619
- I,
620
- zt,
621
- o,
622
- v,
625
+ T,
626
+ z,
627
+ J,
628
+ O,
629
+ $t,
630
+ s,
631
+ S,
623
632
  i,
624
- S
633
+ D
625
634
  ]
626
- ), lt = f(() => {
627
- const t = i.current, e = Te.current;
635
+ ), ct = f(() => {
636
+ const t = i.current, e = ve.current;
628
637
  if (!(!t || !e.length))
629
- return ur({
630
- defaultSnapPosition: bt.current,
638
+ return gr({
639
+ defaultSnapPosition: Ct.current,
631
640
  snapPositions: e,
632
641
  surfaceMotion: t
633
642
  });
634
- }, [i]), G = f(
643
+ }, [i]), W = f(
635
644
  ({ destroy: t = !0 } = {}) => {
636
- t && R.current?.destroy(), R.current = null, Et.current = null;
645
+ t && R.current?.destroy(), R.current = null, Lt.current = null;
637
646
  },
638
647
  []
639
- ), M = f(
648
+ ), b = f(
640
649
  (t, { active: e }) => {
641
650
  const n = i.current;
642
651
  if (!n) return;
643
- const c = lt(), a = c ? n.getBoundingClientRect() : void 0, u = c ? Ue(c.targets, "x") : void 0, d = c ? Ue(c.targets, "y") : void 0, m = Je(u, a?.width), p = Je(d, a?.height), g = c ? {
644
- x: ne({
652
+ const c = ct(), u = c ? n.getBoundingClientRect() : void 0, a = c ? Ke(c.targets, "x") : void 0, p = c ? Ke(c.targets, "y") : void 0, m = er(a, u?.width), d = er(p, u?.height), h = c ? {
653
+ x: se({
645
654
  targetTranslate: t.x,
646
- minTranslate: u?.minTranslate ?? 0,
647
- maxTranslate: u?.maxTranslate ?? 0,
655
+ minTranslate: a?.minTranslate ?? 0,
656
+ maxTranslate: a?.maxTranslate ?? 0,
648
657
  minBoundaryLimit: m,
649
658
  maxBoundaryLimit: m
650
659
  }),
651
- y: ne({
660
+ y: se({
652
661
  targetTranslate: t.y,
653
- minTranslate: d?.minTranslate ?? 0,
654
- maxTranslate: d?.maxTranslate ?? 0,
655
- minBoundaryLimit: p,
656
- maxBoundaryLimit: p
662
+ minTranslate: p?.minTranslate ?? 0,
663
+ maxTranslate: p?.maxTranslate ?? 0,
664
+ minBoundaryLimit: d,
665
+ maxBoundaryLimit: d
657
666
  })
658
667
  } : t;
659
- X.current.lastTranslateX = g.x, X.current.lastTranslate = g.y;
660
- const Y = e ? void 0 : t.settledTranslate;
668
+ X.current.lastTranslateX = h.x, X.current.lastTranslate = h.y;
669
+ const P = e ? void 0 : t.settledTranslate;
661
670
  n.style.setProperty(
662
671
  "--oc-modal-translate-x",
663
- Y?.x ?? `${g.x}px`
672
+ P?.x ?? `${h.x}px`
664
673
  ), n.style.setProperty(
665
674
  "--oc-modal-translate-y",
666
- Y?.y ?? `${g.y}px`
675
+ P?.y ?? `${h.y}px`
667
676
  ), n.dataset.ocModalDragging = e ? "true" : "false", n.parentElement && (n.parentElement.dataset.ocModalDragging = e ? "true" : "false"), n.style.transition = e ? "none" : "";
668
677
  },
669
- [lt, i]
670
- ), D = f(() => {
671
- z.current?.destroy(), z.current = null, G();
678
+ [ct, i]
679
+ ), Y = f(() => {
680
+ F.current?.destroy(), F.current = null, W();
672
681
  const t = i.current;
673
- t && wr(t) && (Ne(t), t.style.removeProperty("--oc-modal-resize-rest-translate-y"));
674
- }, [G, i]), ct = f(
675
- (t, e = H) => {
676
- D(), A(t, {
682
+ t && Er(t) && (Re(t), t.style.removeProperty("--oc-modal-resize-rest-translate-y"));
683
+ }, [W, i]), ut = f(
684
+ (t, e = z) => {
685
+ Y(), C(t, {
677
686
  active: !0,
678
687
  nextDismissible: e,
679
688
  rubberBand: !0,
680
689
  settled: "frame"
681
690
  });
682
691
  },
683
- [A, D, H]
684
- ), xe = f(() => {
685
- const t = st(), e = it();
686
- return z.current !== null || R.current !== null ? (D(), o === "popup" && ht(e, { x: 0, y: 0 }) > 0.5 ? M(e, { active: !1 }) : o === "bottom" && Math.abs(t) > 0.5 && A(t, { active: !1 }), { startTranslate: t, startTranslatePoint: e }) : { startTranslate: t, startTranslatePoint: e };
692
+ [C, Y, z]
693
+ ), we = f(() => {
694
+ const t = it(), e = lt();
695
+ return F.current !== null || R.current !== null ? (Y(), s === "popup" && Tt(e, { x: 0, y: 0 }) > 0.5 ? b(e, { active: !1 }) : s === "bottom" && Math.abs(t) > 0.5 && C(t, { active: !1 }), { startTranslate: t, startTranslatePoint: e }) : { startTranslate: t, startTranslatePoint: e };
687
696
  }, [
688
- M,
689
- A,
690
- D,
691
- st,
697
+ b,
698
+ C,
699
+ Y,
692
700
  it,
693
- o
694
- ]), P = f(() => {
701
+ lt,
702
+ s
703
+ ]), v = f(() => {
695
704
  const t = i.current;
696
- t && (t.dataset.ocModalDragging = "false", t.style.removeProperty("transition"), t.parentElement && (t.parentElement.dataset.ocModalDragging = "false"), y.current?.style.removeProperty("transition"), V === void 0 && y.current?.style.removeProperty("--oc-modal-backdrop-opacity"));
697
- }, [V, y, i]), Pe = f(() => {
705
+ t && (t.dataset.ocModalDragging = "false", t.style.removeProperty("transition"), t.parentElement && (t.parentElement.dataset.ocModalDragging = "false"), T.current?.style.removeProperty("transition"), V === void 0 && T.current?.style.removeProperty("--oc-modal-backdrop-opacity"));
706
+ }, [V, T, i]), Se = f(() => {
698
707
  const t = i.current, e = t?.parentElement;
699
- X.current.lastTranslate = 0, t?.style.removeProperty("--oc-modal-translate-y"), t?.style.removeProperty("--oc-modal-settled-translate-y"), t?.style.removeProperty("--_-modal-elevation-shadow-opacity"), e?.style.removeProperty("--oc-modal-overshoot-fill-height"), y.current?.style.removeProperty("--oc-modal-backdrop-opacity"), P();
700
- }, [y, P, i]), ve = f(
708
+ X.current.lastTranslate = 0, t?.style.removeProperty("--oc-modal-translate-y"), t?.style.removeProperty("--oc-modal-settled-translate-y"), t?.style.removeProperty("--_-modal-elevation-shadow-opacity"), e?.style.removeProperty("--oc-modal-overshoot-fill-height"), T.current?.style.removeProperty("--oc-modal-backdrop-opacity"), v();
709
+ }, [T, v, i]), De = f(
701
710
  ({
702
711
  preserveSnapPosition: t = !1,
703
712
  resetY: e = !0
704
713
  } = {}) => {
705
714
  const n = i.current;
706
- n && (t || (K.current = null), X.current.lastTranslateX = 0, n.style.removeProperty("--oc-modal-translate-x"), e && (X.current.lastTranslate = 0, n.style.removeProperty("--oc-modal-translate-y")), P());
715
+ n && (t || (K.current = null), X.current.lastTranslateX = 0, n.style.removeProperty("--oc-modal-translate-x"), e && (X.current.lastTranslate = 0, n.style.removeProperty("--oc-modal-translate-y")), v());
707
716
  },
708
- [P, i]
709
- ), O = f(
717
+ [v, i]
718
+ ), k = f(
710
719
  (t, {
711
720
  canvas: e,
712
721
  initialVelocity: n = 0,
713
722
  intent: c = "sheet",
714
- phase: a = "release",
715
- from: u,
716
- onComplete: d,
723
+ phase: u = "release",
724
+ from: a,
725
+ onComplete: p,
717
726
  peekTranslateOverride: m,
718
- sheetHeightOverride: p
727
+ sheetHeightOverride: d
719
728
  } = {}) => {
720
- const g = i.current;
721
- if (!g) return;
722
- D();
723
- const Y = u ?? ae(g);
724
- if (Math.abs(Y - t) < 0.5) {
725
- A(t, {
729
+ const h = i.current;
730
+ if (!h) return;
731
+ Y();
732
+ const P = a ?? ie(h);
733
+ if (Math.abs(P - t) < 0.5) {
734
+ C(t, {
726
735
  active: !1,
727
736
  canvas: e,
728
737
  peekTranslateOverride: m,
729
- sheetHeightOverride: p
730
- }), P(), d?.();
738
+ sheetHeightOverride: d
739
+ }), v(), p?.();
731
740
  return;
732
741
  }
733
- const C = a === "enter" ? t : "frame";
734
- A(Y, {
742
+ const I = u === "enter" ? t : "frame";
743
+ C(P, {
735
744
  active: !0,
736
745
  canvas: e,
737
746
  peekTranslateOverride: m,
738
- settled: C,
739
- sheetHeightOverride: p
747
+ settled: I,
748
+ sheetHeightOverride: d
740
749
  });
741
- const T = te({
742
- element: g,
750
+ const g = ne({
751
+ element: h,
743
752
  intent: c,
744
- phase: a,
753
+ phase: u,
745
754
  reduced: "preserve",
746
755
  reducedMotion: !1,
747
756
  property: "transform"
748
757
  });
749
- if (!T.animate) {
750
- A(t, {
758
+ if (!g.animate) {
759
+ C(t, {
751
760
  active: !1,
752
761
  canvas: e,
753
762
  peekTranslateOverride: m,
754
- sheetHeightOverride: p
755
- }), P(), d?.();
763
+ sheetHeightOverride: d
764
+ }), v(), p?.();
756
765
  return;
757
766
  }
758
- const b = qt({
759
- value: Y,
767
+ const M = re({
768
+ value: P,
760
769
  target: t,
761
770
  velocity: n,
762
- spring: T.spring,
771
+ spring: g.spring,
763
772
  epsilon: 0.5,
764
773
  velocityEpsilon: 50,
765
774
  stabilityWindow: 0.02,
766
- onUpdate: (B) => {
767
- A(B, {
775
+ onUpdate: (L) => {
776
+ C(L, {
768
777
  active: !0,
769
778
  canvas: e,
770
779
  peekTranslateOverride: m,
771
- settled: C === "frame" ? "frame" : void 0,
772
- sheetHeightOverride: p
780
+ settled: I === "frame" ? "frame" : void 0,
781
+ sheetHeightOverride: d
773
782
  });
774
783
  },
775
784
  onComplete: () => {
776
- z.current === b && (z.current = null), A(t, {
785
+ F.current === M && (F.current = null), C(t, {
777
786
  active: !1,
778
787
  canvas: e,
779
788
  peekTranslateOverride: m,
780
- sheetHeightOverride: p
781
- }), P(), d?.();
789
+ sheetHeightOverride: d
790
+ }), v(), p?.();
782
791
  }
783
792
  });
784
- z.current = b;
793
+ F.current = M;
785
794
  },
786
- [A, D, P, i]
787
- ), Z = f(
795
+ [C, Y, v, i]
796
+ ), Q = f(
788
797
  (t, {
789
798
  from: e,
790
799
  initialVelocity: n = { x: 0, y: 0 }
791
800
  } = {}) => {
792
801
  const c = i.current;
793
802
  if (!c) return;
794
- D();
795
- const a = e ?? We(c), u = { x: t.x, y: t.y };
796
- if (ht(
797
- a,
798
- u
803
+ Y();
804
+ const u = e ?? Je(c), a = { x: t.x, y: t.y };
805
+ if (Tt(
806
+ u,
807
+ a
799
808
  ) < 0.5) {
800
- M(t, { active: !1 }), P();
809
+ b(t, { active: !1 }), v();
801
810
  return;
802
811
  }
803
- M(a, { active: !0 });
804
- const m = te({
812
+ b(u, { active: !0 });
813
+ const m = ne({
805
814
  element: c,
806
815
  intent: "gesture",
807
816
  phase: "release",
@@ -810,91 +819,91 @@ function Kr({
810
819
  property: "transform"
811
820
  });
812
821
  if (!m.animate) {
813
- M(t, { active: !1 }), P();
822
+ b(t, { active: !1 }), v();
814
823
  return;
815
824
  }
816
- const p = qt({
817
- value: a,
818
- target: u,
825
+ const d = re({
826
+ value: u,
827
+ target: a,
819
828
  velocity: n,
820
829
  spring: m.spring,
821
830
  epsilon: 0.5,
822
831
  velocityEpsilon: 50,
823
832
  stabilityWindow: 0.02,
824
- onUpdate: (g) => {
825
- M(g, { active: !0 });
833
+ onUpdate: (h) => {
834
+ b(h, { active: !0 });
826
835
  },
827
836
  onComplete: () => {
828
- z.current === p && (z.current = null), M(t, { active: !1 }), P();
837
+ F.current === d && (F.current = null), b(t, { active: !1 }), v();
829
838
  }
830
839
  });
831
- z.current = p;
840
+ F.current = d;
832
841
  },
833
842
  [
834
- M,
835
- D,
836
- P,
843
+ b,
844
+ Y,
845
+ v,
837
846
  i
838
847
  ]
839
- ), ut = f(() => {
848
+ ), dt = f(() => {
840
849
  const t = R.current;
841
850
  if (!t) return null;
842
851
  const e = t.sample();
843
- return M(e.value, { active: !0 }), e;
844
- }, [M]), we = f(
852
+ return b(e.value, { active: !0 }), e;
853
+ }, [b]), Xe = f(
845
854
  (t) => {
846
855
  if (!i.current) return null;
847
- D(), M(t, { active: !0 });
848
- const n = qt({
856
+ Y(), b(t, { active: !0 });
857
+ const n = re({
849
858
  value: t,
850
859
  target: t,
851
- spring: Pr,
860
+ spring: Xr,
852
861
  autoplay: !1,
853
862
  epsilon: 0.5,
854
863
  velocityEpsilon: 50,
855
864
  stabilityWindow: 0.02,
856
865
  onUpdate: (c) => {
857
- M(c, { active: !0 });
866
+ b(c, { active: !0 });
858
867
  },
859
868
  onComplete: () => {
860
- const c = Et.current;
861
- !c || R.current !== n || (G({ destroy: !1 }), M(c, { active: !1 }), P());
869
+ const c = Lt.current;
870
+ !c || R.current !== n || (W({ destroy: !1 }), b(c, { active: !1 }), v());
862
871
  }
863
872
  });
864
873
  return R.current = n, n;
865
874
  },
866
875
  [
867
- M,
868
- D,
869
- G,
870
- P,
876
+ b,
877
+ Y,
878
+ W,
879
+ v,
871
880
  i
872
881
  ]
873
- ), Se = f(
882
+ ), Ye = f(
874
883
  (t) => {
875
- const e = R.current ?? we(it());
876
- e && (Et.current = null, e.setTarget(t));
884
+ const e = R.current ?? Xe(lt());
885
+ e && (Lt.current = null, e.setTarget(t));
877
886
  },
878
- [it, we]
879
- ), dt = f(
887
+ [lt, Xe]
888
+ ), pt = f(
880
889
  (t, e) => {
881
- const n = Ft(t, e);
882
- return Se(n), ut(), n;
890
+ const n = Rt(t, e);
891
+ return Ye(n), dt(), n;
883
892
  },
884
- [ut, Se]
885
- ), Ct = f(
893
+ [dt, Ye]
894
+ ), Vt = f(
886
895
  (t) => {
887
896
  const e = i.current, n = R.current;
888
897
  if (!e || !n) {
889
- Z(t);
898
+ Q(t);
890
899
  return;
891
900
  }
892
- const a = ut() ? At() : n.value, u = { x: t.x, y: t.y };
893
- if (ht(a, u) < 0.5) {
894
- G(), M(t, { active: !1 }), P();
901
+ const u = dt() ? kt() : n.value, a = { x: t.x, y: t.y };
902
+ if (Tt(u, a) < 0.5) {
903
+ W(), b(t, { active: !1 }), v();
895
904
  return;
896
905
  }
897
- const d = te({
906
+ const p = ne({
898
907
  element: e,
899
908
  intent: "gesture",
900
909
  phase: "release",
@@ -902,308 +911,308 @@ function Kr({
902
911
  reducedMotion: !1,
903
912
  property: "transform"
904
913
  });
905
- if (!d.animate) {
906
- G(), M(t, { active: !1 }), P();
914
+ if (!p.animate) {
915
+ W(), b(t, { active: !1 }), v();
907
916
  return;
908
917
  }
909
- Et.current = t, n.setTarget(u, { spring: d.spring });
918
+ Lt.current = t, n.setTarget(a, { spring: p.spring });
910
919
  },
911
920
  [
912
- M,
913
- G,
914
- P,
915
- At,
916
- ut,
917
- Z,
921
+ b,
922
+ W,
923
+ v,
924
+ kt,
925
+ dt,
926
+ Q,
918
927
  i
919
928
  ]
920
- ), pt = f(
929
+ ), ft = f(
921
930
  ({
922
931
  key: t,
923
932
  settle: e
924
933
  }) => {
925
934
  if (X.current.dragging) return !1;
926
- const n = lt();
935
+ const n = ct();
927
936
  if (!n) return !1;
928
- const c = (t ? n.targets.find((a) => a.key === t) : void 0) ?? n.defaultTarget;
929
- return K.current = c.key, e ? Z(c) : (D(), M(c, { active: !1 }), P()), !0;
937
+ const c = (t ? n.targets.find((u) => u.key === t) : void 0) ?? n.defaultTarget;
938
+ return K.current = c.key, e ? Q(c) : (Y(), b(c, { active: !1 }), v()), !0;
930
939
  },
931
940
  [
932
- M,
933
- D,
934
- P,
935
- lt,
936
- Z
941
+ b,
942
+ Y,
943
+ v,
944
+ ct,
945
+ Q
937
946
  ]
938
- ), De = f(
947
+ ), Ee = f(
939
948
  (t, { from: e, initialVelocity: n = 0 }) => {
940
- O(t, {
949
+ k(t, {
941
950
  from: e,
942
951
  initialVelocity: n,
943
952
  onComplete: () => {
944
- nt({ reason: "drag-dismiss" }, { skipAttempt: !0 });
953
+ at({ reason: "drag-dismiss" }, { skipAttempt: !0 });
945
954
  }
946
955
  });
947
956
  },
948
- [nt, O]
957
+ [at, k]
949
958
  );
950
- Nt(
959
+ Yt(
951
960
  () => () => {
952
- D(), J(!1), i.current && P();
961
+ Y(), Z(!1), i.current && v();
953
962
  },
954
963
  [
955
- D,
956
- P,
957
- J,
964
+ Y,
965
+ v,
966
+ Z,
958
967
  i
959
968
  ]
960
- ), j(() => {
961
- if (!l || !r || o !== "bottom") {
962
- Gt.current = l;
969
+ ), G(() => {
970
+ if (!l || !r || s !== "bottom") {
971
+ Zt.current = l;
963
972
  return;
964
973
  }
965
- if (!i.current || ie?.()) return;
966
- jt.current = !0;
967
- const t = Gt.current;
968
- Gt.current = !0;
969
- const e = L ?? I(), n = me.current ?? e, c = fe.current, a = he.current, u = ge.current, d = () => {
970
- me.current = e, fe.current = F, ge.current = S, he.current = v;
971
- }, m = !Pt(
974
+ if (!i.current || ue?.()) return;
975
+ Jt.current = !0;
976
+ const t = Zt.current;
977
+ Zt.current = !0;
978
+ const e = A ?? O(), n = ye.current ?? e, c = he.current, u = xe.current, a = Te.current, p = () => {
979
+ ye.current = e, he.current = N, Te.current = D, xe.current = S;
980
+ }, m = !wt(
972
981
  n,
973
982
  e
974
- ), p = xt(e), g = F === "peeked" ? p : S;
983
+ ), d = vt(e), h = N === "peeked" ? d : D;
975
984
  if (!t) {
976
- Mt.current = { kind: "default-snap" }, A(e, {
985
+ Bt.current = { kind: "default-snap" }, C(e, {
977
986
  active: !0,
978
- peekTranslateOverride: p,
987
+ peekTranslateOverride: d,
979
988
  sheetHeightOverride: e
980
- }), O(g, {
989
+ }), k(h, {
981
990
  from: e,
982
991
  intent: "sheet",
983
- peekTranslateOverride: p,
992
+ peekTranslateOverride: d,
984
993
  phase: "enter",
985
994
  sheetHeightOverride: e
986
- }), d();
995
+ }), p();
987
996
  return;
988
997
  }
989
- if (F === "visible" && m) {
990
- const T = i.current, b = W(), B = c === "visible" && n > 0 ? hr({
991
- currentTranslate: b,
992
- fallbackTranslate: S,
993
- restState: Mt.current,
994
- previousDefaultTranslate: u,
998
+ if (N === "visible" && m) {
999
+ const g = i.current, M = _(), L = c === "visible" && n > 0 ? vr({
1000
+ currentTranslate: M,
1001
+ fallbackTranslate: D,
1002
+ restState: Bt.current,
1003
+ previousDefaultTranslate: a,
995
1004
  previousSheetHeight: n,
996
- previousSnapHeights: a,
1005
+ previousSnapHeights: u,
997
1006
  targetSheetHeight: e,
998
- targetDefaultTranslate: S,
999
- targetSnapHeights: v
1000
- }) : S, k = z.current?.velocity, wt = typeof k == "number" ? k : 0;
1001
- D();
1002
- const et = Number.parseFloat(T.style.height), Qt = Number.isFinite(et) && et > 0 ? et : n, Le = N(
1003
- Qt - b,
1007
+ targetDefaultTranslate: D,
1008
+ targetSnapHeights: S
1009
+ }) : D, rt = F.current?.velocity, ht = typeof rt == "number" ? rt : 0;
1010
+ Y();
1011
+ const B = Number.parseFloat(g.style.height), Xt = Number.isFinite(B) && B > 0 ? B : n, Ie = H(
1012
+ Xt - M,
1004
1013
  0,
1005
- Qt
1006
- ), Be = N(
1007
- e - B,
1014
+ Xt
1015
+ ), Oe = H(
1016
+ e - L,
1008
1017
  0,
1009
1018
  e
1010
- ), rt = Math.max(Qt, e), Zt = Math.max(
1019
+ ), nt = Math.max(Xt, e), ee = Math.max(
1011
1020
  0,
1012
- rt - Le
1013
- ), Ae = Math.max(
1021
+ nt - Ie
1022
+ ), ke = Math.max(
1014
1023
  0,
1015
- rt - Be
1016
- ), Ce = xt(rt), Ie = {
1017
- restBackdropOpacity: er({
1018
- translate: B,
1024
+ nt - Oe
1025
+ ), Ve = vt(nt), He = {
1026
+ restBackdropOpacity: sr({
1027
+ translate: L,
1019
1028
  sheetHeight: e,
1020
- backdropBoundaries: Ze({
1029
+ backdropBoundaries: nr({
1021
1030
  sheetHeight: e,
1022
- peekTranslate: p,
1023
- snapHeights: v,
1031
+ peekTranslate: d,
1032
+ snapHeights: S,
1024
1033
  backdropFromHeight: V
1025
1034
  })
1026
1035
  })
1027
- }, Oe = () => {
1028
- A(B, {
1036
+ }, Ne = () => {
1037
+ C(L, {
1029
1038
  active: !1,
1030
- peekTranslateOverride: p,
1039
+ peekTranslateOverride: d,
1031
1040
  sheetHeightOverride: e
1032
- }), T.style.setProperty("transition", "none"), T.style.removeProperty("height"), T.style.setProperty(
1041
+ }), g.style.setProperty("transition", "none"), g.style.removeProperty("height"), g.style.setProperty(
1033
1042
  "--oc-modal-sheet-height",
1034
1043
  `${e}px`
1035
- ), Ne(T), T.style.removeProperty(
1044
+ ), Re(g), g.style.removeProperty(
1036
1045
  "--oc-modal-resize-rest-translate-y"
1037
- ), T.getBoundingClientRect(), T.style.removeProperty("transition"), Ut?.();
1046
+ ), g.getBoundingClientRect(), g.style.removeProperty("transition"), Gt?.();
1038
1047
  };
1039
- if (Pt(Zt, Ae)) {
1040
- Oe(), d();
1048
+ if (wt(ee, ke)) {
1049
+ Ne(), p();
1041
1050
  return;
1042
1051
  }
1043
- const ke = () => {
1044
- const Ve = U.current;
1045
- Sr(
1046
- T,
1047
- Ve ? Ve.clientHeight + (Be - Le) : null
1048
- ), T.style.setProperty(
1052
+ const Fe = () => {
1053
+ const ze = $.current;
1054
+ Mr(
1055
+ g,
1056
+ ze ? ze.clientHeight + (Oe - Ie) : null
1057
+ ), g.style.setProperty(
1049
1058
  "--oc-modal-resize-rest-translate-y",
1050
- `${B}px`
1059
+ `${L}px`
1051
1060
  );
1052
1061
  };
1053
- ke(), T.style.setProperty("transition", "none"), T.style.setProperty("height", `${rt}px`), T.style.setProperty(
1062
+ Fe(), g.style.setProperty("transition", "none"), g.style.setProperty("height", `${nt}px`), g.style.setProperty(
1054
1063
  "--oc-modal-sheet-height",
1055
- `${rt}px`
1056
- ), A(Zt, {
1064
+ `${nt}px`
1065
+ ), C(ee, {
1057
1066
  active: !0,
1058
- canvas: Ie,
1059
- peekTranslateOverride: Ce,
1060
- sheetHeightOverride: rt
1061
- }), T.getBoundingClientRect(), T.style.removeProperty("transition"), O(Ae, {
1062
- canvas: Ie,
1063
- from: Zt,
1064
- initialVelocity: wt,
1067
+ canvas: He,
1068
+ peekTranslateOverride: Ve,
1069
+ sheetHeightOverride: nt
1070
+ }), g.getBoundingClientRect(), g.style.removeProperty("transition"), k(ke, {
1071
+ canvas: He,
1072
+ from: ee,
1073
+ initialVelocity: ht,
1065
1074
  intent: "sheet",
1066
- peekTranslateOverride: Ce,
1067
- sheetHeightOverride: rt,
1068
- onComplete: Oe
1069
- }), ke(), Ut?.(), d();
1075
+ peekTranslateOverride: Ve,
1076
+ sheetHeightOverride: nt,
1077
+ onComplete: Ne
1078
+ }), Fe(), Gt?.(), p();
1070
1079
  return;
1071
1080
  }
1072
- if (F === "peeked") {
1073
- O(p, {
1074
- peekTranslateOverride: p,
1081
+ if (N === "peeked") {
1082
+ k(d, {
1083
+ peekTranslateOverride: d,
1075
1084
  sheetHeightOverride: e
1076
- }), d();
1085
+ }), p();
1077
1086
  return;
1078
1087
  }
1079
- if (Wt.current) {
1080
- Wt.current = !1, d();
1088
+ if (Kt.current) {
1089
+ Kt.current = !1, p();
1081
1090
  return;
1082
1091
  }
1083
- const Y = c !== F;
1084
- if (!Pt(
1085
- u,
1086
- S
1092
+ const P = c !== N;
1093
+ if (!wt(
1094
+ a,
1095
+ D
1087
1096
  )) {
1088
- const T = W(), B = z.current !== null && (S > u && T < S || S < u && T > S);
1089
- if (Pt(T, u) || B) {
1090
- D(), A(S, {
1097
+ const g = _(), L = F.current !== null && (D > a && g < D || D < a && g > D);
1098
+ if (wt(g, a) || L) {
1099
+ Y(), C(D, {
1091
1100
  active: !1,
1092
- peekTranslateOverride: p,
1101
+ peekTranslateOverride: d,
1093
1102
  sheetHeightOverride: e
1094
- }), P(), d();
1103
+ }), v(), p();
1095
1104
  return;
1096
1105
  }
1097
1106
  }
1098
- if (!Y) {
1099
- d();
1107
+ if (!P) {
1108
+ p();
1100
1109
  return;
1101
1110
  }
1102
- O(S, {
1103
- peekTranslateOverride: p,
1111
+ k(D, {
1112
+ peekTranslateOverride: d,
1104
1113
  sheetHeightOverride: e
1105
- }), Mt.current = { kind: "default-snap" }, d();
1114
+ }), Bt.current = { kind: "default-snap" }, p();
1106
1115
  }, [
1107
1116
  r,
1108
- xt,
1109
- I,
1110
- W,
1111
- L,
1112
- v,
1113
- l,
1114
- o,
1115
- F,
1116
- Ut,
1117
- ie,
1117
+ vt,
1118
+ O,
1119
+ _,
1118
1120
  A,
1121
+ S,
1122
+ l,
1123
+ s,
1124
+ N,
1125
+ Gt,
1126
+ ue,
1127
+ C,
1119
1128
  V,
1120
- D,
1121
- P,
1122
- Pt,
1123
- O,
1124
- h,
1129
+ Y,
1130
+ v,
1131
+ wt,
1132
+ k,
1133
+ y,
1125
1134
  i,
1126
- S
1127
- ]), j(() => {
1128
- o !== "bottom" && jt.current && (jt.current = !1, D(), Pe());
1129
- }, [D, o, Pe]), j(() => {
1135
+ D
1136
+ ]), G(() => {
1137
+ s !== "bottom" && Jt.current && (Jt.current = !1, Y(), Se());
1138
+ }, [Y, s, Se]), G(() => {
1130
1139
  if (!l || !r || !E) {
1131
- const c = !l && o === "popup" && at.current, a = l && o !== "popup" && at.current;
1132
- at.current && !c && (_.current !== null && (window.cancelAnimationFrame(_.current), _.current = null), D(), ve({
1133
- preserveSnapPosition: a
1134
- })), at.current && c && (D(), P()), Kt.current = l && o === "popup", at.current = !1;
1140
+ const c = !l && s === "popup" && ot.current, u = l && s !== "popup" && ot.current;
1141
+ ot.current && !c && (U.current !== null && (window.cancelAnimationFrame(U.current), U.current = null), Y(), De({
1142
+ preserveSnapPosition: u
1143
+ })), ot.current && c && (Y(), v()), Qt.current = l && s === "popup", ot.current = !1;
1135
1144
  return;
1136
1145
  }
1137
- const t = Kt.current;
1138
- Kt.current = !0, at.current = !0;
1146
+ const t = Qt.current;
1147
+ Qt.current = !0, ot.current = !0;
1139
1148
  let e = null;
1140
- const n = (c) => pt({
1149
+ const n = (c) => ft({
1141
1150
  key: c,
1142
1151
  settle: t
1143
1152
  });
1144
1153
  return n(
1145
- K.current ?? bt.current
1154
+ K.current ?? Ct.current
1146
1155
  ) || (e = window.requestAnimationFrame(() => {
1147
1156
  e = null, n(
1148
- K.current ?? bt.current
1157
+ K.current ?? Ct.current
1149
1158
  );
1150
1159
  })), () => {
1151
1160
  e !== null && window.cancelAnimationFrame(e);
1152
1161
  };
1153
1162
  }, [
1154
- D,
1163
+ Y,
1155
1164
  r,
1156
- P,
1165
+ v,
1157
1166
  l,
1158
- o,
1159
- ye,
1167
+ s,
1168
+ Pe,
1160
1169
  E,
1161
- ve,
1162
- pt
1163
- ]), j(() => {
1170
+ De,
1171
+ ft
1172
+ ]), G(() => {
1164
1173
  if (!l || !r || !E) return;
1165
1174
  const t = () => {
1166
- X.current.dragging || _.current === null && (_.current = window.requestAnimationFrame(() => {
1167
- _.current = null, !X.current.dragging && pt({
1175
+ X.current.dragging || br(window.visualViewport) || U.current === null && (U.current = window.requestAnimationFrame(() => {
1176
+ U.current = null, !X.current.dragging && ft({
1168
1177
  key: K.current,
1169
1178
  settle: !1
1170
1179
  });
1171
1180
  }));
1172
1181
  };
1173
1182
  window.addEventListener("resize", t), window.visualViewport?.addEventListener("resize", t);
1174
- const e = i.current, n = e?.parentElement, c = typeof ResizeObserver > "u" ? null : new ResizeObserver(t), a = (u) => {
1175
- e && u.target instanceof Element && e.contains(u.target) && t();
1183
+ const e = i.current, n = e?.parentElement, c = typeof ResizeObserver > "u" ? null : new ResizeObserver(t), u = (a) => {
1184
+ e && a.target instanceof Element && e.contains(a.target) && t();
1176
1185
  };
1177
1186
  return c && (e && c.observe(e), n && c.observe(n)), e?.addEventListener(
1178
1187
  "transitionend",
1179
- a,
1188
+ u,
1180
1189
  !0
1181
1190
  ), e?.addEventListener(
1182
1191
  "transitioncancel",
1183
- a,
1192
+ u,
1184
1193
  !0
1185
1194
  ), () => {
1186
1195
  window.removeEventListener("resize", t), window.visualViewport?.removeEventListener("resize", t), e?.removeEventListener(
1187
1196
  "transitionend",
1188
- a,
1197
+ u,
1189
1198
  !0
1190
1199
  ), e?.removeEventListener(
1191
1200
  "transitioncancel",
1192
- a,
1201
+ u,
1193
1202
  !0
1194
- ), c?.disconnect(), _.current !== null && (window.cancelAnimationFrame(_.current), _.current = null);
1203
+ ), c?.disconnect(), U.current !== null && (window.cancelAnimationFrame(U.current), U.current = null);
1195
1204
  };
1196
1205
  }, [
1197
1206
  r,
1198
1207
  l,
1199
1208
  E,
1200
1209
  i,
1201
- pt
1202
- ]), j(() => {
1203
- if (ce <= 0 || !l || !r || !E)
1210
+ ft
1211
+ ]), G(() => {
1212
+ if (pe <= 0 || !l || !r || !E)
1204
1213
  return;
1205
1214
  let t = window.requestAnimationFrame(() => {
1206
- t = null, pt({
1215
+ t = null, ft({
1207
1216
  key: K.current,
1208
1217
  settle: !1
1209
1218
  });
@@ -1215,66 +1224,87 @@ function Kr({
1215
1224
  r,
1216
1225
  l,
1217
1226
  E,
1218
- ce,
1219
- pt
1227
+ pe,
1228
+ ft
1220
1229
  ]);
1221
- const Xe = f(
1230
+ const Me = f(
1222
1231
  (t, e, n) => {
1223
- if (typeof Element > "u" || !(t instanceof Element) || re(t)) return !1;
1224
- const c = Date.now(), a = e > 0, u = pr(t, U.current);
1225
- return !n && u && a && u.scrollTop > 0 || !n && Yt.current && c - Yt.current < le && Math.abs(W()) <= 1 ? (Yt.current = c, !1) : !0;
1232
+ if (typeof Element > "u" || !(t instanceof Element) || oe(t)) return !1;
1233
+ const c = Date.now(), u = e > 0, a = yr(t, $.current);
1234
+ return !n && a && u && a.scrollTop > 0 || !n && At.current && c - At.current < de && Math.abs(_()) <= 1 ? (At.current = c, !1) : !0;
1226
1235
  },
1227
- [W, le]
1228
- ), vt = f(
1236
+ [_, de]
1237
+ ), te = w(null), tt = f(() => {
1238
+ const t = te.current;
1239
+ t && (t.area.removeEventListener("pointerleave", t.listener), t.area.dataset.ocState === "hover" && delete t.area.dataset.ocState, te.current = null);
1240
+ }, []), be = f(
1241
+ (t, e) => {
1242
+ if (tt(), !je(t, e)) return;
1243
+ t.dataset.ocState = "hover";
1244
+ const n = (c) => {
1245
+ je(t, { x: c.clientX, y: c.clientY }) || tt();
1246
+ };
1247
+ t.addEventListener("pointerleave", n), te.current = { area: t, listener: n };
1248
+ },
1249
+ [tt]
1250
+ );
1251
+ Yt(() => () => tt(), [tt]);
1252
+ const St = f(
1229
1253
  ({
1230
1254
  chrome: t,
1231
1255
  pointerId: e = null,
1232
- selectionArbitration: n = !1,
1233
- source: c,
1256
+ pressedTarget: n = null,
1257
+ selectionArbitration: c = !1,
1258
+ source: u,
1234
1259
  startX: a = 0,
1235
- startY: u,
1236
- touchId: d = null
1260
+ startY: p,
1261
+ touchId: m = null
1237
1262
  }) => {
1238
- const { startTranslate: m, startTranslatePoint: p } = xe(), g = q();
1239
- X.current = {
1263
+ const { startTranslate: d, startTranslatePoint: h } = we(), P = q();
1264
+ tt();
1265
+ const I = X.current.pressedHandleArea;
1266
+ I && delete I.dataset.ocState;
1267
+ const g = t ? Ir(n) : null;
1268
+ g && (g.dataset.ocState = "pressed"), X.current = {
1240
1269
  dragging: !0,
1241
1270
  allowed: !1,
1242
1271
  chrome: t,
1243
- selectionArbitration: n,
1272
+ selectionArbitration: c,
1244
1273
  closeAllowed: null,
1245
1274
  started: !1,
1246
- source: c,
1275
+ source: u,
1247
1276
  startX: a,
1248
- startY: u,
1277
+ startY: p,
1249
1278
  lastX: a,
1250
- lastY: u,
1251
- startTranslateX: p.x,
1252
- startTranslate: m,
1253
- lastTranslateX: p.x,
1254
- lastTranslate: m,
1255
- startTime: g,
1279
+ lastY: p,
1280
+ startTranslateX: h.x,
1281
+ startTranslate: d,
1282
+ lastTranslateX: h.x,
1283
+ lastTranslate: d,
1284
+ startTime: P,
1256
1285
  samples: [
1257
1286
  {
1258
- time: g,
1287
+ time: P,
1259
1288
  pageX: a,
1260
- pageY: u,
1261
- translateX: p.x,
1262
- translateY: m
1289
+ pageY: p,
1290
+ translateX: h.x,
1291
+ translateY: d
1263
1292
  }
1264
1293
  ],
1265
1294
  pointerId: e,
1266
- touchId: d
1295
+ touchId: m,
1296
+ pressedHandleArea: g
1267
1297
  };
1268
1298
  },
1269
- [xe]
1270
- ), ft = f(
1299
+ [tt, we]
1300
+ ), mt = f(
1271
1301
  (t) => {
1272
- t.source === "touch" ? ot(!1) : t.source === "pointer" && J(!1), t.dragging = !1, t.allowed = !1, t.closeAllowed = null, t.started = !1, t.source = null, t.startX = 0, t.startY = 0, t.lastX = 0, t.lastY = 0, t.startTranslateX = 0, t.startTranslate = 0, t.lastTranslateX = 0, t.lastTranslate = 0, t.pointerId = null, t.touchId = null;
1302
+ t.source === "touch" ? st(!1) : t.source === "pointer" && Z(!1), t.pressedHandleArea && (delete t.pressedHandleArea.dataset.ocState, t.pressedHandleArea = null), t.dragging = !1, t.allowed = !1, t.closeAllowed = null, t.started = !1, t.source = null, t.startX = 0, t.startY = 0, t.lastX = 0, t.lastY = 0, t.startTranslateX = 0, t.startTranslate = 0, t.lastTranslateX = 0, t.lastTranslate = 0, t.pointerId = null, t.touchId = null;
1273
1303
  },
1274
- [J, ot]
1275
- ), Ye = f(
1304
+ [Z, st]
1305
+ ), Ae = f(
1276
1306
  (t, e) => {
1277
- const n = st(), c = it();
1307
+ const n = it(), c = lt();
1278
1308
  t.startX = e.x, t.startY = e.y, t.lastX = e.x, t.lastY = e.y, t.startTranslateX = c.x, t.startTranslate = n, t.lastTranslateX = c.x, t.lastTranslate = n, t.startTime = q(), t.samples = [
1279
1309
  {
1280
1310
  time: t.startTime,
@@ -1285,74 +1315,74 @@ function Kr({
1285
1315
  }
1286
1316
  ];
1287
1317
  },
1288
- [st, it]
1289
- ), Ee = f(
1318
+ [it, lt]
1319
+ ), Le = f(
1290
1320
  ({
1291
1321
  currentTranslate: t,
1292
1322
  dismissible: e,
1293
1323
  releaseVelocity: n,
1294
1324
  deltaY: c,
1295
- startTranslate: a
1325
+ startTranslate: u
1296
1326
  }) => {
1297
- const u = I(), d = Q(), m = v.map(
1298
- (p) => N(u - p, 0, u)
1327
+ const a = O(), p = J(), m = S.map(
1328
+ (d) => H(a - d, 0, a)
1299
1329
  );
1300
- return vr({
1301
- closeThreshold: Xt,
1330
+ return Yr({
1331
+ closeThreshold: bt,
1302
1332
  currentTranslate: t,
1303
1333
  deltaY: c,
1304
1334
  dismissible: e,
1305
- peekTranslate: d,
1335
+ peekTranslate: p,
1306
1336
  releaseVelocity: n,
1307
1337
  restingTranslates: m,
1308
- sheetHeight: u,
1309
- startTranslate: a
1338
+ sheetHeight: a,
1339
+ startTranslate: u
1310
1340
  }).translate;
1311
1341
  },
1312
- [Xt, Q, I, v]
1313
- ), It = f(
1342
+ [bt, J, O, S]
1343
+ ), Ht = f(
1314
1344
  (t) => {
1315
- const e = L ?? I();
1316
- Mt.current = yr({
1317
- defaultTranslate: S,
1345
+ const e = A ?? O();
1346
+ Bt.current = wr({
1347
+ defaultTranslate: D,
1318
1348
  sheetHeight: e,
1319
- snapHeights: v,
1349
+ snapHeights: S,
1320
1350
  translate: t
1321
1351
  });
1322
1352
  },
1323
- [I, L, v, S]
1324
- ), nr = f(() => {
1325
- if (o !== "bottom") return !1;
1326
- const t = Tr({
1353
+ [O, A, S, D]
1354
+ ), lr = f(() => {
1355
+ if (s !== "bottom") return !1;
1356
+ const t = Sr({
1327
1357
  backdropFromHeight: V,
1328
- currentTranslate: W(),
1329
- sheetHeight: L ?? I(),
1330
- snapHeights: v
1358
+ currentTranslate: _(),
1359
+ sheetHeight: A ?? O(),
1360
+ snapHeights: S
1331
1361
  });
1332
- return t === null ? !1 : (O(t, { intent: "sheet" }), It(t), !0);
1362
+ return t === null ? !1 : (k(t, { intent: "sheet" }), Ht(t), !0);
1333
1363
  }, [
1334
1364
  V,
1335
- It,
1336
- I,
1337
- W,
1338
- o,
1365
+ Ht,
1339
1366
  O,
1340
- L,
1341
- v
1342
- ]), ar = f(
1367
+ _,
1368
+ s,
1369
+ k,
1370
+ A,
1371
+ S
1372
+ ]), cr = f(
1343
1373
  (t) => {
1344
- if (!r || o !== "bottom" && !E || s === !1 || t.pointerType === "touch") return;
1374
+ if (!r || s !== "bottom" && !E || o === !1 || t.pointerType === "touch") return;
1345
1375
  let e = !1;
1346
- if (s === "handle" && $e(t.target))
1376
+ if (o === "handle" && Ge(t.target))
1347
1377
  e = !0;
1348
- else if (s === "handle")
1378
+ else if (o === "handle")
1349
1379
  return;
1350
- if (!e && re(t.target)) return;
1351
- if (s === "content" && (e = Re(t.target), !Mr(t, e))) {
1352
- o === "bottom" && !fr({
1380
+ if (!e && oe(t.target)) return;
1381
+ if (o === "content" && (e = We(t.target), !Or(t, e))) {
1382
+ s === "bottom" && !Tr({
1353
1383
  target: t.target,
1354
- boundary: U.current
1355
- }) && vt({
1384
+ boundary: $.current
1385
+ }) && St({
1356
1386
  chrome: !1,
1357
1387
  pointerId: t.pointerId,
1358
1388
  selectionArbitration: !0,
@@ -1362,161 +1392,162 @@ function Kr({
1362
1392
  });
1363
1393
  return;
1364
1394
  }
1365
- const n = Er(t.target);
1366
- vt({
1395
+ const n = Cr(t.target);
1396
+ St({
1367
1397
  chrome: e,
1368
1398
  pointerId: t.pointerId,
1399
+ pressedTarget: t.target,
1369
1400
  source: "pointer",
1370
1401
  startX: t.pageX,
1371
1402
  startY: t.pageY
1372
- }), Yr(t.target) || t.preventDefault(), J(!0), !n && typeof t.currentTarget.setPointerCapture == "function" && t.currentTarget.setPointerCapture(t.pointerId);
1403
+ }), Br(t.target) || t.preventDefault(), Z(!0), !n && typeof t.currentTarget.setPointerCapture == "function" && t.currentTarget.setPointerCapture(t.pointerId);
1373
1404
  },
1374
1405
  [
1375
- vt,
1376
- s,
1377
- r,
1406
+ St,
1378
1407
  o,
1408
+ r,
1409
+ s,
1379
1410
  E,
1380
- J
1411
+ Z
1381
1412
  ]
1382
- ), mt = f(
1413
+ ), gt = f(
1383
1414
  (t, e) => {
1384
- if (!H) return !1;
1415
+ if (!z) return !1;
1385
1416
  if (e <= 0) return !0;
1386
1417
  if (t.closeAllowed !== null) return t.closeAllowed;
1387
- const n = se({ reason: "drag-dismiss" });
1418
+ const n = ce({ reason: "drag-dismiss" });
1388
1419
  return t.closeAllowed = n, n;
1389
1420
  },
1390
- [se, H]
1391
- ), Ot = f(
1421
+ [ce, z]
1422
+ ), Nt = f(
1392
1423
  ({
1393
1424
  closeAllowed: t,
1394
1425
  currentTranslate: e,
1395
1426
  deltaY: n,
1396
1427
  releaseVelocity: c,
1397
- startTranslate: a
1428
+ startTranslate: u
1398
1429
  }) => {
1399
- const d = Ee({
1430
+ const p = Le({
1400
1431
  currentTranslate: e,
1401
- dismissible: H && t !== !1,
1432
+ dismissible: z && t !== !1,
1402
1433
  releaseVelocity: c,
1403
1434
  deltaY: n,
1404
- startTranslate: a
1405
- }), m = I(), p = Q();
1406
- if (d >= m - 1) {
1407
- nt({ reason: "drag-dismiss" }, { commit: !1 }) ? De(d, {
1435
+ startTranslate: u
1436
+ }), m = O(), d = J();
1437
+ if (p >= m - 1) {
1438
+ at({ reason: "drag-dismiss" }, { commit: !1 }) ? Ee(p, {
1408
1439
  from: e,
1409
1440
  initialVelocity: c
1410
- }) : O(a, {
1441
+ }) : k(u, {
1411
1442
  from: e,
1412
1443
  initialVelocity: c
1413
1444
  });
1414
1445
  return;
1415
1446
  }
1416
- p > 0 && d >= p - 1 ? Rt("peeked") : (Ir({
1417
- presentationState: F,
1418
- releaseTranslate: d,
1419
- visibleTranslate: S
1420
- }) && (Wt.current = !0), Rt("visible"), It(d)), O(d, {
1447
+ d > 0 && p >= d - 1 ? _t("peeked") : (zr({
1448
+ presentationState: N,
1449
+ releaseTranslate: p,
1450
+ visibleTranslate: D
1451
+ }) && (Kt.current = !0), _t("visible"), Ht(p)), k(p, {
1421
1452
  from: e,
1422
1453
  initialVelocity: c
1423
1454
  });
1424
1455
  },
1425
1456
  [
1426
- De,
1427
- It,
1428
- H,
1429
- Q,
1430
1457
  Ee,
1431
- I,
1432
- F,
1433
- nt,
1434
- Rt,
1458
+ Ht,
1459
+ z,
1460
+ J,
1461
+ Le,
1435
1462
  O,
1436
- S
1463
+ N,
1464
+ at,
1465
+ _t,
1466
+ k,
1467
+ D
1437
1468
  ]
1438
- ), kt = f(
1469
+ ), Ft = f(
1439
1470
  ({
1440
1471
  currentTranslate: t,
1441
1472
  releaseDelta: e,
1442
1473
  releaseTranslate: n,
1443
1474
  releaseVelocity: c
1444
1475
  }) => {
1445
- const a = lt();
1446
- if (!a) return;
1447
- const u = xr({
1476
+ const u = ct();
1477
+ if (!u) return;
1478
+ const a = Dr({
1448
1479
  currentPoint: n,
1449
1480
  velocity: c,
1450
- targets: a.targets
1451
- }), d = a.targets.find(
1452
- (Y) => Y.key === K.current
1453
- ) ?? a.defaultTarget, p = i.current?.getBoundingClientRect(), g = {
1454
- x: d.x + e.x,
1455
- y: d.y + e.y
1481
+ targets: u.targets
1482
+ }), p = u.targets.find(
1483
+ (P) => P.key === K.current
1484
+ ) ?? u.defaultTarget, d = i.current?.getBoundingClientRect(), h = {
1485
+ x: p.x + e.x,
1486
+ y: p.y + e.y
1456
1487
  };
1457
- if (H && p && Cr({
1458
- closeThreshold: Xt,
1459
- currentTarget: d,
1460
- currentTranslate: g,
1461
- releaseTarget: u,
1488
+ if (z && d && Fr({
1489
+ closeThreshold: bt,
1490
+ currentTarget: p,
1491
+ currentTranslate: h,
1492
+ releaseTarget: a,
1462
1493
  surfaceSize: {
1463
- height: p.height,
1464
- width: p.width
1494
+ height: d.height,
1495
+ width: d.width
1465
1496
  },
1466
- targets: a.targets
1467
- }) && nt({ reason: "drag-dismiss" })) {
1468
- G(), P();
1497
+ targets: u.targets
1498
+ }) && at({ reason: "drag-dismiss" })) {
1499
+ W(), v();
1469
1500
  return;
1470
1501
  }
1471
- if (K.current = u.key, R.current) {
1472
- Ct(u);
1502
+ if (K.current = a.key, R.current) {
1503
+ Vt(a);
1473
1504
  return;
1474
1505
  }
1475
- Z(u, {
1506
+ Q(a, {
1476
1507
  from: t,
1477
1508
  initialVelocity: c
1478
1509
  });
1479
1510
  },
1480
1511
  [
1481
- G,
1482
- Xt,
1483
- H,
1484
- P,
1485
- lt,
1486
- nt,
1487
- Ct,
1488
- Z,
1512
+ W,
1513
+ bt,
1514
+ z,
1515
+ v,
1516
+ ct,
1517
+ at,
1518
+ Vt,
1519
+ Q,
1489
1520
  i
1490
1521
  ]
1491
- ), or = f(
1522
+ ), ur = f(
1492
1523
  (t) => {
1493
1524
  const e = X.current;
1494
- if (!e.dragging || e.source !== "pointer" || !r || o !== "bottom" && !E)
1525
+ if (!e.dragging || e.source !== "pointer" || !r || s !== "bottom" && !E)
1495
1526
  return;
1496
- const n = t.pageX - e.startX, c = t.pageY - e.startY, a = t.pointerType === "touch" ? $.dragStartThresholdPx.touch : $.dragStartThresholdPx.mouse;
1497
- if (!(!e.started && ze({ deltaX: n, deltaY: c, placement: o }) < a)) {
1527
+ const n = t.pageX - e.startX, c = t.pageY - e.startY, u = t.pointerType === "touch" ? j.dragStartThresholdPx.touch : j.dragStartThresholdPx.mouse;
1528
+ if (!(!e.started && Ue({ deltaX: n, deltaY: c, placement: s }) < u)) {
1498
1529
  if (e.selectionArbitration && !e.allowed) {
1499
- const u = Math.abs(n), d = Math.abs(c), m = $.selectionArbitrationThresholdPx;
1500
- if (u >= m && u >= d) {
1530
+ const a = Math.abs(n), p = Math.abs(c), m = j.selectionArbitrationThresholdPx;
1531
+ if (a >= m && a >= p) {
1501
1532
  e.dragging = !1;
1502
1533
  return;
1503
1534
  }
1504
- if (d < m || d <= u)
1535
+ if (p < m || p <= a)
1505
1536
  return;
1506
- window.getSelection?.()?.removeAllRanges(), J(!0);
1537
+ window.getSelection?.()?.removeAllRanges(), Z(!0);
1507
1538
  }
1508
1539
  if (!e.allowed) {
1509
- if (o === "bottom" && !Xe(t.target, c, e.chrome))
1540
+ if (s === "bottom" && !Me(t.target, c, e.chrome))
1510
1541
  return;
1511
1542
  e.allowed = !0, e.started = !0;
1512
- const u = t.currentTarget;
1513
- e.pointerId !== null && typeof u.hasPointerCapture == "function" && typeof u.setPointerCapture == "function" && !u.hasPointerCapture(e.pointerId) && u.setPointerCapture(e.pointerId);
1543
+ const a = t.currentTarget;
1544
+ e.pointerId !== null && typeof a.hasPointerCapture == "function" && typeof a.setPointerCapture == "function" && !a.hasPointerCapture(e.pointerId) && a.setPointerCapture(e.pointerId);
1514
1545
  }
1515
- if (t.preventDefault(), e.lastX = t.pageX, e.lastY = t.pageY, o === "popup")
1516
- dt(e, t), Ge(e, t);
1546
+ if (t.preventDefault(), e.lastX = t.pageX, e.lastY = t.pageY, s === "popup")
1547
+ pt(e, t), Qe(e, t);
1517
1548
  else {
1518
- const u = e.startTranslate + c, d = mt(e, c);
1519
- ct(u, d), St(e, {
1549
+ const a = e.startTranslate + c, p = gt(e, c);
1550
+ ut(a, p), Et(e, {
1520
1551
  pageX: t.pageX,
1521
1552
  pageY: t.pageY,
1522
1553
  translateX: e.lastTranslateX,
@@ -1527,143 +1558,148 @@ function Kr({
1527
1558
  },
1528
1559
  [
1529
1560
  r,
1530
- dt,
1531
- mt,
1532
- o,
1561
+ pt,
1562
+ gt,
1563
+ s,
1533
1564
  E,
1534
- J,
1535
- ct,
1536
- Xe
1565
+ Z,
1566
+ ut,
1567
+ Me
1537
1568
  ]
1538
- ), tt = f(
1569
+ ), et = f(
1539
1570
  ({
1540
1571
  currentTarget: t,
1541
- pageX: e,
1542
- pageY: n,
1543
- releaseCapture: c = !0
1572
+ hoverPoint: e = null,
1573
+ pageX: n,
1574
+ pageY: c,
1575
+ releaseCapture: u = !0
1544
1576
  }) => {
1545
1577
  const a = X.current;
1546
- if (!a.dragging || a.source !== "pointer" || !r || o !== "bottom" && !E)
1578
+ if (!a.dragging || a.source !== "pointer" || !r || s !== "bottom" && !E)
1547
1579
  return;
1548
- const u = a.started, d = Number.isFinite(e) ? e : a.lastX, m = Number.isFinite(n) ? n : a.lastY, p = d - a.startX, g = m - a.startY, Y = Math.max(q() - a.startTime, 1);
1549
- let C = {
1580
+ const p = a.started, m = Number.isFinite(n) ? n : a.lastX, d = Number.isFinite(c) ? c : a.lastY, h = m - a.startX, P = d - a.startY, I = Math.max(q() - a.startTime, 1);
1581
+ let g = {
1550
1582
  x: a.lastTranslateX,
1551
1583
  y: a.lastTranslate
1552
- }, T = C;
1553
- const b = a.startTranslate;
1554
- if (u)
1555
- if (o === "popup")
1556
- dt(a, {
1557
- pageX: d,
1558
- pageY: m
1559
- }), C = {
1584
+ }, M = g;
1585
+ const L = a.startTranslate;
1586
+ if (p)
1587
+ if (s === "popup")
1588
+ pt(a, {
1589
+ pageX: m,
1590
+ pageY: d
1591
+ }), g = {
1560
1592
  x: a.lastTranslateX,
1561
1593
  y: a.lastTranslate
1562
- }, T = Ft(a, {
1563
- pageX: d,
1564
- pageY: m
1594
+ }, M = Rt(a, {
1595
+ pageX: m,
1596
+ pageY: d
1565
1597
  });
1566
1598
  else {
1567
- const k = a.startTranslate + g, wt = mt(a, g);
1568
- ct(k, wt), C = {
1599
+ const B = a.startTranslate + P, Xt = gt(a, P);
1600
+ ut(B, Xt), g = {
1569
1601
  x: a.lastTranslateX,
1570
1602
  y: a.lastTranslate
1571
1603
  };
1572
1604
  }
1573
- const B = a.closeAllowed;
1574
- if (c && t && a.pointerId !== null && t.hasPointerCapture(a.pointerId) && t.releasePointerCapture(a.pointerId), u) {
1575
- const k = o === "popup" ? T : {
1605
+ const rt = a.closeAllowed;
1606
+ if (u && t && a.pointerId !== null && t.hasPointerCapture(a.pointerId) && t.releasePointerCapture(a.pointerId), p) {
1607
+ const B = s === "popup" ? M : {
1576
1608
  x: a.lastTranslateX,
1577
1609
  y: a.lastTranslate
1578
1610
  };
1579
- St(a, {
1580
- pageX: d,
1581
- pageY: m,
1582
- translateX: k.x,
1583
- translateY: k.y
1611
+ Et(a, {
1612
+ pageX: m,
1613
+ pageY: d,
1614
+ translateX: B.x,
1615
+ translateY: B.y
1584
1616
  });
1585
1617
  }
1586
- if (ft(a), !!u)
1587
- if (Tt.current = q() + 500, o === "popup") {
1588
- const k = Ke({
1618
+ const ht = a.pressedHandleArea;
1619
+ if (mt(a), e && ht && be(ht, e), !!p)
1620
+ if (Pt.current = q() + 500, s === "popup") {
1621
+ const B = tr({
1589
1622
  session: a,
1590
- fallbackDelta: { x: p, y: g },
1591
- fallbackElapsed: Y
1623
+ fallbackDelta: { x: h, y: P },
1624
+ fallbackElapsed: I
1592
1625
  });
1593
- kt({
1594
- currentTranslate: C,
1595
- releaseDelta: { x: p, y: g },
1596
- releaseTranslate: T,
1597
- releaseVelocity: k
1626
+ Ft({
1627
+ currentTranslate: g,
1628
+ releaseDelta: { x: h, y: P },
1629
+ releaseTranslate: M,
1630
+ releaseVelocity: B
1598
1631
  });
1599
1632
  } else {
1600
- const k = je({
1633
+ const B = qe({
1601
1634
  session: a,
1602
- fallbackDeltaY: g,
1603
- fallbackElapsed: Y
1635
+ fallbackDeltaY: P,
1636
+ fallbackElapsed: I
1604
1637
  });
1605
- Ot({
1606
- closeAllowed: B,
1607
- currentTranslate: C.y,
1608
- deltaY: g,
1609
- releaseVelocity: k,
1610
- startTranslate: b
1638
+ Nt({
1639
+ closeAllowed: rt,
1640
+ currentTranslate: g.y,
1641
+ deltaY: P,
1642
+ releaseVelocity: B,
1643
+ startTranslate: L
1611
1644
  });
1612
1645
  }
1613
1646
  },
1614
1647
  [
1615
- Ot,
1616
- kt,
1648
+ be,
1649
+ Nt,
1650
+ Ft,
1617
1651
  r,
1618
- dt,
1619
- mt,
1620
- o,
1652
+ pt,
1653
+ gt,
1654
+ s,
1621
1655
  E,
1622
- ft,
1623
- ct
1656
+ mt,
1657
+ ut
1624
1658
  ]
1625
- ), Me = f(
1659
+ ), Be = f(
1626
1660
  (t) => {
1627
- tt({
1661
+ et({
1628
1662
  currentTarget: t.currentTarget,
1663
+ hoverPoint: t.type === "pointerup" && t.pointerType !== "touch" ? { x: t.clientX, y: t.clientY } : null,
1629
1664
  pageX: t.pageX,
1630
1665
  pageY: t.pageY
1631
1666
  });
1632
1667
  },
1633
- [tt]
1634
- ), sr = f(
1668
+ [et]
1669
+ ), dr = f(
1635
1670
  (t) => {
1636
1671
  const e = X.current;
1637
- e.pointerId !== null && t.pointerId !== e.pointerId || tt({
1672
+ e.pointerId !== null && t.pointerId !== e.pointerId || et({
1638
1673
  pageX: t.pageX,
1639
1674
  pageY: t.pageY,
1640
1675
  releaseCapture: !1
1641
1676
  });
1642
1677
  },
1643
- [tt]
1678
+ [et]
1644
1679
  );
1645
- Nt(() => {
1680
+ Yt(() => {
1646
1681
  if (!r) return;
1647
- const t = (a) => {
1648
- const u = X.current;
1649
- !u.dragging || u.source !== "pointer" || "pointerId" in a && u.pointerId !== null && a.pointerId !== u.pointerId || tt({
1650
- pageX: a.pageX,
1651
- pageY: a.pageY,
1682
+ const t = (u) => {
1683
+ const a = X.current;
1684
+ !a.dragging || a.source !== "pointer" || "pointerId" in u && a.pointerId !== null && u.pointerId !== a.pointerId || et({
1685
+ hoverPoint: u.type === "pointerup" && (!("pointerType" in u) || u.pointerType !== "touch") ? { x: u.clientX, y: u.clientY } : null,
1686
+ pageX: u.pageX,
1687
+ pageY: u.pageY,
1652
1688
  releaseCapture: !1
1653
1689
  });
1654
1690
  }, e = () => {
1655
- const a = X.current;
1656
- !a.dragging || a.source !== "pointer" || tt({
1657
- pageX: a.lastX,
1658
- pageY: a.lastY,
1691
+ const u = X.current;
1692
+ !u.dragging || u.source !== "pointer" || et({
1693
+ pageX: u.lastX,
1694
+ pageY: u.lastY,
1659
1695
  releaseCapture: !1
1660
1696
  });
1661
- }, n = (a) => {
1662
- const u = X.current;
1663
- !u.dragging || u.source !== "pointer" || a.relatedTarget === null && t(a);
1664
- }, c = (a) => {
1665
- const u = X.current;
1666
- !u.dragging || u.source !== "pointer" || a.relatedTarget === null && t(a);
1697
+ }, n = (u) => {
1698
+ const a = X.current;
1699
+ !a.dragging || a.source !== "pointer" || u.relatedTarget === null && t(u);
1700
+ }, c = (u) => {
1701
+ const a = X.current;
1702
+ !a.dragging || a.source !== "pointer" || u.relatedTarget === null && t(u);
1667
1703
  };
1668
1704
  return document.addEventListener("pointerout", n, !0), document.addEventListener("mouseout", c, !0), window.addEventListener("pointerup", t, !0), window.addEventListener(
1669
1705
  "pointercancel",
@@ -1684,41 +1720,70 @@ function Kr({
1684
1720
  !0
1685
1721
  ), window.removeEventListener("blur", e);
1686
1722
  };
1687
- }, [tt, r]), Nt(() => {
1723
+ }, [et, r]), Yt(() => {
1688
1724
  if (!r) return;
1689
1725
  const t = (e) => {
1690
- const n = Tt.current;
1726
+ const n = Pt.current;
1691
1727
  if (n <= 0) return;
1692
1728
  if (q() > n) {
1693
- Tt.current = 0;
1729
+ Pt.current = 0;
1694
1730
  return;
1695
1731
  }
1696
1732
  const c = i.current;
1697
- c && e.target instanceof Node && c.contains(e.target) && (Tt.current = 0, e.preventDefault(), e.stopPropagation());
1733
+ c && e.target instanceof Node && c.contains(e.target) && (Pt.current = 0, e.preventDefault(), e.stopPropagation());
1698
1734
  };
1699
1735
  return document.addEventListener("click", t, !0), () => {
1700
1736
  document.removeEventListener("click", t, !0);
1701
1737
  };
1702
1738
  }, [r, i]);
1703
- const Vt = f((t) => {
1739
+ const zt = f((t) => {
1704
1740
  const e = X.current;
1705
- return e.touchId !== null ? _e(t.changedTouches, e.touchId) ?? _e(t.touches, e.touchId) : t.touches[0] ?? t.changedTouches[0] ?? null;
1706
- }, []), ir = f(
1741
+ return e.touchId !== null ? Ze(t.changedTouches, e.touchId) ?? Ze(t.touches, e.touchId) : t.touches[0] ?? t.changedTouches[0] ?? null;
1742
+ }, []), Dt = f(() => {
1743
+ const t = X.current;
1744
+ if (!t.dragging || t.source !== "touch") return;
1745
+ const e = t.started, n = t.startTranslate, c = t.lastTranslate, u = {
1746
+ x: t.startTranslateX,
1747
+ y: t.startTranslate
1748
+ }, a = {
1749
+ x: t.lastTranslateX,
1750
+ y: t.lastTranslate
1751
+ }, p = s;
1752
+ if (mt(t), !!e) {
1753
+ if (p === "popup") {
1754
+ R.current ? Vt(u) : Q(u, { from: a });
1755
+ return;
1756
+ }
1757
+ k(n, { from: c });
1758
+ }
1759
+ }, [
1760
+ s,
1761
+ mt,
1762
+ Vt,
1763
+ Q,
1764
+ k
1765
+ ]), pr = f(
1707
1766
  (t) => {
1708
- if (!r || o !== "bottom" && !E || s === !1 || t.touches.length !== 1) return;
1767
+ if (!r || s !== "bottom" && !E || o === !1)
1768
+ return;
1769
+ if (t.touches.length !== 1) {
1770
+ Dt();
1771
+ return;
1772
+ }
1709
1773
  let e = !1;
1710
- if (s === "handle" && $e(t.target))
1774
+ if (o === "handle" && Ge(t.target))
1711
1775
  e = !0;
1712
- else if (s === "handle")
1776
+ else if (o === "handle")
1713
1777
  return;
1714
- if (!e && re(t.target)) return;
1715
- s === "content" && (e = Re(t.target));
1778
+ if (!e && oe(t.target)) return;
1779
+ o === "content" && (e = We(t.target));
1716
1780
  const n = t.touches[0];
1717
- o === "bottom" && Lt({
1781
+ s === "bottom" && It({
1718
1782
  target: t.target,
1719
1783
  chrome: e
1720
- }), vt({
1784
+ }), St({
1721
1785
  chrome: e,
1786
+ pressedTarget: t.target,
1722
1787
  source: "touch",
1723
1788
  startX: n.pageX,
1724
1789
  startY: n.pageY,
@@ -1726,51 +1791,56 @@ function Kr({
1726
1791
  });
1727
1792
  },
1728
1793
  [
1729
- vt,
1730
- s,
1731
- r,
1794
+ St,
1732
1795
  o,
1796
+ r,
1797
+ Dt,
1798
+ s,
1733
1799
  E,
1734
- Lt
1800
+ It
1735
1801
  ]
1736
- ), be = f(
1802
+ ), Ce = f(
1737
1803
  (t) => {
1738
1804
  const e = X.current;
1739
- if (!e.dragging || e.source !== "touch" || !r || o !== "bottom" && !E)
1805
+ if (!e.dragging || e.source !== "touch" || !r || s !== "bottom" && !E)
1740
1806
  return;
1741
- const n = Vt(t);
1807
+ if (t.touches.length !== 1) {
1808
+ Dt();
1809
+ return;
1810
+ }
1811
+ const n = zt(t);
1742
1812
  if (!n) return;
1743
- const c = n.pageX - e.startX, a = n.pageY - e.startY, u = ze({
1813
+ const c = n.pageX - e.startX, u = n.pageY - e.startY, a = Ue({
1744
1814
  deltaX: c,
1745
- deltaY: a,
1746
- placement: o
1747
- }), d = $.dragStartThresholdPx.touch, m = o === "bottom" ? mr({
1815
+ deltaY: u,
1816
+ placement: s
1817
+ }), p = j.dragStartThresholdPx.touch, m = s === "bottom" ? xr({
1748
1818
  target: t.target,
1749
- deltaY: a,
1819
+ deltaY: u,
1750
1820
  chrome: e.chrome,
1751
- bodyNode: U.current,
1752
- canExpand: st() > 1
1753
- }) : gr({
1821
+ bodyNode: $.current,
1822
+ canExpand: it() > 1
1823
+ }) : Pr({
1754
1824
  target: t.target,
1755
- bodyNode: U.current
1825
+ bodyNode: $.current
1756
1826
  });
1757
1827
  if (m.preventDefault) {
1758
- const g = o === "bottom" && Math.abs(c) > Math.abs(a) && Math.abs(a) < d && !e.started && u < d;
1759
- !g && o === "bottom" && Lt({
1828
+ const h = s === "bottom" && Math.abs(c) > Math.abs(u) && Math.abs(u) < p && !e.started && a < p;
1829
+ !h && s === "bottom" && It({
1760
1830
  target: t.target,
1761
1831
  chrome: e.chrome
1762
- }), g || Fe(t);
1832
+ }), h || $e(t);
1763
1833
  }
1764
1834
  if (m.resetAnchor) {
1765
- ot(!1), Ye(e, { x: n.pageX, y: n.pageY });
1835
+ st(!1), Ae(e, { x: n.pageX, y: n.pageY });
1766
1836
  return;
1767
1837
  }
1768
- if (m.allowDrag && !(!e.started && u < d))
1769
- if (e.allowed || (e.allowed = !0, e.started = !0), m.preventDefault || Fe(t), e.lastX = n.pageX, e.lastY = n.pageY, o === "popup")
1770
- dt(e, n), Ge(e, n);
1838
+ if (m.allowDrag && !(!e.started && a < p))
1839
+ if (e.allowed || (e.allowed = !0, e.started = !0), m.preventDefault || $e(t), e.lastX = n.pageX, e.lastY = n.pageY, s === "popup")
1840
+ pt(e, n), Qe(e, n);
1771
1841
  else {
1772
- const p = e.startTranslate + a, g = mt(e, a);
1773
- ct(p, g), St(e, {
1842
+ const d = e.startTranslate + u, h = gt(e, u);
1843
+ ut(d, h), Et(e, {
1774
1844
  pageX: n.pageX,
1775
1845
  pageY: n.pageY,
1776
1846
  translateX: e.lastTranslateX,
@@ -1780,22 +1850,23 @@ function Kr({
1780
1850
  },
1781
1851
  [
1782
1852
  r,
1783
- dt,
1784
- mt,
1785
- st,
1786
- Vt,
1787
- o,
1853
+ Dt,
1854
+ pt,
1855
+ gt,
1856
+ it,
1857
+ zt,
1858
+ s,
1788
1859
  E,
1789
- Ye,
1790
- ot,
1791
- ct,
1792
- Lt
1860
+ Ae,
1861
+ st,
1862
+ ut,
1863
+ It
1793
1864
  ]
1794
1865
  );
1795
- Nt(() => {
1796
- if (!l || !r || o !== "bottom" && !E || s === !1 || typeof window > "u") return;
1866
+ Yt(() => {
1867
+ if (!l || !r || s !== "bottom" && !E || o === !1 || typeof window > "u") return;
1797
1868
  const t = (e) => {
1798
- be(e);
1869
+ Ce(e);
1799
1870
  };
1800
1871
  return window.addEventListener("touchmove", t, {
1801
1872
  capture: !0,
@@ -1803,111 +1874,88 @@ function Kr({
1803
1874
  }), () => {
1804
1875
  window.removeEventListener("touchmove", t, !0);
1805
1876
  };
1806
- }, [s, r, be, l, o, E]);
1807
- const lr = f(
1877
+ }, [o, r, Ce, l, s, E]);
1878
+ const fr = f(
1808
1879
  (t) => {
1809
1880
  const e = X.current;
1810
- if (!e.dragging || e.source !== "touch" || !r || o !== "bottom" && !E)
1881
+ if (!e.dragging || e.source !== "touch" || !r || s !== "bottom" && !E)
1811
1882
  return;
1812
- const n = Vt(t), c = n?.pageX ?? e.lastX, a = n?.pageY ?? e.lastY, u = e.started, d = e.closeAllowed, m = c - e.startX, p = a - e.startY, g = Math.max(q() - e.startTime, 1);
1813
- o === "popup" && ut();
1814
- const Y = {
1883
+ const n = zt(t), c = n?.pageX ?? e.lastX, u = n?.pageY ?? e.lastY, a = e.started, p = e.closeAllowed, m = c - e.startX, d = u - e.startY, h = Math.max(q() - e.startTime, 1);
1884
+ s === "popup" && dt();
1885
+ const P = {
1815
1886
  x: e.lastTranslateX,
1816
1887
  y: e.lastTranslate
1817
1888
  };
1818
- let C = Y;
1819
- const T = e.startTranslate;
1820
- if (u) {
1821
- const b = o === "popup" ? Ft(e, {
1889
+ let I = P;
1890
+ const g = e.startTranslate;
1891
+ if (a) {
1892
+ const M = s === "popup" ? Rt(e, {
1822
1893
  pageX: c,
1823
- pageY: a
1894
+ pageY: u
1824
1895
  }) : {
1825
1896
  x: e.lastTranslateX,
1826
1897
  y: e.lastTranslate
1827
1898
  };
1828
- C = b, St(e, {
1899
+ I = M, Et(e, {
1829
1900
  pageX: c,
1830
- pageY: a,
1831
- translateX: b.x,
1832
- translateY: b.y
1901
+ pageY: u,
1902
+ translateX: M.x,
1903
+ translateY: M.y
1833
1904
  });
1834
1905
  }
1835
- if (ft(e), !!u)
1836
- if (Tt.current = q() + 500, o === "popup") {
1837
- const b = Ke({
1906
+ if (mt(e), !!a)
1907
+ if (Pt.current = q() + 500, s === "popup") {
1908
+ const M = tr({
1838
1909
  session: e,
1839
- fallbackDelta: { x: m, y: p },
1840
- fallbackElapsed: g
1910
+ fallbackDelta: { x: m, y: d },
1911
+ fallbackElapsed: h
1841
1912
  });
1842
- kt({
1843
- currentTranslate: Y,
1844
- releaseDelta: { x: m, y: p },
1845
- releaseTranslate: C,
1846
- releaseVelocity: b
1913
+ Ft({
1914
+ currentTranslate: P,
1915
+ releaseDelta: { x: m, y: d },
1916
+ releaseTranslate: I,
1917
+ releaseVelocity: M
1847
1918
  });
1848
1919
  } else {
1849
- const b = je({
1920
+ const M = qe({
1850
1921
  session: e,
1851
- fallbackDeltaY: p,
1852
- fallbackElapsed: g
1922
+ fallbackDeltaY: d,
1923
+ fallbackElapsed: h
1853
1924
  });
1854
- Ot({
1855
- closeAllowed: d,
1856
- currentTranslate: Y.y,
1857
- deltaY: p,
1858
- releaseVelocity: b,
1859
- startTranslate: T
1925
+ Nt({
1926
+ closeAllowed: p,
1927
+ currentTranslate: P.y,
1928
+ deltaY: d,
1929
+ releaseVelocity: M,
1930
+ startTranslate: g
1860
1931
  });
1861
1932
  }
1862
1933
  },
1863
1934
  [
1864
- Ot,
1865
- kt,
1935
+ Nt,
1936
+ Ft,
1866
1937
  r,
1867
- Vt,
1868
- o,
1938
+ zt,
1939
+ s,
1869
1940
  E,
1870
- ft,
1871
- ut
1941
+ mt,
1942
+ dt
1872
1943
  ]
1873
- ), cr = f(() => {
1874
- const t = X.current;
1875
- if (!t.dragging || t.source !== "touch") return;
1876
- const e = t.started, n = t.startTranslate, c = t.lastTranslate, a = {
1877
- x: t.startTranslateX,
1878
- y: t.startTranslate
1879
- }, u = {
1880
- x: t.lastTranslateX,
1881
- y: t.lastTranslate
1882
- }, d = o;
1883
- if (ft(t), !!e) {
1884
- if (d === "popup") {
1885
- R.current ? Ct(a) : Z(a, { from: u });
1886
- return;
1887
- }
1888
- O(n, { from: c });
1889
- }
1890
- }, [
1891
- o,
1892
- ft,
1893
- Ct,
1894
- Z,
1895
- O
1896
- ]);
1944
+ );
1897
1945
  return {
1898
- collapseBottomSheetToUndimmedSnap: nr,
1946
+ collapseBottomSheetToUndimmedSnap: lr,
1899
1947
  handlers: {
1900
- onPointerDown: ar,
1901
- onPointerMove: or,
1902
- onPointerUp: Me,
1903
- onPointerCancel: Me,
1904
- onLostPointerCapture: sr,
1905
- onTouchStart: ir,
1906
- onTouchEnd: lr,
1907
- onTouchCancel: cr
1948
+ onPointerDown: cr,
1949
+ onPointerMove: ur,
1950
+ onPointerUp: Be,
1951
+ onPointerCancel: Be,
1952
+ onLostPointerCapture: dr,
1953
+ onTouchStart: pr,
1954
+ onTouchEnd: fr,
1955
+ onTouchCancel: Dt
1908
1956
  }
1909
1957
  };
1910
1958
  }
1911
1959
  export {
1912
- Kr as useModalDrag
1960
+ an as useModalDrag
1913
1961
  };