@ssgoi/core 6.5.0 → 6.6.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/internal.js CHANGED
@@ -1,31 +1,31 @@
1
- var At = Object.defineProperty;
2
- var Ct = (t, s, e) => s in t ? At(t, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[s] = e;
3
- var B = (t, s, e) => Ct(t, typeof s != "symbol" ? s + "" : s, e);
4
- import { A as xt } from "./multi-animation-Ch5rI3rB.js";
5
- import { M as le, W as ce } from "./multi-animation-Ch5rI3rB.js";
6
- class Mt extends xt {
1
+ var xt = Object.defineProperty;
2
+ var Lt = (t, s, e) => s in t ? xt(t, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[s] = e;
3
+ var F = (t, s, e) => Lt(t, typeof s != "symbol" ? s + "" : s, e);
4
+ import { A as Ot } from "./multi-animation-Ch5rI3rB.js";
5
+ import { M as ue, W as fe } from "./multi-animation-Ch5rI3rB.js";
6
+ class _t extends Ot {
7
7
  constructor() {
8
8
  super(...arguments);
9
- B(this, "child", null);
10
- B(this, "_state", "idle");
11
- B(this, "_settled", !1);
12
- B(this, "listeners", /* @__PURE__ */ new Set());
9
+ F(this, "child", null);
10
+ F(this, "_state", "idle");
11
+ F(this, "_settled", !1);
12
+ F(this, "listeners", /* @__PURE__ */ new Set());
13
13
  }
14
14
  attach(e) {
15
15
  const n = this.child;
16
16
  if (this.child = e, this._settled = !1, n) {
17
- const c = n.getPose();
18
- n.complete(), e.matchInto(c);
17
+ const a = n.getPose();
18
+ n.complete(), e.matchInto(a);
19
19
  }
20
20
  e.playbackRate = this.playbackRate;
21
21
  const l = e.onComplete;
22
22
  e.onComplete = () => {
23
23
  l == null || l(), this.child === e && (this.child = null, this._state = "idle", this._settled = !0), this.notify();
24
24
  };
25
- const d = e.onUpdate;
26
- e.onUpdate = (c) => {
27
- var y;
28
- d == null || d(c), (y = this.onUpdate) == null || y.call(this, c), this.notify();
25
+ const y = e.onUpdate;
26
+ e.onUpdate = (a) => {
27
+ var m;
28
+ y == null || y(a), (m = this.onUpdate) == null || m.call(this, a), this.notify();
29
29
  }, this._state === "paused" ? e.pause() : this._state === "reversing" ? e.reverse() : (this._state = "playing", e.play()), this.notify();
30
30
  }
31
31
  play() {
@@ -98,19 +98,19 @@ class Mt extends xt {
98
98
  for (const e of this.listeners) e();
99
99
  }
100
100
  }
101
- const Lt = (t, s) => {
101
+ const kt = (t, s) => {
102
102
  var e;
103
103
  t.style.position = "absolute", t.style.width = "100%", t.style.top = `${-1 * (((e = s == null ? void 0 : s.scrollOffset) == null ? void 0 : e.y) ?? 0)}px`, t.style.left = "0";
104
- }, dt = /* @__PURE__ */ new Set(["auto", "scroll", "overlay"]), Ot = (t) => {
104
+ }, ht = /* @__PURE__ */ new Set(["auto", "scroll", "overlay"]), Dt = (t) => {
105
105
  let s = t.parentElement;
106
106
  for (; s && s !== document.body; ) {
107
107
  const e = window.getComputedStyle(s);
108
- if (dt.has(e.overflowY) || dt.has(e.overflowX))
108
+ if (ht.has(e.overflowY) || ht.has(e.overflowX))
109
109
  return s;
110
110
  s = s.parentElement;
111
111
  }
112
112
  return document.documentElement;
113
- }, _t = (t) => {
113
+ }, Ht = (t) => {
114
114
  let s = t.parentElement;
115
115
  for (; s && s !== document.body; ) {
116
116
  const e = window.getComputedStyle(s).position;
@@ -120,16 +120,16 @@ const Lt = (t, s) => {
120
120
  }
121
121
  return document.body;
122
122
  };
123
- function kt(t) {
123
+ function It(t) {
124
124
  const s = Object.keys(t);
125
125
  return Promise.all(s.map((e) => t[e])).then((e) => {
126
126
  const n = {};
127
- return s.forEach((l, d) => {
128
- n[l] = e[d];
127
+ return s.forEach((l, y) => {
128
+ n[l] = e[y];
129
129
  }), n;
130
130
  });
131
131
  }
132
- function Dt(t) {
132
+ function Nt(t) {
133
133
  const s = t.filter((e) => e.symmetric).map((e) => ({
134
134
  from: e.to,
135
135
  to: e.from,
@@ -137,7 +137,7 @@ function Dt(t) {
137
137
  }));
138
138
  return [...t, ...s];
139
139
  }
140
- function X(t, s) {
140
+ function K(t, s) {
141
141
  if (s === "*")
142
142
  return !0;
143
143
  if (s.endsWith("/*")) {
@@ -146,131 +146,134 @@ function X(t, s) {
146
146
  }
147
147
  return t === s;
148
148
  }
149
- function Ht(t, s, e) {
149
+ function Wt(t, s, e) {
150
150
  for (const n of e)
151
- if (X(t, n.from) && X(s, n.to))
151
+ if (K(t, n.from) && K(s, n.to))
152
152
  return n.transition;
153
153
  for (const n of e)
154
- if ((n.from === "*" || X(t, n.from)) && (n.to === "*" || X(s, n.to)))
154
+ if ((n.from === "*" || K(t, n.from)) && (n.to === "*" || K(s, n.to)))
155
155
  return n.transition;
156
156
  return null;
157
157
  }
158
- const Nt = 768, It = 10, Wt = 10;
159
- function Ft(t = {}) {
160
- const { preserveScroll: s = (a) => a } = t, e = typeof s == "function" ? s : () => s;
161
- let n = null, l = !1, d = !1;
162
- const c = () => {
163
- const a = (n == null ? void 0 : n.clientWidth) ?? 0, u = a > 0 ? a : typeof window < "u" ? window.innerWidth : 0;
164
- return u > 0 && u < Nt;
165
- }, y = () => (d || (l = c(), d = !0), l), E = (a) => {
166
- var w;
167
- const u = e(y());
168
- if (u === !1)
169
- return { preserves: !1, shared: !1, storageKey: `path:${a}` };
170
- if (u === !0)
171
- return { preserves: !0, shared: !1, storageKey: `path:${a}` };
172
- const v = ((w = u.exclude) == null ? void 0 : w.some((P) => X(a, P))) ?? !1, S = !v && !!u.key;
158
+ const Ft = 768, Kt = 10, Bt = 10;
159
+ function Xt(t = {}) {
160
+ const { preserveScroll: s = (u) => u } = t, e = typeof s == "function" ? s : () => s;
161
+ let n = null, l = !1, y = !1;
162
+ const a = () => {
163
+ const u = (n == null ? void 0 : n.clientWidth) ?? 0, c = u > 0 ? u : typeof window < "u" ? window.innerWidth : 0;
164
+ return c > 0 && c < Ft;
165
+ }, m = () => (y || (l = a(), y = !0), l), v = (u) => {
166
+ var E;
167
+ const c = e(m());
168
+ if (c === !1)
169
+ return { preserves: !1, shared: !1, storageKey: `path:${u}` };
170
+ if (c === !0)
171
+ return { preserves: !0, shared: !1, storageKey: `path:${u}` };
172
+ const g = ((E = c.exclude) == null ? void 0 : E.some((T) => K(u, T))) ?? !1, S = !g && !!c.key;
173
173
  return {
174
- preserves: !v,
174
+ preserves: !g,
175
175
  shared: S,
176
- storageKey: S ? `shared:${u.key}` : `path:${a}`
176
+ storageKey: S ? `shared:${c.key}` : `path:${u}`
177
177
  };
178
- }, O = (a) => E(a).preserves;
179
- let _ = null;
178
+ }, C = (u) => v(u).preserves;
179
+ let x = null;
180
180
  const b = /* @__PURE__ */ new Map();
181
- let M = null, k = !1, I = 0;
182
- const W = () => {
183
- n && M && !k && b.set(E(M).storageKey, {
181
+ let M = null, L = !1, I = 0;
182
+ const N = () => {
183
+ n && M && !L && b.set(v(M).storageKey, {
184
184
  x: n.scrollLeft,
185
185
  y: n.scrollTop
186
186
  });
187
- }, T = (a) => {
187
+ }, z = (u) => {
188
188
  if (!n) return;
189
- const u = E(a);
190
- if (u.preserves && u.shared && !b.has(u.storageKey))
189
+ const c = v(u);
190
+ if (c.preserves && c.shared && !b.has(c.storageKey))
191
191
  return;
192
- const v = u.preserves && b.has(u.storageKey) ? b.get(u.storageKey) : { x: 0, y: 0 };
192
+ const g = c.preserves && b.has(c.storageKey) ? b.get(c.storageKey) : { x: 0, y: 0 };
193
193
  let S = 0;
194
- const w = () => {
194
+ const E = () => {
195
195
  if (!n) return;
196
196
  n.scrollTo({
197
- top: v.y,
198
- left: v.x
199
- }), !(Math.abs(n.scrollTop - v.y) < 1 && Math.abs(n.scrollLeft - v.x) < 1) && S < It && (S++, requestAnimationFrame(w));
197
+ top: g.y,
198
+ left: g.x
199
+ }), !(Math.abs(n.scrollTop - g.y) < 1 && Math.abs(n.scrollLeft - g.x) < 1) && S < Kt && (S++, requestAnimationFrame(E));
200
200
  };
201
- requestAnimationFrame(w);
201
+ requestAnimationFrame(E);
202
202
  };
203
203
  return {
204
- initializeContext: (a, u) => {
205
- k = !0;
206
- const v = ++I;
207
- _ = a, n || (n = Ot(a), l = c(), d = !0, typeof ResizeObserver < "u" && new ResizeObserver(() => {
208
- l = c();
209
- }).observe(n), (n === document.documentElement ? window : n).addEventListener("scroll", W, {
204
+ initializeContext: (u, c) => {
205
+ L = !0;
206
+ const g = ++I;
207
+ x = u, n || (n = Dt(u), l = a(), y = !0, typeof ResizeObserver < "u" && new ResizeObserver(() => {
208
+ l = a();
209
+ }).observe(n), (n === document.documentElement ? window : n).addEventListener("scroll", N, {
210
210
  passive: !0
211
- })), M = u, T(u);
211
+ })), M = c, z(c);
212
212
  let S = 0;
213
- const w = () => {
214
- v === I && (S++, S >= Wt ? k = !1 : requestAnimationFrame(w));
213
+ const E = () => {
214
+ g === I && (S++, S >= Bt ? L = !1 : requestAnimationFrame(E));
215
215
  };
216
- requestAnimationFrame(w);
216
+ requestAnimationFrame(E);
217
217
  },
218
- calculateScrollOffset: (a, u) => {
219
- const v = a ? E(a).storageKey : null, S = v && b.has(v) ? b.get(v) : { x: 0, y: 0 }, w = u ? E(u) : null, P = w != null && w.preserves ? w.storageKey : null, F = P && b.has(P) ? b.get(P) : { x: 0, y: 0 };
218
+ calculateScrollOffset: (u, c) => {
219
+ const g = u ? v(u).storageKey : null, S = g && b.has(g) ? b.get(g) : { x: 0, y: 0 }, E = c ? v(c) : null, T = E != null && E.preserves ? E.storageKey : null, H = T && b.has(T) ? b.get(T) : { x: 0, y: 0 };
220
220
  return {
221
- x: -F.x + S.x,
222
- y: -F.y + S.y
221
+ x: -H.x + S.x,
222
+ y: -H.y + S.y
223
223
  };
224
224
  },
225
- evictScrollPosition: (a) => {
226
- b.delete(E(a).storageKey);
225
+ evictScrollPosition: (u) => {
226
+ b.delete(v(u).storageKey);
227
227
  },
228
- shouldPreserve: O,
228
+ shouldPreserve: C,
229
229
  getScrollContainer: () => n,
230
- getPositionedParentElement: () => _ ? _t(_) : document.body,
231
- getScrollPosition: (a) => {
232
- const u = a ? E(a).storageKey : null;
233
- return u && b.has(u) ? b.get(u) : { x: 0, y: 0 };
234
- }
230
+ getPositionedParentElement: () => x ? Ht(x) : document.body,
231
+ getScrollPosition: (u) => {
232
+ const c = u ? v(u).storageKey : null;
233
+ return c && b.has(c) ? b.get(c) : { x: 0, y: 0 };
234
+ },
235
+ // Same measurement that drives `preserveScroll`'s `isMobile`, exposed so a
236
+ // functional `transitions` config can branch on it too.
237
+ getIsMobile: m
235
238
  };
236
239
  }
237
- const ht = 30, yt = 8, pt = 1.2, mt = 30, Kt = 600;
238
- function Bt() {
239
- let t = null, s = !1, e = !1, n = null, l = null, d = !1;
240
- const c = (f, g) => {
241
- for (let p = 0; p < f.length; p++) {
242
- const m = f.item(p);
243
- if (m && m.identifier === g) return m;
240
+ const yt = 30, pt = 8, mt = 1.2, gt = 30, zt = 600;
241
+ function $t() {
242
+ let t = null, s = !1, e = !1, n = null, l = null, y = !1;
243
+ const a = (f, d) => {
244
+ for (let h = 0; h < f.length; h++) {
245
+ const w = f.item(h);
246
+ if (w && w.identifier === d) return w;
244
247
  }
245
248
  return null;
246
- }, y = () => {
249
+ }, m = () => {
247
250
  n !== null && (clearTimeout(n), n = null);
248
- }, E = () => {
251
+ }, v = () => {
249
252
  l !== null && (clearTimeout(l), l = null);
250
- }, O = () => {
251
- s = !0, e = !0, y(), E(), n = setTimeout(() => {
253
+ }, C = () => {
254
+ s = !0, e = !0, m(), v(), n = setTimeout(() => {
252
255
  s = !1, e = !1, n = null;
253
- }, Kt);
254
- }, _ = (f) => {
256
+ }, zt);
257
+ }, x = (f) => {
255
258
  if (f.touches.length !== 1) {
256
259
  t = null;
257
260
  return;
258
261
  }
259
- const g = f.touches.item(0);
260
- if (!g) {
262
+ const d = f.touches.item(0);
263
+ if (!d) {
261
264
  t = null;
262
265
  return;
263
266
  }
264
- const p = window.innerWidth, m = g.clientX <= ht, R = g.clientX >= p - ht;
265
- if (!m && !R) {
267
+ const h = window.innerWidth, w = d.clientX <= yt, O = d.clientX >= h - yt;
268
+ if (!w && !O) {
266
269
  t = null;
267
270
  return;
268
271
  }
269
272
  t = {
270
- identifier: g.identifier,
271
- startX: g.clientX,
272
- startY: g.clientY,
273
- fromLeftEdge: m,
273
+ identifier: d.identifier,
274
+ startX: d.clientX,
275
+ startY: d.clientY,
276
+ fromLeftEdge: w,
274
277
  moved: !1
275
278
  };
276
279
  }, b = (f) => {
@@ -279,54 +282,54 @@ function Bt() {
279
282
  t = null;
280
283
  return;
281
284
  }
282
- const g = c(f.touches, t.identifier);
283
- if (!g) {
285
+ const d = a(f.touches, t.identifier);
286
+ if (!d) {
284
287
  t = null;
285
288
  return;
286
289
  }
287
- const p = g.clientX - t.startX, m = g.clientY - t.startY, R = Math.abs(p), a = Math.abs(m);
288
- if (a > yt && a > R * pt) {
290
+ const h = d.clientX - t.startX, w = d.clientY - t.startY, O = Math.abs(h), u = Math.abs(w);
291
+ if (u > pt && u > O * mt) {
289
292
  t = null;
290
293
  return;
291
294
  }
292
- const u = t.fromLeftEdge ? p > 0 : p < 0;
293
- R > yt && R > a * pt && u && (t.moved = !0);
295
+ const c = t.fromLeftEdge ? h > 0 : h < 0;
296
+ O > pt && O > u * mt && c && (t.moved = !0);
294
297
  }, M = (f) => {
295
298
  if (!t) return;
296
- const g = c(f.changedTouches, t.identifier);
297
- if (!g) {
299
+ const d = a(f.changedTouches, t.identifier);
300
+ if (!d) {
298
301
  t = null;
299
302
  return;
300
303
  }
301
- const p = g.clientX - t.startX, m = t.fromLeftEdge ? p > 0 : p < 0;
302
- if (t.moved && m && Math.abs(p) >= mt) {
303
- O(), t = null;
304
+ const h = d.clientX - t.startX, w = t.fromLeftEdge ? h > 0 : h < 0;
305
+ if (t.moved && w && Math.abs(h) >= gt) {
306
+ C(), t = null;
304
307
  return;
305
308
  }
306
- t.moved && Math.abs(p) >= mt && O(), t = null;
307
- }, k = () => {
308
- t && (t.moved && O(), t = null);
309
+ t.moved && Math.abs(h) >= gt && C(), t = null;
310
+ }, L = () => {
311
+ t && (t.moved && C(), t = null);
309
312
  };
310
313
  return { initialize: () => {
311
- if (typeof window > "u" || d) return;
312
- d = !0;
314
+ if (typeof window > "u" || y) return;
315
+ y = !0;
313
316
  const f = { passive: !0, capture: !0 };
314
- window.addEventListener("touchstart", _, f), window.addEventListener("touchmove", b, f), window.addEventListener("touchend", M, f), window.addEventListener("touchcancel", k, f);
317
+ window.addEventListener("touchstart", x, f), window.addEventListener("touchmove", b, f), window.addEventListener("touchend", M, f), window.addEventListener("touchcancel", L, f);
315
318
  }, destroy: () => {
316
- if (typeof window > "u" || !d) return;
317
- d = !1;
319
+ if (typeof window > "u" || !y) return;
320
+ y = !1;
318
321
  const f = { capture: !0 };
319
- window.removeEventListener("touchstart", _, f), window.removeEventListener("touchmove", b, f), window.removeEventListener("touchend", M, f), window.removeEventListener("touchcancel", k, f), y(), E(), t = null, s = !1, e = !1;
322
+ window.removeEventListener("touchstart", x, f), window.removeEventListener("touchmove", b, f), window.removeEventListener("touchend", M, f), window.removeEventListener("touchcancel", L, f), m(), v(), t = null, s = !1, e = !1;
320
323
  }, isSwipeBack: () => {
321
324
  const f = s || e;
322
- return f && y(), f;
325
+ return f && m(), f;
323
326
  }, onPageEnter: () => {
324
- s = !1, y(), E(), l = setTimeout(() => {
327
+ s = !1, m(), v(), l = setTimeout(() => {
325
328
  e = !1, l = null;
326
329
  }, 0);
327
330
  } };
328
331
  }
329
- function Xt() {
332
+ function Vt() {
330
333
  let t = null;
331
334
  function s() {
332
335
  var n, l;
@@ -344,8 +347,8 @@ function Xt() {
344
347
  }
345
348
  return {
346
349
  trigger(n, l) {
347
- var c;
348
- l === "out" && (t == null ? void 0 : t.to) === n && !t.from && ((c = t.inResolve) == null || c.call(t, null), t = {}), t && (l === "out" && t.from && t.from !== n || l === "in" && t.to && t.to !== n) && s(), t || (t = {}), l === "out" ? t.from = n : t.to = n;
350
+ var a;
351
+ l === "out" && (t == null ? void 0 : t.to) === n && !t.from && ((a = t.inResolve) == null || a.call(t, null), t = {}), t && (l === "out" && t.from && t.from !== n || l === "in" && t.to && t.to !== n) && s(), t || (t = {}), l === "out" ? t.from = n : t.to = n;
349
352
  },
350
353
  get(n) {
351
354
  return new Promise((l) => {
@@ -354,312 +357,317 @@ function Xt() {
354
357
  }
355
358
  };
356
359
  }
357
- const $ = /* @__PURE__ */ new Map();
358
- let Y = null, gt = !1;
360
+ const X = /* @__PURE__ */ new Map();
361
+ let G = null, vt = !1;
359
362
  function Et(t) {
360
- if (t instanceof HTMLElement && $.has(t) && !t.isConnected) {
361
- const s = $.get(t);
362
- $.delete(t), queueMicrotask(s);
363
+ if (t instanceof HTMLElement && X.has(t) && !t.isConnected) {
364
+ const s = X.get(t);
365
+ X.delete(t), queueMicrotask(s);
363
366
  }
364
367
  for (const s of Array.from(t.childNodes))
365
368
  Et(s);
366
369
  }
367
- function zt() {
368
- if (gt || typeof document > "u") return;
369
- gt = !0, Y = new MutationObserver((s) => {
370
+ function qt() {
371
+ if (vt || typeof document > "u") return;
372
+ vt = !0, G = new MutationObserver((s) => {
370
373
  for (const e of s)
371
374
  for (const n of Array.from(e.removedNodes))
372
375
  Et(n);
373
376
  });
374
377
  const t = () => {
375
- Y == null || Y.observe(document.body, { childList: !0, subtree: !0 });
378
+ G == null || G.observe(document.body, { childList: !0, subtree: !0 });
376
379
  };
377
380
  document.body ? t() : document.addEventListener("DOMContentLoaded", t, { once: !0 });
378
381
  }
379
- function $t(t, s) {
380
- return zt(), $.set(t, s), () => {
381
- $.delete(t);
382
+ function Ut(t, s) {
383
+ return qt(), X.set(t, s), () => {
384
+ X.delete(t);
382
385
  };
383
386
  }
384
- const ot = /* @__PURE__ */ new WeakMap();
385
- let G = null;
386
- const Z = "none !important";
387
- function z(t) {
387
+ const it = /* @__PURE__ */ new WeakMap();
388
+ let Z = null;
389
+ const j = "none !important";
390
+ function B(t) {
388
391
  const s = t.style.getPropertyValue("display");
389
392
  return t.style.getPropertyPriority("display") ? `${s} !important` : s;
390
393
  }
391
- function Vt() {
392
- return G || (G = new MutationObserver((t) => {
394
+ function Yt() {
395
+ return Z || (Z = new MutationObserver((t) => {
393
396
  for (const s of t) {
394
- const e = s.target, n = ot.get(e);
397
+ const e = s.target, n = it.get(e);
395
398
  if (!n) continue;
396
- const l = z(e);
397
- l !== n.accounted && (n.accounted = l, l === Z ? (n.reactHidden = !0, n.onHide()) : l !== "none" && n.reactHidden && (n.reactHidden = !1, n.onShow()));
399
+ const l = B(e);
400
+ l !== n.accounted && (n.accounted = l, l === j ? (n.reactHidden = !0, n.onHide()) : l !== "none" && n.reactHidden && (n.reactHidden = !1, n.onShow()));
398
401
  }
399
- }), G);
402
+ }), Z);
400
403
  }
401
- function qt(t, s) {
402
- const e = z(t), n = {
404
+ function Gt(t, s) {
405
+ const e = B(t), n = {
403
406
  accounted: e,
404
- reactHidden: e === Z,
407
+ reactHidden: e === j,
405
408
  onHide: s.onHide,
406
409
  onShow: s.onShow
407
410
  };
408
- return ot.set(t, n), Vt().observe(t, {
411
+ return it.set(t, n), Yt().observe(t, {
409
412
  attributes: !0,
410
413
  attributeFilter: ["style"]
411
414
  }), {
412
415
  get isHidden() {
413
- return z(t) === Z;
416
+ return B(t) === j;
414
417
  },
415
- setDisplay(l, d = !1) {
418
+ setDisplay(l, y = !1) {
416
419
  l === null ? t.style.removeProperty("display") : t.style.setProperty(
417
420
  "display",
418
421
  l,
419
- d ? "important" : ""
420
- ), n.accounted = z(t);
422
+ y ? "important" : ""
423
+ ), n.accounted = B(t);
421
424
  },
422
425
  sync() {
423
- n.accounted = z(t), n.reactHidden = n.accounted === Z;
426
+ n.accounted = B(t), n.reactHidden = n.accounted === j;
424
427
  },
425
428
  stop() {
426
- ot.delete(t);
429
+ it.delete(t);
427
430
  }
428
431
  };
429
432
  }
430
- function Ut(t) {
433
+ function Zt(t) {
431
434
  return Array.isArray(t);
432
435
  }
433
- function bt(t) {
436
+ function wt(t) {
434
437
  const s = [];
435
438
  for (const e of t)
436
- Ut(e) ? s.push(...bt(e)) : s.push(e);
439
+ Zt(e) ? s.push(...wt(e)) : s.push(e);
437
440
  return s;
438
441
  }
439
- function se(t, s = {}) {
442
+ function re(t, s = {}) {
440
443
  const {
441
444
  transitions: e = [],
442
445
  middleware: n = (o, i) => ({ from: o, to: i }),
443
446
  preserveScroll: l = (o) => o
444
- } = t, d = s.host ?? new Mt(), c = Xt(), y = Dt(
445
- bt(e)
446
- ), E = Bt();
447
- E.initialize();
447
+ } = t, y = s.host ?? new _t(), a = Vt(), m = typeof e == "function" ? e : () => e, v = $t();
448
+ v.initialize();
448
449
  const {
449
- initializeContext: O,
450
- calculateScrollOffset: _,
450
+ initializeContext: C,
451
+ calculateScrollOffset: x,
451
452
  evictScrollPosition: b,
452
453
  shouldPreserve: M,
453
- getScrollContainer: k,
454
+ getScrollContainer: L,
454
455
  getPositionedParentElement: I,
455
- getScrollPosition: W
456
- } = Ft({ preserveScroll: l });
457
- let T = null, A = null;
458
- const f = /* @__PURE__ */ new WeakMap(), g = (o) => {
459
- f.set(o, {
456
+ getScrollPosition: N,
457
+ getIsMobile: z
458
+ } = Xt({ preserveScroll: l }), $ = /* @__PURE__ */ new Map(), f = () => {
459
+ const o = z();
460
+ let i = $.get(o);
461
+ return i || (i = Nt(
462
+ wt(m({ isMobile: o }))
463
+ ), $.set(o, i)), i;
464
+ };
465
+ let d = null, h = null;
466
+ const w = /* @__PURE__ */ new WeakMap(), O = (o) => {
467
+ w.set(o, {
460
468
  parent: o.parentElement,
461
469
  nextSibling: o.nextElementSibling
462
470
  });
463
- }, p = (o) => {
464
- const i = f.get(o);
471
+ }, u = (o) => {
472
+ const i = w.get(o);
465
473
  return i || {
466
474
  parent: o.parentElement,
467
475
  nextSibling: o.nextElementSibling
468
476
  };
469
- }, m = /* @__PURE__ */ new WeakMap(), R = /* @__PURE__ */ new WeakMap();
470
- let a = 0;
471
- const u = (o) => {
477
+ }, c = /* @__PURE__ */ new WeakMap(), g = /* @__PURE__ */ new WeakMap();
478
+ let S = 0;
479
+ const E = (o) => {
472
480
  const i = typeof getComputedStyle < "u" ? getComputedStyle(o).display : "";
473
481
  return i && i !== "none" ? i : "block";
474
- }, v = (o, i) => {
475
- i.visibleDisplay = o.style.getPropertyValue("display"), i.computedDisplay = u(o);
476
- }, S = (o, i) => {
477
- if (R.get(o) !== i) return;
478
- R.delete(o);
479
- const r = m.get(o);
480
- r && (r.savedCss !== null && (o.style.cssText = r.savedCss, r.savedCss = null), r.intent === "hidden" ? r.vis.setDisplay("none", !0) : r.visibleDisplay ? (r.vis.setDisplay(r.visibleDisplay, !1), v(o, r)) : (r.vis.setDisplay(null), v(o, r)));
481
- }, w = (o, i, r, h, L) => {
482
- const x = h.element, D = L.element, H = (h.mode ?? "unmount") === "hidden", { parent: V, nextSibling: J } = h.parent ? { parent: h.parent, nextSibling: h.nextSibling } : p(x), q = _(i, r), Q = {
483
- scrollOffset: q,
484
- from: { scroll: W(i) },
485
- to: { scroll: W(r) },
482
+ }, T = (o, i) => {
483
+ i.visibleDisplay = o.style.getPropertyValue("display"), i.computedDisplay = E(o);
484
+ }, H = (o, i) => {
485
+ if (g.get(o) !== i) return;
486
+ g.delete(o);
487
+ const r = c.get(o);
488
+ r && (r.savedCss !== null && (o.style.cssText = r.savedCss, r.savedCss = null), r.intent === "hidden" ? r.vis.setDisplay("none", !0) : r.visibleDisplay ? (r.vis.setDisplay(r.visibleDisplay, !1), T(o, r)) : (r.vis.setDisplay(null), T(o, r)));
489
+ }, Tt = (o, i, r, p, A) => {
490
+ const P = p.element, _ = A.element, k = (p.mode ?? "unmount") === "hidden", { parent: q, nextSibling: Q } = p.parent ? { parent: p.parent, nextSibling: p.nextSibling } : u(P), U = x(i, r), tt = {
491
+ scrollOffset: U,
492
+ from: { scroll: N(i) },
493
+ to: { scroll: N(r) },
486
494
  get scrollingElement() {
487
- return k() || document.documentElement;
495
+ return L() || document.documentElement;
488
496
  },
489
497
  get positionedParent() {
490
498
  return I();
491
499
  }
492
500
  };
493
- let C;
494
- if (H) {
495
- C = x, C.style.top = `${-1 * ((q == null ? void 0 : q.y) ?? 0)}px`;
496
- const N = m.get(D);
497
- N && N.savedCss === null && (N.savedCss = D.style.cssText);
501
+ let R;
502
+ if (k) {
503
+ R = P, R.style.top = `${-1 * ((U == null ? void 0 : U.y) ?? 0)}px`;
504
+ const D = c.get(_);
505
+ D && D.savedCss === null && (D.savedCss = _.style.cssText);
498
506
  } else
499
- C = x.cloneNode(!0), C.setAttribute("data-ssgoi-clone", ""), Lt(C, Q);
507
+ R = P.cloneNode(!0), R.setAttribute("data-ssgoi-clone", ""), kt(R, tt);
500
508
  M(i) || b(i);
501
- const U = H ? ++a : 0;
502
- H && (R.set(D, U), R.set(x, U));
503
- const at = Promise.resolve(C), ut = Promise.resolve(D), ft = [], Rt = {
504
- from: at,
505
- to: ut,
506
- context: Q,
507
- createElement: ((N, tt = "div") => {
508
- const K = document.createElement(tt);
509
- return K.setAttribute("data-ssgoi-id", N), ft.push(K), K;
509
+ const Y = k ? ++S : 0;
510
+ k && (g.set(_, Y), g.set(P, Y));
511
+ const ut = Promise.resolve(R), ft = Promise.resolve(_), dt = [], At = {
512
+ from: ut,
513
+ to: ft,
514
+ context: tt,
515
+ createElement: ((D, et = "div") => {
516
+ const W = document.createElement(et);
517
+ return W.setAttribute("data-ssgoi-id", D), dt.push(W), W;
510
518
  })
511
- }, Pt = Promise.resolve(
512
- o.prepare ? o.prepare(Rt) : {}
519
+ }, Ct = Promise.resolve(
520
+ o.prepare ? o.prepare(At) : {}
513
521
  );
514
- kt({
515
- from: at,
516
- to: ut,
517
- extras: Pt
518
- }).then(({ from: N, to: tt, extras: K }) => {
519
- !H && V && (J && V.contains(J) ? V.insertBefore(C, J) : V.appendChild(C));
520
- const et = o.animation({
521
- from: N,
522
- to: tt,
523
- context: Q,
524
- ...K
525
- }), nt = et.onComplete;
526
- et.onComplete = () => {
527
- nt == null || nt(), H ? (S(x, U), S(D, U)) : C.parentElement && C.parentElement.removeChild(C);
528
- for (const st of ft)
529
- st.parentElement && st.parentElement.removeChild(st);
530
- }, d.attach(et);
522
+ It({
523
+ from: ut,
524
+ to: ft,
525
+ extras: Ct
526
+ }).then(({ from: D, to: et, extras: W }) => {
527
+ !k && q && (Q && q.contains(Q) ? q.insertBefore(R, Q) : q.appendChild(R));
528
+ const nt = o.animation({
529
+ from: D,
530
+ to: et,
531
+ context: tt,
532
+ ...W
533
+ }), st = nt.onComplete;
534
+ nt.onComplete = () => {
535
+ st == null || st(), k ? (H(P, Y), H(_, Y)) : R.parentElement && R.parentElement.removeChild(R);
536
+ for (const ot of dt)
537
+ ot.parentElement && ot.parentElement.removeChild(ot);
538
+ }, y.attach(nt);
531
539
  });
532
- }, P = (o, i) => {
533
- const r = E.isSwipeBack();
534
- c.trigger(o, i), c.get(i).then((h) => {
535
- if (i === "in" && E.onPageEnter(), !h) return;
540
+ }, V = (o, i) => {
541
+ const r = v.isSwipeBack();
542
+ a.trigger(o, i), a.get(i).then((p) => {
543
+ if (i === "in" && v.onPageEnter(), !p) return;
536
544
  if (r) {
537
- i === "out" && h.from && !M(h.from) && b(h.from), T = null, A = null;
545
+ i === "out" && p.from && !M(p.from) && b(p.from), d = null, h = null;
538
546
  return;
539
547
  }
540
548
  if (i !== "in") return;
541
- const { from: L, to: x } = n(
542
- h.from,
543
- h.to
544
- ), D = Ht(
545
- L,
546
- x,
547
- y
548
- ), j = T, H = A;
549
- T = null, A = null, !(!D || !j || !H) && w(D, L, x, j, H);
549
+ const { from: A, to: P } = n(
550
+ p.from,
551
+ p.to
552
+ ), _ = Wt(
553
+ A,
554
+ P,
555
+ f()
556
+ ), J = d, k = h;
557
+ d = null, h = null, !(!_ || !J || !k) && Tt(_, A, P, J, k);
550
558
  });
551
- }, F = (o, i) => {
552
- const r = m.get(o);
559
+ }, Rt = (o, i) => {
560
+ const r = c.get(o);
553
561
  if (!r) return;
554
- const h = r.intent === "hidden";
555
- if (r.intent = "hidden", r.savedCss === null && (r.savedCss = o.style.cssText), r.vis.setDisplay(r.computedDisplay || "block", !0), o.style.position = "absolute", o.style.width = "100%", o.style.left = "0", h) return;
556
- const L = p(o);
557
- T = {
562
+ const p = r.intent === "hidden";
563
+ if (r.intent = "hidden", r.savedCss === null && (r.savedCss = o.style.cssText), r.vis.setDisplay(r.computedDisplay || "block", !0), o.style.position = "absolute", o.style.width = "100%", o.style.left = "0", p) return;
564
+ const A = u(o);
565
+ d = {
558
566
  element: o,
559
- parent: L.parent,
560
- nextSibling: L.nextSibling,
567
+ parent: A.parent,
568
+ nextSibling: A.nextSibling,
561
569
  mode: "hidden"
562
570
  };
563
- const x = o.getAttribute("data-ssgoi-transition") ?? i;
564
- P(x, "out");
565
- }, St = (o, i) => {
566
- const r = m.get(o);
571
+ const P = o.getAttribute("data-ssgoi-transition") ?? i;
572
+ V(P, "out");
573
+ }, Pt = (o, i) => {
574
+ const r = c.get(o);
567
575
  if (!r || r.intent === "visible") return;
568
- r.intent = "visible", v(o, r), r.savedCss !== null && (o.style.cssText = r.savedCss, r.visibleDisplay ? r.vis.setDisplay(r.visibleDisplay, !1) : r.vis.setDisplay(null)), O(o, i), A = {
576
+ r.intent = "visible", T(o, r), r.savedCss !== null && (o.style.cssText = r.savedCss, r.visibleDisplay ? r.vis.setDisplay(r.visibleDisplay, !1) : r.vis.setDisplay(null)), C(o, i), h = {
569
577
  element: o,
570
578
  parent: o.parentElement,
571
579
  nextSibling: o.nextElementSibling
572
580
  };
573
- const h = o.getAttribute("data-ssgoi-transition") ?? i;
574
- P(h, "in");
575
- }, Tt = (o, i) => {
576
- const r = m.get(o);
577
- if (r && (r.vis.stop(), m.delete(o), R.delete(o), r.intent === "hidden")) {
578
- (T == null ? void 0 : T.element) === o && (T = null), (A == null ? void 0 : A.element) === o && (A = null);
581
+ const p = o.getAttribute("data-ssgoi-transition") ?? i;
582
+ V(p, "in");
583
+ }, Mt = (o, i) => {
584
+ const r = c.get(o);
585
+ if (r && (r.vis.stop(), c.delete(o), g.delete(o), r.intent === "hidden")) {
586
+ (d == null ? void 0 : d.element) === o && (d = null), (h == null ? void 0 : h.element) === o && (h = null);
579
587
  return;
580
588
  }
581
- const h = p(o);
582
- T = {
589
+ const p = u(o);
590
+ d = {
583
591
  element: o,
584
- parent: h.parent,
585
- nextSibling: h.nextSibling,
592
+ parent: p.parent,
593
+ nextSibling: p.nextSibling,
586
594
  mode: "unmount"
587
595
  };
588
- const L = o.getAttribute("data-ssgoi-transition") ?? i;
589
- P(L, "out");
590
- }, rt = /* @__PURE__ */ new WeakSet(), lt = (o, i) => {
591
- if (rt.has(i)) return;
592
- rt.add(i), g(i);
593
- const r = qt(i, {
594
- onHide: () => F(i, o),
595
- onShow: () => St(i, o)
596
- }), h = {
596
+ const A = o.getAttribute("data-ssgoi-transition") ?? i;
597
+ V(A, "out");
598
+ }, lt = /* @__PURE__ */ new WeakSet(), ct = (o, i) => {
599
+ if (lt.has(i)) return;
600
+ lt.add(i), O(i);
601
+ const r = Gt(i, {
602
+ onHide: () => Rt(i, o),
603
+ onShow: () => Pt(i, o)
604
+ }), p = {
597
605
  vis: r,
598
606
  savedCss: null,
599
607
  intent: r.isHidden ? "hidden" : "visible",
600
608
  visibleDisplay: "",
601
609
  computedDisplay: "block"
602
610
  };
603
- m.set(i, h), r.isHidden || (v(i, h), O(i, o), A = {
611
+ c.set(i, p), r.isHidden || (T(i, p), C(i, o), h = {
604
612
  element: i,
605
613
  parent: i.parentElement,
606
614
  nextSibling: i.nextElementSibling
607
- }, P(o, "in")), $t(i, () => Tt(i, o));
608
- }, ct = /* @__PURE__ */ new Map();
609
- return { register: lt, refFor: (o) => {
610
- let i = ct.get(o);
615
+ }, V(o, "in")), Ut(i, () => Mt(i, o));
616
+ }, at = /* @__PURE__ */ new Map();
617
+ return { register: ct, refFor: (o) => {
618
+ let i = at.get(o);
611
619
  return i || (i = (r) => {
612
- r && lt(o, r);
613
- }, ct.set(o, i)), i;
620
+ r && ct(o, r);
621
+ }, at.set(o, i)), i;
614
622
  } };
615
623
  }
616
- const wt = "data-ssgoi-root", Yt = `[${wt}]`, it = "data-ssgoi-transition", vt = `[${it}]`, Gt = "[data-ssgoi-clone]";
617
- function Zt() {
624
+ const St = "data-ssgoi-root", jt = `[${St}]`, rt = "data-ssgoi-transition", bt = `[${rt}]`, Jt = "[data-ssgoi-clone]";
625
+ function Qt() {
618
626
  return typeof MutationObserver < "u" && typeof HTMLElement < "u" && typeof Node < "u";
619
627
  }
620
- function jt(t) {
628
+ function te(t) {
621
629
  return t.nodeType === Node.ELEMENT_NODE;
622
630
  }
623
- function Jt(t) {
631
+ function ee(t) {
624
632
  return t instanceof HTMLElement;
625
633
  }
626
- function oe(t, s) {
627
- if (!Zt()) return () => {
634
+ function le(t, s) {
635
+ if (!Qt()) return () => {
628
636
  };
629
- t.setAttribute(wt, "");
630
- const e = (c) => c.closest(Yt) === t, n = (c) => {
631
- if (!Jt(c) || !e(c) || c.closest(Gt))
637
+ t.setAttribute(St, "");
638
+ const e = (a) => a.closest(jt) === t, n = (a) => {
639
+ if (!ee(a) || !e(a) || a.closest(Jt))
632
640
  return;
633
- const y = c.getAttribute(it);
634
- y !== null && s.register(y, c);
635
- }, l = (c) => {
636
- if (jt(c)) {
637
- c.matches(vt) && n(c);
638
- for (const y of c.querySelectorAll(vt))
639
- n(y);
641
+ const m = a.getAttribute(rt);
642
+ m !== null && s.register(m, a);
643
+ }, l = (a) => {
644
+ if (te(a)) {
645
+ a.matches(bt) && n(a);
646
+ for (const m of a.querySelectorAll(bt))
647
+ n(m);
640
648
  }
641
- }, d = new MutationObserver((c) => {
642
- for (const y of c) {
643
- if (y.type === "attributes") {
644
- n(y.target);
649
+ }, y = new MutationObserver((a) => {
650
+ for (const m of a) {
651
+ if (m.type === "attributes") {
652
+ n(m.target);
645
653
  continue;
646
654
  }
647
- for (const E of y.addedNodes)
648
- l(E);
655
+ for (const v of m.addedNodes)
656
+ l(v);
649
657
  }
650
658
  });
651
- return d.observe(t, {
659
+ return y.observe(t, {
652
660
  childList: !0,
653
661
  subtree: !0,
654
662
  attributes: !0,
655
- attributeFilter: [it]
656
- }), l(t), () => d.disconnect();
663
+ attributeFilter: [rt]
664
+ }), l(t), () => y.disconnect();
657
665
  }
658
666
  export {
659
- xt as Animation,
660
- Mt as HostAnimation,
661
- le as MultiAnimation,
662
- ce as WebAnimation,
663
- se as createSggoiTransitionContext,
664
- oe as observeSsgoiTransitions
667
+ Ot as Animation,
668
+ _t as HostAnimation,
669
+ ue as MultiAnimation,
670
+ fe as WebAnimation,
671
+ re as createSggoiTransitionContext,
672
+ le as observeSsgoiTransitions
665
673
  };