@vezham/react 0.1.7 → 0.2.0-poc-env-1

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.
@@ -0,0 +1,1382 @@
1
+ import { c as Pt, m as Dt, a as ye, s as $, b as Rt, n as ae, e as zt, f as qe, g as et, l as Ft, h as Wt, i as Bt, j as Ht, k as A, o as K, r as ce, p as tt, v as _t, q as nt, t as st, u as ot, w as ue, x as Gt, y as kt, z as v, A as le, B as rt, C as Y, M as fe, D, E as Nt, F as pe, G as jt, H as Ut, I as Yt, J as it, K as at, L as E, N as Xt, O as ct, P as $t, Q as Kt, R as ut, V as lt, S as ft, T as Jt, U as Qt, W as Zt, X as re, Y as qt, Z as en, _ as tn, $ as dt, a0 as nn, a1 as sn, a2 as on, a3 as ve, a4 as rn, a5 as Re, a6 as an, a7 as cn, a8 as un, a9 as mt, aa as ee, ab as ln, ac as we, ad as fn, ae as dn, af as mn, ag as pn, ah as hn, ai as gn, aj as yn, ak as vn, al as wn } from "./index-DMLUAfMZ.mjs";
2
+ import { at as Ho, am as _o, aJ as Go, aI as ko, aG as No, an as jo, ao as Uo, aA as Yo, aO as Xo, aH as $o, ba as Ko, bb as Jo, ay as Qo, aU as Zo, aV as qo, aW as er, aX as tr, az as nr, b8 as sr, aY as or, aZ as rr, a_ as ir, aB as ar, aC as cr, aw as ur, a$ as lr, aK as fr, b6 as dr, b7 as mr, d as pr, aq as hr, b0 as gr, b1 as yr, b2 as vr, b9 as wr, aE as Sr, b5 as Ar, aL as br, aP as Er, bc as Mr, aM as xr, ax as Vr, aQ as Cr, ap as Ir, b3 as Tr, aS as Or, aF as Lr, aT as Pr, aN as Dr, aD as Rr, as as zr, b4 as Fr, aR as Wr, au as Br, av as Hr, ar as _r } from "./index-DMLUAfMZ.mjs";
3
+ import * as Sn from "react";
4
+ import { useInsertionEffect as pt, useEffect as O, useContext as z, useState as J, useRef as P, useCallback as ht, useLayoutEffect as An, createContext as bn, forwardRef as gt } from "react";
5
+ import { jsx as ie } from "react/jsx-runtime";
6
+ function yt(e, t = 100, n) {
7
+ const s = n({ ...e, keyframes: [0, t] }), o = Math.min(Pt(s), Dt);
8
+ return {
9
+ type: "keyframes",
10
+ ease: (r) => s.next(o * r).value / t,
11
+ duration: ye(o)
12
+ };
13
+ }
14
+ class En {
15
+ constructor(t) {
16
+ this.animation = t;
17
+ }
18
+ get duration() {
19
+ var t, n, s;
20
+ const o = ((n = (t = this.animation) === null || t === void 0 ? void 0 : t.effect) === null || n === void 0 ? void 0 : n.getComputedTiming().duration) || ((s = this.options) === null || s === void 0 ? void 0 : s.duration) || 300;
21
+ return ye(Number(o));
22
+ }
23
+ get time() {
24
+ var t;
25
+ return this.animation ? ye(((t = this.animation) === null || t === void 0 ? void 0 : t.currentTime) || 0) : 0;
26
+ }
27
+ set time(t) {
28
+ this.animation && (this.animation.currentTime = $(t));
29
+ }
30
+ get speed() {
31
+ return this.animation ? this.animation.playbackRate : 1;
32
+ }
33
+ set speed(t) {
34
+ this.animation && (this.animation.playbackRate = t);
35
+ }
36
+ get state() {
37
+ return this.animation ? this.animation.playState : "finished";
38
+ }
39
+ get startTime() {
40
+ return this.animation ? this.animation.startTime : null;
41
+ }
42
+ get finished() {
43
+ return this.animation ? this.animation.finished : Promise.resolve();
44
+ }
45
+ play() {
46
+ this.animation && this.animation.play();
47
+ }
48
+ pause() {
49
+ this.animation && this.animation.pause();
50
+ }
51
+ stop() {
52
+ !this.animation || this.state === "idle" || this.state === "finished" || (this.animation.commitStyles && this.animation.commitStyles(), this.cancel());
53
+ }
54
+ flatten() {
55
+ var t;
56
+ this.animation && ((t = this.animation.effect) === null || t === void 0 || t.updateTiming({ easing: "linear" }));
57
+ }
58
+ attachTimeline(t) {
59
+ return this.animation && Rt(this.animation, t), ae;
60
+ }
61
+ complete() {
62
+ this.animation && this.animation.finish();
63
+ }
64
+ cancel() {
65
+ try {
66
+ this.animation && this.animation.cancel();
67
+ } catch {
68
+ }
69
+ }
70
+ }
71
+ const Mn = /* @__PURE__ */ zt({
72
+ ...qe,
73
+ ...Bt,
74
+ ...Wt,
75
+ ...Ft
76
+ }, et), vt = /* @__PURE__ */ Ht(Mn), ro = {
77
+ renderer: et,
78
+ ...qe
79
+ };
80
+ function xn(e, t, n) {
81
+ pt(() => e.on(t, n), [e, t, n]);
82
+ }
83
+ function wt(e, t) {
84
+ let n;
85
+ const s = () => {
86
+ const { currentTime: o } = t, i = (o === null ? 0 : o.value) / 100;
87
+ n !== i && e(i), n = i;
88
+ };
89
+ return A.update(s, !0), () => K(s);
90
+ }
91
+ const te = /* @__PURE__ */ new WeakMap();
92
+ let T;
93
+ function Vn(e, t) {
94
+ if (t) {
95
+ const { inlineSize: n, blockSize: s } = t[0];
96
+ return { width: n, height: s };
97
+ } else return e instanceof SVGElement && "getBBox" in e ? e.getBBox() : {
98
+ width: e.offsetWidth,
99
+ height: e.offsetHeight
100
+ };
101
+ }
102
+ function Cn({ target: e, contentRect: t, borderBoxSize: n }) {
103
+ var s;
104
+ (s = te.get(e)) === null || s === void 0 || s.forEach((o) => {
105
+ o({
106
+ target: e,
107
+ contentSize: t,
108
+ get size() {
109
+ return Vn(e, n);
110
+ }
111
+ });
112
+ });
113
+ }
114
+ function In(e) {
115
+ e.forEach(Cn);
116
+ }
117
+ function Tn() {
118
+ typeof ResizeObserver > "u" || (T = new ResizeObserver(In));
119
+ }
120
+ function On(e, t) {
121
+ T || Tn();
122
+ const n = ce(e);
123
+ return n.forEach((s) => {
124
+ let o = te.get(s);
125
+ o || (o = /* @__PURE__ */ new Set(), te.set(s, o)), o.add(t), T == null || T.observe(s);
126
+ }), () => {
127
+ n.forEach((s) => {
128
+ const o = te.get(s);
129
+ o == null || o.delete(t), o != null && o.size || T == null || T.unobserve(s);
130
+ });
131
+ };
132
+ }
133
+ const ne = /* @__PURE__ */ new Set();
134
+ let X;
135
+ function Ln() {
136
+ X = () => {
137
+ const e = {
138
+ width: window.innerWidth,
139
+ height: window.innerHeight
140
+ }, t = {
141
+ target: window,
142
+ size: e,
143
+ contentSize: e
144
+ };
145
+ ne.forEach((n) => n(t));
146
+ }, window.addEventListener("resize", X);
147
+ }
148
+ function Pn(e) {
149
+ return ne.add(e), X || Ln(), () => {
150
+ ne.delete(e), !ne.size && X && (X = void 0);
151
+ };
152
+ }
153
+ function Dn(e, t) {
154
+ return typeof e == "function" ? Pn(e) : On(e, t);
155
+ }
156
+ const Rn = 50, ze = () => ({
157
+ current: 0,
158
+ offset: [],
159
+ progress: 0,
160
+ scrollLength: 0,
161
+ targetOffset: 0,
162
+ targetLength: 0,
163
+ containerLength: 0,
164
+ velocity: 0
165
+ }), zn = () => ({
166
+ time: 0,
167
+ x: ze(),
168
+ y: ze()
169
+ }), Fn = {
170
+ x: {
171
+ length: "Width",
172
+ position: "Left"
173
+ },
174
+ y: {
175
+ length: "Height",
176
+ position: "Top"
177
+ }
178
+ };
179
+ function Fe(e, t, n, s) {
180
+ const o = n[t], { length: r, position: i } = Fn[t], c = o.current, a = n.time;
181
+ o.current = e[`scroll${i}`], o.scrollLength = e[`scroll${r}`] - e[`client${r}`], o.offset.length = 0, o.offset[0] = 0, o.offset[1] = o.scrollLength, o.progress = tt(0, o.scrollLength, o.current);
182
+ const u = s - a;
183
+ o.velocity = u > Rn ? 0 : _t(o.current - c, u);
184
+ }
185
+ function Wn(e, t, n) {
186
+ Fe(e, "x", t, n), Fe(e, "y", t, n), t.time = n;
187
+ }
188
+ function Bn(e, t) {
189
+ const n = { x: 0, y: 0 };
190
+ let s = e;
191
+ for (; s && s !== t; )
192
+ if (s instanceof HTMLElement)
193
+ n.x += s.offsetLeft, n.y += s.offsetTop, s = s.offsetParent;
194
+ else if (s.tagName === "svg") {
195
+ const o = s.getBoundingClientRect();
196
+ s = s.parentElement;
197
+ const r = s.getBoundingClientRect();
198
+ n.x += o.left - r.left, n.y += o.top - r.top;
199
+ } else if (s instanceof SVGGraphicsElement) {
200
+ const { x: o, y: r } = s.getBBox();
201
+ n.x += o, n.y += r;
202
+ let i = null, c = s.parentNode;
203
+ for (; !i; )
204
+ c.tagName === "svg" && (i = c), c = s.parentNode;
205
+ s = i;
206
+ } else
207
+ break;
208
+ return n;
209
+ }
210
+ const Se = {
211
+ start: 0,
212
+ center: 0.5,
213
+ end: 1
214
+ };
215
+ function We(e, t, n = 0) {
216
+ let s = 0;
217
+ if (e in Se && (e = Se[e]), typeof e == "string") {
218
+ const o = parseFloat(e);
219
+ e.endsWith("px") ? s = o : e.endsWith("%") ? e = o / 100 : e.endsWith("vw") ? s = o / 100 * document.documentElement.clientWidth : e.endsWith("vh") ? s = o / 100 * document.documentElement.clientHeight : e = o;
220
+ }
221
+ return typeof e == "number" && (s = t * e), n + s;
222
+ }
223
+ const Hn = [0, 0];
224
+ function _n(e, t, n, s) {
225
+ let o = Array.isArray(e) ? e : Hn, r = 0, i = 0;
226
+ return typeof e == "number" ? o = [e, e] : typeof e == "string" && (e = e.trim(), e.includes(" ") ? o = e.split(" ") : o = [e, Se[e] ? e : "0"]), r = We(o[0], n, s), i = We(o[1], t), r - i;
227
+ }
228
+ const Gn = {
229
+ All: [
230
+ [0, 0],
231
+ [1, 1]
232
+ ]
233
+ }, kn = { x: 0, y: 0 };
234
+ function Nn(e) {
235
+ return "getBBox" in e && e.tagName !== "svg" ? e.getBBox() : { width: e.clientWidth, height: e.clientHeight };
236
+ }
237
+ function jn(e, t, n) {
238
+ const { offset: s = Gn.All } = n, { target: o = e, axis: r = "y" } = n, i = r === "y" ? "height" : "width", c = o !== e ? Bn(o, e) : kn, a = o === e ? { width: e.scrollWidth, height: e.scrollHeight } : Nn(o), u = {
239
+ width: e.clientWidth,
240
+ height: e.clientHeight
241
+ };
242
+ t[r].offset.length = 0;
243
+ let l = !t[r].interpolate;
244
+ const d = s.length;
245
+ for (let f = 0; f < d; f++) {
246
+ const m = _n(s[f], u[i], a[i], c[r]);
247
+ !l && m !== t[r].interpolatorOffsets[f] && (l = !0), t[r].offset[f] = m;
248
+ }
249
+ l && (t[r].interpolate = nt(t[r].offset, st(s), { clamp: !1 }), t[r].interpolatorOffsets = [...t[r].offset]), t[r].progress = ot(0, 1, t[r].interpolate(t[r].current));
250
+ }
251
+ function Un(e, t = e, n) {
252
+ if (n.x.targetOffset = 0, n.y.targetOffset = 0, t !== e) {
253
+ let s = t;
254
+ for (; s && s !== e; )
255
+ n.x.targetOffset += s.offsetLeft, n.y.targetOffset += s.offsetTop, s = s.offsetParent;
256
+ }
257
+ n.x.targetLength = t === e ? t.scrollWidth : t.clientWidth, n.y.targetLength = t === e ? t.scrollHeight : t.clientHeight, n.x.containerLength = e.clientWidth, n.y.containerLength = e.clientHeight, process.env.NODE_ENV !== "production" && e && t && t !== e && ue(getComputedStyle(e).position !== "static", "Please ensure that the container has a non-static position, like 'relative', 'fixed', or 'absolute' to ensure scroll offset is calculated correctly.");
258
+ }
259
+ function Yn(e, t, n, s = {}) {
260
+ return {
261
+ measure: () => Un(e, s.target, n),
262
+ update: (o) => {
263
+ Wn(e, n, o), (s.offset || s.target) && jn(e, n, s);
264
+ },
265
+ notify: () => t(n)
266
+ };
267
+ }
268
+ const j = /* @__PURE__ */ new WeakMap(), Be = /* @__PURE__ */ new WeakMap(), he = /* @__PURE__ */ new WeakMap(), He = (e) => e === document.documentElement ? window : e;
269
+ function xe(e, { container: t = document.documentElement, ...n } = {}) {
270
+ let s = he.get(t);
271
+ s || (s = /* @__PURE__ */ new Set(), he.set(t, s));
272
+ const o = zn(), r = Yn(t, e, o, n);
273
+ if (s.add(r), !j.has(t)) {
274
+ const c = () => {
275
+ for (const f of s)
276
+ f.measure();
277
+ }, a = () => {
278
+ for (const f of s)
279
+ f.update(Gt.timestamp);
280
+ }, u = () => {
281
+ for (const f of s)
282
+ f.notify();
283
+ }, l = () => {
284
+ A.read(c, !1, !0), A.read(a, !1, !0), A.update(u, !1, !0);
285
+ };
286
+ j.set(t, l);
287
+ const d = He(t);
288
+ window.addEventListener("resize", l, { passive: !0 }), t !== document.documentElement && Be.set(t, Dn(t, l)), d.addEventListener("scroll", l, { passive: !0 });
289
+ }
290
+ const i = j.get(t);
291
+ return A.read(i, !1, !0), () => {
292
+ var c;
293
+ K(i);
294
+ const a = he.get(t);
295
+ if (!a || (a.delete(r), a.size))
296
+ return;
297
+ const u = j.get(t);
298
+ j.delete(t), u && (He(t).removeEventListener("scroll", u), (c = Be.get(t)) === null || c === void 0 || c(), window.removeEventListener("resize", u));
299
+ };
300
+ }
301
+ function Xn({ source: e, container: t, axis: n = "y" }) {
302
+ e && (t = e);
303
+ const s = { value: 0 }, o = xe((r) => {
304
+ s.value = r[n].progress * 100;
305
+ }, { container: t, axis: n });
306
+ return { currentTime: s, cancel: o };
307
+ }
308
+ const ge = /* @__PURE__ */ new Map();
309
+ function St({ source: e, container: t = document.documentElement, axis: n = "y" } = {}) {
310
+ e && (t = e), ge.has(t) || ge.set(t, {});
311
+ const s = ge.get(t);
312
+ return s[n] || (s[n] = kt() ? new ScrollTimeline({ source: t, axis: n }) : Xn({ source: t, axis: n })), s[n];
313
+ }
314
+ function $n(e) {
315
+ return e.length === 2;
316
+ }
317
+ function At(e) {
318
+ return e && (e.target || e.offset);
319
+ }
320
+ function Kn(e, t) {
321
+ return $n(e) || At(t) ? xe((n) => {
322
+ e(n[t.axis].progress, n);
323
+ }, t) : wt(e, St(t));
324
+ }
325
+ function Jn(e, t) {
326
+ if (e.flatten(), At(t))
327
+ return e.pause(), xe((n) => {
328
+ e.time = e.duration * n[t.axis].progress;
329
+ }, t);
330
+ {
331
+ const n = St(t);
332
+ return e.attachTimeline ? e.attachTimeline(n, (s) => (s.pause(), wt((o) => {
333
+ s.time = s.duration * o;
334
+ }, n))) : ae;
335
+ }
336
+ }
337
+ function Qn(e, { axis: t = "y", ...n } = {}) {
338
+ const s = { axis: t, ...n };
339
+ return typeof e == "function" ? Kn(e, s) : Jn(e, s);
340
+ }
341
+ function _e(e, t) {
342
+ rt(!!(!t || t.current), `You have defined a ${e} options but the provided ref is not yet hydrated, probably because it's defined higher up the tree. Try calling useScroll() in the same component as the ref, or setting its \`layoutEffect: false\` option.`);
343
+ }
344
+ const Zn = () => ({
345
+ scrollX: Y(0),
346
+ scrollY: Y(0),
347
+ scrollXProgress: Y(0),
348
+ scrollYProgress: Y(0)
349
+ });
350
+ function bt({ container: e, target: t, layoutEffect: n = !0, ...s } = {}) {
351
+ const o = v(Zn);
352
+ return (n ? le : O)(() => (_e("target", t), _e("container", e), Qn((i, { x: c, y: a }) => {
353
+ o.scrollX.set(c.current), o.scrollXProgress.set(c.progress), o.scrollY.set(a.current), o.scrollYProgress.set(a.progress);
354
+ }, {
355
+ ...s,
356
+ container: (e == null ? void 0 : e.current) || void 0,
357
+ target: (t == null ? void 0 : t.current) || void 0
358
+ })), [e, t, JSON.stringify(s.offset)]), o;
359
+ }
360
+ function io(e) {
361
+ return process.env.NODE_ENV === "development" && ue(!1, "useElementScroll is deprecated. Convert to useScroll({ container: ref })."), bt({ container: e });
362
+ }
363
+ function ao() {
364
+ return process.env.NODE_ENV !== "production" && ue(!1, "useViewportScroll is deprecated. Convert to useScroll()."), bt();
365
+ }
366
+ function R(e) {
367
+ const t = v(() => Y(e)), { isStatic: n } = z(fe);
368
+ if (n) {
369
+ const [, s] = J(e);
370
+ O(() => t.on("change", s), []);
371
+ }
372
+ return t;
373
+ }
374
+ function Ve(e, t) {
375
+ const n = R(t()), s = () => n.set(t());
376
+ return s(), le(() => {
377
+ const o = () => A.preRender(s, !1, !0), r = e.map((i) => i.on("change", o));
378
+ return () => {
379
+ r.forEach((i) => i()), K(s);
380
+ };
381
+ }), n;
382
+ }
383
+ function co(e, ...t) {
384
+ const n = e.length;
385
+ function s() {
386
+ let o = "";
387
+ for (let r = 0; r < n; r++) {
388
+ o += e[r];
389
+ const i = t[r];
390
+ i && (o += D(i) ? i.get() : i);
391
+ }
392
+ return o;
393
+ }
394
+ return Ve(t.filter(D), s);
395
+ }
396
+ function uo(e, t = {}) {
397
+ const { isStatic: n } = z(fe), s = P(null), o = v(() => D(e) ? e.get() : e), r = v(() => typeof o == "string" ? o.replace(/[\d.-]/g, "") : void 0), i = R(o), c = P(o), a = P(ae), u = () => {
398
+ l(), s.current = Nt({
399
+ keyframes: [ke(i.get()), ke(c.current)],
400
+ velocity: i.getVelocity(),
401
+ type: "spring",
402
+ restDelta: 1e-3,
403
+ restSpeed: 0.01,
404
+ ...t,
405
+ onUpdate: a.current
406
+ });
407
+ }, l = () => {
408
+ s.current && s.current.stop();
409
+ };
410
+ return pt(() => i.attach((d, f) => n ? f(d) : (c.current = d, a.current = (m) => f(Ge(m, r)), A.postRender(u), i.get()), l), [JSON.stringify(t)]), le(() => {
411
+ if (D(e))
412
+ return e.on("change", (d) => i.set(Ge(d, r)));
413
+ }, [i, r]), i;
414
+ }
415
+ function Ge(e, t) {
416
+ return t ? e + t : e;
417
+ }
418
+ function ke(e) {
419
+ return typeof e == "number" ? e : parseFloat(e);
420
+ }
421
+ function qn(e) {
422
+ const t = P(0), { isStatic: n } = z(fe);
423
+ O(() => {
424
+ if (n)
425
+ return;
426
+ const s = ({ timestamp: o, delta: r }) => {
427
+ t.current || (t.current = o), e(o - t.current, r);
428
+ };
429
+ return A.update(s, !0), () => K(s);
430
+ }, [e]);
431
+ }
432
+ function lo() {
433
+ const e = R(0);
434
+ return qn((t) => e.set(t)), e;
435
+ }
436
+ const es = (e) => e && typeof e == "object" && e.mix, ts = (e) => es(e) ? e.mix : void 0;
437
+ function ns(...e) {
438
+ const t = !Array.isArray(e[0]), n = t ? 0 : -1, s = e[0 + n], o = e[1 + n], r = e[2 + n], i = e[3 + n], c = nt(o, r, {
439
+ mixer: ts(r[0]),
440
+ ...i
441
+ });
442
+ return t ? c(s) : c;
443
+ }
444
+ function ss(e) {
445
+ pe.current = [], e();
446
+ const t = Ve(pe.current, e);
447
+ return pe.current = void 0, t;
448
+ }
449
+ function Ae(e, t, n, s) {
450
+ if (typeof e == "function")
451
+ return ss(e);
452
+ const o = typeof t == "function" ? t : ns(t, n, s);
453
+ return Array.isArray(e) ? Ne(e, o) : Ne([e], ([r]) => o(r));
454
+ }
455
+ function Ne(e, t) {
456
+ const n = v(() => []);
457
+ return Ve(e, () => {
458
+ n.length = 0;
459
+ const s = e.length;
460
+ for (let o = 0; o < s; o++)
461
+ n[o] = e[o].get();
462
+ return t(n);
463
+ });
464
+ }
465
+ function fo(e) {
466
+ const t = R(e.getVelocity()), n = () => {
467
+ const s = e.getVelocity();
468
+ t.set(s), s && A.update(n);
469
+ };
470
+ return xn(e, "change", () => {
471
+ A.update(n, !1, !0);
472
+ }), t;
473
+ }
474
+ function os() {
475
+ !jt.current && Ut();
476
+ const [e] = J(Yt.current);
477
+ return process.env.NODE_ENV !== "production" && ue(e !== !0, "You have Reduced Motion enabled on your device. Animations may not appear as expected."), e;
478
+ }
479
+ function mo() {
480
+ const e = os(), { reducedMotion: t } = z(fe);
481
+ return t === "never" ? !1 : t === "always" ? !0 : e;
482
+ }
483
+ function rs(e) {
484
+ e.values.forEach((t) => t.stop());
485
+ }
486
+ function be(e, t) {
487
+ [...t].reverse().forEach((s) => {
488
+ const o = e.getVariant(s);
489
+ o && at(e, o), e.variantChildren && e.variantChildren.forEach((r) => {
490
+ be(r, t);
491
+ });
492
+ });
493
+ }
494
+ function is(e, t) {
495
+ if (Array.isArray(t))
496
+ return be(e, t);
497
+ if (typeof t == "string")
498
+ return be(e, [t]);
499
+ at(e, t);
500
+ }
501
+ function as() {
502
+ let e = !1;
503
+ const t = /* @__PURE__ */ new Set(), n = {
504
+ subscribe(s) {
505
+ return t.add(s), () => void t.delete(s);
506
+ },
507
+ start(s, o) {
508
+ E(e, "controls.start() should only be called after a component has mounted. Consider calling within a useEffect hook.");
509
+ const r = [];
510
+ return t.forEach((i) => {
511
+ r.push(it(i, s, {
512
+ transitionOverride: o
513
+ }));
514
+ }), Promise.all(r);
515
+ },
516
+ set(s) {
517
+ return E(e, "controls.set() should only be called after a component has mounted. Consider calling within a useEffect hook."), t.forEach((o) => {
518
+ is(o, s);
519
+ });
520
+ },
521
+ stop() {
522
+ t.forEach((s) => {
523
+ rs(s);
524
+ });
525
+ },
526
+ mount() {
527
+ return e = !0, () => {
528
+ e = !1, n.stop();
529
+ };
530
+ }
531
+ };
532
+ return n;
533
+ }
534
+ function Et(e) {
535
+ return O(() => () => e(), []);
536
+ }
537
+ const Mt = (e, t, n) => {
538
+ const s = t - e;
539
+ return ((n - e) % s + s) % s + e;
540
+ };
541
+ function xt(e, t) {
542
+ return Xt(e) ? e[Mt(0, e.length, t)] : e;
543
+ }
544
+ function Ce(e) {
545
+ return typeof e == "object" && !Array.isArray(e);
546
+ }
547
+ function Vt(e, t, n, s) {
548
+ return typeof e == "string" && Ce(t) ? ce(e, n, s) : e instanceof NodeList ? Array.from(e) : Array.isArray(e) ? e : [e];
549
+ }
550
+ function cs(e, t, n) {
551
+ return e * (t + 1);
552
+ }
553
+ function je(e, t, n, s) {
554
+ var o;
555
+ return typeof t == "number" ? t : t.startsWith("-") || t.startsWith("+") ? Math.max(0, e + parseFloat(t)) : t === "<" ? n : (o = s.get(t)) !== null && o !== void 0 ? o : e;
556
+ }
557
+ function us(e, t, n) {
558
+ for (let s = 0; s < e.length; s++) {
559
+ const o = e[s];
560
+ o.at > t && o.at < n && ($t(e, o), s--);
561
+ }
562
+ }
563
+ function ls(e, t, n, s, o, r) {
564
+ us(e, o, r);
565
+ for (let i = 0; i < t.length; i++)
566
+ e.push({
567
+ value: t[i],
568
+ at: ct(o, r, s[i]),
569
+ easing: xt(n, i)
570
+ });
571
+ }
572
+ function fs(e, t) {
573
+ for (let n = 0; n < e.length; n++)
574
+ e[n] = e[n] / (t + 1);
575
+ }
576
+ function ds(e, t) {
577
+ return e.at === t.at ? e.value === null ? 1 : t.value === null ? -1 : 0 : e.at - t.at;
578
+ }
579
+ const ms = "easeInOut", ps = 20;
580
+ function hs(e, { defaultTransition: t = {}, ...n } = {}, s, o) {
581
+ const r = t.duration || 0.3, i = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map(), a = {}, u = /* @__PURE__ */ new Map();
582
+ let l = 0, d = 0, f = 0;
583
+ for (let m = 0; m < e.length; m++) {
584
+ const p = e[m];
585
+ if (typeof p == "string") {
586
+ u.set(p, d);
587
+ continue;
588
+ } else if (!Array.isArray(p)) {
589
+ u.set(p.name, je(d, p.at, l, u));
590
+ continue;
591
+ }
592
+ let [h, g, y = {}] = p;
593
+ y.at !== void 0 && (d = je(d, y.at, l, u));
594
+ let w = 0;
595
+ const F = (M, x, C, B = 0, H = 0) => {
596
+ const S = gs(M), { delay: de = 0, times: V = st(S), type: me = "keyframes", repeat: _, repeatType: eo, repeatDelay: to = 0, ...Lt } = x;
597
+ let { ease: I = t.ease || "easeOut", duration: b } = x;
598
+ const Ie = typeof de == "function" ? de(B, H) : de, Te = S.length, Oe = ut(me) ? me : o == null ? void 0 : o[me];
599
+ if (Te <= 2 && Oe) {
600
+ let G = 100;
601
+ if (Te === 2 && ws(S)) {
602
+ const k = S[1] - S[0];
603
+ G = Math.abs(k);
604
+ }
605
+ const Q = { ...Lt };
606
+ b !== void 0 && (Q.duration = $(b));
607
+ const Z = yt(Q, G, Oe);
608
+ I = Z.ease, b = Z.duration;
609
+ }
610
+ b ?? (b = r);
611
+ const Le = d + Ie;
612
+ V.length === 1 && V[0] === 0 && (V[1] = 1);
613
+ const Pe = V.length - S.length;
614
+ if (Pe > 0 && Kt(V, Pe), S.length === 1 && S.unshift(null), _) {
615
+ E(_ < ps, "Repeat count too high, must be less than 20"), b = cs(b, _);
616
+ const G = [...S], Q = [...V];
617
+ I = Array.isArray(I) ? [...I] : [I];
618
+ const Z = [...I];
619
+ for (let k = 0; k < _; k++) {
620
+ S.push(...G);
621
+ for (let N = 0; N < G.length; N++)
622
+ V.push(Q[N] + (k + 1)), I.push(N === 0 ? "linear" : xt(Z, N - 1));
623
+ }
624
+ fs(V, _);
625
+ }
626
+ const De = Le + b;
627
+ ls(C, S, I, V, Le, De), w = Math.max(Ie + b, w), f = Math.max(De, f);
628
+ };
629
+ if (D(h)) {
630
+ const M = Ue(h, c);
631
+ F(g, y, Ye("default", M));
632
+ } else {
633
+ const M = Vt(h, g, s, a), x = M.length;
634
+ for (let C = 0; C < x; C++) {
635
+ g = g, y = y;
636
+ const B = M[C], H = Ue(B, c);
637
+ for (const S in g)
638
+ F(g[S], ys(y, S), Ye(S, H), C, x);
639
+ }
640
+ }
641
+ l = d, d += w;
642
+ }
643
+ return c.forEach((m, p) => {
644
+ for (const h in m) {
645
+ const g = m[h];
646
+ g.sort(ds);
647
+ const y = [], w = [], F = [];
648
+ for (let x = 0; x < g.length; x++) {
649
+ const { at: C, value: B, easing: H } = g[x];
650
+ y.push(B), w.push(tt(0, f, C)), F.push(H || "easeOut");
651
+ }
652
+ w[0] !== 0 && (w.unshift(0), y.unshift(y[0]), F.unshift(ms)), w[w.length - 1] !== 1 && (w.push(1), y.push(null)), i.has(p) || i.set(p, {
653
+ keyframes: {},
654
+ transition: {}
655
+ });
656
+ const M = i.get(p);
657
+ M.keyframes[h] = y, M.transition[h] = {
658
+ ...t,
659
+ duration: f,
660
+ ease: F,
661
+ times: w,
662
+ ...n
663
+ };
664
+ }
665
+ }), i;
666
+ }
667
+ function Ue(e, t) {
668
+ return !t.has(e) && t.set(e, {}), t.get(e);
669
+ }
670
+ function Ye(e, t) {
671
+ return t[e] || (t[e] = []), t[e];
672
+ }
673
+ function gs(e) {
674
+ return Array.isArray(e) ? e : [e];
675
+ }
676
+ function ys(e, t) {
677
+ return e && e[t] ? {
678
+ ...e,
679
+ ...e[t]
680
+ } : { ...e };
681
+ }
682
+ const vs = (e) => typeof e == "number", ws = (e) => e.every(vs);
683
+ function Ss(e, t) {
684
+ return e in t;
685
+ }
686
+ class As extends lt {
687
+ constructor() {
688
+ super(...arguments), this.type = "object";
689
+ }
690
+ readValueFromInstance(t, n) {
691
+ if (Ss(n, t)) {
692
+ const s = t[n];
693
+ if (typeof s == "string" || typeof s == "number")
694
+ return s;
695
+ }
696
+ }
697
+ getBaseTargetFromProps() {
698
+ }
699
+ removeValueFromRenderState(t, n) {
700
+ delete n.output[t];
701
+ }
702
+ measureInstanceViewportBox() {
703
+ return ft();
704
+ }
705
+ build(t, n) {
706
+ Object.assign(t.output, n);
707
+ }
708
+ renderInstance(t, { output: n }) {
709
+ Object.assign(t, n);
710
+ }
711
+ sortInstanceNodePosition() {
712
+ return 0;
713
+ }
714
+ }
715
+ function bs(e) {
716
+ const t = {
717
+ presenceContext: null,
718
+ props: {},
719
+ visualState: {
720
+ renderState: {
721
+ transform: {},
722
+ transformOrigin: {},
723
+ style: {},
724
+ vars: {},
725
+ attrs: {}
726
+ },
727
+ latestValues: {}
728
+ }
729
+ }, n = Jt(e) ? new Qt(t) : new Zt(t);
730
+ n.mount(e), re.set(e, n);
731
+ }
732
+ function Es(e) {
733
+ const t = {
734
+ presenceContext: null,
735
+ props: {},
736
+ visualState: {
737
+ renderState: {
738
+ output: {}
739
+ },
740
+ latestValues: {}
741
+ }
742
+ }, n = new As(t);
743
+ n.mount(e), re.set(e, n);
744
+ }
745
+ function Ms(e, t) {
746
+ return D(e) || typeof e == "number" || typeof e == "string" && !Ce(t);
747
+ }
748
+ function Ct(e, t, n, s) {
749
+ const o = [];
750
+ if (Ms(e, t))
751
+ o.push(qt(e, Ce(t) && t.default || t, n && (n.default || n)));
752
+ else {
753
+ const r = Vt(e, t, s), i = r.length;
754
+ E(!!i, "No valid elements provided.");
755
+ for (let c = 0; c < i; c++) {
756
+ const a = r[c], u = a instanceof Element ? bs : Es;
757
+ re.has(a) || u(a);
758
+ const l = re.get(a), d = { ...n };
759
+ "delay" in d && typeof d.delay == "function" && (d.delay = d.delay(c, i)), o.push(...en(l, { ...t, transition: d }, {}));
760
+ }
761
+ }
762
+ return o;
763
+ }
764
+ function xs(e, t, n) {
765
+ const s = [];
766
+ return hs(e, t, n, { spring: tn }).forEach(({ keyframes: r, transition: i }, c) => {
767
+ s.push(...Ct(c, r, i));
768
+ }), s;
769
+ }
770
+ function Vs(e) {
771
+ return Array.isArray(e) && e.some(Array.isArray);
772
+ }
773
+ function It(e) {
774
+ function t(n, s, o) {
775
+ let r = [];
776
+ Vs(n) ? r = xs(n, s, e) : r = Ct(n, s, o, e);
777
+ const i = new dt(r);
778
+ return e && e.animations.push(i), i;
779
+ }
780
+ return t;
781
+ }
782
+ const po = It();
783
+ function ho() {
784
+ const e = v(() => ({
785
+ current: null,
786
+ // Will be hydrated by React
787
+ animations: []
788
+ })), t = v(() => It(e));
789
+ return Et(() => {
790
+ e.animations.forEach((n) => n.stop());
791
+ }), [e, t];
792
+ }
793
+ function Cs(e, t, n) {
794
+ e.style.setProperty(t, n);
795
+ }
796
+ function Is(e, t, n) {
797
+ e.style[t] = n;
798
+ }
799
+ const Ts = /* @__PURE__ */ nn(() => {
800
+ try {
801
+ document.createElement("div").animate({ opacity: [1] });
802
+ } catch {
803
+ return !1;
804
+ }
805
+ return !0;
806
+ }), se = /* @__PURE__ */ new WeakMap();
807
+ function Os(e, t, n) {
808
+ for (let s = 0; s < t.length; s++)
809
+ t[s] === null && (t[s] = s === 0 ? n() : t[s - 1]), typeof t[s] == "number" && Re[e] && (t[s] = Re[e].transform(t[s]));
810
+ !Ts() && t.length < 2 && t.unshift(n());
811
+ }
812
+ const Xe = "easeOut";
813
+ function $e(e) {
814
+ const t = se.get(e) || /* @__PURE__ */ new Map();
815
+ return se.set(e, t), se.get(e);
816
+ }
817
+ class Ls extends En {
818
+ constructor(t, n, s, o) {
819
+ const r = n.startsWith("--");
820
+ E(typeof o.type != "string", `animateMini doesn't support "type" as a string. Did you mean to import { spring } from "framer-motion"?`);
821
+ const i = $e(t).get(n);
822
+ i && i.stop();
823
+ const c = () => n.startsWith("--") ? t.style.getPropertyValue(n) : window.getComputedStyle(t)[n];
824
+ if (Array.isArray(s) || (s = [s]), Os(n, s, c), ut(o.type)) {
825
+ const l = yt(o, 100, o.type);
826
+ o.ease = sn() ? l.ease : Xe, o.duration = $(l.duration), o.type = "keyframes";
827
+ } else
828
+ o.ease = o.ease || Xe;
829
+ const a = () => {
830
+ this.setValue(t, n, rn(s, o)), this.cancel(), this.resolveFinishedPromise();
831
+ }, u = () => {
832
+ this.setValue = r ? Cs : Is, this.options = o, this.updateFinishedPromise(), this.removeAnimation = () => {
833
+ const l = se.get(t);
834
+ l && l.delete(n);
835
+ };
836
+ };
837
+ on() ? (super(ve(t, n, s, o)), u(), o.autoplay === !1 && this.animation.pause(), this.animation.onfinish = a, $e(t).set(n, this)) : (super(), u(), a());
838
+ }
839
+ /**
840
+ * Allows the returned animation to be awaited or promise-chained. Currently
841
+ * resolves when the animation finishes at all but in a future update could/should
842
+ * reject if its cancels.
843
+ */
844
+ then(t, n) {
845
+ return this.currentFinishedPromise.then(t, n);
846
+ }
847
+ updateFinishedPromise() {
848
+ this.currentFinishedPromise = new Promise((t) => {
849
+ this.resolveFinishedPromise = t;
850
+ });
851
+ }
852
+ play() {
853
+ this.state === "finished" && this.updateFinishedPromise(), super.play();
854
+ }
855
+ cancel() {
856
+ this.removeAnimation(), super.cancel();
857
+ }
858
+ }
859
+ function Ps(e, t, n, s) {
860
+ const o = ce(e, s), r = o.length;
861
+ E(!!r, "No valid element provided.");
862
+ const i = [];
863
+ for (let c = 0; c < r; c++) {
864
+ const a = o[c], u = { ...n };
865
+ typeof u.delay == "function" && (u.delay = u.delay(c, r));
866
+ for (const l in t) {
867
+ const d = t[l], f = {
868
+ ...an(u, l)
869
+ };
870
+ f.duration = f.duration ? $(f.duration) : f.duration, f.delay = $(f.delay || 0), i.push(new Ls(a, l, d, f));
871
+ }
872
+ }
873
+ return i;
874
+ }
875
+ const Tt = (e) => {
876
+ function t(n, s, o) {
877
+ return new dt(Ps(n, s, o, e));
878
+ }
879
+ return t;
880
+ }, go = /* @__PURE__ */ Tt();
881
+ function yo() {
882
+ const e = v(() => ({
883
+ current: null,
884
+ // Will be hydrated by React
885
+ animations: []
886
+ })), t = v(() => Tt(e));
887
+ return Et(() => {
888
+ e.animations.forEach((n) => n.stop());
889
+ }), [e, t];
890
+ }
891
+ function Ds() {
892
+ const e = v(as);
893
+ return le(e.mount, []), e;
894
+ }
895
+ const vo = Ds;
896
+ function wo() {
897
+ const e = z(cn);
898
+ return e ? e.custom : void 0;
899
+ }
900
+ function So(e, t, n, s) {
901
+ O(() => {
902
+ const o = e.current;
903
+ if (n && o)
904
+ return un(o, t, n, s);
905
+ }, [e, t, n, s]);
906
+ }
907
+ class Rs {
908
+ constructor() {
909
+ this.componentControls = /* @__PURE__ */ new Set();
910
+ }
911
+ /**
912
+ * Subscribe a component's internal `VisualElementDragControls` to the user-facing API.
913
+ *
914
+ * @internal
915
+ */
916
+ subscribe(t) {
917
+ return this.componentControls.add(t), () => this.componentControls.delete(t);
918
+ }
919
+ /**
920
+ * Start a drag gesture on every `motion` component that has this set of drag controls
921
+ * passed into it via the `dragControls` prop.
922
+ *
923
+ * ```jsx
924
+ * dragControls.start(e, {
925
+ * snapToCursor: true
926
+ * })
927
+ * ```
928
+ *
929
+ * @param event - PointerEvent
930
+ * @param options - Options
931
+ *
932
+ * @public
933
+ */
934
+ start(t, n) {
935
+ this.componentControls.forEach((s) => {
936
+ s.start(t.nativeEvent || t, n);
937
+ });
938
+ }
939
+ }
940
+ const zs = () => new Rs();
941
+ function Ao() {
942
+ return v(zs);
943
+ }
944
+ function Fs(e) {
945
+ return e !== null && typeof e == "object" && mt in e;
946
+ }
947
+ function bo(e) {
948
+ if (Fs(e))
949
+ return e[mt];
950
+ }
951
+ function Ws() {
952
+ return Bs;
953
+ }
954
+ function Bs(e) {
955
+ ee.current && (ee.current.isUpdating = !1, ee.current.blockUpdate(), e && e());
956
+ }
957
+ function Eo() {
958
+ return ht(() => {
959
+ const t = ee.current;
960
+ t && t.resetTree();
961
+ }, []);
962
+ }
963
+ function Mo(...e) {
964
+ const t = P(0), [n, s] = J(e[t.current]), o = ht(
965
+ (r) => {
966
+ t.current = typeof r != "number" ? Mt(0, e.length, t.current + 1) : r, s(e[t.current]);
967
+ },
968
+ // The array will change on each call, but by putting items.length at
969
+ // the front of this array, we guarantee the dependency comparison will match up
970
+ // eslint-disable-next-line react-hooks/exhaustive-deps
971
+ [e.length, ...e]
972
+ );
973
+ return [n, o];
974
+ }
975
+ const Hs = {
976
+ some: 0,
977
+ all: 1
978
+ };
979
+ function _s(e, t, { root: n, margin: s, amount: o = "some" } = {}) {
980
+ const r = ce(e), i = /* @__PURE__ */ new WeakMap(), c = (u) => {
981
+ u.forEach((l) => {
982
+ const d = i.get(l.target);
983
+ if (l.isIntersecting !== !!d)
984
+ if (l.isIntersecting) {
985
+ const f = t(l.target, l);
986
+ typeof f == "function" ? i.set(l.target, f) : a.unobserve(l.target);
987
+ } else typeof d == "function" && (d(l), i.delete(l.target));
988
+ });
989
+ }, a = new IntersectionObserver(c, {
990
+ root: n,
991
+ rootMargin: s,
992
+ threshold: typeof o == "number" ? o : Hs[o]
993
+ });
994
+ return r.forEach((u) => a.observe(u)), () => a.disconnect();
995
+ }
996
+ function xo(e, { root: t, margin: n, amount: s, once: o = !1, initial: r = !1 } = {}) {
997
+ const [i, c] = J(r);
998
+ return O(() => {
999
+ if (!e.current || o && i)
1000
+ return;
1001
+ const a = () => (c(!0), o ? void 0 : () => c(!1)), u = {
1002
+ root: t && t.current || void 0,
1003
+ margin: n,
1004
+ amount: s
1005
+ };
1006
+ return _s(e.current, a, u);
1007
+ }, [t, e, n, o, s]), i;
1008
+ }
1009
+ function Vo() {
1010
+ const [e, t] = ln(), n = Ws(), s = P(-1);
1011
+ return O(() => {
1012
+ A.postRender(() => A.postRender(() => {
1013
+ t === s.current && (we.current = !1);
1014
+ }));
1015
+ }, [t]), (o) => {
1016
+ n(() => {
1017
+ we.current = !0, e(), o(), s.current = t + 1;
1018
+ });
1019
+ };
1020
+ }
1021
+ function Co() {
1022
+ we.current = !1;
1023
+ }
1024
+ const oe = (e, t) => {
1025
+ const n = fn.has(t) ? "transform" : t;
1026
+ return `${e}: ${n}`;
1027
+ }, L = /* @__PURE__ */ new Map(), U = /* @__PURE__ */ new Map();
1028
+ function Ke(e, t, n) {
1029
+ var s;
1030
+ const o = oe(e, t), r = L.get(o);
1031
+ if (!r)
1032
+ return null;
1033
+ const { animation: i, startTime: c } = r;
1034
+ function a() {
1035
+ var u;
1036
+ (u = window.MotionCancelOptimisedAnimation) === null || u === void 0 || u.call(window, e, t, n);
1037
+ }
1038
+ return i.onfinish = a, c === null || !((s = window.MotionHandoffIsComplete) === null || s === void 0) && s.call(window, e) ? (a(), null) : c;
1039
+ }
1040
+ let q, W;
1041
+ const Ee = /* @__PURE__ */ new Set();
1042
+ function Gs() {
1043
+ Ee.forEach((e) => {
1044
+ e.animation.play(), e.animation.startTime = e.startTime;
1045
+ }), Ee.clear();
1046
+ }
1047
+ function Io(e, t, n, s, o) {
1048
+ if (window.MotionIsMounted)
1049
+ return;
1050
+ const r = e.dataset[dn];
1051
+ if (!r)
1052
+ return;
1053
+ window.MotionHandoffAnimation = Ke;
1054
+ const i = oe(r, t);
1055
+ W || (W = ve(
1056
+ e,
1057
+ t,
1058
+ [n[0], n[0]],
1059
+ /**
1060
+ * 10 secs is basically just a super-safe duration to give Chrome
1061
+ * long enough to get the animation ready.
1062
+ */
1063
+ { duration: 1e4, ease: "linear" }
1064
+ ), L.set(i, {
1065
+ animation: W,
1066
+ startTime: null
1067
+ }), window.MotionHandoffAnimation = Ke, window.MotionHasOptimisedAnimation = (a, u) => {
1068
+ if (!a)
1069
+ return !1;
1070
+ if (!u)
1071
+ return U.has(a);
1072
+ const l = oe(a, u);
1073
+ return !!L.get(l);
1074
+ }, window.MotionHandoffMarkAsComplete = (a) => {
1075
+ U.has(a) && U.set(a, !0);
1076
+ }, window.MotionHandoffIsComplete = (a) => U.get(a) === !0, window.MotionCancelOptimisedAnimation = (a, u, l, d) => {
1077
+ const f = oe(a, u), m = L.get(f);
1078
+ m && (l && d === void 0 ? l.postRender(() => {
1079
+ l.postRender(() => {
1080
+ m.animation.cancel();
1081
+ });
1082
+ }) : m.animation.cancel(), l && d ? (Ee.add(m), l.render(Gs)) : (L.delete(f), L.size || (window.MotionCancelOptimisedAnimation = void 0)));
1083
+ }, window.MotionCheckAppearSync = (a, u, l) => {
1084
+ var d, f;
1085
+ const m = mn(a);
1086
+ if (!m)
1087
+ return;
1088
+ const p = (d = window.MotionHasOptimisedAnimation) === null || d === void 0 ? void 0 : d.call(window, m, u), h = (f = a.props.values) === null || f === void 0 ? void 0 : f[u];
1089
+ if (!p || !h)
1090
+ return;
1091
+ const g = l.on("change", (y) => {
1092
+ var w;
1093
+ h.get() !== y && ((w = window.MotionCancelOptimisedAnimation) === null || w === void 0 || w.call(window, m, u), g());
1094
+ });
1095
+ return g;
1096
+ });
1097
+ const c = () => {
1098
+ W.cancel();
1099
+ const a = ve(e, t, n, s);
1100
+ q === void 0 && (q = performance.now()), a.startTime = q, L.set(i, {
1101
+ animation: a,
1102
+ startTime: q
1103
+ }), o && o(a);
1104
+ };
1105
+ U.set(r, !1), W.ready ? W.ready.then(c).catch(ae) : c();
1106
+ }
1107
+ const Me = () => ({});
1108
+ class ks extends lt {
1109
+ constructor() {
1110
+ super(...arguments), this.measureInstanceViewportBox = ft;
1111
+ }
1112
+ build() {
1113
+ }
1114
+ resetTransform() {
1115
+ }
1116
+ restoreTransform() {
1117
+ }
1118
+ removeValueFromRenderState() {
1119
+ }
1120
+ renderInstance() {
1121
+ }
1122
+ scrapeMotionValuesFromProps() {
1123
+ return Me();
1124
+ }
1125
+ getBaseTargetFromProps() {
1126
+ }
1127
+ readValueFromInstance(t, n, s) {
1128
+ return s.initialState[n] || 0;
1129
+ }
1130
+ sortInstanceNodePosition() {
1131
+ return 0;
1132
+ }
1133
+ }
1134
+ const Ns = pn({
1135
+ scrapeMotionValuesFromProps: Me,
1136
+ createRenderState: Me
1137
+ });
1138
+ function To(e) {
1139
+ const [t, n] = J(e), s = Ns({}, !1), o = v(() => new ks({
1140
+ props: {
1141
+ onUpdate: (i) => {
1142
+ n({ ...i });
1143
+ }
1144
+ },
1145
+ visualState: s,
1146
+ presenceContext: null
1147
+ }, { initialState: e }));
1148
+ An(() => (o.mount({}), () => o.unmount()), [o]);
1149
+ const r = v(() => (i) => it(o, i));
1150
+ return [t, r];
1151
+ }
1152
+ let js = 0;
1153
+ const Oo = ({ children: e }) => (Sn.useEffect(() => {
1154
+ E(!1, "AnimateSharedLayout is deprecated: https://www.framer.com/docs/guide-upgrade/##shared-layout-animations");
1155
+ }, []), ie(hn, { id: v(() => `asl-${js++}`), children: e })), Us = 1e5, Je = (e) => e > 1e-3 ? 1 / e : Us;
1156
+ let Qe = !1;
1157
+ function Lo(e) {
1158
+ let t = R(1), n = R(1);
1159
+ const { visualElement: s } = z(gn);
1160
+ E(!!(e || s), "If no scale values are provided, useInvertedScale must be used within a child of another motion component."), rt(Qe, "useInvertedScale is deprecated and will be removed in 3.0. Use the layout prop instead."), Qe = !0, e ? (t = e.scaleX || t, n = e.scaleY || n) : s && (t = s.getValue("scaleX", 1), n = s.getValue("scaleY", 1));
1161
+ const o = Ae(t, Je), r = Ae(n, Je);
1162
+ return { scaleX: o, scaleY: r };
1163
+ }
1164
+ const Ot = bn(null);
1165
+ function Ys(e, t, n, s) {
1166
+ if (!s)
1167
+ return e;
1168
+ const o = e.findIndex((l) => l.value === t);
1169
+ if (o === -1)
1170
+ return e;
1171
+ const r = s > 0 ? 1 : -1, i = e[o + r];
1172
+ if (!i)
1173
+ return e;
1174
+ const c = e[o], a = i.layout, u = ct(a.min, a.max, 0.5);
1175
+ return r === 1 && c.layout.max + n > u || r === -1 && c.layout.min + n < u ? yn(e, o, o + r) : e;
1176
+ }
1177
+ function Xs({ children: e, as: t = "ul", axis: n = "y", onReorder: s, values: o, ...r }, i) {
1178
+ const c = v(() => vt[t]), a = [], u = P(!1);
1179
+ E(!!o, "Reorder.Group must be provided a values prop");
1180
+ const l = {
1181
+ axis: n,
1182
+ registerItem: (d, f) => {
1183
+ const m = a.findIndex((p) => d === p.value);
1184
+ m !== -1 ? a[m].layout = f[n] : a.push({ value: d, layout: f[n] }), a.sort(Js);
1185
+ },
1186
+ updateOrder: (d, f, m) => {
1187
+ if (u.current)
1188
+ return;
1189
+ const p = Ys(a, d, f, m);
1190
+ a !== p && (u.current = !0, s(p.map(Ks).filter((h) => o.indexOf(h) !== -1)));
1191
+ }
1192
+ };
1193
+ return O(() => {
1194
+ u.current = !1;
1195
+ }), ie(c, { ...r, ref: i, ignoreStrict: !0, children: ie(Ot.Provider, { value: l, children: e }) });
1196
+ }
1197
+ const $s = /* @__PURE__ */ gt(Xs);
1198
+ function Ks(e) {
1199
+ return e.value;
1200
+ }
1201
+ function Js(e, t) {
1202
+ return e.layout.min - t.layout.min;
1203
+ }
1204
+ function Ze(e, t = 0) {
1205
+ return D(e) ? e : R(t);
1206
+ }
1207
+ function Qs({ children: e, style: t = {}, value: n, as: s = "li", onDrag: o, layout: r = !0, ...i }, c) {
1208
+ const a = v(() => vt[s]), u = z(Ot), l = {
1209
+ x: Ze(t.x),
1210
+ y: Ze(t.y)
1211
+ }, d = Ae([l.x, l.y], ([h, g]) => h || g ? 1 : "unset");
1212
+ E(!!u, "Reorder.Item must be a child of Reorder.Group");
1213
+ const { axis: f, registerItem: m, updateOrder: p } = u;
1214
+ return ie(a, { drag: f, ...i, dragSnapToOrigin: !0, style: { ...t, x: l.x, y: l.y, zIndex: d }, layout: r, onDrag: (h, g) => {
1215
+ const { velocity: y } = g;
1216
+ y[f] && p(n, l[f].get(), y[f]), o && o(h, g);
1217
+ }, onLayoutMeasure: (h) => m(n, h), ref: c, ignoreStrict: !0, children: e });
1218
+ }
1219
+ const Zs = /* @__PURE__ */ gt(Qs), Po = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1220
+ __proto__: null,
1221
+ Group: $s,
1222
+ Item: Zs
1223
+ }, Symbol.toStringTag, { value: "Module" }));
1224
+ function qs(e, t) {
1225
+ if (e === "first")
1226
+ return 0;
1227
+ {
1228
+ const n = t - 1;
1229
+ return e === "last" ? n : n / 2;
1230
+ }
1231
+ }
1232
+ function Do(e = 0.1, { startDelay: t = 0, from: n = 0, ease: s } = {}) {
1233
+ return (o, r) => {
1234
+ const i = typeof n == "number" ? n : qs(n, r), c = Math.abs(i - o);
1235
+ let a = e * c;
1236
+ if (s) {
1237
+ const u = r * e;
1238
+ a = vn(s)(a / u) * u;
1239
+ }
1240
+ return t + a;
1241
+ };
1242
+ }
1243
+ const Ro = A, zo = wn.reduce((e, t) => (e[t] = (n) => K(n), e), {});
1244
+ function Fo(e, t = "end") {
1245
+ return (n) => {
1246
+ n = t === "end" ? Math.min(n, 0.999) : Math.max(n, 1e-3);
1247
+ const s = n * e, o = t === "end" ? Math.floor(s) : Math.ceil(s);
1248
+ return ot(0, 1, o / e);
1249
+ };
1250
+ }
1251
+ export {
1252
+ Ho as AcceleratedAnimation,
1253
+ _o as AnimatePresence,
1254
+ Oo as AnimateSharedLayout,
1255
+ Go as DeprecatedLayoutGroupContext,
1256
+ Rs as DragControls,
1257
+ ko as FlatTree,
1258
+ hn as LayoutGroup,
1259
+ No as LayoutGroupContext,
1260
+ jo as LazyMotion,
1261
+ Uo as MotionConfig,
1262
+ fe as MotionConfigContext,
1263
+ gn as MotionContext,
1264
+ Yo as MotionGlobalConfig,
1265
+ Xo as MotionValue,
1266
+ cn as PresenceContext,
1267
+ Po as Reorder,
1268
+ $o as SwitchLayoutGroupContext,
1269
+ lt as VisualElement,
1270
+ Ko as addPointerEvent,
1271
+ Jo as addPointerInfo,
1272
+ Qo as addScaleCorrector,
1273
+ po as animate,
1274
+ go as animateMini,
1275
+ Nt as animateValue,
1276
+ it as animateVisualElement,
1277
+ as as animationControls,
1278
+ qe as animations,
1279
+ Zo as anticipate,
1280
+ qo as backIn,
1281
+ er as backInOut,
1282
+ tr as backOut,
1283
+ nr as buildTransform,
1284
+ sr as calcLength,
1285
+ K as cancelFrame,
1286
+ zo as cancelSync,
1287
+ or as circIn,
1288
+ rr as circInOut,
1289
+ ir as circOut,
1290
+ ot as clamp,
1291
+ ar as color,
1292
+ cr as complex,
1293
+ ft as createBox,
1294
+ ur as createRendererMotionComponent,
1295
+ It as createScopedAnimate,
1296
+ lr as cubicBezier,
1297
+ fr as delay,
1298
+ Co as disableInstantTransitions,
1299
+ dr as distance,
1300
+ mr as distance2D,
1301
+ pr as domAnimation,
1302
+ hr as domMax,
1303
+ ro as domMin,
1304
+ gr as easeIn,
1305
+ yr as easeInOut,
1306
+ vr as easeOut,
1307
+ wr as filterProps,
1308
+ Sr as findSpring,
1309
+ A as frame,
1310
+ Gt as frameData,
1311
+ Ar as frameSteps,
1312
+ br as hover,
1313
+ _s as inView,
1314
+ Er as inertia,
1315
+ nt as interpolate,
1316
+ E as invariant,
1317
+ Mr as isBrowser,
1318
+ xr as isDragActive,
1319
+ Fs as isMotionComponent,
1320
+ D as isMotionValue,
1321
+ Vr as isValidMotionProp,
1322
+ Cr as keyframes,
1323
+ Ir as m,
1324
+ pn as makeUseVisualState,
1325
+ Tr as mirrorEasing,
1326
+ Or as mix,
1327
+ vt as motion,
1328
+ Y as motionValue,
1329
+ ae as noop,
1330
+ Lr as optimizedAppearDataAttribute,
1331
+ Pr as pipe,
1332
+ Dr as press,
1333
+ tt as progress,
1334
+ Rr as px,
1335
+ zr as resolveMotionValue,
1336
+ Fr as reverseEasing,
1337
+ Qn as scroll,
1338
+ xe as scrollInfo,
1339
+ tn as spring,
1340
+ Do as stagger,
1341
+ Io as startOptimizedAppearAnimation,
1342
+ Fo as steps,
1343
+ Ro as sync,
1344
+ Wr as time,
1345
+ ns as transform,
1346
+ bo as unwrapMotionComponent,
1347
+ ho as useAnimate,
1348
+ yo as useAnimateMini,
1349
+ vo as useAnimation,
1350
+ Ds as useAnimationControls,
1351
+ qn as useAnimationFrame,
1352
+ Mo as useCycle,
1353
+ To as useDeprecatedAnimatedState,
1354
+ Lo as useDeprecatedInvertedScale,
1355
+ So as useDomEvent,
1356
+ Ao as useDragControls,
1357
+ io as useElementScroll,
1358
+ ln as useForceUpdate,
1359
+ xo as useInView,
1360
+ Ws as useInstantLayoutTransition,
1361
+ Vo as useInstantTransition,
1362
+ Br as useIsPresent,
1363
+ le as useIsomorphicLayoutEffect,
1364
+ co as useMotionTemplate,
1365
+ R as useMotionValue,
1366
+ xn as useMotionValueEvent,
1367
+ Hr as usePresence,
1368
+ wo as usePresenceData,
1369
+ os as useReducedMotion,
1370
+ mo as useReducedMotionConfig,
1371
+ Eo as useResetProjection,
1372
+ bt as useScroll,
1373
+ uo as useSpring,
1374
+ lo as useTime,
1375
+ Ae as useTransform,
1376
+ Et as useUnmountEffect,
1377
+ fo as useVelocity,
1378
+ ao as useViewportScroll,
1379
+ _r as useWillChange,
1380
+ re as visualElementStore,
1381
+ Mt as wrap
1382
+ };