@ssgoi/core 6.6.3 → 6.7.0-beta.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.
package/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
- var Rt = Object.defineProperty;
2
- var Ut = (e, t, n) => t in e ? Rt(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
- var C = (e, t, n) => Ut(e, typeof t != "symbol" ? t + "" : t, n);
4
- import { P as J, V as vt, W as g, M as x, S as Vt } from "./multi-animation-Ch5rI3rB.js";
5
- import { A as Ls } from "./multi-animation-Ch5rI3rB.js";
6
- function D(e, t) {
1
+ var Bt = Object.defineProperty;
2
+ var Zt = (e, t, n) => t in e ? Bt(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
+ var x = (e, t, n) => Zt(e, typeof t != "symbol" ? t + "" : t, n);
4
+ import { P as st, V as At, W as m, M as E, S as Wt } from "./multi-animation-1FueEz2Q.js";
5
+ import { A as Xs } from "./multi-animation-1FueEz2Q.js";
6
+ function v(e, t) {
7
7
  const n = [];
8
8
  for (let s = 0; s < e.length; s++)
9
9
  for (let o = s + 1; o < e.length; o++) {
@@ -17,7 +17,7 @@ function D(e, t) {
17
17
  }
18
18
  return n;
19
19
  }
20
- function Ot(e, t) {
20
+ function kt(e, t) {
21
21
  return [
22
22
  {
23
23
  from: e.exit,
@@ -31,7 +31,7 @@ function Ot(e, t) {
31
31
  }
32
32
  ];
33
33
  }
34
- function Q(e, t, n) {
34
+ function ot(e, t, n) {
35
35
  const s = [];
36
36
  for (let o = 0; o < e.length; o++)
37
37
  for (let i = o + 1; i < e.length; i++) {
@@ -51,22 +51,22 @@ function Q(e, t, n) {
51
51
  }
52
52
  return s;
53
53
  }
54
- class L {
54
+ class z {
55
55
  constructor(t) {
56
- C(this, "omega");
56
+ x(this, "omega");
57
57
  // Angular frequency
58
- C(this, "zeta");
58
+ x(this, "zeta");
59
59
  // Damping ratio
60
- C(this, "restDelta");
61
- C(this, "restSpeed");
60
+ x(this, "restDelta");
61
+ x(this, "restSpeed");
62
62
  const { stiffness: n, damping: s } = t, o = 1;
63
- this.omega = Math.sqrt(n / o), this.zeta = s / (2 * Math.sqrt(n * o)), this.restDelta = t.restDelta ?? J, this.restSpeed = t.restSpeed ?? vt;
63
+ this.omega = Math.sqrt(n / o), this.zeta = s / (2 * Math.sqrt(n * o)), this.restDelta = t.restDelta ?? st, this.restSpeed = t.restSpeed ?? At;
64
64
  }
65
65
  step(t, n, s) {
66
- const o = Math.min(s, 0.033), { omega: i, zeta: l } = this, { position: a, velocity: r } = t, c = -2 * o * l * i * r, p = o * i * i * (n - a), d = r + c + p;
66
+ const o = Math.min(s, 0.033), { omega: i, zeta: l } = this, { position: a, velocity: r } = t, c = -2 * o * l * i * r, f = o * i * i * (n - a), p = r + c + f;
67
67
  return {
68
- position: a + o * d,
69
- velocity: d
68
+ position: a + o * p,
69
+ velocity: p
70
70
  };
71
71
  }
72
72
  isSettled(t, n) {
@@ -74,20 +74,20 @@ class L {
74
74
  return s < this.restDelta && o < this.restSpeed;
75
75
  }
76
76
  }
77
- class Nt {
77
+ class qt {
78
78
  constructor(t) {
79
- C(this, "leader");
80
- C(this, "follower");
81
- C(this, "restDelta");
82
- C(this, "restSpeed");
83
- this.restDelta = t.restDelta ?? J, this.restSpeed = t.restSpeed ?? vt, this.leader = new L({
79
+ x(this, "leader");
80
+ x(this, "follower");
81
+ x(this, "restDelta");
82
+ x(this, "restSpeed");
83
+ this.restDelta = t.restDelta ?? st, this.restSpeed = t.restSpeed ?? At, this.leader = new z({
84
84
  stiffness: t.stiffness,
85
85
  damping: t.damping,
86
86
  restDelta: this.restDelta,
87
87
  restSpeed: this.restSpeed
88
88
  });
89
89
  let n, s, o, i;
90
- typeof t.follower == "number" ? (n = t.stiffness * t.follower, s = t.damping) : t.follower ? (n = t.follower.stiffness, s = t.follower.damping, o = t.follower.restDelta, i = t.follower.restSpeed) : (n = t.stiffness, s = t.damping), this.follower = new L({
90
+ typeof t.follower == "number" ? (n = t.stiffness * t.follower, s = t.damping) : t.follower ? (n = t.follower.stiffness, s = t.follower.damping, o = t.follower.restDelta, i = t.follower.restSpeed) : (n = t.stiffness, s = t.damping), this.follower = new z({
91
91
  stiffness: n,
92
92
  damping: s,
93
93
  restDelta: o ?? this.restDelta,
@@ -114,46 +114,46 @@ class Nt {
114
114
  return s._leader ? Math.abs(n - s._leader.position) < this.restDelta && Math.abs(s._leader.velocity) < this.restSpeed && o : o;
115
115
  }
116
116
  }
117
- const Xt = 0.01, Bt = 500, Zt = 10;
118
- class Wt {
117
+ const jt = 0.01, Kt = 500, Gt = 10;
118
+ class Jt {
119
119
  constructor(t) {
120
- C(this, "acceleration");
121
- C(this, "resistance");
122
- C(this, "resistanceType");
123
- C(this, "min");
124
- C(this, "max");
125
- C(this, "bounceStiffness");
126
- C(this, "bounceDamping");
127
- C(this, "restDelta");
128
- this.acceleration = t.acceleration, this.resistance = t.resistance, this.resistanceType = t.resistanceType ?? "quadratic", this.min = t.min, this.max = t.max, this.bounceStiffness = t.bounceStiffness ?? Bt, this.bounceDamping = t.bounceDamping ?? Zt, this.restDelta = t.restDelta ?? Xt;
120
+ x(this, "acceleration");
121
+ x(this, "resistance");
122
+ x(this, "resistanceType");
123
+ x(this, "min");
124
+ x(this, "max");
125
+ x(this, "bounceStiffness");
126
+ x(this, "bounceDamping");
127
+ x(this, "restDelta");
128
+ this.acceleration = t.acceleration, this.resistance = t.resistance, this.resistanceType = t.resistanceType ?? "quadratic", this.min = t.min, this.max = t.max, this.bounceStiffness = t.bounceStiffness ?? Kt, this.bounceDamping = t.bounceDamping ?? Gt, this.restDelta = t.restDelta ?? jt;
129
129
  }
130
130
  step(t, n, s) {
131
- const o = Math.min(s, 0.033), { acceleration: i, resistance: l, resistanceType: a, min: r, max: c } = this, { position: p, velocity: d } = t, f = r !== void 0 && p < r, u = c !== void 0 && p > c;
131
+ const o = Math.min(s, 0.033), { acceleration: i, resistance: l, resistanceType: a, min: r, max: c } = this, { position: f, velocity: p } = t, d = r !== void 0 && f < r, u = c !== void 0 && f > c;
132
132
  let y;
133
- if (f || u) {
134
- const b = p - (f ? r : c), P = -this.bounceStiffness * b, _ = -this.bounceDamping * d;
135
- y = P + _;
133
+ if (d || u) {
134
+ const b = f - (d ? r : c), P = -this.bounceStiffness * b, $ = -this.bounceDamping * p;
135
+ y = P + $;
136
136
  } else {
137
- const m = n > p ? 1 : -1;
137
+ const S = n > f ? 1 : -1;
138
138
  let b;
139
- a === "linear" ? b = l * d : b = l * d * Math.abs(d), y = m * i - b;
139
+ a === "linear" ? b = l * p : b = l * p * Math.abs(p), y = S * i - b;
140
140
  }
141
- const h = d + y * o;
142
- let S = p + h * o;
143
- if (!f && !u) {
144
- const m = n > p ? 1 : -1;
145
- (m > 0 && S > n || m < 0 && S < n) && (S = n);
141
+ const h = p + y * o;
142
+ let w = f + h * o;
143
+ if (!d && !u) {
144
+ const S = n > f ? 1 : -1;
145
+ (S > 0 && w > n || S < 0 && w < n) && (w = n);
146
146
  }
147
147
  return {
148
- position: S,
149
- velocity: S === n ? 0 : h
148
+ position: w,
149
+ velocity: w === n ? 0 : h
150
150
  };
151
151
  }
152
152
  isSettled(t, n) {
153
153
  return Math.abs(n - t.position) < this.restDelta;
154
154
  }
155
155
  }
156
- class w {
156
+ class g {
157
157
  /**
158
158
  * Create an Integrator from physics config
159
159
  *
@@ -167,7 +167,7 @@ class w {
167
167
  "Cannot use both 'spring' and 'inertia' together. Choose one physics type."
168
168
  );
169
169
  if (t.inertia)
170
- return new Wt({
170
+ return new Jt({
171
171
  acceleration: t.inertia.acceleration,
172
172
  resistance: t.inertia.resistance,
173
173
  resistanceType: t.inertia.resistanceType,
@@ -184,7 +184,7 @@ class w {
184
184
  return typeof s == "number" ? o = s : typeof s == "object" && (o = {
185
185
  stiffness: s.stiffness,
186
186
  damping: s.damping
187
- }), new Nt({
187
+ }), new qt({
188
188
  stiffness: n.stiffness,
189
189
  damping: n.damping,
190
190
  follower: o,
@@ -192,7 +192,7 @@ class w {
192
192
  restSpeed: n.restSpeed
193
193
  });
194
194
  }
195
- return new L({
195
+ return new z({
196
196
  stiffness: n.stiffness,
197
197
  damping: n.damping,
198
198
  restDelta: n.restDelta,
@@ -204,12 +204,12 @@ class w {
204
204
  * @deprecated Use from({ spring: config }) instead
205
205
  */
206
206
  static fromSpring(t) {
207
- return w.from({ spring: t });
207
+ return g.from({ spring: t });
208
208
  }
209
209
  }
210
- class qt {
210
+ class Qt {
211
211
  constructor(t) {
212
- C(this, "durationSec");
212
+ x(this, "durationSec");
213
213
  this.durationSec = Math.max(1 / 60, t.durationSec);
214
214
  }
215
215
  step(t, n, s) {
@@ -219,16 +219,16 @@ class qt {
219
219
  return (i > 0 ? r >= n : r <= n) ? { position: n, velocity: 0 } : { position: r, velocity: i * l };
220
220
  }
221
221
  isSettled(t, n) {
222
- return Math.abs(t.position - n) < J;
222
+ return Math.abs(t.position - n) < st;
223
223
  }
224
224
  }
225
- function tt(e, t) {
225
+ function N(e, t) {
226
226
  function n(i) {
227
227
  let l = 0, a = 0;
228
228
  const r = i.offsetWidth, c = i.offsetHeight;
229
- let p = i;
230
- for (; p; )
231
- l += p.offsetTop, a += p.offsetLeft, p = p.offsetParent;
229
+ let f = i;
230
+ for (; f; )
231
+ l += f.offsetTop, a += f.offsetLeft, f = f.offsetParent;
232
232
  return l -= window.scrollY, a -= window.scrollX, { top: l, left: a, width: r, height: c };
233
233
  }
234
234
  const s = n(e), o = n(t);
@@ -239,7 +239,7 @@ function tt(e, t) {
239
239
  o.height
240
240
  );
241
241
  }
242
- function nt(e, t) {
242
+ function rt(e, t) {
243
243
  const n = e.getBoundingClientRect(), s = t.getBoundingClientRect(), o = e.offsetWidth > 0 ? n.width / e.offsetWidth : 1, i = e.offsetHeight > 0 ? n.height / e.offsetHeight : 1;
244
244
  return new DOMRect(
245
245
  (s.left - n.left) / o,
@@ -249,7 +249,7 @@ function nt(e, t) {
249
249
  );
250
250
  }
251
251
  function T(e, t) {
252
- const { scrollingElement: n, positionedParent: s } = e, o = n !== s && n.contains(s) ? tt(n, s).top : 0;
252
+ const { scrollingElement: n, positionedParent: s } = e, o = n !== s && n.contains(s) ? N(n, s).top : 0;
253
253
  return {
254
254
  top: e[t].scroll.y,
255
255
  left: 0,
@@ -257,7 +257,14 @@ function T(e, t) {
257
257
  height: n.clientHeight - o
258
258
  };
259
259
  }
260
- const st = 8, ot = {
260
+ function Yt(e, t) {
261
+ const { scrollingElement: n, positionedParent: s } = e, o = n !== s && n.contains(s) ? N(n, s).top : 0;
262
+ return {
263
+ top: e[t].scroll.y - o,
264
+ height: n.clientHeight
265
+ };
266
+ }
267
+ const at = 8, lt = {
261
268
  spring: {
262
269
  stiffness: 1e3,
263
270
  damping: 40,
@@ -266,10 +273,10 @@ const st = 8, ot = {
266
273
  restSpeed: 0.1
267
274
  }
268
275
  };
269
- function Kt({
276
+ function te({
270
277
  direction: e
271
278
  }) {
272
- const t = e === "forward" ? st : -st;
279
+ const t = e === "forward" ? at : -at;
273
280
  return {
274
281
  out: {
275
282
  willChange: "transform, opacity",
@@ -291,25 +298,25 @@ function Kt({
291
298
  }
292
299
  };
293
300
  }
294
- function jt() {
301
+ function ee() {
295
302
  return {
296
- outPhysics: ot,
297
- inPhysics: ot,
303
+ outPhysics: lt,
304
+ inPhysics: lt,
298
305
  // Both sides run together — the cross-fade is the whole point of the
299
306
  // snappy feel. (fluid's sibling uses staggered fade-through.)
300
307
  composition: { mode: "parallel", startAt: [0, 0] },
301
- build: Kt
308
+ build: te
302
309
  };
303
310
  }
304
- const it = 30, Gt = {
311
+ const ct = 30, ne = {
305
312
  inertia: { acceleration: 150, resistance: 1.5, restDelta: 0.1 }
306
- }, Jt = {
313
+ }, se = {
307
314
  spring: { stiffness: 180, damping: 34, restDelta: 0.1, restSpeed: 0.1 }
308
315
  };
309
- function Qt({
316
+ function oe({
310
317
  direction: e
311
318
  }) {
312
- const t = e === "forward" ? 1 : -1, n = -it * t, s = it * t;
319
+ const t = e === "forward" ? 1 : -1, n = -ct * t, s = ct * t;
313
320
  return {
314
321
  out: {
315
322
  willChange: "transform, opacity",
@@ -332,29 +339,29 @@ function Qt({
332
339
  }
333
340
  };
334
341
  }
335
- function te() {
342
+ function ie() {
336
343
  return {
337
- outPhysics: Gt,
338
- inPhysics: Jt,
344
+ outPhysics: ne,
345
+ inPhysics: se,
339
346
  // Phased motion: outgoing falls away first under inertia, then incoming
340
347
  // springs in. The fade-through shape comes from the integrator curves
341
348
  // plus the sequence handoff, not from FADE_SPLIT inside animate(t).
342
349
  composition: { mode: "sequence" },
343
- build: Qt
350
+ build: oe
344
351
  };
345
352
  }
346
- const ee = {
347
- snappy: jt(),
348
- fluid: te()
349
- }, rt = 8, ne = {
353
+ const re = {
354
+ snappy: ee(),
355
+ fluid: ie()
356
+ }, pt = 8, ae = {
350
357
  inertia: { acceleration: 150, resistance: 1.5, restDelta: 0.1 }
351
- }, se = {
358
+ }, le = {
352
359
  spring: { stiffness: 180, damping: 34, restDelta: 0.1, restSpeed: 0.1 }
353
360
  };
354
- function oe({
361
+ function ce({
355
362
  direction: e
356
363
  }) {
357
- const t = e === "forward" ? 1 : -1, n = -rt * t, s = rt * t;
364
+ const t = e === "forward" ? 1 : -1, n = -pt * t, s = pt * t;
358
365
  return {
359
366
  out: {
360
367
  willChange: "transform, opacity",
@@ -377,21 +384,21 @@ function oe({
377
384
  }
378
385
  };
379
386
  }
380
- function ie() {
387
+ function pe() {
381
388
  return {
382
- outPhysics: ne,
383
- inPhysics: se,
389
+ outPhysics: ae,
390
+ inPhysics: le,
384
391
  composition: { mode: "sequence" },
385
- build: oe
392
+ build: ce
386
393
  };
387
394
  }
388
- const re = 8, ae = {
395
+ const fe = 8, de = {
389
396
  inertia: { acceleration: 150, resistance: 1.5, restDelta: 0.1 }
390
- }, le = {
397
+ }, ye = {
391
398
  spring: { stiffness: 180, damping: 34, restDelta: 0.1, restSpeed: 0.1 }
392
399
  };
393
- function ce(e) {
394
- const t = re;
400
+ function he(e) {
401
+ const t = fe;
395
402
  return {
396
403
  out: {
397
404
  willChange: "opacity",
@@ -413,32 +420,32 @@ function ce(e) {
413
420
  }
414
421
  };
415
422
  }
416
- function pe() {
423
+ function ue() {
417
424
  return {
418
- outPhysics: ae,
419
- inPhysics: le,
425
+ outPhysics: de,
426
+ inPhysics: ye,
420
427
  composition: { mode: "sequence" },
421
- build: ce
428
+ build: he
422
429
  };
423
430
  }
424
- const at = ie(), de = {
425
- snappy: at,
426
- directional: at,
427
- "non-directional": pe()
428
- }, lt = {
431
+ const ft = pe(), me = {
432
+ snappy: ft,
433
+ directional: ft,
434
+ "non-directional": ue()
435
+ }, dt = {
429
436
  spring: { stiffness: 280, damping: 30, restDelta: 0.1, restSpeed: 0.1 }
430
- }, R = 0.1, U = 1 / 3, ct = (e) => Math.max(0, Math.min(1, e));
431
- function fe({
437
+ }, V = 0.1, X = 1 / 3, yt = (e) => Math.max(0, Math.min(1, e));
438
+ function ge({
432
439
  direction: e
433
440
  }) {
434
- const t = e === "forward" ? 1 : -1, n = 1 - t * R;
441
+ const t = e === "forward" ? 1 : -1, n = 1 - t * V;
435
442
  return {
436
443
  out: {
437
444
  willChange: "transform, opacity",
438
445
  startStyle: {},
439
446
  animate: (s) => ({
440
- transform: `scale(${1 + t * s * R})`,
441
- opacity: `${ct(1 - s / U)}`
447
+ transform: `scale(${1 + t * s * V})`,
448
+ opacity: `${yt(1 - s / X)}`
442
449
  })
443
450
  },
444
451
  in: {
@@ -448,127 +455,127 @@ function fe({
448
455
  opacity: "0"
449
456
  },
450
457
  animate: (s) => ({
451
- transform: `scale(${n + t * s * R})`,
452
- opacity: `${ct((s - U) / (1 - U))}`
458
+ transform: `scale(${n + t * s * V})`,
459
+ opacity: `${yt((s - X) / (1 - X))}`
453
460
  })
454
461
  }
455
462
  };
456
463
  }
457
- function ye() {
464
+ function we() {
458
465
  return {
459
- outPhysics: lt,
460
- inPhysics: lt,
466
+ outPhysics: dt,
467
+ inPhysics: dt,
461
468
  // Scale must move together on both sides; fade-through is encoded inside
462
469
  // each tick (piecewise), not via composition staggering — so parallel.
463
470
  composition: { mode: "parallel" },
464
- build: fe
471
+ build: ge
465
472
  };
466
473
  }
467
- const pt = {
474
+ const ht = {
468
475
  spring: { stiffness: 280, damping: 30, restDelta: 0.1, restSpeed: 0.1 }
469
- }, V = 0.1, N = 1 / 3, dt = (e) => Math.max(0, Math.min(1, e));
470
- function he() {
476
+ }, B = 0.1, Z = 1 / 3, ut = (e) => Math.max(0, Math.min(1, e));
477
+ function Se() {
471
478
  return {
472
479
  out: {
473
480
  willChange: "opacity",
474
481
  startStyle: {},
475
482
  animate: (e) => ({
476
- opacity: `${dt(1 - e / N)}`
483
+ opacity: `${ut(1 - e / Z)}`
477
484
  })
478
485
  },
479
486
  in: {
480
487
  willChange: "transform, opacity",
481
488
  startStyle: {
482
- transform: `scale(${1 - V})`,
489
+ transform: `scale(${1 - B})`,
483
490
  opacity: "0"
484
491
  },
485
492
  animate: (e) => ({
486
- transform: `scale(${1 - V + e * V})`,
487
- opacity: `${dt((e - N) / (1 - N))}`
493
+ transform: `scale(${1 - B + e * B})`,
494
+ opacity: `${ut((e - Z) / (1 - Z))}`
488
495
  })
489
496
  }
490
497
  };
491
498
  }
492
- function ue() {
499
+ function be() {
493
500
  return {
494
- outPhysics: pt,
495
- inPhysics: pt,
501
+ outPhysics: ht,
502
+ inPhysics: ht,
496
503
  composition: { mode: "parallel" },
497
- build: he
504
+ build: Se
498
505
  };
499
506
  }
500
- const ft = ye(), me = {
501
- snappy: ft,
502
- directional: ft,
503
- "non-directional": ue()
504
- }, ge = {
505
- x: ee,
506
- y: de,
507
- z: me
507
+ const mt = we(), $e = {
508
+ snappy: mt,
509
+ directional: mt,
510
+ "non-directional": be()
511
+ }, Ce = {
512
+ x: re,
513
+ y: me,
514
+ z: $e
508
515
  };
509
- function we(e, t) {
510
- const n = ge[e];
516
+ function xe(e, t) {
517
+ const n = Ce[e];
511
518
  return n[t] ?? n.snappy;
512
519
  }
513
- const Se = "x", be = "snappy";
514
- function yt(e, t) {
520
+ const Ee = "x", Pe = "snappy";
521
+ function gt(e, t) {
515
522
  e.style.willChange = t.willChange, e.style.backfaceVisibility = "hidden", e.style.contain = "layout paint";
516
523
  for (const [n, s] of Object.entries(t.startStyle))
517
524
  e.style[n] = s;
518
525
  }
519
- function Tt(e) {
526
+ function Lt(e) {
520
527
  e.style.willChange = "auto", e.style.backfaceVisibility = "", e.style.contain = "", e.style.transform = "", e.style.opacity = "", e.style.clipPath = "";
521
528
  }
522
- function $e(e) {
523
- Tt(e), e.style.pointerEvents = "";
529
+ function _e(e) {
530
+ Lt(e), e.style.pointerEvents = "";
524
531
  }
525
- const Ce = (e = {}) => {
526
- const t = e.direction ?? "forward", n = e.type ?? Se, s = e.feel ?? be, o = we(n, s), i = o.build({ direction: t });
532
+ const Ie = (e = {}) => {
533
+ const t = e.direction ?? "forward", n = e.type ?? Ee, s = e.feel ?? Pe, o = xe(n, s), i = o.build({ direction: t });
527
534
  return {
528
535
  prepare: ({ from: l, to: a }) => (l.then((r) => {
529
- yt(r, i.out), r.style.pointerEvents = "none";
536
+ gt(r, i.out), r.style.pointerEvents = "none";
530
537
  }), a.then((r) => {
531
- yt(r, i.in);
538
+ gt(r, i.in);
532
539
  }), {}),
533
540
  animation: ({ from: l, to: a, context: r }) => {
534
541
  if (n === "z") {
535
- const d = T(r, "from"), f = T(r, "to");
536
- l.style.clipPath = `inset(${d.top}px 0 calc(100% - ${d.top + d.height}px) 0)`, a.style.clipPath = `inset(${f.top}px 0 calc(100% - ${f.top + f.height}px) 0)`;
542
+ const p = T(r, "from"), d = T(r, "to");
543
+ l.style.clipPath = `inset(${p.top}px 0 calc(100% - ${p.top + p.height}px) 0)`, a.style.clipPath = `inset(${d.top}px 0 calc(100% - ${d.top + d.height}px) 0)`;
537
544
  }
538
- const c = new g({
545
+ const c = new m({
539
546
  element: l,
540
- integrator: w.from(o.outPhysics),
541
- style: (d) => i.out.animate(d),
547
+ integrator: g.from(o.outPhysics),
548
+ style: (p) => i.out.animate(p),
542
549
  // Restore the reused from node's inline styles on complete. This
543
550
  // covers willChange/backfaceVisibility/contain/transform/opacity (from
544
551
  // applyStartStyle + the WAAPI final frame), pointerEvents (set in
545
552
  // prepare), and clipPath (set above for z; harmless no-op otherwise).
546
- onComplete: () => $e(l)
547
- }), p = new g({
553
+ onComplete: () => _e(l)
554
+ }), f = new m({
548
555
  element: a,
549
- integrator: w.from(o.inPhysics),
550
- style: (d) => i.in.animate(d),
551
- onComplete: () => Tt(a)
556
+ integrator: g.from(o.inPhysics),
557
+ style: (p) => i.in.animate(p),
558
+ onComplete: () => Lt(a)
552
559
  });
553
- return new x([c, p], o.composition);
560
+ return new E([c, f], o.composition);
554
561
  }
555
562
  };
556
563
  };
557
- function xe(e, t, n) {
564
+ function ve(e, t, n) {
558
565
  return e === "y" ? t === "non-directional" ? "non-directional" : "directional" : e !== "x" || t === "snappy" || n === "snappy" ? "snappy" : "fluid";
559
566
  }
560
- function $s(e) {
561
- const { paths: t } = e, n = e.type ?? "x", s = e.variant, o = e.feel, i = xe(n, s, o);
562
- return Q(
567
+ function Ds(e) {
568
+ const { paths: t } = e, n = e.type ?? "x", s = e.variant, o = e.feel, i = ve(n, s, o);
569
+ return ot(
563
570
  t,
564
571
  { forward: "forward", backward: "backward" },
565
- (l) => Ce({ type: n, direction: l, feel: i })
572
+ (l) => Ie({ type: n, direction: l, feel: i })
566
573
  );
567
574
  }
568
- const Ee = {
575
+ const De = {
569
576
  spring: { stiffness: 200, damping: 22 }
570
- }, Pe = 10, _e = "horizontal", Ie = "#000000";
571
- function ht(e, t, n, s, o, i) {
577
+ }, Oe = 10, Te = "horizontal", Fe = "#000000";
578
+ function wt(e, t, n, s, o, i) {
572
579
  window.getComputedStyle(e).position === "static" && (e.style.position = "relative");
573
580
  const a = document.createElement("div");
574
581
  a.style.cssText = `
@@ -583,27 +590,27 @@ function ht(e, t, n, s, o, i) {
583
590
  `;
584
591
  const r = [];
585
592
  for (let c = 0; c < t; c++) {
586
- const p = document.createElement("div");
593
+ const f = document.createElement("div");
587
594
  if (n === "horizontal") {
588
- const d = 100 / t;
589
- p.style.cssText = `
595
+ const p = 100 / t;
596
+ f.style.cssText = `
590
597
  position: absolute;
591
- top: ${d * c}%;
598
+ top: ${p * c}%;
592
599
  left: 0;
593
600
  width: 100%;
594
- height: calc(${d}% + 1px);
601
+ height: calc(${p}% + 1px);
595
602
  background: ${s};
596
603
  transform: scaleX(${o === "hidden" ? 0 : 1});
597
604
  transform-origin: ${i} center;
598
605
  will-change: transform;
599
606
  `;
600
607
  } else {
601
- const d = 100 / t;
602
- p.style.cssText = `
608
+ const p = 100 / t;
609
+ f.style.cssText = `
603
610
  position: absolute;
604
611
  top: 0;
605
- left: ${d * c}%;
606
- width: calc(${d}% + 1px);
612
+ left: ${p * c}%;
613
+ width: calc(${p}% + 1px);
607
614
  height: 100%;
608
615
  background: ${s};
609
616
  transform: scaleY(${o === "hidden" ? 0 : 1});
@@ -611,17 +618,17 @@ function ht(e, t, n, s, o, i) {
611
618
  will-change: transform;
612
619
  `;
613
620
  }
614
- r.push(p), a.appendChild(p);
621
+ r.push(f), a.appendChild(f);
615
622
  }
616
623
  return e.appendChild(a), { container: a, blinds: r };
617
624
  }
618
- const De = (e = {}) => {
619
- const t = e.blindCount ?? Pe, n = e.direction ?? _e, s = e.blindColor ?? Ie, o = e.physics ?? Ee;
625
+ const Ae = (e = {}) => {
626
+ const t = e.blindCount ?? Oe, n = e.direction ?? Te, s = e.blindColor ?? Fe, o = e.physics ?? De;
620
627
  return {
621
628
  prepare: async ({ from: i, to: l }) => {
622
629
  const a = await i, r = await l;
623
630
  a.style.zIndex = "1000";
624
- const c = ht(
631
+ const c = wt(
625
632
  a,
626
633
  t,
627
634
  n,
@@ -630,7 +637,7 @@ const De = (e = {}) => {
630
637
  "left"
631
638
  );
632
639
  r.style.position = "relative", r.style.zIndex = "0";
633
- const p = ht(
640
+ const f = wt(
634
641
  r,
635
642
  t,
636
643
  n,
@@ -642,8 +649,8 @@ const De = (e = {}) => {
642
649
  fromEl: a,
643
650
  fromBlinds: c.blinds,
644
651
  fromContainer: c.container,
645
- toBlinds: p.blinds,
646
- toContainer: p.container
652
+ toBlinds: f.blinds,
653
+ toContainer: f.container
647
654
  };
648
655
  },
649
656
  animation: ({
@@ -653,41 +660,41 @@ const De = (e = {}) => {
653
660
  toBlinds: r,
654
661
  toContainer: c
655
662
  }) => {
656
- const p = l.map(
657
- (y) => new g({
663
+ const f = l.map(
664
+ (y) => new m({
658
665
  element: y,
659
- integrator: w.from(o),
666
+ integrator: g.from(o),
660
667
  style: (h) => ({
661
668
  transform: n === "horizontal" ? `scaleX(${h})` : `scaleY(${h})`
662
669
  })
663
670
  })
664
- ), d = r.map(
665
- (y, h) => new g({
671
+ ), p = r.map(
672
+ (y, h) => new m({
666
673
  element: y,
667
- integrator: w.from(o),
668
- style: (S, m) => ({
669
- transform: n === "horizontal" ? `scaleX(${m})` : `scaleY(${m})`
674
+ integrator: g.from(o),
675
+ style: (w, S) => ({
676
+ transform: n === "horizontal" ? `scaleX(${S})` : `scaleY(${S})`
670
677
  }),
671
678
  onComplete: h === r.length - 1 ? () => {
672
679
  c.remove(), a.remove(), i.style.zIndex = "", i.style.position = "";
673
680
  } : void 0
674
681
  })
675
- ), f = new x(p, { mode: "parallel" }), u = new x(d, { mode: "parallel" });
676
- return new x([f, u], { mode: "sequence" });
682
+ ), d = new E(f, { mode: "parallel" }), u = new E(p, { mode: "parallel" });
683
+ return new E([d, u], { mode: "sequence" });
677
684
  }
678
685
  };
679
686
  };
680
- function Cs(e) {
687
+ function Os(e) {
681
688
  const { paths: t, type: n = "horizontal" } = e;
682
- return D(
689
+ return v(
683
690
  t,
684
- () => De({ direction: n })
691
+ () => Ae({ direction: n })
685
692
  );
686
693
  }
687
- const ve = {
694
+ const ke = {
688
695
  spring: { stiffness: 200, damping: 20, doubleSpring: 0.7 }
689
- }, F = 0.5;
690
- function Oe(e) {
696
+ }, Y = 0.5;
697
+ function Ye(e) {
691
698
  const t = e === "enter" ? -100 : 100, n = e === "enter" ? 100 : -100;
692
699
  return {
693
700
  out: {
@@ -695,32 +702,32 @@ function Oe(e) {
695
702
  startStyle: {},
696
703
  animate: (s) => ({
697
704
  transform: `translate3d(${t * s}%, 0, 0)`,
698
- opacity: `${F + (1 - F) * (1 - s)}`
705
+ opacity: `${Y + (1 - Y) * (1 - s)}`
699
706
  })
700
707
  },
701
708
  in: {
702
709
  willChange: "transform, opacity",
703
710
  startStyle: {
704
711
  transform: `translate3d(${n}%, 0, 0)`,
705
- opacity: `${F}`
712
+ opacity: `${Y}`
706
713
  },
707
714
  animate: (s) => ({
708
715
  transform: `translate3d(${n * (1 - s)}%, 0, 0)`,
709
- opacity: `${F + (1 - F) * s}`
716
+ opacity: `${Y + (1 - Y) * s}`
710
717
  })
711
718
  }
712
719
  };
713
720
  }
714
- function Te() {
721
+ function Le() {
715
722
  return {
716
- physics: ve,
717
- build: Oe
723
+ physics: ke,
724
+ build: Ye
718
725
  };
719
726
  }
720
- const Ae = {
727
+ const He = {
721
728
  spring: { stiffness: 170, damping: 22 }
722
729
  };
723
- function Fe(e) {
730
+ function Me(e) {
724
731
  const t = e === "enter" ? -20 : 100, n = e === "enter" ? 100 : -20;
725
732
  return {
726
733
  out: {
@@ -741,105 +748,105 @@ function Fe(e) {
741
748
  }
742
749
  };
743
750
  }
744
- function ke() {
751
+ function ze() {
745
752
  return {
746
- physics: Ae,
747
- build: Fe
753
+ physics: He,
754
+ build: Me
748
755
  };
749
756
  }
750
- const Ye = {
751
- parallax: ke(),
752
- crossfade: Te()
753
- }, v = "0", Le = "1", O = "2", He = "parallax";
754
- function ut(e, t) {
757
+ const Re = {
758
+ parallax: ze(),
759
+ crossfade: Le()
760
+ }, D = "0", Ht = "1", O = "2", Ue = "parallax";
761
+ function St(e, t) {
755
762
  e.style.willChange = t.willChange, e.style.backfaceVisibility = "hidden", e.style.contain = "layout paint";
756
763
  for (const [n, s] of Object.entries(t.startStyle))
757
764
  e.style[n] = s;
758
765
  }
759
- const Me = (e = {}) => {
760
- const t = e.direction ?? "enter", n = Ye[e.type ?? He], s = n.physics, o = n.build(t), i = t === "enter" ? v : O, l = t === "enter" ? O : v;
766
+ const Ne = (e = {}) => {
767
+ const t = e.direction ?? "enter", n = Re[e.type ?? Ue], s = n.physics, o = n.build(t), i = t === "enter" ? D : O, l = t === "enter" ? O : D;
761
768
  return {
762
769
  prepare: ({ from: a, to: r }) => (a.then((c) => {
763
- ut(c, o.out), c.style.pointerEvents = "none", c.style.zIndex = i;
770
+ St(c, o.out), c.style.pointerEvents = "none", c.style.zIndex = i;
764
771
  }), r.then((c) => {
765
- ut(c, o.in), c.style.position = "relative", c.style.zIndex = l;
772
+ St(c, o.in), c.style.position = "relative", c.style.zIndex = l;
766
773
  }), {}),
767
774
  animation: ({ from: a, to: r }) => {
768
- const c = new g({
775
+ const c = new m({
769
776
  element: a,
770
- integrator: w.from(s),
771
- style: (d) => o.out.animate(d),
777
+ integrator: g.from(s),
778
+ style: (p) => o.out.animate(p),
772
779
  // The outgoing node is the real, reused element (re-hidden on navigate),
773
780
  // so clear every inline style we set on it — mirroring the `to` cleanup,
774
781
  // plus the out-only `pointerEvents` / `zIndex`.
775
782
  onComplete: () => {
776
783
  a.style.willChange = "auto", a.style.backfaceVisibility = "", a.style.contain = "", a.style.transform = "", a.style.opacity = "", a.style.pointerEvents = "", a.style.zIndex = "";
777
784
  }
778
- }), p = new g({
785
+ }), f = new m({
779
786
  element: r,
780
- integrator: w.from(s),
781
- style: (d) => o.in.animate(d),
787
+ integrator: g.from(s),
788
+ style: (p) => o.in.animate(p),
782
789
  onComplete: () => {
783
790
  r.style.willChange = "auto", r.style.backfaceVisibility = "", r.style.contain = "", r.style.transform = "", r.style.opacity = "", r.style.position === "relative" && (r.style.position = ""), r.style.zIndex === l && (r.style.zIndex = "");
784
791
  }
785
792
  });
786
- for (const d of [c, p]) {
787
- const f = d.onComplete;
788
- d.onComplete = () => {
789
- f == null || f(), d.releaseFill();
793
+ for (const p of [c, f]) {
794
+ const d = p.onComplete;
795
+ p.onComplete = () => {
796
+ d == null || d(), p.releaseFill();
790
797
  };
791
798
  }
792
- return new x([c, p], { mode: "parallel" });
799
+ return new E([c, f], { mode: "parallel" });
793
800
  }
794
801
  };
795
802
  };
796
- function ze(e) {
803
+ function Ve(e) {
797
804
  return e === "slide" || e === "crossfade" ? "crossfade" : "parallax";
798
805
  }
799
- function xs(e) {
800
- const { enter: t, exit: n } = e, s = e.type, o = ze(s);
801
- return Ot(
806
+ function Ts(e) {
807
+ const { enter: t, exit: n } = e, s = e.type, o = Ve(s);
808
+ return kt(
802
809
  { enter: t, exit: n },
803
- (i) => Me({ direction: i, type: o })
810
+ (i) => Ne({ direction: i, type: o })
804
811
  );
805
812
  }
806
- const Re = {
813
+ const Xe = {
807
814
  spring: { stiffness: 180, damping: 20, doubleSpring: !0 }
808
- }, Ue = {
815
+ }, Be = {
809
816
  spring: { stiffness: 170, damping: 20, doubleSpring: !0 }
810
- }, Ve = (e = {}) => {
811
- const t = e.physics ?? Ue, n = e.physics ?? Re;
817
+ }, Ze = (e = {}) => {
818
+ const t = e.physics ?? Be, n = e.physics ?? Xe;
812
819
  return {
813
820
  prepare: ({ to: s }) => (s.then((o) => {
814
821
  o.style.opacity = "0", o.style.willChange = "opacity";
815
822
  }), {}),
816
823
  animation: ({ from: s, to: o }) => {
817
- const i = new g({
824
+ const i = new m({
818
825
  element: s,
819
- integrator: w.from(n),
826
+ integrator: g.from(n),
820
827
  // Default bounds (0, 1). `u` runs 1→0 as the animation moves
821
828
  // forward, mapping opacity from fully visible to invisible.
822
829
  style: (a, r) => ({ opacity: r }),
823
830
  onComplete: () => {
824
831
  s.style.willChange = "auto", s.style.opacity = "";
825
832
  }
826
- }), l = new g({
833
+ }), l = new m({
827
834
  element: o,
828
- integrator: w.from(t),
835
+ integrator: g.from(t),
829
836
  style: (a) => ({ opacity: a }),
830
837
  onComplete: () => {
831
838
  o.style.willChange = "auto", o.style.opacity = "";
832
839
  }
833
840
  });
834
- return new x([i, l], { mode: "sequence" });
841
+ return new E([i, l], { mode: "sequence" });
835
842
  }
836
843
  };
837
844
  };
838
- function Es(e) {
845
+ function Fs(e) {
839
846
  const { paths: t } = e;
840
- return D(t, () => Ve());
847
+ return v(t, () => Ze());
841
848
  }
842
- const X = {
849
+ const W = {
843
850
  scaleDown: { stiffness: 20, damping: 7 },
844
851
  translate: { stiffness: 15, damping: 7 },
845
852
  scaleUp: { stiffness: 20, damping: 7 }
@@ -847,11 +854,11 @@ const X = {
847
854
  scaleDown: 0,
848
855
  translate: 0.2,
849
856
  scaleUp: 0.8
850
- }, Ne = 0.8, Xe = "white", mt = 1e3 / 60, Be = 600;
851
- function Ze(e) {
852
- const { items: t, from: n, to: s, recordFrame: o } = e, i = mt / 1e3, l = Math.abs(s - n), a = t.map((c) => ({
857
+ }, We = 0.8, qe = "white", bt = 1e3 / 60, je = 600;
858
+ function Ke(e) {
859
+ const { items: t, from: n, to: s, recordFrame: o } = e, i = bt / 1e3, l = Math.abs(s - n), a = t.map((c) => ({
853
860
  item: c,
854
- integrator: new L({
861
+ integrator: new z({
855
862
  stiffness: c.spring.stiffness,
856
863
  damping: c.spring.damping
857
864
  }),
@@ -864,30 +871,30 @@ function Ze(e) {
864
871
  (c === 0 || a[c].item.offset === 0) && (a[c].started = !0);
865
872
  o(0);
866
873
  let r = 0;
867
- for (let c = 1; c <= Be; c++) {
868
- const p = c * mt;
869
- r = p;
870
- for (const d of a)
871
- !d.started || d.settled || (d.state = d.integrator.step(d.state, s, i), d.integrator.isSettled(d.state, s) ? (d.settleTime += i, d.settleTime >= Vt && (d.state = { position: s, velocity: 0 }, d.settled = !0)) : d.settleTime = 0, d.item.tick(d.state.position));
872
- for (let d = 1; d < a.length; d++) {
873
- const f = a[d];
874
- if (f.started) continue;
875
- const u = a[d - 1];
874
+ for (let c = 1; c <= je; c++) {
875
+ const f = c * bt;
876
+ r = f;
877
+ for (const p of a)
878
+ !p.started || p.settled || (p.state = p.integrator.step(p.state, s, i), p.integrator.isSettled(p.state, s) ? (p.settleTime += i, p.settleTime >= Wt && (p.state = { position: s, velocity: 0 }, p.settled = !0)) : p.settleTime = 0, p.item.tick(p.state.position));
879
+ for (let p = 1; p < a.length; p++) {
880
+ const d = a[p];
881
+ if (d.started) continue;
882
+ const u = a[p - 1];
876
883
  if (!u.started) continue;
877
- (l === 0 ? 1 : Math.abs(u.state.position - n) / l) >= f.item.offset && (f.started = !0);
884
+ (l === 0 ? 1 : Math.abs(u.state.position - n) / l) >= d.item.offset && (d.started = !0);
878
885
  }
879
- if (o(p), a.every((d) => d.settled)) return p;
886
+ if (o(f), a.every((p) => p.settled)) return f;
880
887
  }
881
888
  return r;
882
889
  }
883
- function B(e, t) {
890
+ function q(e, t) {
884
891
  return e != null && e.spring ? {
885
892
  stiffness: e.spring.stiffness,
886
893
  damping: e.spring.damping
887
894
  } : t;
888
895
  }
889
- function gt(e) {
890
- const { rect: t, scale: n, direction: s, override: o } = e, i = s === "out" ? { scale: 1, translateY: -t.top } : { scale: n, translateY: -t.top + t.height }, l = B(o, X.scaleDown), a = B(o, X.translate), r = B(o, X.scaleUp), c = s === "out" ? 1 : 0, p = s === "out" ? 0 : 1, d = s === "out" ? [
896
+ function $t(e) {
897
+ const { rect: t, scale: n, direction: s, override: o } = e, i = s === "out" ? { scale: 1, translateY: -t.top } : { scale: n, translateY: -t.top + t.height }, l = q(o, W.scaleDown), a = q(o, W.translate), r = q(o, W.scaleUp), c = s === "out" ? 1 : 0, f = s === "out" ? 0 : 1, p = s === "out" ? [
891
898
  {
892
899
  spring: l,
893
900
  offset: A.scaleDown,
@@ -934,19 +941,19 @@ function gt(e) {
934
941
  i.scale = n + (1 - n) * y;
935
942
  }
936
943
  }
937
- ], f = [], u = Ze({
938
- items: d,
944
+ ], d = [], u = Ke({
945
+ items: p,
939
946
  from: c,
940
- to: p,
941
- recordFrame: (y) => f.push({
947
+ to: f,
948
+ recordFrame: (y) => d.push({
942
949
  time: y,
943
950
  scale: i.scale,
944
951
  translateY: i.translateY
945
952
  })
946
953
  });
947
- return { snapshots: f, totalDuration: u };
954
+ return { snapshots: d, totalDuration: u };
948
955
  }
949
- function We(e, t) {
956
+ function Ge(e, t) {
950
957
  if (e.length === 0) return { time: 0, scale: 1, translateY: 0 };
951
958
  if (e.length === 1 || t <= 0) return e[0];
952
959
  if (t >= 1) return e[e.length - 1];
@@ -959,13 +966,13 @@ function We(e, t) {
959
966
  translateY: i.translateY + (l.translateY - i.translateY) * a
960
967
  };
961
968
  }
962
- const qe = [
969
+ const Je = [
963
970
  [1, 1],
964
971
  [-1, 1],
965
972
  [1, -1],
966
973
  [-1, -1]
967
974
  ];
968
- function Ke(e, t) {
975
+ function Qe(e, t) {
969
976
  const o = (i, l, a) => {
970
977
  const r = document.createElement("div");
971
978
  Object.assign(r.style, {
@@ -985,15 +992,15 @@ function Ke(e, t) {
985
992
  [a]: "0",
986
993
  [l]: "0"
987
994
  });
988
- const p = document.createElement("div");
989
- return Object.assign(p.style, {
995
+ const f = document.createElement("div");
996
+ return Object.assign(f.style, {
990
997
  position: "absolute",
991
998
  width: "1px",
992
999
  height: "15px",
993
1000
  backgroundColor: e,
994
1001
  [a]: "0",
995
1002
  [l]: "0"
996
- }), r.appendChild(c), r.appendChild(p), r;
1003
+ }), r.appendChild(c), r.appendChild(f), r;
997
1004
  };
998
1005
  return {
999
1006
  topLeft: o(
@@ -1030,11 +1037,11 @@ function Ke(e, t) {
1030
1037
  )
1031
1038
  };
1032
1039
  }
1033
- function wt(e, t) {
1040
+ function Ct(e, t) {
1034
1041
  const n = t.left + t.width / 2, s = t.top + t.height / 2;
1035
1042
  e.style.transformOrigin = `${n}px ${s}px`;
1036
1043
  }
1037
- function St(e, t) {
1044
+ function xt(e, t) {
1038
1045
  e.style.clipPath = `polygon(
1039
1046
  ${t.left}px ${t.top}px,
1040
1047
  ${t.left + t.width}px ${t.top}px,
@@ -1042,86 +1049,86 @@ function St(e, t) {
1042
1049
  ${t.left}px ${t.top + t.height}px
1043
1050
  )`;
1044
1051
  }
1045
- function Z(e, t, n, s, o) {
1052
+ function j(e, t, n, s, o) {
1046
1053
  const i = n / 1e3;
1047
- return new g({
1054
+ return new m({
1048
1055
  element: e,
1049
- integrator: new qt({ durationSec: i }),
1056
+ integrator: new Qt({ durationSec: i }),
1050
1057
  lowerBound: 0,
1051
1058
  upperBound: 1,
1052
- style: (l) => s(We(t, l)),
1059
+ style: (l) => s(Ge(t, l)),
1053
1060
  onComplete: o
1054
1061
  });
1055
1062
  }
1056
- const je = (e = {}) => {
1063
+ const tn = (e = {}) => {
1057
1064
  var o;
1058
- const t = ((o = e.border) == null ? void 0 : o.color) ?? Xe, n = Ne, s = e.physics;
1065
+ const t = ((o = e.border) == null ? void 0 : o.color) ?? qe, n = We, s = e.physics;
1059
1066
  return {
1060
1067
  prepare: ({ from: i, to: l, context: a }) => {
1061
- const r = T(a, "from"), c = T(a, "to"), p = tt(document.body, a.positionedParent), d = Ke(t, {
1068
+ const r = T(a, "from"), c = T(a, "to"), f = N(document.body, a.positionedParent), p = Qe(t, {
1062
1069
  ...r,
1063
- top: p.top
1070
+ top: f.top
1064
1071
  });
1065
- for (const f of [
1072
+ for (const d of [
1066
1073
  "topLeft",
1067
1074
  "topRight",
1068
1075
  "bottomLeft",
1069
1076
  "bottomRight"
1070
1077
  ])
1071
- a.positionedParent.appendChild(d[f]);
1072
- return i.then((f) => {
1073
- wt(f, r), St(f, r), f.style.transform = `translateY(${-r.top}px)`;
1074
- }), l.then((f) => {
1075
- wt(f, c), St(f, c), f.style.transform = `translateY(${-c.top + c.height}px) scale(${n})`;
1076
- }), { borders: d, fromRect: r, toRect: c };
1078
+ a.positionedParent.appendChild(p[d]);
1079
+ return i.then((d) => {
1080
+ Ct(d, r), xt(d, r), d.style.transform = `translateY(${-r.top}px)`;
1081
+ }), l.then((d) => {
1082
+ Ct(d, c), xt(d, c), d.style.transform = `translateY(${-c.top + c.height}px) scale(${n})`;
1083
+ }), { borders: p, fromRect: r, toRect: c };
1077
1084
  },
1078
- animation: ({ from: i, to: l, context: a, borders: r, fromRect: c, toRect: p }) => {
1079
- const d = gt({
1085
+ animation: ({ from: i, to: l, context: a, borders: r, fromRect: c, toRect: f }) => {
1086
+ const p = $t({
1080
1087
  rect: c,
1081
1088
  scale: n,
1082
1089
  direction: "out",
1083
1090
  override: s
1084
- }), f = gt({
1085
- rect: p,
1091
+ }), d = $t({
1092
+ rect: f,
1086
1093
  scale: n,
1087
1094
  direction: "in",
1088
1095
  override: s
1089
- }), u = Z(
1096
+ }), u = j(
1090
1097
  i,
1091
- d.snapshots,
1092
- d.totalDuration,
1098
+ p.snapshots,
1099
+ p.totalDuration,
1093
1100
  (b) => ({
1094
1101
  transform: `translateY(${b.translateY}px) scale(${b.scale})`
1095
1102
  }),
1096
1103
  () => {
1097
1104
  i.style.clipPath = "", i.style.transformOrigin = "", i.style.transform = "";
1098
1105
  }
1099
- ), y = Z(
1106
+ ), y = j(
1100
1107
  l,
1101
- f.snapshots,
1102
- f.totalDuration,
1108
+ d.snapshots,
1109
+ d.totalDuration,
1103
1110
  (b) => ({
1104
1111
  transform: `translateY(${b.translateY}px) scale(${b.scale})`
1105
1112
  }),
1106
1113
  () => {
1107
1114
  l.style.clipPath = "", l.style.transformOrigin = "", l.style.transform = "";
1108
1115
  }
1109
- ), h = qe.map(([b, P], _) => {
1110
- const I = ["topLeft", "topRight", "bottomLeft", "bottomRight"][_];
1111
- return Z(
1112
- r[I],
1113
- d.snapshots,
1114
- d.totalDuration,
1115
- ($) => {
1116
- const E = (c.width - c.width * $.scale) / 2 * 0.7 * b, z = (c.height - c.height * $.scale) / 2 * 0.7 * P;
1117
- return { transform: `translate(${E}px, ${z}px)` };
1116
+ ), h = Je.map(([b, P], $) => {
1117
+ const C = ["topLeft", "topRight", "bottomLeft", "bottomRight"][$];
1118
+ return j(
1119
+ r[C],
1120
+ p.snapshots,
1121
+ p.totalDuration,
1122
+ (I) => {
1123
+ const _ = (c.width - c.width * I.scale) / 2 * 0.7 * b, k = (c.height - c.height * I.scale) / 2 * 0.7 * P;
1124
+ return { transform: `translate(${_}px, ${k}px)` };
1118
1125
  }
1119
1126
  );
1120
- }), S = new x([u, y, ...h], {
1127
+ }), w = new E([u, y, ...h], {
1121
1128
  mode: "parallel"
1122
- }), m = S.onComplete;
1123
- return S.onComplete = () => {
1124
- m == null || m();
1129
+ }), S = w.onComplete;
1130
+ return w.onComplete = () => {
1131
+ S == null || S();
1125
1132
  const b = a.positionedParent;
1126
1133
  for (const P of [
1127
1134
  "topLeft",
@@ -1129,21 +1136,21 @@ const je = (e = {}) => {
1129
1136
  "bottomLeft",
1130
1137
  "bottomRight"
1131
1138
  ]) {
1132
- const _ = r[P];
1133
- _.parentElement === b && b.removeChild(_);
1139
+ const $ = r[P];
1140
+ $.parentElement === b && b.removeChild($);
1134
1141
  }
1135
- }, S;
1142
+ }, w;
1136
1143
  }
1137
1144
  };
1138
1145
  };
1139
- function Ps(e) {
1146
+ function As(e) {
1140
1147
  const { paths: t, options: n } = e, s = (n == null ? void 0 : n.borderColor) !== void 0 ? { border: { color: n.borderColor } } : void 0;
1141
- return D(t, () => je(s));
1148
+ return v(t, () => tn(s));
1142
1149
  }
1143
- const bt = "data-hero-enter-key", $t = "data-hero-exit-key", W = "data-hero-key";
1144
- class Ge {
1150
+ const Et = "data-hero-enter-key", Pt = "data-hero-exit-key", K = "data-hero-key";
1151
+ class en {
1145
1152
  constructor() {
1146
- C(this, "previousFromOpacity", "");
1153
+ x(this, "previousFromOpacity", "");
1147
1154
  }
1148
1155
  prepare(t) {
1149
1156
  t.from.then((n) => {
@@ -1156,38 +1163,38 @@ class Ge {
1156
1163
  }), [];
1157
1164
  }
1158
1165
  }
1159
- const Je = () => new Ge();
1160
- class Qe {
1166
+ const nn = () => new en();
1167
+ class sn {
1161
1168
  contribute(t) {
1162
1169
  const { from: n, to: s, physics: o, onComplete: i } = t, l = n.style.opacity, a = s.style.opacity, r = n.style.willChange, c = s.style.willChange;
1163
1170
  return s.style.opacity = "0", n.style.willChange = "opacity", s.style.willChange = "opacity", i(() => {
1164
1171
  n.style.opacity = l, s.style.opacity = a, n.style.willChange = r, s.style.willChange = c;
1165
1172
  }), [
1166
- new g({
1173
+ new m({
1167
1174
  element: n,
1168
- integrator: w.from(o),
1169
- style: (p, d) => ({ opacity: d })
1175
+ integrator: g.from(o),
1176
+ style: (f, p) => ({ opacity: p })
1170
1177
  }),
1171
- new g({
1178
+ new m({
1172
1179
  element: s,
1173
- integrator: w.from(o),
1174
- style: (p) => ({ opacity: p })
1180
+ integrator: g.from(o),
1181
+ style: (f) => ({ opacity: f })
1175
1182
  })
1176
1183
  ];
1177
1184
  }
1178
1185
  }
1179
- const tn = () => new Qe(), en = {
1180
- static: Je,
1181
- fade: tn
1182
- }, nn = {
1186
+ const on = () => new sn(), rn = {
1187
+ static: nn,
1188
+ fade: on
1189
+ }, an = {
1183
1190
  spring: { stiffness: 320, damping: 30 }
1184
- }, sn = () => nn, on = {
1191
+ }, ln = () => an, cn = {
1185
1192
  spring: { stiffness: 300, damping: 30, doubleSpring: 1 }
1186
- }, rn = () => on, an = {
1187
- default: sn,
1188
- smooth: rn
1189
- }, ln = 700, cn = "data-hero-aspect-ratio", pn = "data-hero-radius";
1190
- function dn(e) {
1193
+ }, pn = () => cn, fn = {
1194
+ default: ln,
1195
+ smooth: pn
1196
+ }, dn = 700, yn = "data-hero-aspect-ratio", hn = "data-hero-radius";
1197
+ function un(e) {
1191
1198
  if (!e) return null;
1192
1199
  if (e.includes("/")) {
1193
1200
  const [n, s] = e.split("/"), o = parseFloat(n ?? ""), i = parseFloat(s ?? "");
@@ -1196,19 +1203,19 @@ function dn(e) {
1196
1203
  const t = parseFloat(e);
1197
1204
  return Number.isFinite(t) && t > 0 ? t : null;
1198
1205
  }
1199
- function Ct(e) {
1200
- const t = e.getAttribute(pn);
1206
+ function _t(e) {
1207
+ const t = e.getAttribute(hn);
1201
1208
  if (!t) return 0;
1202
1209
  const n = parseFloat(t);
1203
1210
  return Number.isFinite(n) && n > 0 ? n : 0;
1204
1211
  }
1205
- function H(e) {
1212
+ function R(e) {
1206
1213
  return e.left + e.width / 2;
1207
1214
  }
1208
- function M(e) {
1215
+ function U(e) {
1209
1216
  return e.top + e.height / 2;
1210
1217
  }
1211
- function fn(e, t) {
1218
+ function mn(e, t) {
1212
1219
  return {
1213
1220
  top: Math.max(0, t.top - e.top),
1214
1221
  right: Math.max(0, e.left + e.width - (t.left + t.width)),
@@ -1216,7 +1223,7 @@ function fn(e, t) {
1216
1223
  left: Math.max(0, t.left - e.left)
1217
1224
  };
1218
1225
  }
1219
- function yn(e, t, n) {
1226
+ function gn(e, t, n) {
1220
1227
  const s = e.width / e.height;
1221
1228
  let o, i;
1222
1229
  return n === "contain" ? s > t ? (i = e.height, o = i * t) : (o = e.width, i = o / t) : s > t ? (o = e.width, i = o / t) : (i = e.height, o = i * t), {
@@ -1226,8 +1233,8 @@ function yn(e, t, n) {
1226
1233
  height: i
1227
1234
  };
1228
1235
  }
1229
- function xt(e, t, n) {
1230
- const s = tt(e, t), o = dn(t.getAttribute(cn));
1236
+ function It(e, t, n) {
1237
+ const s = N(e, t), o = un(t.getAttribute(yn));
1231
1238
  if (o === null)
1232
1239
  return {
1233
1240
  bbox: s,
@@ -1235,16 +1242,16 @@ function xt(e, t, n) {
1235
1242
  window: s,
1236
1243
  clipInset: { top: 0, right: 0, bottom: 0, left: 0 }
1237
1244
  };
1238
- const i = yn(s, o, n), l = n === "cover" ? s : i;
1245
+ const i = gn(s, o, n), l = n === "cover" ? s : i;
1239
1246
  return {
1240
1247
  bbox: s,
1241
1248
  content: i,
1242
1249
  window: l,
1243
- clipInset: fn(i, l)
1250
+ clipInset: mn(i, l)
1244
1251
  };
1245
1252
  }
1246
- function hn(e, t, n, s) {
1247
- const o = n.width / s, i = n.height / s, l = e.width / 2 + (H(n) - H(t)) / s - o / 2, a = e.height / 2 + (M(n) - M(t)) / s - i / 2;
1253
+ function wn(e, t, n, s) {
1254
+ const o = n.width / s, i = n.height / s, l = e.width / 2 + (R(n) - R(t)) / s - o / 2, a = e.height / 2 + (U(n) - U(t)) / s - i / 2;
1248
1255
  return {
1249
1256
  top: Math.max(0, a),
1250
1257
  right: Math.max(0, e.width - l - o),
@@ -1252,7 +1259,7 @@ function hn(e, t, n, s) {
1252
1259
  left: Math.max(0, l)
1253
1260
  };
1254
1261
  }
1255
- function k(e, t) {
1262
+ function H(e, t) {
1256
1263
  const n = /* @__PURE__ */ new Map(), s = e.querySelectorAll(`[${t}]`);
1257
1264
  for (const o of Array.from(s)) {
1258
1265
  const i = o.getAttribute(t);
@@ -1260,8 +1267,8 @@ function k(e, t) {
1260
1267
  }
1261
1268
  return n;
1262
1269
  }
1263
- function un(e, t) {
1264
- const n = [], s = k(t, bt), o = k(e, $t);
1270
+ function Sn(e, t) {
1271
+ const n = [], s = H(t, Et), o = H(e, Pt);
1265
1272
  for (const [a, r] of s) {
1266
1273
  const c = o.get(a);
1267
1274
  c && n.push({
@@ -1272,7 +1279,7 @@ function un(e, t) {
1272
1279
  toFit: "contain"
1273
1280
  });
1274
1281
  }
1275
- const i = k(e, bt), l = k(t, $t);
1282
+ const i = H(e, Et), l = H(t, Pt);
1276
1283
  for (const [a, r] of i) {
1277
1284
  const c = l.get(a);
1278
1285
  c && n.push({
@@ -1285,15 +1292,15 @@ function un(e, t) {
1285
1292
  }
1286
1293
  return n;
1287
1294
  }
1288
- function mn(e, t) {
1295
+ function bn(e, t) {
1289
1296
  const n = [], s = Array.from(
1290
- t.querySelectorAll(`[${W}]`)
1297
+ t.querySelectorAll(`[${K}]`)
1291
1298
  );
1292
1299
  for (const o of s) {
1293
- const i = o.getAttribute(W);
1300
+ const i = o.getAttribute(K);
1294
1301
  if (!i) continue;
1295
1302
  const l = e.querySelector(
1296
- `[${W}="${i}"]`
1303
+ `[${K}="${i}"]`
1297
1304
  );
1298
1305
  l && n.push({
1299
1306
  key: i,
@@ -1305,20 +1312,20 @@ function mn(e, t) {
1305
1312
  }
1306
1313
  return n;
1307
1314
  }
1308
- function gn(e, t) {
1309
- const n = un(e, t);
1310
- return n.length > 0 ? n : mn(e, t);
1315
+ function $n(e, t) {
1316
+ const n = Sn(e, t);
1317
+ return n.length > 0 ? n : bn(e, t);
1311
1318
  }
1312
- function wn(e, t, n) {
1313
- const { fromEl: s, toEl: o } = t, i = xt(e, s, t.fromFit), l = xt(e, o, t.toFit), a = i.content, r = i.window, c = l.content, p = l.window, d = l.clipInset, f = Ct(s), u = Ct(o);
1314
- if (a.width === 0 || a.height === 0 || r.width === 0 || r.height === 0 || c.width === 0 || c.height === 0 || p.width === 0 || p.height === 0)
1319
+ function Cn(e, t, n) {
1320
+ const { fromEl: s, toEl: o } = t, i = It(e, s, t.fromFit), l = It(e, o, t.toFit), a = i.content, r = i.window, c = l.content, f = l.window, p = l.clipInset, d = _t(s), u = _t(o);
1321
+ if (a.width === 0 || a.height === 0 || r.width === 0 || r.height === 0 || c.width === 0 || c.height === 0 || f.width === 0 || f.height === 0)
1315
1322
  return null;
1316
1323
  const y = Math.max(
1317
1324
  a.width / c.width,
1318
1325
  a.height / c.height
1319
- ), h = H(a), S = M(a), m = H(c), b = M(c), P = h - m, _ = S - b;
1320
- if (Math.abs(_) > n) return null;
1321
- const I = hn(
1326
+ ), h = R(a), w = U(a), S = R(c), b = U(c), P = h - S, $ = w - b;
1327
+ if (Math.abs($) > n) return null;
1328
+ const C = wn(
1322
1329
  c,
1323
1330
  a,
1324
1331
  r,
@@ -1326,53 +1333,53 @@ function wn(e, t, n) {
1326
1333
  );
1327
1334
  return {
1328
1335
  toContent: c,
1329
- hasRadius: f > 0 || u > 0,
1330
- styleFor: ($, E) => {
1331
- const z = E * P, kt = E * _, et = $ + E * y, Yt = (f * E + u * $) / et, Lt = I.top * E + d.top * $, Ht = I.right * E + d.right * $, Mt = I.bottom * E + d.bottom * $, zt = I.left * E + d.left * $;
1336
+ hasRadius: d > 0 || u > 0,
1337
+ styleFor: (I, _) => {
1338
+ const k = _ * P, L = _ * $, F = I + _ * y, Rt = (d * _ + u * I) / F, Ut = C.top * _ + p.top * I, Nt = C.right * _ + p.right * I, Vt = C.bottom * _ + p.bottom * I, Xt = C.left * _ + p.left * I;
1332
1339
  return {
1333
- transform: `translate(${z}px, ${kt}px) scale(${et})`,
1334
- clipPath: `inset(${Lt}px ${Ht}px ${Mt}px ${zt}px round ${Yt}px)`
1340
+ transform: `translate(${k}px, ${L}px) scale(${F})`,
1341
+ clipPath: `inset(${Ut}px ${Nt}px ${Vt}px ${Xt}px round ${Rt}px)`
1335
1342
  };
1336
1343
  }
1337
1344
  };
1338
1345
  }
1339
- function Sn(e, t) {
1346
+ function xn(e, t) {
1340
1347
  e.style.transform = t.transform, e.style.clipPath = t.clipPath;
1341
1348
  }
1342
- class bn {
1349
+ class En {
1343
1350
  contribute(t) {
1344
1351
  const { resolved: n, physics: s, positionedParent: o, maxDistance: i, onComplete: l } = t, a = [];
1345
1352
  for (const r of n.pairs) {
1346
- const { fromEl: c, toEl: p } = r, d = wn(o, r, i);
1347
- if (!d) continue;
1348
- const f = p.cloneNode(!0);
1349
- f.style.position = "absolute", f.style.left = `${d.toContent.left}px`, f.style.top = `${d.toContent.top}px`, f.style.width = `${d.toContent.width}px`, f.style.height = `${d.toContent.height}px`, f.style.margin = "0", f.style.transformOrigin = "center center", f.style.zIndex = "1000", f.style.willChange = "transform, clip-path", f.style.pointerEvents = "none", f.style.maxWidth = "none", f.style.maxHeight = "none", d.hasRadius && (f.style.borderRadius = "0"), Sn(f, d.styleFor(0, 1)), o.appendChild(f);
1350
- const u = c.style.opacity, y = p.style.opacity;
1351
- c.style.opacity = "0", p.style.opacity = "0", l(() => {
1352
- c.style.opacity = u, p.style.opacity = y, f.parentElement && f.parentElement.removeChild(f);
1353
+ const { fromEl: c, toEl: f } = r, p = Cn(o, r, i);
1354
+ if (!p) continue;
1355
+ const d = f.cloneNode(!0);
1356
+ d.style.position = "absolute", d.style.left = `${p.toContent.left}px`, d.style.top = `${p.toContent.top}px`, d.style.width = `${p.toContent.width}px`, d.style.height = `${p.toContent.height}px`, d.style.margin = "0", d.style.transformOrigin = "center center", d.style.zIndex = "1000", d.style.willChange = "transform, clip-path", d.style.pointerEvents = "none", d.style.maxWidth = "none", d.style.maxHeight = "none", p.hasRadius && (d.style.borderRadius = "0"), xn(d, p.styleFor(0, 1)), o.appendChild(d);
1357
+ const u = c.style.opacity, y = f.style.opacity;
1358
+ c.style.opacity = "0", f.style.opacity = "0", l(() => {
1359
+ c.style.opacity = u, f.style.opacity = y, d.parentElement && d.parentElement.removeChild(d);
1353
1360
  }), a.push(
1354
- new g({
1355
- element: f,
1356
- integrator: w.from(s),
1357
- style: d.styleFor
1361
+ new m({
1362
+ element: d,
1363
+ integrator: g.from(s),
1364
+ style: p.styleFor
1358
1365
  })
1359
1366
  );
1360
1367
  }
1361
1368
  return a;
1362
1369
  }
1363
1370
  }
1364
- function $n(e) {
1365
- return [new bn(), en[e.type]()];
1371
+ function Pn(e) {
1372
+ return [new En(), rn[e.type]()];
1366
1373
  }
1367
- const Cn = (e) => {
1368
- const t = $n(e), n = an[e.variant](), s = ln;
1374
+ const _n = (e) => {
1375
+ const t = Pn(e), n = fn[e.variant](), s = dn;
1369
1376
  return {
1370
1377
  prepare: (o) => {
1371
1378
  var a;
1372
1379
  const i = Promise.all([
1373
1380
  o.from,
1374
1381
  o.to
1375
- ]).then(([r, c]) => ({ pairs: gn(r, c) })), l = {
1382
+ ]).then(([r, c]) => ({ pairs: $n(r, c) })), l = {
1376
1383
  from: o.from,
1377
1384
  to: o.to,
1378
1385
  resolved: i
@@ -1383,10 +1390,10 @@ const Cn = (e) => {
1383
1390
  },
1384
1391
  animation: ({ from: o, to: i, context: l, resolved: a }) => {
1385
1392
  if (a.pairs.length === 0)
1386
- return new x([], { mode: "parallel" });
1393
+ return new E([], { mode: "parallel" });
1387
1394
  const r = [], c = (y) => {
1388
1395
  r.push(y);
1389
- }, p = {
1396
+ }, f = {
1390
1397
  from: o,
1391
1398
  to: i,
1392
1399
  resolved: a,
@@ -1394,13 +1401,13 @@ const Cn = (e) => {
1394
1401
  positionedParent: l.positionedParent,
1395
1402
  maxDistance: s,
1396
1403
  onComplete: c
1397
- }, d = [];
1404
+ }, p = [];
1398
1405
  for (const y of t)
1399
- y.contribute && d.push(...y.contribute(p));
1400
- if (d.length === 0)
1401
- return new x([], { mode: "parallel" });
1402
- const f = new x(d, { mode: "parallel" }), u = f.onComplete;
1403
- return f.onComplete = () => {
1406
+ y.contribute && p.push(...y.contribute(f));
1407
+ if (p.length === 0)
1408
+ return new E([], { mode: "parallel" });
1409
+ const d = new E(p, { mode: "parallel" }), u = d.onComplete;
1410
+ return d.onComplete = () => {
1404
1411
  u == null || u();
1405
1412
  for (const y of r)
1406
1413
  try {
@@ -1408,37 +1415,37 @@ const Cn = (e) => {
1408
1415
  } catch (h) {
1409
1416
  console.error("[hero] cleanup error", h);
1410
1417
  }
1411
- }, f;
1418
+ }, d;
1412
1419
  }
1413
1420
  };
1414
1421
  };
1415
- function _s(e) {
1422
+ function ks(e) {
1416
1423
  const { paths: t } = e, n = e.type ?? "static", s = e.variant ?? "default";
1417
- return D(
1424
+ return v(
1418
1425
  t,
1419
- () => Cn({ type: n, variant: s })
1426
+ () => _n({ type: n, variant: s })
1420
1427
  );
1421
1428
  }
1422
- const xn = {
1429
+ const In = {
1423
1430
  spring: { stiffness: 50, damping: 30 }
1424
- }, En = {
1431
+ }, vn = {
1425
1432
  spring: { stiffness: 80, damping: 25 }
1426
- }, Pn = (e = {}) => {
1427
- const t = e.physics ?? xn, n = e.initialRotation ?? 45, s = e.initialScale ?? 0.01, o = e.rotationTriggerPoint ?? 0.8;
1433
+ }, Dn = (e = {}) => {
1434
+ const t = e.physics ?? In, n = e.initialRotation ?? 45, s = e.initialScale ?? 0.01, o = e.rotationTriggerPoint ?? 0.8;
1428
1435
  return {
1429
1436
  prepare: ({ from: i, to: l, context: a }) => (i.then((r) => {
1430
1437
  r.style.opacity = "1";
1431
1438
  }), l.then((r) => {
1432
- const c = T(a, "to"), p = Math.min(c.width, c.height) * 0.4;
1433
- r.style.setProperty("--max-border-radius", `${p}px`), r.style.setProperty("--border-radius-scale", "1"), r.style.willChange = "transform", r.style.backfaceVisibility = "hidden";
1434
- const d = c.left + c.width / 2, f = c.top + c.height / 2;
1435
- r.style.transformOrigin = `${d}px ${f}px`, r.style.position = "fixed", r.style.top = `${c.top}px`, r.style.left = `${c.left}px`, r.style.width = `${c.width}px`, r.style.height = `${c.height}px`, r.style.zIndex = "1000", r.style.overflow = "hidden", r.style.transform = `rotate(${n}deg) scale(${s}) translateZ(0)`, r.style.borderRadius = "calc(var(--max-border-radius) * var(--border-radius-scale))", r.style.opacity = "1";
1439
+ const c = T(a, "to"), f = Math.min(c.width, c.height) * 0.4;
1440
+ r.style.setProperty("--max-border-radius", `${f}px`), r.style.setProperty("--border-radius-scale", "1"), r.style.willChange = "transform", r.style.backfaceVisibility = "hidden";
1441
+ const p = c.left + c.width / 2, d = c.top + c.height / 2;
1442
+ r.style.transformOrigin = `${p}px ${d}px`, r.style.position = "fixed", r.style.top = `${c.top}px`, r.style.left = `${c.left}px`, r.style.width = `${c.width}px`, r.style.height = `${c.height}px`, r.style.zIndex = "1000", r.style.overflow = "hidden", r.style.transform = `rotate(${n}deg) scale(${s}) translateZ(0)`, r.style.borderRadius = "calc(var(--max-border-radius) * var(--border-radius-scale))", r.style.opacity = "1";
1436
1443
  }), {}),
1437
1444
  animation: ({ from: i, to: l }) => {
1438
- const a = new g({
1445
+ const a = new m({
1439
1446
  element: i,
1440
- integrator: w.from(En),
1441
- style: (c, p) => ({ opacity: p }),
1447
+ integrator: g.from(vn),
1448
+ style: (c, f) => ({ opacity: f }),
1442
1449
  // The outgoing node is reused (re-hidden, shown again on the next
1443
1450
  // navigation), so reset every inline style we wrote to it — mirroring
1444
1451
  // the "to" cleanup below. prepare sets opacity and the out style fades
@@ -1446,37 +1453,37 @@ const xn = {
1446
1453
  onComplete: () => {
1447
1454
  i.style.opacity = "";
1448
1455
  }
1449
- }), r = new g({
1456
+ }), r = new m({
1450
1457
  element: l,
1451
- integrator: w.from(t),
1458
+ integrator: g.from(t),
1452
1459
  style: (c) => {
1453
- let p;
1460
+ let f;
1454
1461
  if (c <= 0.05)
1455
- p = s;
1462
+ f = s;
1456
1463
  else if (c <= o) {
1457
1464
  const y = (c - 0.05) / (o - 0.05), h = Math.pow(y, 9);
1458
- p = s + (0.8 - s) * h;
1465
+ f = s + (0.8 - s) * h;
1459
1466
  } else {
1460
1467
  const y = (c - o) / (1 - o);
1461
- p = 0.8 + 0.2 * (1 - Math.pow(1 - y, 3));
1468
+ f = 0.8 + 0.2 * (1 - Math.pow(1 - y, 3));
1462
1469
  }
1463
- const d = 0.7;
1464
- let f;
1465
- if (c <= d)
1466
- f = n;
1470
+ const p = 0.7;
1471
+ let d;
1472
+ if (c <= p)
1473
+ d = n;
1467
1474
  else {
1468
- const y = (c - d) / (1 - d), h = 1 - Math.pow(1 - y, 2);
1469
- f = n * (1 - h);
1475
+ const y = (c - p) / (1 - p), h = 1 - Math.pow(1 - y, 2);
1476
+ d = n * (1 - h);
1470
1477
  }
1471
1478
  let u;
1472
- if (c <= d)
1479
+ if (c <= p)
1473
1480
  u = 1;
1474
1481
  else {
1475
- const y = (c - d) / (1 - d);
1482
+ const y = (c - p) / (1 - p);
1476
1483
  u = 1 - Math.pow(y, 0.5);
1477
1484
  }
1478
1485
  return {
1479
- transform: `rotate(${f.toFixed(2)}deg) scale(${p.toFixed(4)}) translateZ(0)`,
1486
+ transform: `rotate(${d.toFixed(2)}deg) scale(${f.toFixed(4)}) translateZ(0)`,
1480
1487
  "--border-radius-scale": u.toFixed(4)
1481
1488
  };
1482
1489
  },
@@ -1484,18 +1491,18 @@ const xn = {
1484
1491
  l.style.willChange = "", l.style.backfaceVisibility = "", l.style.removeProperty("--max-border-radius"), l.style.removeProperty("--border-radius-scale"), l.style.transform = "", l.style.transformOrigin = "", l.style.position = "", l.style.zIndex = "", l.style.top = "", l.style.left = "", l.style.width = "", l.style.height = "", l.style.overflow = "", l.style.borderRadius = "";
1485
1492
  }
1486
1493
  });
1487
- return new x([a, r], { mode: "parallel" });
1494
+ return new E([a, r], { mode: "parallel" });
1488
1495
  }
1489
1496
  };
1490
1497
  };
1491
- function Is(e) {
1498
+ function Ys(e) {
1492
1499
  const { paths: t } = e;
1493
- return D(t, () => Pn());
1500
+ return v(t, () => Dn());
1494
1501
  }
1495
- const _n = {
1502
+ const On = {
1496
1503
  spring: { stiffness: 100, damping: 30 }
1497
- }, In = (e = {}) => {
1498
- const t = e.physics ?? _n;
1504
+ }, Tn = (e = {}) => {
1505
+ const t = e.physics ?? On;
1499
1506
  return {
1500
1507
  prepare: ({ from: n, to: s }) => (n.then((o) => {
1501
1508
  o.style.transformOrigin = "center center", o.style.willChange = "transform, opacity";
@@ -1503,9 +1510,9 @@ const _n = {
1503
1510
  o.style.opacity = "0", o.style.transform = "rotate(-180deg)", o.style.transformOrigin = "center center", o.style.willChange = "transform, opacity";
1504
1511
  }), {}),
1505
1512
  animation: ({ from: n, to: s }) => {
1506
- const o = new g({
1513
+ const o = new m({
1507
1514
  element: n,
1508
- integrator: w.from(t),
1515
+ integrator: g.from(t),
1509
1516
  style: (l) => ({
1510
1517
  transform: `rotate(${l * 180}deg)`,
1511
1518
  opacity: l < 0.5 ? 1 : 0
@@ -1516,9 +1523,9 @@ const _n = {
1516
1523
  onComplete: () => {
1517
1524
  n.style.willChange = "auto", n.style.transform = "", n.style.transformOrigin = "", n.style.opacity = "";
1518
1525
  }
1519
- }), i = new g({
1526
+ }), i = new m({
1520
1527
  element: s,
1521
- integrator: w.from(t),
1528
+ integrator: g.from(t),
1522
1529
  // u runs 1→0, so -u*180 unwinds -180→0.
1523
1530
  style: (l, a) => ({
1524
1531
  transform: `rotate(${-a * 180}deg)`,
@@ -1528,15 +1535,15 @@ const _n = {
1528
1535
  s.style.willChange = "auto", s.style.transform = "", s.style.transformOrigin = "", s.style.opacity = "";
1529
1536
  }
1530
1537
  });
1531
- return new x([o, i], { mode: "parallel" });
1538
+ return new E([o, i], { mode: "parallel" });
1532
1539
  }
1533
1540
  };
1534
1541
  };
1535
- function Ds(e) {
1542
+ function Ls(e) {
1536
1543
  const { paths: t } = e;
1537
- return D(t, () => In());
1544
+ return v(t, () => Tn());
1538
1545
  }
1539
- const Dn = {
1546
+ const Fn = {
1540
1547
  spring: {
1541
1548
  stiffness: 20,
1542
1549
  damping: 8,
@@ -1544,8 +1551,8 @@ const Dn = {
1544
1551
  restDelta: 1e-3,
1545
1552
  restSpeed: 1e-3
1546
1553
  }
1547
- }, Et = (e = {}) => {
1548
- const t = e.direction ?? "up", n = e.physics ?? Dn, s = t === "up", o = s ? v : O, i = s ? O : v;
1554
+ }, vt = (e = {}) => {
1555
+ const t = e.direction ?? "up", n = e.physics ?? Fn, s = t === "up", o = s ? D : O, i = s ? O : D;
1549
1556
  return {
1550
1557
  prepare: ({ from: l, to: a }) => (l.then((r) => {
1551
1558
  r.style.zIndex = o, r.style.willChange = "transform", r.style.backfaceVisibility = "hidden", r.style.contain = "layout paint", r.style.pointerEvents = "none";
@@ -1553,10 +1560,10 @@ const Dn = {
1553
1560
  r.style.willChange = "transform", r.style.backfaceVisibility = "hidden", r.style.contain = "layout paint", r.style.position = "relative", r.style.zIndex = i;
1554
1561
  }), {}),
1555
1562
  animation: ({ from: l, to: a }) => {
1556
- const r = l.offsetHeight, c = a.offsetHeight, p = window.innerHeight, d = Math.max(Math.min(r, c), p), f = new g({
1563
+ const r = l.offsetHeight, c = a.offsetHeight, f = window.innerHeight, p = Math.max(Math.min(r, c), f), d = new m({
1557
1564
  element: l,
1558
- integrator: w.from(n),
1559
- style: (y) => ({ transform: `translate3d(0, ${s ? -d * y : d * y}px, 0)` }),
1565
+ integrator: g.from(n),
1566
+ style: (y) => ({ transform: `translate3d(0, ${s ? -p * y : p * y}px, 0)` }),
1560
1567
  // The outgoing node is the real, reused element (re-hidden then shown
1561
1568
  // again on the next navigation), so mirror the incoming cleanup and
1562
1569
  // also reset the out-only props applied in prepare (zIndex,
@@ -1565,66 +1572,111 @@ const Dn = {
1565
1572
  onComplete: () => {
1566
1573
  l.style.willChange = "auto", l.style.backfaceVisibility = "", l.style.contain = "", l.style.transform = "", l.style.pointerEvents = "", l.style.zIndex = "";
1567
1574
  }
1568
- }), u = new g({
1575
+ }), u = new m({
1569
1576
  element: a,
1570
- integrator: w.from(n),
1571
- style: (y, h) => ({ transform: `translate3d(0, ${s ? h * d : h * -d}px, 0)` }),
1577
+ integrator: g.from(n),
1578
+ style: (y, h) => ({ transform: `translate3d(0, ${s ? h * p : h * -p}px, 0)` }),
1572
1579
  onComplete: () => {
1573
1580
  a.style.willChange = "auto", a.style.backfaceVisibility = "", a.style.contain = "", a.style.transform = "", a.style.position === "relative" && (a.style.position = ""), a.style.zIndex === i && (a.style.zIndex = "");
1574
1581
  }
1575
1582
  });
1576
- for (const y of [f, u]) {
1583
+ for (const y of [d, u]) {
1577
1584
  const h = y.onComplete;
1578
1585
  y.onComplete = () => {
1579
1586
  h == null || h(), y.releaseFill();
1580
1587
  };
1581
1588
  }
1582
- return new x([f, u], { mode: "parallel" });
1589
+ return new E([d, u], { mode: "parallel" });
1583
1590
  }
1584
1591
  };
1585
1592
  };
1586
- function vs(e) {
1593
+ function Hs(e) {
1587
1594
  const { paths: t, type: n = "directional" } = e;
1588
- return n === "non-directional" ? D(
1595
+ return n === "non-directional" ? v(
1589
1596
  t,
1590
- () => Et({ direction: "up" })
1591
- ) : Q(
1597
+ () => vt({ direction: "up" })
1598
+ ) : ot(
1592
1599
  t,
1593
1600
  { forward: "up", backward: "down" },
1594
- (s) => Et({ direction: s })
1601
+ (s) => vt({ direction: s })
1595
1602
  );
1596
1603
  }
1597
- const vn = {
1604
+ const An = {
1598
1605
  spring: { stiffness: 200, damping: 24 }
1599
- }, On = {
1606
+ }, kn = {
1600
1607
  inertia: { acceleration: 25, resistance: 1.2 }
1601
- }, q = 0.2;
1602
- function Tn() {
1608
+ }, G = 0.2;
1609
+ function Yn() {
1603
1610
  return {
1604
- enterPhysics: vn,
1605
- exitPhysics: On,
1611
+ enterPhysics: An,
1612
+ exitPhysics: kn,
1606
1613
  background: {
1607
1614
  willChange: "transform, opacity",
1608
1615
  enterStyle: (e, t) => ({
1609
- transform: `scale(${1 - q * e})`,
1616
+ transform: `scale(${1 - G * e})`,
1610
1617
  opacity: t
1611
1618
  }),
1612
1619
  exitStyle: (e) => ({
1613
- transform: `scale(${1 - q + q * e})`,
1620
+ transform: `scale(${1 - G + G * e})`,
1614
1621
  opacity: e
1615
1622
  })
1616
1623
  }
1617
1624
  };
1618
1625
  }
1619
- const An = {
1626
+ const Ln = {
1627
+ spring: { stiffness: 200, damping: 24 }
1628
+ }, Hn = {
1629
+ inertia: { acceleration: 25, resistance: 1.2 }
1630
+ }, J = 0.08, Mn = 16, Q = 0.6, zn = (e) => `blur(${Math.max(0, e).toFixed(2)}px)`;
1631
+ function Rn() {
1632
+ return {
1633
+ enterPhysics: Ln,
1634
+ exitPhysics: Hn,
1635
+ background: {
1636
+ willChange: "transform, opacity",
1637
+ // enter: t 0 → 1 as the sheet rises. At rest (t = 0) the page is
1638
+ // untouched; at peak it is shrunk and dimmed.
1639
+ enterStyle: (e) => ({
1640
+ transform: `scale(${1 - J * e})`,
1641
+ opacity: 1 - (1 - Q) * e
1642
+ }),
1643
+ // exit: t 0 → 1 as the sheet falls away and the page returns to rest —
1644
+ // the inverse ramp of enter.
1645
+ exitStyle: (e) => ({
1646
+ transform: `scale(${1 - J + J * e})`,
1647
+ opacity: Q + (1 - Q) * e
1648
+ })
1649
+ },
1650
+ overlay: {
1651
+ willChange: "backdrop-filter",
1652
+ // `top` + `height` are set per-transition in transition.ts (they depend on
1653
+ // the live scroll position), so they are intentionally omitted here.
1654
+ initialStyle: {
1655
+ position: "absolute",
1656
+ left: "0",
1657
+ width: "100%",
1658
+ pointerEvents: "none",
1659
+ backdropFilter: "blur(0px)",
1660
+ WebkitBackdropFilter: "blur(0px)"
1661
+ },
1662
+ // enter: 0 → MAX as the sheet rises (progress 0 → 1).
1663
+ // exit: MAX → 0 as it falls (progress 0 → 1, so the visual is inverted).
1664
+ style: (e, t) => {
1665
+ const n = e === "enter" ? t : 1 - t, s = zn(Mn * n);
1666
+ return { backdropFilter: s, WebkitBackdropFilter: s };
1667
+ }
1668
+ }
1669
+ };
1670
+ }
1671
+ const Un = {
1620
1672
  spring: { stiffness: 300, damping: 30 }
1621
- }, Fn = {
1673
+ }, Nn = {
1622
1674
  inertia: { acceleration: 30, resistance: 1 }
1623
1675
  };
1624
- function kn() {
1676
+ function Vn() {
1625
1677
  return {
1626
- enterPhysics: An,
1627
- exitPhysics: Fn,
1678
+ enterPhysics: Un,
1679
+ exitPhysics: Nn,
1628
1680
  background: {
1629
1681
  willChange: "",
1630
1682
  enterStyle: () => ({}),
@@ -1632,86 +1684,105 @@ function kn() {
1632
1684
  }
1633
1685
  };
1634
1686
  }
1635
- const Yn = {
1636
- static: kn(),
1637
- "background-scale": Tn()
1638
- }, Ln = "static", Hn = "transform", Mn = (e = {}) => {
1639
- const t = e.direction ?? "enter", n = Yn[e.type ?? Ln], s = t === "enter" ? n.enterPhysics : n.exitPhysics, o = n.background, i = o.willChange !== "";
1687
+ const Xn = {
1688
+ static: Vn(),
1689
+ "background-scale": Yn(),
1690
+ blur: Rn()
1691
+ }, Bn = "static", Zn = "transform", Wn = (e = {}) => {
1692
+ const t = e.direction ?? "enter", n = Xn[e.type ?? Bn], s = t === "enter" ? n.enterPhysics : n.exitPhysics, o = n.background, i = n.overlay, l = o.willChange !== "";
1640
1693
  return {
1641
- prepare: ({ from: l, to: a }) => {
1642
- const r = t === "enter" ? a : l, c = t === "enter" ? l : a;
1643
- return r.then((p) => {
1644
- p.style.willChange = Hn, p.style.backfaceVisibility = "hidden", p.style.contain = "layout paint", p.style.zIndex = O, t === "enter" ? p.style.position = "relative" : p.style.pointerEvents = "none";
1645
- }), c.then((p) => {
1646
- i && (p.style.willChange = o.willChange, p.style.backfaceVisibility = "hidden", p.style.contain = "layout paint"), p.style.zIndex = v, t === "enter" ? p.style.pointerEvents = "none" : p.style.position = "relative";
1647
- }), {};
1694
+ prepare: ({ from: a, to: r, context: c, createElement: f }) => {
1695
+ const p = t === "enter" ? r : a, d = t === "enter" ? a : r;
1696
+ p.then((y) => {
1697
+ y.style.willChange = Zn, y.style.backfaceVisibility = "hidden", y.style.contain = "layout paint", y.style.zIndex = O, t === "enter" ? y.style.position = "relative" : y.style.pointerEvents = "none";
1698
+ }), d.then((y) => {
1699
+ l && (y.style.willChange = o.willChange, y.style.backfaceVisibility = "hidden", y.style.contain = "layout paint"), y.style.zIndex = D, t === "enter" ? y.style.pointerEvents = "none" : y.style.position = "relative";
1700
+ });
1701
+ let u;
1702
+ return i && (u = f("sheet-overlay"), Object.assign(u.style, i.initialStyle), u.style.willChange = i.willChange, c.positionedParent.appendChild(u)), { overlay: u };
1648
1703
  },
1649
- animation: ({ from: l, to: a, context: r }) => {
1650
- const c = t === "enter" ? a : l, p = t === "enter" ? l : a, d = T(
1651
- r,
1704
+ animation: ({ from: a, to: r, context: c, overlay: f }) => {
1705
+ const p = t === "enter" ? r : a, d = t === "enter" ? a : r, u = T(
1706
+ c,
1652
1707
  t === "enter" ? "to" : "from"
1653
- ), f = () => {
1654
- l.style.pointerEvents = "", l.style.zIndex = "";
1655
- }, u = () => {
1656
- const $ = t === "enter" ? O : v;
1657
- a.style.position === "relative" && (a.style.position = ""), a.style.zIndex === $ && (a.style.zIndex = "");
1658
- }, y = ($) => {
1659
- const E = $.onComplete;
1708
+ ), y = () => {
1709
+ a.style.pointerEvents = "", a.style.zIndex = "";
1710
+ }, h = () => {
1711
+ const $ = t === "enter" ? O : D;
1712
+ r.style.position === "relative" && (r.style.position = ""), r.style.zIndex === $ && (r.style.zIndex = "");
1713
+ }, w = ($) => {
1714
+ const C = $.onComplete;
1660
1715
  $.onComplete = () => {
1661
- E == null || E(), $.releaseFill();
1716
+ C == null || C(), $.releaseFill();
1662
1717
  };
1663
1718
  };
1664
- c.style.clipPath = `inset(${d.top}px 0 calc(100% - ${d.top + d.height}px) 0)`;
1665
- const h = t === "enter" ? ($, E) => ({
1666
- transform: `translate3d(0, ${E * d.height}px, 0)`
1719
+ p.style.clipPath = `inset(${u.top}px 0 calc(100% - ${u.top + u.height}px) 0)`;
1720
+ const S = t === "enter" ? ($, C) => ({
1721
+ transform: `translate3d(0, ${C * u.height}px, 0)`
1667
1722
  }) : ($) => ({
1668
- transform: `translate3d(0, ${$ * d.height}px, 0)`
1669
- }), S = new g({
1670
- element: c,
1671
- integrator: w.from(s),
1672
- style: h,
1673
- onComplete: () => {
1674
- c.style.willChange = "auto", c.style.backfaceVisibility = "", c.style.contain = "", c.style.clipPath = "", c.style.transform = "", f(), u();
1675
- }
1676
- });
1677
- if (y(S), !i)
1678
- return new x([S], { mode: "parallel" });
1679
- const m = T(
1680
- r,
1681
- t === "enter" ? "from" : "to"
1682
- ), b = m.left + m.width / 2, P = m.top + m.height / 2;
1683
- p.style.clipPath = `inset(${m.top}px 0 calc(100% - ${m.top + m.height}px) 0)`, p.style.transformOrigin = `${b}px ${P}px`;
1684
- const _ = t === "enter" ? ($, E) => o.enterStyle($, E) : ($) => o.exitStyle($), I = new g({
1723
+ transform: `translate3d(0, ${$ * u.height}px, 0)`
1724
+ }), b = new m({
1685
1725
  element: p,
1686
- integrator: w.from(s),
1687
- style: _,
1688
- // The background is the reused outgoing (`from`) node on `enter` and the
1689
- // surviving incoming (`to`) node on `exit` — in both cases its inline
1690
- // styles must be cleared on settle so the reused node is not left
1691
- // scaled/faded/clipped the next time it is shown. releaseFill below
1692
- // drops the WAAPI fill so these resets actually take effect.
1726
+ integrator: g.from(s),
1727
+ style: S,
1693
1728
  onComplete: () => {
1694
- p.style.willChange = "auto", p.style.backfaceVisibility = "", p.style.contain = "", p.style.clipPath = "", p.style.transformOrigin = "", p.style.transform = "", p.style.opacity = "";
1729
+ p.style.willChange = "auto", p.style.backfaceVisibility = "", p.style.contain = "", p.style.clipPath = "", p.style.transform = "", y(), h();
1695
1730
  }
1696
1731
  });
1697
- return y(I), new x([S, I], { mode: "parallel" });
1732
+ w(b);
1733
+ const P = [b];
1734
+ if (l) {
1735
+ const $ = d.scrollHeight;
1736
+ $ > 0 && (d.style.height = `${$}px`);
1737
+ const C = T(
1738
+ c,
1739
+ t === "enter" ? "from" : "to"
1740
+ ), I = C.left + C.width / 2, _ = C.top + C.height / 2;
1741
+ d.style.clipPath = `inset(${C.top}px 0 calc(100% - ${C.top + C.height}px) 0)`, d.style.transformOrigin = `${I}px ${_}px`;
1742
+ const k = t === "enter" ? (F, it) => o.enterStyle(F, it) : (F) => o.exitStyle(F), L = new m({
1743
+ element: d,
1744
+ integrator: g.from(s),
1745
+ style: k,
1746
+ // The background is the reused outgoing (`from`) node on `enter` and
1747
+ // the surviving incoming (`to`) node on `exit` — in both cases its
1748
+ // inline styles must be cleared on settle so the reused node is not
1749
+ // left scaled/faded/clipped the next time it is shown. releaseFill
1750
+ // below drops the WAAPI fill so these resets actually take effect.
1751
+ onComplete: () => {
1752
+ d.style.willChange = "auto", d.style.backfaceVisibility = "", d.style.contain = "", d.style.clipPath = "", d.style.transformOrigin = "", d.style.transform = "", d.style.opacity = "", d.style.height = "";
1753
+ }
1754
+ });
1755
+ w(L), P.push(L);
1756
+ }
1757
+ if (f && i) {
1758
+ f.style.zIndex = Ht;
1759
+ const $ = Yt(c, "to");
1760
+ f.style.top = `${$.top}px`, f.style.height = `${$.height}px`, P.push(
1761
+ new m({
1762
+ element: f,
1763
+ integrator: g.from(s),
1764
+ style: (C) => i.style(t, C)
1765
+ })
1766
+ );
1767
+ }
1768
+ return new E(P, { mode: "parallel" });
1698
1769
  }
1699
1770
  };
1700
1771
  };
1701
- function zn(e) {
1702
- return e === "scale" || e === "background-scale" ? "background-scale" : "static";
1772
+ function qn(e) {
1773
+ return e === "scale" || e === "background-scale" ? "background-scale" : e === "blur" ? "blur" : "static";
1703
1774
  }
1704
- function Os(e) {
1705
- const { enter: t, exit: n } = e, s = e.type, o = zn(s);
1706
- return Ot(
1775
+ function Ms(e) {
1776
+ const { enter: t, exit: n } = e, s = e.type, o = qn(s);
1777
+ return kt(
1707
1778
  { enter: t, exit: n },
1708
- (i) => Mn({ direction: i, type: o })
1779
+ (i) => Wn({ direction: i, type: o })
1709
1780
  );
1710
1781
  }
1711
- const Rn = {
1782
+ const jn = {
1712
1783
  spring: { stiffness: 170, damping: 22, doubleSpring: 0.8 }
1713
- }, Un = (e = {}) => {
1714
- const t = e.direction ?? "left", n = e.physics ?? Rn, s = t === "left";
1784
+ }, Kn = (e = {}) => {
1785
+ const t = e.direction ?? "left", n = e.physics ?? jn, s = t === "left";
1715
1786
  return {
1716
1787
  prepare: ({ from: o, to: i }) => (o.then((l) => {
1717
1788
  l.style.willChange = "transform", l.style.backfaceVisibility = "hidden", l.style.contain = "layout paint", l.style.pointerEvents = "none";
@@ -1720,9 +1791,9 @@ const Rn = {
1720
1791
  l.style.transform = `translate3d(${a}%, 0, 0)`, l.style.willChange = "transform", l.style.backfaceVisibility = "hidden", l.style.contain = "layout paint";
1721
1792
  }), {}),
1722
1793
  animation: ({ from: o, to: i }) => {
1723
- const l = new g({
1794
+ const l = new m({
1724
1795
  element: o,
1725
- integrator: w.from(n),
1796
+ integrator: g.from(n),
1726
1797
  style: (r) => ({ transform: `translate3d(${s ? -100 * r : 100 * r}%, 0, 0)` }),
1727
1798
  // The outgoing node is the real Activity page and gets reused on the
1728
1799
  // next navigation, so reset every inline style we wrote to it (mirror
@@ -1730,44 +1801,44 @@ const Rn = {
1730
1801
  onComplete: () => {
1731
1802
  o.style.willChange = "auto", o.style.backfaceVisibility = "", o.style.contain = "", o.style.transform = "", o.style.pointerEvents = "";
1732
1803
  }
1733
- }), a = new g({
1804
+ }), a = new m({
1734
1805
  element: i,
1735
- integrator: w.from(n),
1806
+ integrator: g.from(n),
1736
1807
  style: (r, c) => ({ transform: `translate3d(${s ? c * 100 : c * -100}%, 0, 0)` }),
1737
1808
  onComplete: () => {
1738
1809
  i.style.willChange = "auto", i.style.backfaceVisibility = "", i.style.contain = "", i.style.transform = "";
1739
1810
  }
1740
1811
  });
1741
- return new x([l, a], { mode: "parallel" });
1812
+ return new E([l, a], { mode: "parallel" });
1742
1813
  }
1743
1814
  };
1744
1815
  };
1745
- function Ts(e) {
1816
+ function zs(e) {
1746
1817
  const { paths: t } = e;
1747
- return Q(
1818
+ return ot(
1748
1819
  t,
1749
1820
  { forward: "left", backward: "right" },
1750
- (n) => Un({ direction: n })
1821
+ (n) => Kn({ direction: n })
1751
1822
  );
1752
1823
  }
1753
- const Vn = {
1824
+ const Gn = {
1754
1825
  spring: { stiffness: 17, damping: 6 }
1755
- }, K = 20, Y = 800, Nn = (e = {}) => {
1756
- const t = e.physics ?? Vn;
1826
+ }, tt = 20, M = 800, Jn = (e = {}) => {
1827
+ const t = e.physics ?? Gn;
1757
1828
  return {
1758
1829
  prepare: ({ from: n, to: s }) => (n.then((o) => {
1759
- o.style.willChange = "transform", o.style.backfaceVisibility = "hidden", o.style.contain = "layout paint", o.style.pointerEvents = "none", o.style.transform = `perspective(${Y}px) rotateY(0deg) translate3d(0%, 0, 0)`;
1830
+ o.style.willChange = "transform", o.style.backfaceVisibility = "hidden", o.style.contain = "layout paint", o.style.pointerEvents = "none", o.style.transform = `perspective(${M}px) rotateY(0deg) translate3d(0%, 0, 0)`;
1760
1831
  }), s.then((o) => {
1761
- o.style.willChange = "transform", o.style.backfaceVisibility = "hidden", o.style.contain = "layout paint", o.style.transform = `perspective(${Y}px) rotateY(${K}deg) translate3d(-100%, 0, 0)`;
1832
+ o.style.willChange = "transform", o.style.backfaceVisibility = "hidden", o.style.contain = "layout paint", o.style.transform = `perspective(${M}px) rotateY(${tt}deg) translate3d(-100%, 0, 0)`;
1762
1833
  }), {}),
1763
1834
  animation: ({ from: n, to: s }) => {
1764
- const o = new g({
1835
+ const o = new m({
1765
1836
  element: n,
1766
- integrator: w.from(t),
1837
+ integrator: g.from(t),
1767
1838
  style: (l) => {
1768
- const a = -l * K, r = l * 100;
1839
+ const a = -l * tt, r = l * 100;
1769
1840
  return {
1770
- transform: `perspective(${Y}px) rotateY(${a}deg) translate3d(${r}%, 0, 0)`
1841
+ transform: `perspective(${M}px) rotateY(${a}deg) translate3d(${r}%, 0, 0)`
1771
1842
  };
1772
1843
  },
1773
1844
  // The outgoing node is reused (Activity/cacheComponents re-hide it),
@@ -1776,28 +1847,28 @@ const Vn = {
1776
1847
  onComplete: () => {
1777
1848
  n.style.transform = "", n.style.willChange = "auto", n.style.backfaceVisibility = "", n.style.contain = "", n.style.pointerEvents = "";
1778
1849
  }
1779
- }), i = new g({
1850
+ }), i = new m({
1780
1851
  element: s,
1781
- integrator: w.from(t),
1852
+ integrator: g.from(t),
1782
1853
  style: (l, a) => {
1783
- const r = a * K, c = -a * 100;
1854
+ const r = a * tt, c = -a * 100;
1784
1855
  return {
1785
- transform: `perspective(${Y}px) rotateY(${r}deg) translate3d(${c}%, 0, 0)`
1856
+ transform: `perspective(${M}px) rotateY(${r}deg) translate3d(${c}%, 0, 0)`
1786
1857
  };
1787
1858
  },
1788
1859
  onComplete: () => {
1789
1860
  s.style.transform = "", s.style.willChange = "auto", s.style.backfaceVisibility = "", s.style.contain = "";
1790
1861
  }
1791
1862
  });
1792
- return new x([o, i], { mode: "sequence" });
1863
+ return new E([o, i], { mode: "sequence" });
1793
1864
  }
1794
1865
  };
1795
1866
  };
1796
- function As(e) {
1867
+ function Rs(e) {
1797
1868
  const { paths: t } = e;
1798
- return D(t, () => Nn());
1869
+ return v(t, () => Jn());
1799
1870
  }
1800
- function Xn({
1871
+ function Qn({
1801
1872
  enterRect: e,
1802
1873
  exitRect: t,
1803
1874
  pageRect: n,
@@ -1805,19 +1876,19 @@ function Xn({
1805
1876
  enterRadius: o,
1806
1877
  exitRadius: i
1807
1878
  }) {
1808
- const l = t.left - e.left + (t.width - e.width) / 2 - s.x, a = t.top - e.top + (t.height - e.height) / 2 - s.y, r = t.width / e.width, c = t.height / e.height, p = e.top / n.height * 100, d = (n.width - (e.left + e.width)) / n.width * 100, f = (n.height - (e.top + e.height)) / n.height * 100, u = e.left / n.width * 100;
1879
+ const l = t.left - e.left + (t.width - e.width) / 2 - s.x, a = t.top - e.top + (t.height - e.height) / 2 - s.y, r = t.width / e.width, c = t.height / e.height, f = e.top / n.height * 100, p = (n.width - (e.left + e.width)) / n.width * 100, d = (n.height - (e.top + e.height)) / n.height * 100, u = e.left / n.width * 100;
1809
1880
  return {
1810
1881
  transformOrigin: `${e.left + e.width / 2}px ${e.top + e.height / 2}px`,
1811
1882
  animate: (y) => {
1812
- const h = 1 - y, S = 1 + (r - 1) * h, m = 1 + (c - 1) * h, P = (i * h + o * (1 - h)) / ((S + m) / 2);
1883
+ const h = 1 - y, w = 1 + (r - 1) * h, S = 1 + (c - 1) * h, P = (i * h + o * (1 - h)) / ((w + S) / 2);
1813
1884
  return {
1814
- clipPath: `inset(${p * h}% ${d * h}% ${f * h}% ${u * h}% round ${P}px)`,
1815
- transform: `translate(${l * h}px, ${a * h}px) scale(${S}, ${m})`
1885
+ clipPath: `inset(${f * h}% ${p * h}% ${d * h}% ${u * h}% round ${P}px)`,
1886
+ transform: `translate(${l * h}px, ${a * h}px) scale(${w}, ${S})`
1816
1887
  };
1817
1888
  }
1818
1889
  };
1819
1890
  }
1820
- function Bn({
1891
+ function ts({
1821
1892
  enterRect: e,
1822
1893
  exitRect: t,
1823
1894
  pageRect: n,
@@ -1825,52 +1896,55 @@ function Bn({
1825
1896
  enterRadius: o,
1826
1897
  exitRadius: i
1827
1898
  }) {
1828
- const l = t.left - e.left + (t.width - e.width) / 2 + s.x, a = t.top - e.top + (t.height - e.height) / 2 + s.y, r = t.width / e.width, c = t.height / e.height, p = e.top / n.height * 100, d = (n.width - (e.left + e.width)) / n.width * 100, f = (n.height - (e.top + e.height)) / n.height * 100, u = e.left / n.width * 100;
1899
+ const l = t.left - e.left + (t.width - e.width) / 2 + s.x, a = t.top - e.top + (t.height - e.height) / 2 + s.y, r = t.width / e.width, c = t.height / e.height, f = e.top / n.height * 100, p = (n.width - (e.left + e.width)) / n.width * 100, d = (n.height - (e.top + e.height)) / n.height * 100, u = e.left / n.width * 100;
1829
1900
  return {
1830
1901
  transformOrigin: `${e.left + e.width / 2}px ${e.top + e.height / 2}px`,
1831
1902
  animate: (y) => {
1832
- const h = 1 - y, S = 1 + (r - 1) * h, m = 1 + (c - 1) * h, P = (o * (1 - h) + i * h) / ((S + m) / 2);
1903
+ const h = 1 - y, w = 1 + (r - 1) * h, S = 1 + (c - 1) * h, P = (o * (1 - h) + i * h) / ((w + S) / 2);
1833
1904
  return {
1834
- clipPath: `inset(${p * h}% ${d * h}% ${f * h}% ${u * h}% round ${P}px)`,
1835
- transform: `translate(${l * h - s.x}px, ${a * h}px) scale(${S}, ${m})`
1905
+ clipPath: `inset(${f * h}% ${p * h}% ${d * h}% ${u * h}% round ${P}px)`,
1906
+ transform: `translate(${l * h - s.x}px, ${a * h}px) scale(${w}, ${S})`
1836
1907
  };
1837
1908
  }
1838
1909
  };
1839
1910
  }
1840
- const Zn = {
1911
+ const es = {
1841
1912
  spring: {
1842
1913
  stiffness: 430,
1843
1914
  damping: 33,
1844
1915
  doubleSpring: 1
1845
1916
  }
1846
- }, At = 0.12, Wn = 18;
1847
- function qn() {
1917
+ }, Mt = 0.12, ns = 18;
1918
+ function ss() {
1848
1919
  return {
1849
1920
  transformOrigin: "50% 50%",
1850
1921
  animate: (e) => {
1851
1922
  const t = 1 - e;
1852
1923
  return {
1853
- transform: `scale(${1 - At * t})`
1924
+ transform: `scale(${1 - Mt * t})`
1854
1925
  };
1855
1926
  }
1856
1927
  };
1857
1928
  }
1858
- function Kn() {
1929
+ function os() {
1859
1930
  return {
1860
1931
  transformOrigin: "50% 50%",
1861
1932
  animate: (e) => {
1862
1933
  const t = 1 - e;
1863
1934
  return {
1864
- transform: `scale(${1 - At * t})`
1935
+ transform: `scale(${1 - Mt * t})`
1865
1936
  };
1866
1937
  }
1867
1938
  };
1868
1939
  }
1869
- const j = {
1940
+ const et = {
1870
1941
  willChange: "backdrop-filter",
1942
+ // `top` + `height` are set per-transition in OverlayStrategy.contribute (they
1943
+ // track the live scroll position), so they are intentionally omitted here.
1871
1944
  initialStyle: {
1872
1945
  position: "absolute",
1873
- inset: "0",
1946
+ left: "0",
1947
+ width: "100%",
1874
1948
  pointerEvents: "none",
1875
1949
  // z-index is applied in OverlayStrategy.contribute. The overlay always
1876
1950
  // sits at Z_OVERLAY, between the background page (Z_BACKGROUND) and the
@@ -1879,52 +1953,55 @@ const j = {
1879
1953
  WebkitBackdropFilter: "blur(0px)"
1880
1954
  },
1881
1955
  style: (e, t) => {
1882
- const n = e === "enter" ? t : 1 - t, s = `blur(${Wn * n}px)`;
1956
+ const n = e === "enter" ? t : 1 - t, s = `blur(${ns * n}px)`;
1883
1957
  return {
1884
1958
  backdropFilter: s,
1885
1959
  WebkitBackdropFilter: s
1886
1960
  };
1887
1961
  }
1888
1962
  };
1889
- class jn {
1963
+ class is {
1890
1964
  constructor() {
1891
- C(this, "physics", Zn);
1965
+ x(this, "physics", es);
1892
1966
  }
1893
1967
  contribute(t) {
1894
- const { from: n, to: s, resolved: o, physics: i } = t, l = o.mode === "enter", a = l ? n : s, r = l ? qn() : Kn();
1968
+ const { from: n, to: s, resolved: o, physics: i } = t, l = o.mode === "enter", a = l ? n : s, r = l ? ss() : os();
1895
1969
  return r && (a.style.transformOrigin = r.transformOrigin), [
1896
- new g({
1970
+ new m({
1897
1971
  element: a,
1898
- integrator: w.from(i),
1899
- style: l ? (c, p) => r.animate(p) : (c) => r.animate(c)
1972
+ integrator: g.from(i),
1973
+ style: l ? (c, f) => r.animate(f) : (c) => r.animate(c)
1900
1974
  })
1901
1975
  ];
1902
1976
  }
1903
1977
  }
1904
- class Gn {
1978
+ class rs {
1905
1979
  prepare(t) {
1906
1980
  const n = t.createElement("zoom-overlay");
1907
- return Object.assign(n.style, j.initialStyle), n.style.willChange = j.willChange, t.context.positionedParent.appendChild(n), { overlay: n };
1981
+ return Object.assign(n.style, et.initialStyle), n.style.willChange = et.willChange, t.context.positionedParent.appendChild(n), { overlay: n };
1908
1982
  }
1909
1983
  contribute(t) {
1910
1984
  const n = t.extras.overlay;
1911
- return n ? (n.style.zIndex = Le, [
1912
- new g({
1985
+ if (!n) return [];
1986
+ n.style.zIndex = Ht;
1987
+ const s = Yt(t.context, "to");
1988
+ return n.style.top = `${s.top}px`, n.style.height = `${s.height}px`, [
1989
+ new m({
1913
1990
  element: n,
1914
- integrator: w.from(t.physics),
1915
- style: (s) => j.style(t.resolved.mode, s)
1991
+ integrator: g.from(t.physics),
1992
+ style: (o) => et.style(t.resolved.mode, o)
1916
1993
  })
1917
- ]) : [];
1994
+ ];
1918
1995
  }
1919
1996
  }
1920
- const Jn = {
1997
+ const as = {
1921
1998
  spring: {
1922
1999
  stiffness: 430,
1923
2000
  damping: 33,
1924
2001
  doubleSpring: 1
1925
2002
  }
1926
2003
  };
1927
- function Qn({
2004
+ function ls({
1928
2005
  enterRect: e,
1929
2006
  exitRect: t,
1930
2007
  scrollOffset: n
@@ -1940,7 +2017,7 @@ function Qn({
1940
2017
  }
1941
2018
  };
1942
2019
  }
1943
- function ts({
2020
+ function cs({
1944
2021
  enterRect: e,
1945
2022
  exitRect: t,
1946
2023
  scrollOffset: n
@@ -1956,52 +2033,52 @@ function ts({
1956
2033
  }
1957
2034
  };
1958
2035
  }
1959
- class es {
2036
+ class ps {
1960
2037
  constructor() {
1961
- C(this, "physics", Jn);
2038
+ x(this, "physics", as);
1962
2039
  }
1963
2040
  contribute(t) {
1964
- const { from: n, to: s, resolved: o, input: i, physics: l } = t, a = o.mode === "enter", r = a ? n : s, c = a ? Qn(i) : ts(i);
2041
+ const { from: n, to: s, resolved: o, input: i, physics: l } = t, a = o.mode === "enter", r = a ? n : s, c = a ? ls(i) : cs(i);
1965
2042
  return c && (r.style.transformOrigin = c.transformOrigin), [
1966
- new g({
2043
+ new m({
1967
2044
  element: r,
1968
- integrator: w.from(l),
1969
- style: a ? (p, d) => c.animate(d) : (p) => c.animate(p)
2045
+ integrator: g.from(l),
2046
+ style: a ? (f, p) => c.animate(p) : (f) => c.animate(f)
1970
2047
  })
1971
2048
  ];
1972
2049
  }
1973
2050
  }
1974
- const ns = {
2051
+ const fs = {
1975
2052
  spring: {
1976
2053
  stiffness: 530,
1977
2054
  damping: 34,
1978
2055
  doubleSpring: 1
1979
2056
  }
1980
2057
  };
1981
- class ss {
2058
+ class ds {
1982
2059
  constructor() {
1983
- C(this, "physics", ns);
2060
+ x(this, "physics", fs);
1984
2061
  }
1985
2062
  contribute(t) {
1986
2063
  return [];
1987
2064
  }
1988
2065
  }
1989
- const os = {
1990
- expand: () => new es(),
1991
- static: () => new ss(),
1992
- blur: () => new jn()
2066
+ const ys = {
2067
+ expand: () => new ps(),
2068
+ static: () => new ds(),
2069
+ blur: () => new is()
1993
2070
  };
1994
- function is(e) {
1995
- return os[e]();
2071
+ function hs(e) {
2072
+ return ys[e]();
1996
2073
  }
1997
- const G = "data-zoom-enter-key", Pt = "data-zoom-exit-key", rs = "data-zoom-radius";
1998
- function _t(e) {
1999
- const t = e.getAttribute(rs);
2074
+ const nt = "data-zoom-enter-key", Dt = "data-zoom-exit-key", us = "data-zoom-radius";
2075
+ function Ot(e) {
2076
+ const t = e.getAttribute(us);
2000
2077
  if (!t) return 0;
2001
2078
  const n = parseFloat(t);
2002
2079
  return Number.isFinite(n) && n > 0 ? n : 0;
2003
2080
  }
2004
- function as(e, t) {
2081
+ function ms(e, t) {
2005
2082
  const n = [];
2006
2083
  let s = t;
2007
2084
  for (; s && s !== e; ) {
@@ -2013,127 +2090,127 @@ function as(e, t) {
2013
2090
  }
2014
2091
  return n;
2015
2092
  }
2016
- function It(e) {
2017
- const t = e.querySelectorAll(`[${G}]`);
2093
+ function Tt(e) {
2094
+ const t = e.querySelectorAll(`[${nt}]`);
2018
2095
  return t.length !== 1 ? null : t[0];
2019
2096
  }
2020
- function Dt(e, t) {
2021
- const n = e.querySelectorAll(`[${Pt}]`);
2097
+ function Ft(e, t) {
2098
+ const n = e.querySelectorAll(`[${Dt}]`);
2022
2099
  for (const s of n)
2023
- if (s.getAttribute(Pt) === t)
2100
+ if (s.getAttribute(Dt) === t)
2024
2101
  return s;
2025
2102
  return null;
2026
2103
  }
2027
- function ls(e, t) {
2028
- const n = It(e), s = It(t);
2104
+ function gs(e, t) {
2105
+ const n = Tt(e), s = Tt(t);
2029
2106
  if (!n && s) {
2030
- const o = s.getAttribute(G);
2107
+ const o = s.getAttribute(nt);
2031
2108
  if (!o) return null;
2032
- const i = Dt(e, o);
2109
+ const i = Ft(e, o);
2033
2110
  return i ? { mode: "enter", enterEl: s, exitEl: i } : null;
2034
2111
  }
2035
2112
  if (n && !s) {
2036
- const o = n.getAttribute(G);
2113
+ const o = n.getAttribute(nt);
2037
2114
  if (!o) return null;
2038
- const i = Dt(t, o);
2115
+ const i = Ft(t, o);
2039
2116
  return i ? { mode: "exit", enterEl: n, exitEl: i } : null;
2040
2117
  }
2041
2118
  return null;
2042
2119
  }
2043
- function cs(e, t, n, s) {
2120
+ function ws(e, t, n, s) {
2044
2121
  return {
2045
- enterRect: nt(
2122
+ enterRect: rt(
2046
2123
  e.mode === "enter" ? n : t,
2047
2124
  e.enterEl
2048
2125
  ),
2049
- exitRect: nt(
2126
+ exitRect: rt(
2050
2127
  e.mode === "enter" ? t : n,
2051
2128
  e.exitEl
2052
2129
  ),
2053
2130
  pageRect: e.mode === "enter" ? n.getBoundingClientRect() : t.getBoundingClientRect(),
2054
2131
  scrollOffset: s,
2055
- enterRadius: _t(e.enterEl),
2056
- exitRadius: _t(e.exitEl)
2132
+ enterRadius: Ot(e.enterEl),
2133
+ exitRadius: Ot(e.exitEl)
2057
2134
  };
2058
2135
  }
2059
- class ps {
2136
+ class Ss {
2060
2137
  prepare(t) {
2061
2138
  t.from.then((n) => {
2062
2139
  n.style.willChange = "transform, clip-path, opacity", n.style.backfaceVisibility = "hidden", n.style.contain = "layout paint";
2063
2140
  });
2064
2141
  }
2065
2142
  contribute(t) {
2066
- const { from: n, to: s, resolved: o, input: i, physics: l, onComplete: a } = t, r = o.mode === "enter", c = r ? Xn(i) : Bn(i), p = r ? s : n, d = r ? "t" : "u";
2067
- c && (p.style.transformOrigin = c.transformOrigin);
2068
- const f = r ? v : O, u = r ? O : v, y = n.style.zIndex;
2069
- n.style.zIndex = f;
2070
- const h = s.style.zIndex, S = s.style.position;
2143
+ const { from: n, to: s, resolved: o, input: i, physics: l, onComplete: a } = t, r = o.mode === "enter", c = r ? Qn(i) : ts(i), f = r ? s : n, p = r ? "t" : "u";
2144
+ c && (f.style.transformOrigin = c.transformOrigin);
2145
+ const d = r ? D : O, u = r ? O : D, y = n.style.zIndex;
2146
+ n.style.zIndex = d;
2147
+ const h = s.style.zIndex, w = s.style.position;
2071
2148
  return s.style.zIndex = u, s.style.position = "relative", a(() => {
2072
- p.style.willChange = "auto", p.style.backfaceVisibility = "", p.style.transformOrigin = "", p.style.contain = "", n.style.zIndex = y, s.style.zIndex === u && (s.style.zIndex = h), s.style.position === "relative" && (s.style.position = S), s.style.transformOrigin = "", n.style.willChange = "auto", n.style.backfaceVisibility = "", n.style.transformOrigin = "", n.style.contain = "", n.style.transform = "", n.style.clipPath = "";
2149
+ f.style.willChange = "auto", f.style.backfaceVisibility = "", f.style.transformOrigin = "", f.style.contain = "", n.style.zIndex = y, s.style.zIndex === u && (s.style.zIndex = h), s.style.position === "relative" && (s.style.position = w), s.style.transformOrigin = "", n.style.willChange = "auto", n.style.backfaceVisibility = "", n.style.transformOrigin = "", n.style.contain = "", n.style.transform = "", n.style.clipPath = "";
2073
2150
  }), [
2074
- new g({
2075
- element: p,
2076
- integrator: w.from(l),
2151
+ new m({
2152
+ element: f,
2153
+ integrator: g.from(l),
2077
2154
  // Enter: tile expands as `t` (0 → 1). Exit: tile shrinks as `u` —
2078
2155
  // the legacy convention from v5's outAnim path. Either way, feed
2079
2156
  // the progress that matches the tileConfig's authored direction.
2080
- style: d === "t" ? (m) => c.animate(m) : (m, b) => c.animate(b)
2157
+ style: p === "t" ? (S) => c.animate(S) : (S, b) => c.animate(b)
2081
2158
  })
2082
2159
  ];
2083
2160
  }
2084
2161
  }
2085
- class ds {
2162
+ class bs {
2086
2163
  contribute(t) {
2087
- const { resolved: n, physics: s, from: o, to: i, onComplete: l } = t, a = n.mode === "enter" ? i : o, r = as(a, n.enterEl);
2164
+ const { resolved: n, physics: s, from: o, to: i, onComplete: l } = t, a = n.mode === "enter" ? i : o, r = ms(a, n.enterEl);
2088
2165
  if (r.length === 0) return [];
2089
- const c = r.map((p) => p.style.opacity);
2166
+ const c = r.map((f) => f.style.opacity);
2090
2167
  if (n.mode === "enter")
2091
- for (const p of r) p.style.opacity = "0";
2168
+ for (const f of r) f.style.opacity = "0";
2092
2169
  return l(() => {
2093
- for (let p = 0; p < r.length; p++) {
2094
- const d = r[p];
2095
- d && (d.style.opacity = c[p] ?? "");
2170
+ for (let f = 0; f < r.length; f++) {
2171
+ const p = r[f];
2172
+ p && (p.style.opacity = c[f] ?? "");
2096
2173
  }
2097
2174
  }), r.map(
2098
- (p) => new g({
2099
- element: p,
2100
- integrator: w.from(s),
2101
- style: (d, f) => ({
2102
- opacity: n.mode === "enter" ? d : f
2175
+ (f) => new m({
2176
+ element: f,
2177
+ integrator: g.from(s),
2178
+ style: (p, d) => ({
2179
+ opacity: n.mode === "enter" ? p : d
2103
2180
  })
2104
2181
  })
2105
2182
  );
2106
2183
  }
2107
2184
  }
2108
- class Ft {
2185
+ class zt {
2109
2186
  contribute() {
2110
2187
  return [];
2111
2188
  }
2112
2189
  }
2113
- const fs = {
2114
- default: () => new Ft(),
2115
- fade: () => new ds()
2190
+ const $s = {
2191
+ default: () => new zt(),
2192
+ fade: () => new bs()
2116
2193
  };
2117
- function ys(e) {
2118
- return fs[e]();
2194
+ function Cs(e) {
2195
+ return $s[e]();
2119
2196
  }
2120
- class hs extends Ft {
2197
+ class xs extends zt {
2121
2198
  }
2122
- function us(e) {
2123
- const t = is(e.type);
2199
+ function Es(e) {
2200
+ const t = hs(e.type);
2124
2201
  return { strategies: [
2125
- new ps(),
2202
+ new Ss(),
2126
2203
  t,
2127
- ys(e.variant),
2128
- new hs(),
2204
+ Cs(e.variant),
2205
+ new xs(),
2129
2206
  // Overlay is intrinsically tied to backdrop-filter-driven types. Today
2130
2207
  // that's only `blur`; the table-driven factory above owns the mapping
2131
2208
  // so this conditional is the single line that knows the relationship.
2132
- ...e.type === "blur" ? [new Gn()] : []
2209
+ ...e.type === "blur" ? [new rs()] : []
2133
2210
  ], physics: t.physics };
2134
2211
  }
2135
- const ms = (e) => {
2136
- const { strategies: t, physics: n } = us(e);
2212
+ const Ps = (e) => {
2213
+ const { strategies: t, physics: n } = Es(e);
2137
2214
  return {
2138
2215
  prepare: (s) => {
2139
2216
  const o = {
@@ -2153,23 +2230,24 @@ const ms = (e) => {
2153
2230
  return i;
2154
2231
  },
2155
2232
  animation: ({ from: s, to: o, context: i, ...l }) => {
2156
- const a = ls(s, o);
2233
+ const a = gs(s, o);
2157
2234
  if (!a)
2158
- return new x([], { mode: "parallel" });
2159
- const r = cs(a, s, o, i.scrollOffset), c = [], d = {
2235
+ return new E([], { mode: "parallel" });
2236
+ const r = ws(a, s, o, i.scrollOffset), c = [], p = {
2160
2237
  from: s,
2161
2238
  to: o,
2162
2239
  resolved: a,
2163
2240
  input: r,
2164
2241
  physics: n,
2242
+ context: i,
2165
2243
  extras: l,
2166
2244
  onComplete: (y) => {
2167
2245
  c.push(y);
2168
2246
  }
2169
- }, f = [];
2247
+ }, d = [];
2170
2248
  for (const y of t)
2171
- y.contribute && f.push(...y.contribute(d));
2172
- const u = f[0];
2249
+ y.contribute && d.push(...y.contribute(p));
2250
+ const u = d[0];
2173
2251
  if (u) {
2174
2252
  const y = u.onComplete;
2175
2253
  u.onComplete = () => {
@@ -2177,48 +2255,48 @@ const ms = (e) => {
2177
2255
  for (const h of c)
2178
2256
  try {
2179
2257
  h();
2180
- } catch (S) {
2181
- console.error("[zoom] cleanup error", S);
2258
+ } catch (w) {
2259
+ console.error("[zoom] cleanup error", w);
2182
2260
  }
2183
2261
  };
2184
2262
  }
2185
- for (const y of f) {
2186
- if (!(y instanceof g)) continue;
2263
+ for (const y of d) {
2264
+ if (!(y instanceof m)) continue;
2187
2265
  const h = y.onComplete;
2188
2266
  y.onComplete = () => {
2189
2267
  h == null || h(), y.releaseFill();
2190
2268
  };
2191
2269
  }
2192
- return new x(f, { mode: "parallel" });
2270
+ return new E(d, { mode: "parallel" });
2193
2271
  }
2194
2272
  };
2195
2273
  };
2196
- function gs(e) {
2274
+ function _s(e) {
2197
2275
  const t = e.type ?? "static", n = e.variant ?? (e.fade ? "fade" : "default");
2198
2276
  return { type: t, variant: n };
2199
2277
  }
2200
- function Fs(e) {
2201
- const t = gs(e);
2202
- return D(
2278
+ function Us(e) {
2279
+ const t = _s(e);
2280
+ return v(
2203
2281
  e.paths,
2204
- () => ms(t)
2282
+ () => Ps(t)
2205
2283
  );
2206
2284
  }
2207
2285
  export {
2208
- Ls as Animation,
2209
- x as MultiAnimation,
2210
- g as WebAnimation,
2211
- $s as axis,
2212
- Cs as blind,
2213
- xs as drill,
2214
- Es as fade,
2215
- Ps as film,
2216
- _s as hero,
2217
- Is as jaemin,
2218
- Ds as rotate,
2219
- vs as scroll,
2220
- Os as sheet,
2221
- Ts as slide,
2222
- As as strip,
2223
- Fs as zoom
2286
+ Xs as Animation,
2287
+ E as MultiAnimation,
2288
+ m as WebAnimation,
2289
+ Ds as axis,
2290
+ Os as blind,
2291
+ Ts as drill,
2292
+ Fs as fade,
2293
+ As as film,
2294
+ ks as hero,
2295
+ Ys as jaemin,
2296
+ Ls as rotate,
2297
+ Hs as scroll,
2298
+ Ms as sheet,
2299
+ zs as slide,
2300
+ Rs as strip,
2301
+ Us as zoom
2224
2302
  };