@openlv/modal 0.0.1-beta.4 → 0.0.1-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2022 @@
1
+ var ir = Object.defineProperty;
2
+ var or = (e, t, r) => t in e ? ir(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
+ var fe = (e, t, r) => or(e, typeof t != "symbol" ? t + "" : t, r);
4
+ import { jsx as l, jsxs as b, Fragment as kt } from "preact/jsx-runtime";
5
+ import { useState as M, useRef as J, useReducer as Ct, useMemo as At, useLayoutEffect as ve, useImperativeHandle as St, useId as Et, useEffect as B, useDebugValue as Ot, useContext as Ze, useCallback as q } from "preact/hooks";
6
+ import { createElement as ee, Fragment as _e, Component as he, createRef as ar, createContext as Rt, toChildArray as ce, cloneElement as sr, render as ge, hydrate as lr, options as F, h as cr } from "preact";
7
+ import ur from "qrcode-generator";
8
+ const dr = 1, fr = (e) => {
9
+ const t = new URLSearchParams();
10
+ return t.set("h", e.h), t.set("k", e.k), e.p && t.set("p", e.p), e.s && t.set("s", e.s), `openlv://${e.sessionId}@${dr}?${t.toString()}`;
11
+ };
12
+ function pr(e) {
13
+ return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
14
+ }
15
+ var ze = { exports: {} }, st;
16
+ function hr() {
17
+ return st || (st = 1, (function(e) {
18
+ var t = Object.prototype.hasOwnProperty, r = "~";
19
+ function n() {
20
+ }
21
+ Object.create && (n.prototype = /* @__PURE__ */ Object.create(null), new n().__proto__ || (r = !1));
22
+ function i(c, u, d) {
23
+ this.fn = c, this.context = u, this.once = d || !1;
24
+ }
25
+ function o(c, u, d, p, w) {
26
+ if (typeof d != "function")
27
+ throw new TypeError("The listener must be a function");
28
+ var S = new i(d, p || c, w), N = r ? r + u : u;
29
+ return c._events[N] ? c._events[N].fn ? c._events[N] = [c._events[N], S] : c._events[N].push(S) : (c._events[N] = S, c._eventsCount++), c;
30
+ }
31
+ function a(c, u) {
32
+ --c._eventsCount === 0 ? c._events = new n() : delete c._events[u];
33
+ }
34
+ function s() {
35
+ this._events = new n(), this._eventsCount = 0;
36
+ }
37
+ s.prototype.eventNames = function() {
38
+ var u = [], d, p;
39
+ if (this._eventsCount === 0) return u;
40
+ for (p in d = this._events)
41
+ t.call(d, p) && u.push(r ? p.slice(1) : p);
42
+ return Object.getOwnPropertySymbols ? u.concat(Object.getOwnPropertySymbols(d)) : u;
43
+ }, s.prototype.listeners = function(u) {
44
+ var d = r ? r + u : u, p = this._events[d];
45
+ if (!p) return [];
46
+ if (p.fn) return [p.fn];
47
+ for (var w = 0, S = p.length, N = new Array(S); w < S; w++)
48
+ N[w] = p[w].fn;
49
+ return N;
50
+ }, s.prototype.listenerCount = function(u) {
51
+ var d = r ? r + u : u, p = this._events[d];
52
+ return p ? p.fn ? 1 : p.length : 0;
53
+ }, s.prototype.emit = function(u, d, p, w, S, N) {
54
+ var P = r ? r + u : u;
55
+ if (!this._events[P]) return !1;
56
+ var f = this._events[P], j = arguments.length, O, k;
57
+ if (f.fn) {
58
+ switch (f.once && this.removeListener(u, f.fn, void 0, !0), j) {
59
+ case 1:
60
+ return f.fn.call(f.context), !0;
61
+ case 2:
62
+ return f.fn.call(f.context, d), !0;
63
+ case 3:
64
+ return f.fn.call(f.context, d, p), !0;
65
+ case 4:
66
+ return f.fn.call(f.context, d, p, w), !0;
67
+ case 5:
68
+ return f.fn.call(f.context, d, p, w, S), !0;
69
+ case 6:
70
+ return f.fn.call(f.context, d, p, w, S, N), !0;
71
+ }
72
+ for (k = 1, O = new Array(j - 1); k < j; k++)
73
+ O[k - 1] = arguments[k];
74
+ f.fn.apply(f.context, O);
75
+ } else {
76
+ var H = f.length, Y;
77
+ for (k = 0; k < H; k++)
78
+ switch (f[k].once && this.removeListener(u, f[k].fn, void 0, !0), j) {
79
+ case 1:
80
+ f[k].fn.call(f[k].context);
81
+ break;
82
+ case 2:
83
+ f[k].fn.call(f[k].context, d);
84
+ break;
85
+ case 3:
86
+ f[k].fn.call(f[k].context, d, p);
87
+ break;
88
+ case 4:
89
+ f[k].fn.call(f[k].context, d, p, w);
90
+ break;
91
+ default:
92
+ if (!O) for (Y = 1, O = new Array(j - 1); Y < j; Y++)
93
+ O[Y - 1] = arguments[Y];
94
+ f[k].fn.apply(f[k].context, O);
95
+ }
96
+ }
97
+ return !0;
98
+ }, s.prototype.on = function(u, d, p) {
99
+ return o(this, u, d, p, !1);
100
+ }, s.prototype.once = function(u, d, p) {
101
+ return o(this, u, d, p, !0);
102
+ }, s.prototype.removeListener = function(u, d, p, w) {
103
+ var S = r ? r + u : u;
104
+ if (!this._events[S]) return this;
105
+ if (!d)
106
+ return a(this, S), this;
107
+ var N = this._events[S];
108
+ if (N.fn)
109
+ N.fn === d && (!w || N.once) && (!p || N.context === p) && a(this, S);
110
+ else {
111
+ for (var P = 0, f = [], j = N.length; P < j; P++)
112
+ (N[P].fn !== d || w && !N[P].once || p && N[P].context !== p) && f.push(N[P]);
113
+ f.length ? this._events[S] = f.length === 1 ? f[0] : f : a(this, S);
114
+ }
115
+ return this;
116
+ }, s.prototype.removeAllListeners = function(u) {
117
+ var d;
118
+ return u ? (d = r ? r + u : u, this._events[d] && a(this, d)) : (this._events = new n(), this._eventsCount = 0), this;
119
+ }, s.prototype.off = s.prototype.removeListener, s.prototype.addListener = s.prototype.on, s.prefixed = r, s.EventEmitter = s, e.exports = s;
120
+ })(ze)), ze.exports;
121
+ }
122
+ hr();
123
+ const V = Symbol.for("@ts-pattern/matcher"), Tt = Symbol.for("@ts-pattern/isVariadic"), Oe = "@ts-pattern/anonymous-select-key", He = (e) => !!(e && typeof e == "object"), Se = (e) => e && !!e[V], E = (e, t, r) => {
124
+ if (Se(e)) {
125
+ const n = e[V](), { matched: i, selections: o } = n.match(t);
126
+ return i && o && Object.keys(o).forEach((a) => r(a, o[a])), i;
127
+ }
128
+ if (He(e)) {
129
+ if (!He(t)) return !1;
130
+ if (Array.isArray(e)) {
131
+ if (!Array.isArray(t)) return !1;
132
+ let n = [], i = [], o = [];
133
+ for (const a of e.keys()) {
134
+ const s = e[a];
135
+ Se(s) && s[Tt] ? o.push(s) : o.length ? i.push(s) : n.push(s);
136
+ }
137
+ if (o.length) {
138
+ if (o.length > 1) throw new Error("Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.");
139
+ if (t.length < n.length + i.length) return !1;
140
+ const a = t.slice(0, n.length), s = i.length === 0 ? [] : t.slice(-i.length), c = t.slice(n.length, i.length === 0 ? 1 / 0 : -i.length);
141
+ return n.every((u, d) => E(u, a[d], r)) && i.every((u, d) => E(u, s[d], r)) && (o.length === 0 || E(o[0], c, r));
142
+ }
143
+ return e.length === t.length && e.every((a, s) => E(a, t[s], r));
144
+ }
145
+ return Reflect.ownKeys(e).every((n) => {
146
+ const i = e[n];
147
+ return (n in t || Se(o = i) && o[V]().matcherType === "optional") && E(i, t[n], r);
148
+ var o;
149
+ });
150
+ }
151
+ return Object.is(t, e);
152
+ }, z = (e) => {
153
+ var t, r, n;
154
+ return He(e) ? Se(e) ? (t = (r = (n = e[V]()).getSelectionKeys) == null ? void 0 : r.call(n)) != null ? t : [] : Array.isArray(e) ? Ne(e, z) : Ne(Object.values(e), z) : [];
155
+ }, Ne = (e, t) => e.reduce((r, n) => r.concat(t(n)), []);
156
+ function gr(...e) {
157
+ if (e.length === 1) {
158
+ const [t] = e;
159
+ return (r) => E(t, r, () => {
160
+ });
161
+ }
162
+ if (e.length === 2) {
163
+ const [t, r] = e;
164
+ return E(t, r, () => {
165
+ });
166
+ }
167
+ throw new Error(`isMatching wasn't given the right number of arguments: expected 1 or 2, received ${e.length}.`);
168
+ }
169
+ function R(e) {
170
+ return Object.assign(e, { optional: () => qe(e), and: (t) => C(e, t), or: (t) => jt(e, t), select: (t) => t === void 0 ? ke(e) : ke(t, e) });
171
+ }
172
+ function Ge(e) {
173
+ return Object.assign(((t) => Object.assign(t, { [Symbol.iterator]() {
174
+ let r = 0;
175
+ const n = [{ value: Object.assign(t, { [Tt]: !0 }), done: !1 }, { done: !0, value: void 0 }];
176
+ return { next: () => {
177
+ var i;
178
+ return (i = n[r++]) != null ? i : n.at(-1);
179
+ } };
180
+ } }))(e), { optional: () => Ge(qe(e)), select: (t) => Ge(t === void 0 ? ke(e) : ke(t, e)) });
181
+ }
182
+ function qe(e) {
183
+ return R({ [V]: () => ({ match: (t) => {
184
+ let r = {};
185
+ const n = (i, o) => {
186
+ r[i] = o;
187
+ };
188
+ return t === void 0 ? (z(e).forEach((i) => n(i, void 0)), { matched: !0, selections: r }) : { matched: E(e, t, n), selections: r };
189
+ }, getSelectionKeys: () => z(e), matcherType: "optional" }) });
190
+ }
191
+ const vr = (e, t) => {
192
+ for (const r of e) if (!t(r)) return !1;
193
+ return !0;
194
+ }, mr = (e, t) => {
195
+ for (const [r, n] of e.entries()) if (!t(n, r)) return !1;
196
+ return !0;
197
+ }, yr = (e, t) => {
198
+ const r = Reflect.ownKeys(e);
199
+ for (const n of r) if (!t(n, e[n])) return !1;
200
+ return !0;
201
+ };
202
+ function C(...e) {
203
+ return R({ [V]: () => ({ match: (t) => {
204
+ let r = {};
205
+ const n = (i, o) => {
206
+ r[i] = o;
207
+ };
208
+ return { matched: e.every((i) => E(i, t, n)), selections: r };
209
+ }, getSelectionKeys: () => Ne(e, z), matcherType: "and" }) });
210
+ }
211
+ function jt(...e) {
212
+ return R({ [V]: () => ({ match: (t) => {
213
+ let r = {};
214
+ const n = (i, o) => {
215
+ r[i] = o;
216
+ };
217
+ return Ne(e, z).forEach((i) => n(i, void 0)), { matched: e.some((i) => E(i, t, n)), selections: r };
218
+ }, getSelectionKeys: () => Ne(e, z), matcherType: "or" }) });
219
+ }
220
+ function m(e) {
221
+ return { [V]: () => ({ match: (t) => ({ matched: !!e(t) }) }) };
222
+ }
223
+ function ke(...e) {
224
+ const t = typeof e[0] == "string" ? e[0] : void 0, r = e.length === 2 ? e[1] : typeof e[0] == "string" ? void 0 : e[0];
225
+ return R({ [V]: () => ({ match: (n) => {
226
+ let i = { [t ?? Oe]: n };
227
+ return { matched: r === void 0 || E(r, n, (o, a) => {
228
+ i[o] = a;
229
+ }), selections: i };
230
+ }, getSelectionKeys: () => [t ?? Oe].concat(r === void 0 ? [] : z(r)) }) });
231
+ }
232
+ function Dt(e) {
233
+ return !0;
234
+ }
235
+ function Q(e) {
236
+ return typeof e == "number";
237
+ }
238
+ function ie(e) {
239
+ return typeof e == "string";
240
+ }
241
+ function oe(e) {
242
+ return typeof e == "bigint";
243
+ }
244
+ const It = R(m(Dt)), wr = R(m(Dt)), br = It, ae = (e) => Object.assign(R(e), { startsWith: (t) => {
245
+ return ae(C(e, (r = t, m((n) => ie(n) && n.startsWith(r)))));
246
+ var r;
247
+ }, endsWith: (t) => {
248
+ return ae(C(e, (r = t, m((n) => ie(n) && n.endsWith(r)))));
249
+ var r;
250
+ }, minLength: (t) => ae(C(e, ((r) => m((n) => ie(n) && n.length >= r))(t))), length: (t) => ae(C(e, ((r) => m((n) => ie(n) && n.length === r))(t))), maxLength: (t) => ae(C(e, ((r) => m((n) => ie(n) && n.length <= r))(t))), includes: (t) => {
251
+ return ae(C(e, (r = t, m((n) => ie(n) && n.includes(r)))));
252
+ var r;
253
+ }, regex: (t) => {
254
+ return ae(C(e, (r = t, m((n) => ie(n) && !!n.match(r)))));
255
+ var r;
256
+ } }), lt = ae(m(ie)), Z = (e) => Object.assign(R(e), { between: (t, r) => Z(C(e, ((n, i) => m((o) => Q(o) && n <= o && i >= o))(t, r))), lt: (t) => Z(C(e, ((r) => m((n) => Q(n) && n < r))(t))), gt: (t) => Z(C(e, ((r) => m((n) => Q(n) && n > r))(t))), lte: (t) => Z(C(e, ((r) => m((n) => Q(n) && n <= r))(t))), gte: (t) => Z(C(e, ((r) => m((n) => Q(n) && n >= r))(t))), int: () => Z(C(e, m((t) => Q(t) && Number.isInteger(t)))), finite: () => Z(C(e, m((t) => Q(t) && Number.isFinite(t)))), positive: () => Z(C(e, m((t) => Q(t) && t > 0))), negative: () => Z(C(e, m((t) => Q(t) && t < 0))) }), xr = Z(m(Q)), se = (e) => Object.assign(R(e), { between: (t, r) => se(C(e, ((n, i) => m((o) => oe(o) && n <= o && i >= o))(t, r))), lt: (t) => se(C(e, ((r) => m((n) => oe(n) && n < r))(t))), gt: (t) => se(C(e, ((r) => m((n) => oe(n) && n > r))(t))), lte: (t) => se(C(e, ((r) => m((n) => oe(n) && n <= r))(t))), gte: (t) => se(C(e, ((r) => m((n) => oe(n) && n >= r))(t))), positive: () => se(C(e, m((t) => oe(t) && t > 0))), negative: () => se(C(e, m((t) => oe(t) && t < 0))) }), _r = se(m(oe)), Nr = R(m(function(e) {
257
+ return typeof e == "boolean";
258
+ })), kr = R(m(function(e) {
259
+ return typeof e == "symbol";
260
+ })), Cr = R(m(function(e) {
261
+ return e == null;
262
+ })), Ar = R(m(function(e) {
263
+ return e != null;
264
+ }));
265
+ var Pt = { __proto__: null, matcher: V, optional: qe, array: function(...e) {
266
+ return Ge({ [V]: () => ({ match: (t) => {
267
+ if (!Array.isArray(t)) return { matched: !1 };
268
+ if (e.length === 0) return { matched: !0 };
269
+ const r = e[0];
270
+ let n = {};
271
+ if (t.length === 0) return z(r).forEach((o) => {
272
+ n[o] = [];
273
+ }), { matched: !0, selections: n };
274
+ const i = (o, a) => {
275
+ n[o] = (n[o] || []).concat([a]);
276
+ };
277
+ return { matched: t.every((o) => E(r, o, i)), selections: n };
278
+ }, getSelectionKeys: () => e.length === 0 ? [] : z(e[0]) }) });
279
+ }, set: function(...e) {
280
+ return R({ [V]: () => ({ match: (t) => {
281
+ if (!(t instanceof Set)) return { matched: !1 };
282
+ let r = {};
283
+ if (t.size === 0) return { matched: !0, selections: r };
284
+ if (e.length === 0) return { matched: !0 };
285
+ const n = (o, a) => {
286
+ r[o] = (r[o] || []).concat([a]);
287
+ }, i = e[0];
288
+ return { matched: vr(t, (o) => E(i, o, n)), selections: r };
289
+ }, getSelectionKeys: () => e.length === 0 ? [] : z(e[0]) }) });
290
+ }, map: function(...e) {
291
+ return R({ [V]: () => ({ match: (t) => {
292
+ if (!(t instanceof Map)) return { matched: !1 };
293
+ let r = {};
294
+ if (t.size === 0) return { matched: !0, selections: r };
295
+ const n = (s, c) => {
296
+ r[s] = (r[s] || []).concat([c]);
297
+ };
298
+ if (e.length === 0) return { matched: !0 };
299
+ var i;
300
+ if (e.length === 1) throw new Error(`\`P.map\` wasn't given enough arguments. Expected (key, value), received ${(i = e[0]) == null ? void 0 : i.toString()}`);
301
+ const [o, a] = e;
302
+ return { matched: mr(t, (s, c) => {
303
+ const u = E(o, c, n), d = E(a, s, n);
304
+ return u && d;
305
+ }), selections: r };
306
+ }, getSelectionKeys: () => e.length === 0 ? [] : [...z(e[0]), ...z(e[1])] }) });
307
+ }, record: function(...e) {
308
+ return R({ [V]: () => ({ match: (t) => {
309
+ if (t === null || typeof t != "object" || Array.isArray(t)) return { matched: !1 };
310
+ var r;
311
+ if (e.length === 0) throw new Error(`\`P.record\` wasn't given enough arguments. Expected (value) or (key, value), received ${(r = e[0]) == null ? void 0 : r.toString()}`);
312
+ let n = {};
313
+ const i = (s, c) => {
314
+ n[s] = (n[s] || []).concat([c]);
315
+ }, [o, a] = e.length === 1 ? [lt, e[0]] : e;
316
+ return { matched: yr(t, (s, c) => {
317
+ const u = typeof s != "string" || Number.isNaN(Number(s)) ? null : Number(s), d = u !== null && E(o, u, i), p = E(o, s, i), w = E(a, c, i);
318
+ return (p || d) && w;
319
+ }), selections: n };
320
+ }, getSelectionKeys: () => e.length === 0 ? [] : [...z(e[0]), ...z(e[1])] }) });
321
+ }, intersection: C, union: jt, not: function(e) {
322
+ return R({ [V]: () => ({ match: (t) => ({ matched: !E(e, t, () => {
323
+ }) }), getSelectionKeys: () => [], matcherType: "not" }) });
324
+ }, when: m, select: ke, any: It, unknown: wr, _: br, string: lt, number: xr, bigint: _r, boolean: Nr, symbol: kr, nullish: Cr, nonNullable: Ar, instanceOf: function(e) {
325
+ return R(m(/* @__PURE__ */ (function(t) {
326
+ return (r) => r instanceof t;
327
+ })(e)));
328
+ }, shape: function(e) {
329
+ return R(m(gr(e)));
330
+ } };
331
+ let Sr = class extends Error {
332
+ constructor(t) {
333
+ let r;
334
+ try {
335
+ r = JSON.stringify(t);
336
+ } catch {
337
+ r = t;
338
+ }
339
+ super(`Pattern matching error: no pattern matches value ${r}`), this.input = void 0, this.input = t;
340
+ }
341
+ };
342
+ const We = { matched: !1, value: void 0 };
343
+ function X(e) {
344
+ return new Er(e, We);
345
+ }
346
+ let Er = class Ue {
347
+ constructor(t, r) {
348
+ this.input = void 0, this.state = void 0, this.input = t, this.state = r;
349
+ }
350
+ with(...t) {
351
+ if (this.state.matched) return this;
352
+ const r = t[t.length - 1], n = [t[0]];
353
+ let i;
354
+ t.length === 3 && typeof t[1] == "function" ? i = t[1] : t.length > 2 && n.push(...t.slice(1, t.length - 1));
355
+ let o = !1, a = {};
356
+ const s = (u, d) => {
357
+ o = !0, a[u] = d;
358
+ }, c = !n.some((u) => E(u, this.input, s)) || i && !i(this.input) ? We : { matched: !0, value: r(o ? Oe in a ? a[Oe] : a : this.input, this.input) };
359
+ return new Ue(this.input, c);
360
+ }
361
+ when(t, r) {
362
+ if (this.state.matched) return this;
363
+ const n = !!t(this.input);
364
+ return new Ue(this.input, n ? { matched: !0, value: r(this.input, this.input) } : We);
365
+ }
366
+ otherwise(t) {
367
+ return this.state.matched ? this.state.value : t(this.input);
368
+ }
369
+ exhaustive(t = Or) {
370
+ return this.state.matched ? this.state.value : t(this.input);
371
+ }
372
+ run() {
373
+ return this.exhaustive();
374
+ }
375
+ returnType() {
376
+ return this;
377
+ }
378
+ narrow() {
379
+ return this;
380
+ }
381
+ };
382
+ function Or(e) {
383
+ throw new Sr(e);
384
+ }
385
+ const U = {
386
+ STANDBY: "standby",
387
+ CONNECTING: "connecting",
388
+ READY: "ready",
389
+ HANDSHAKE: "handshake",
390
+ HANDSHAKE_PARTIAL: "handshake-partial",
391
+ ENCRYPTED: "encrypted",
392
+ ERROR: "error"
393
+ }, le = {
394
+ CREATED: "created",
395
+ SIGNALING: "signaling",
396
+ READY: "ready",
397
+ CONNECTED: "connected",
398
+ DISCONNECTED: "disconnected"
399
+ }, K = {
400
+ STANDBY: "standby",
401
+ CREATING: "creating",
402
+ CONNECTING: "connecting",
403
+ CONNECTED: "connected",
404
+ ERROR: "error"
405
+ };
406
+ var Ve = { exports: {} };
407
+ /*!
408
+ Copyright (c) 2018 Jed Watson.
409
+ Licensed under the MIT License (MIT), see
410
+ http://jedwatson.github.io/classnames
411
+ */
412
+ var ct;
413
+ function Rr() {
414
+ return ct || (ct = 1, (function(e) {
415
+ (function() {
416
+ var t = {}.hasOwnProperty;
417
+ function r() {
418
+ for (var o = "", a = 0; a < arguments.length; a++) {
419
+ var s = arguments[a];
420
+ s && (o = i(o, n(s)));
421
+ }
422
+ return o;
423
+ }
424
+ function n(o) {
425
+ if (typeof o == "string" || typeof o == "number")
426
+ return o;
427
+ if (typeof o != "object")
428
+ return "";
429
+ if (Array.isArray(o))
430
+ return r.apply(null, o);
431
+ if (o.toString !== Object.prototype.toString && !o.toString.toString().includes("[native code]"))
432
+ return o.toString();
433
+ var a = "";
434
+ for (var s in o)
435
+ t.call(o, s) && o[s] && (a = i(a, s));
436
+ return a;
437
+ }
438
+ function i(o, a) {
439
+ return a ? o ? o + " " + a : o + a : o;
440
+ }
441
+ e.exports ? (r.default = r, e.exports = r) : window.classNames = r;
442
+ })();
443
+ })(Ve)), Ve.exports;
444
+ }
445
+ var Tr = Rr();
446
+ const pe = /* @__PURE__ */ pr(Tr);
447
+ function Lt(e, t) {
448
+ for (var r in t) e[r] = t[r];
449
+ return e;
450
+ }
451
+ function Ke(e, t) {
452
+ for (var r in e) if (r !== "__source" && !(r in t)) return !0;
453
+ for (var n in t) if (n !== "__source" && e[n] !== t[n]) return !0;
454
+ return !1;
455
+ }
456
+ function Mt(e, t) {
457
+ var r = t(), n = M({ t: { __: r, u: t } }), i = n[0].t, o = n[1];
458
+ return ve(function() {
459
+ i.__ = r, i.u = t, Be(i) && o({ t: i });
460
+ }, [e, r, t]), B(function() {
461
+ return Be(i) && o({ t: i }), e(function() {
462
+ Be(i) && o({ t: i });
463
+ });
464
+ }, [e]), r;
465
+ }
466
+ function Be(e) {
467
+ var t, r, n = e.u, i = e.__;
468
+ try {
469
+ var o = n();
470
+ return !((t = i) === (r = o) && (t !== 0 || 1 / t == 1 / r) || t != t && r != r);
471
+ } catch {
472
+ return !0;
473
+ }
474
+ }
475
+ function zt(e) {
476
+ e();
477
+ }
478
+ function Vt(e) {
479
+ return e;
480
+ }
481
+ function Bt() {
482
+ return [!1, zt];
483
+ }
484
+ var Ft = ve;
485
+ function Je(e, t) {
486
+ this.props = e, this.context = t;
487
+ }
488
+ function jr(e, t) {
489
+ function r(i) {
490
+ var o = this.props.ref, a = o == i.ref;
491
+ return !a && o && (o.call ? o(null) : o.current = null), t ? !t(this.props, i) || !a : Ke(this.props, i);
492
+ }
493
+ function n(i) {
494
+ return this.shouldComponentUpdate = r, ee(e, i);
495
+ }
496
+ return n.displayName = "Memo(" + (e.displayName || e.name) + ")", n.prototype.isReactComponent = !0, n.__f = !0, n.type = e, n;
497
+ }
498
+ (Je.prototype = new he()).isPureReactComponent = !0, Je.prototype.shouldComponentUpdate = function(e, t) {
499
+ return Ke(this.props, e) || Ke(this.state, t);
500
+ };
501
+ var ut = F.__b;
502
+ F.__b = function(e) {
503
+ e.type && e.type.__f && e.ref && (e.props.ref = e.ref, e.ref = null), ut && ut(e);
504
+ };
505
+ var Dr = typeof Symbol < "u" && Symbol.for && Symbol.for("react.forward_ref") || 3911;
506
+ function Ir(e) {
507
+ function t(r) {
508
+ var n = Lt({}, r);
509
+ return delete n.ref, e(n, r.ref || null);
510
+ }
511
+ return t.$$typeof = Dr, t.render = e, t.prototype.isReactComponent = t.__f = !0, t.displayName = "ForwardRef(" + (e.displayName || e.name) + ")", t;
512
+ }
513
+ var dt = function(e, t) {
514
+ return e == null ? null : ce(ce(e).map(t));
515
+ }, Pr = { map: dt, forEach: dt, count: function(e) {
516
+ return e ? ce(e).length : 0;
517
+ }, only: function(e) {
518
+ var t = ce(e);
519
+ if (t.length !== 1) throw "Children.only";
520
+ return t[0];
521
+ }, toArray: ce }, Lr = F.__e;
522
+ F.__e = function(e, t, r, n) {
523
+ if (e.then) {
524
+ for (var i, o = t; o = o.__; ) if ((i = o.__c) && i.__c) return t.__e == null && (t.__e = r.__e, t.__k = r.__k), i.__c(e, t);
525
+ }
526
+ Lr(e, t, r, n);
527
+ };
528
+ var ft = F.unmount;
529
+ function Ht(e, t, r) {
530
+ return e && (e.__c && e.__c.__H && (e.__c.__H.__.forEach(function(n) {
531
+ typeof n.__c == "function" && n.__c();
532
+ }), e.__c.__H = null), (e = Lt({}, e)).__c != null && (e.__c.__P === r && (e.__c.__P = t), e.__c.__e = !0, e.__c = null), e.__k = e.__k && e.__k.map(function(n) {
533
+ return Ht(n, t, r);
534
+ })), e;
535
+ }
536
+ function Gt(e, t, r) {
537
+ return e && r && (e.__v = null, e.__k = e.__k && e.__k.map(function(n) {
538
+ return Gt(n, t, r);
539
+ }), e.__c && e.__c.__P === t && (e.__e && r.appendChild(e.__e), e.__c.__e = !0, e.__c.__P = r)), e;
540
+ }
541
+ function Ee() {
542
+ this.__u = 0, this.o = null, this.__b = null;
543
+ }
544
+ function Wt(e) {
545
+ var t = e.__.__c;
546
+ return t && t.__a && t.__a(e);
547
+ }
548
+ function Mr(e) {
549
+ var t, r, n;
550
+ function i(o) {
551
+ if (t || (t = e()).then(function(a) {
552
+ r = a.default || a;
553
+ }, function(a) {
554
+ n = a;
555
+ }), n) throw n;
556
+ if (!r) throw t;
557
+ return ee(r, o);
558
+ }
559
+ return i.displayName = "Lazy", i.__f = !0, i;
560
+ }
561
+ function be() {
562
+ this.i = null, this.l = null;
563
+ }
564
+ F.unmount = function(e) {
565
+ var t = e.__c;
566
+ t && t.__R && t.__R(), t && 32 & e.__u && (e.type = null), ft && ft(e);
567
+ }, (Ee.prototype = new he()).__c = function(e, t) {
568
+ var r = t.__c, n = this;
569
+ n.o == null && (n.o = []), n.o.push(r);
570
+ var i = Wt(n.__v), o = !1, a = function() {
571
+ o || (o = !0, r.__R = null, i ? i(s) : s());
572
+ };
573
+ r.__R = a;
574
+ var s = function() {
575
+ if (!--n.__u) {
576
+ if (n.state.__a) {
577
+ var c = n.state.__a;
578
+ n.__v.__k[0] = Gt(c, c.__c.__P, c.__c.__O);
579
+ }
580
+ var u;
581
+ for (n.setState({ __a: n.__b = null }); u = n.o.pop(); ) u.forceUpdate();
582
+ }
583
+ };
584
+ n.__u++ || 32 & t.__u || n.setState({ __a: n.__b = n.__v.__k[0] }), e.then(a, a);
585
+ }, Ee.prototype.componentWillUnmount = function() {
586
+ this.o = [];
587
+ }, Ee.prototype.render = function(e, t) {
588
+ if (this.__b) {
589
+ if (this.__v.__k) {
590
+ var r = document.createElement("div"), n = this.__v.__k[0].__c;
591
+ this.__v.__k[0] = Ht(this.__b, r, n.__O = n.__P);
592
+ }
593
+ this.__b = null;
594
+ }
595
+ var i = t.__a && ee(_e, null, e.fallback);
596
+ return i && (i.__u &= -33), [ee(_e, null, t.__a ? null : e.children), i];
597
+ };
598
+ var pt = function(e, t, r) {
599
+ if (++r[1] === r[0] && e.l.delete(t), e.props.revealOrder && (e.props.revealOrder[0] !== "t" || !e.l.size)) for (r = e.i; r; ) {
600
+ for (; r.length > 3; ) r.pop()();
601
+ if (r[1] < r[0]) break;
602
+ e.i = r = r[2];
603
+ }
604
+ };
605
+ function zr(e) {
606
+ return this.getChildContext = function() {
607
+ return e.context;
608
+ }, e.children;
609
+ }
610
+ function Vr(e) {
611
+ var t = this, r = e.h;
612
+ if (t.componentWillUnmount = function() {
613
+ ge(null, t.v), t.v = null, t.h = null;
614
+ }, t.h && t.h !== r && t.componentWillUnmount(), !t.v) {
615
+ for (var n = t.__v; n !== null && !n.__m && n.__ !== null; ) n = n.__;
616
+ t.h = r, t.v = { nodeType: 1, parentNode: r, childNodes: [], __k: { __m: n.__m }, contains: function() {
617
+ return !0;
618
+ }, insertBefore: function(i, o) {
619
+ this.childNodes.push(i), t.h.insertBefore(i, o);
620
+ }, removeChild: function(i) {
621
+ this.childNodes.splice(this.childNodes.indexOf(i) >>> 1, 1), t.h.removeChild(i);
622
+ } };
623
+ }
624
+ ge(ee(zr, { context: t.context }, e.__v), t.v);
625
+ }
626
+ function Br(e, t) {
627
+ var r = ee(Vr, { __v: e, h: t });
628
+ return r.containerInfo = t, r;
629
+ }
630
+ (be.prototype = new he()).__a = function(e) {
631
+ var t = this, r = Wt(t.__v), n = t.l.get(e);
632
+ return n[0]++, function(i) {
633
+ var o = function() {
634
+ t.props.revealOrder ? (n.push(i), pt(t, e, n)) : i();
635
+ };
636
+ r ? r(o) : o();
637
+ };
638
+ }, be.prototype.render = function(e) {
639
+ this.i = null, this.l = /* @__PURE__ */ new Map();
640
+ var t = ce(e.children);
641
+ e.revealOrder && e.revealOrder[0] === "b" && t.reverse();
642
+ for (var r = t.length; r--; ) this.l.set(t[r], this.i = [1, 0, this.i]);
643
+ return e.children;
644
+ }, be.prototype.componentDidUpdate = be.prototype.componentDidMount = function() {
645
+ var e = this;
646
+ this.l.forEach(function(t, r) {
647
+ pt(e, r, t);
648
+ });
649
+ };
650
+ var Ut = typeof Symbol < "u" && Symbol.for && Symbol.for("react.element") || 60103, Fr = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/, Hr = /^on(Ani|Tra|Tou|BeforeInp|Compo)/, Gr = /[A-Z0-9]/g, Wr = typeof document < "u", Ur = function(e) {
651
+ return (typeof Symbol < "u" && typeof Symbol() == "symbol" ? /fil|che|rad/ : /fil|che|ra/).test(e);
652
+ };
653
+ function Kr(e, t, r) {
654
+ return t.__k == null && (t.textContent = ""), ge(e, t), typeof r == "function" && r(), e ? e.__c : null;
655
+ }
656
+ function Jr(e, t, r) {
657
+ return lr(e, t), typeof r == "function" && r(), e ? e.__c : null;
658
+ }
659
+ he.prototype.isReactComponent = {}, ["componentWillMount", "componentWillReceiveProps", "componentWillUpdate"].forEach(function(e) {
660
+ Object.defineProperty(he.prototype, e, { configurable: !0, get: function() {
661
+ return this["UNSAFE_" + e];
662
+ }, set: function(t) {
663
+ Object.defineProperty(this, e, { configurable: !0, writable: !0, value: t });
664
+ } });
665
+ });
666
+ var ht = F.event;
667
+ function Xr() {
668
+ }
669
+ function Yr() {
670
+ return this.cancelBubble;
671
+ }
672
+ function Qr() {
673
+ return this.defaultPrevented;
674
+ }
675
+ F.event = function(e) {
676
+ return ht && (e = ht(e)), e.persist = Xr, e.isPropagationStopped = Yr, e.isDefaultPrevented = Qr, e.nativeEvent = e;
677
+ };
678
+ var $e, Zr = { enumerable: !1, configurable: !0, get: function() {
679
+ return this.class;
680
+ } }, gt = F.vnode;
681
+ F.vnode = function(e) {
682
+ typeof e.type == "string" && (function(t) {
683
+ var r = t.props, n = t.type, i = {}, o = n.indexOf("-") === -1;
684
+ for (var a in r) {
685
+ var s = r[a];
686
+ if (!(a === "value" && "defaultValue" in r && s == null || Wr && a === "children" && n === "noscript" || a === "class" || a === "className")) {
687
+ var c = a.toLowerCase();
688
+ a === "defaultValue" && "value" in r && r.value == null ? a = "value" : a === "download" && s === !0 ? s = "" : c === "translate" && s === "no" ? s = !1 : c[0] === "o" && c[1] === "n" ? c === "ondoubleclick" ? a = "ondblclick" : c !== "onchange" || n !== "input" && n !== "textarea" || Ur(r.type) ? c === "onfocus" ? a = "onfocusin" : c === "onblur" ? a = "onfocusout" : Hr.test(a) && (a = c) : c = a = "oninput" : o && Fr.test(a) ? a = a.replace(Gr, "-$&").toLowerCase() : s === null && (s = void 0), c === "oninput" && i[a = c] && (a = "oninputCapture"), i[a] = s;
689
+ }
690
+ }
691
+ n == "select" && i.multiple && Array.isArray(i.value) && (i.value = ce(r.children).forEach(function(u) {
692
+ u.props.selected = i.value.indexOf(u.props.value) != -1;
693
+ })), n == "select" && i.defaultValue != null && (i.value = ce(r.children).forEach(function(u) {
694
+ u.props.selected = i.multiple ? i.defaultValue.indexOf(u.props.value) != -1 : i.defaultValue == u.props.value;
695
+ })), r.class && !r.className ? (i.class = r.class, Object.defineProperty(i, "className", Zr)) : (r.className && !r.class || r.class && r.className) && (i.class = i.className = r.className), t.props = i;
696
+ })(e), e.$$typeof = Ut, gt && gt(e);
697
+ };
698
+ var vt = F.__r;
699
+ F.__r = function(e) {
700
+ vt && vt(e), $e = e.__c;
701
+ };
702
+ var mt = F.diffed;
703
+ F.diffed = function(e) {
704
+ mt && mt(e);
705
+ var t = e.props, r = e.__e;
706
+ r != null && e.type === "textarea" && "value" in t && t.value !== r.value && (r.value = t.value == null ? "" : t.value), $e = null;
707
+ };
708
+ var qr = { ReactCurrentDispatcher: { current: { readContext: function(e) {
709
+ return $e.__n[e.__c].props.value;
710
+ }, useCallback: q, useContext: Ze, useDebugValue: Ot, useDeferredValue: Vt, useEffect: B, useId: Et, useImperativeHandle: St, useInsertionEffect: Ft, useLayoutEffect: ve, useMemo: At, useReducer: Ct, useRef: J, useState: M, useSyncExternalStore: Mt, useTransition: Bt } } };
711
+ function $r(e) {
712
+ return ee.bind(null, e);
713
+ }
714
+ function Ie(e) {
715
+ return !!e && e.$$typeof === Ut;
716
+ }
717
+ function en(e) {
718
+ return Ie(e) && e.type === _e;
719
+ }
720
+ function tn(e) {
721
+ return !!e && !!e.displayName && (typeof e.displayName == "string" || e.displayName instanceof String) && e.displayName.startsWith("Memo(");
722
+ }
723
+ function rn(e) {
724
+ return Ie(e) ? sr.apply(null, arguments) : e;
725
+ }
726
+ function nn(e) {
727
+ return !!e.__k && (ge(null, e), !0);
728
+ }
729
+ function on(e) {
730
+ return e && (e.base || e.nodeType === 1 && e) || null;
731
+ }
732
+ var an = function(e, t) {
733
+ return e(t);
734
+ }, sn = function(e, t) {
735
+ return e(t);
736
+ }, ln = _e, cn = Ie, de = { useState: M, useId: Et, useReducer: Ct, useEffect: B, useLayoutEffect: ve, useInsertionEffect: Ft, useTransition: Bt, useDeferredValue: Vt, useSyncExternalStore: Mt, startTransition: zt, useRef: J, useImperativeHandle: St, useMemo: At, useCallback: q, useContext: Ze, useDebugValue: Ot, version: "18.3.1", Children: Pr, render: Kr, hydrate: Jr, unmountComponentAtNode: nn, createPortal: Br, createElement: ee, createContext: Rt, createFactory: $r, cloneElement: rn, createRef: ar, Fragment: _e, isValidElement: Ie, isElement: cn, isFragment: en, isMemo: tn, findDOMNode: on, Component: he, PureComponent: Je, memo: jr, forwardRef: Ir, flushSync: sn, unstable_batchedUpdates: an, StrictMode: ln, Suspense: Ee, SuspenseList: be, lazy: Mr, __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: qr };
737
+ const et = {
738
+ font: {
739
+ family: "Inter, sans-serif"
740
+ },
741
+ body: {
742
+ color: "#373737",
743
+ background: "#ffffff"
744
+ },
745
+ border: {
746
+ radius: "16px"
747
+ },
748
+ overlay: {
749
+ background: "#00000008",
750
+ backdrop: {
751
+ filter: "blur(2px)"
752
+ }
753
+ },
754
+ modal: {
755
+ shadow: "0px 2px 4px 0px #00000005"
756
+ }
757
+ }, Kt = (e, t, r) => {
758
+ for (const [n, i] of Object.entries(r))
759
+ typeof i == "object" && i !== null ? Kt(e, `${t}-${n}`, i) : typeof i == "string" && e.set(`--lv${t}-${n}`, i);
760
+ }, Jt = (e, t = !0) => {
761
+ const r = /* @__PURE__ */ new Map();
762
+ return Kt(r, "", e), Object.fromEntries(r.entries());
763
+ }, un = ({
764
+ theme: e = et,
765
+ children: t
766
+ }) => /* @__PURE__ */ l("div", { style: Jt(e), id: "root", children: t }), Xt = Rt({
767
+ provider: void 0
768
+ }), dn = ({
769
+ provider: e,
770
+ onClose: t
771
+ }) => /* @__PURE__ */ l(Xt.Provider, { value: { provider: e }, children: /* @__PURE__ */ l(un, { theme: et, children: /* @__PURE__ */ l(ai, { onClose: t }) }) }), fn = () => {
772
+ const e = Ze(Xt);
773
+ if (!e.provider) throw new Error("Provider not found");
774
+ return e;
775
+ }, me = () => {
776
+ const { provider: e } = fn(), [t, r] = M(
777
+ e?.getState().status || K.ERROR
778
+ );
779
+ if (B(() => {
780
+ const n = (i) => {
781
+ r(i);
782
+ };
783
+ return e?.on("status_change", n), () => {
784
+ e?.off("status_change", n);
785
+ };
786
+ }, [e]), !e) throw new Error("Provider not found");
787
+ return { provider: e, status: t };
788
+ }, tt = (...e) => console.log(
789
+ "%c[modal]%c",
790
+ "color: yellow; font-weight: bold",
791
+ "color: inherit; font-weight: normal",
792
+ ...e
793
+ ), Yt = (e, t, r) => {
794
+ B(() => (e?.on(t, r), () => {
795
+ e?.off(t, r);
796
+ }), [e, t]);
797
+ }, rt = () => {
798
+ const { provider: e } = me(), [t, r] = M(
799
+ e?.storage.getSettings()
800
+ );
801
+ Yt(
802
+ e?.storage.emitter,
803
+ "settings_change",
804
+ (s) => {
805
+ r(s);
806
+ }
807
+ );
808
+ const n = (s) => {
809
+ if (!t || t.signaling?.p === s) return;
810
+ const c = {
811
+ ...t,
812
+ signaling: {
813
+ ...t.signaling,
814
+ p: s
815
+ }
816
+ };
817
+ r(c), e?.storage.setSettings(c);
818
+ }, i = (s) => {
819
+ if (!t || t.signaling?.s[t.signaling?.p] === s) return;
820
+ const c = {
821
+ ...t,
822
+ signaling: {
823
+ ...t.signaling,
824
+ s: {
825
+ ...t.signaling.s,
826
+ [t.signaling.p]: s
827
+ }
828
+ }
829
+ };
830
+ r(c), e?.storage.setSettings(c);
831
+ }, o = (s) => {
832
+ t && (r({ ...t, retainHistory: s }), e?.storage.setSettings({ ...t, retainHistory: s }));
833
+ }, a = (s) => {
834
+ t && (r({ ...t, autoReconnect: s }), e?.storage.setSettings({ ...t, autoReconnect: s }));
835
+ };
836
+ if (!t) throw new Error("Settings not found");
837
+ return {
838
+ settings: t,
839
+ updateSignalingProtocol: n,
840
+ updateSignalingServer: i,
841
+ updateRetainHistory: o,
842
+ updateAutoReconnect: a
843
+ };
844
+ }, Ce = () => {
845
+ const { provider: e } = me(), [t, r] = M(
846
+ e?.getSession()
847
+ ), n = t?.getHandshakeParameters(), i = n ? fr(n) : void 0, [o, a] = M(
848
+ t?.getState()
849
+ );
850
+ return Yt(t?.emitter, "state_change", (s) => {
851
+ tt("session state change: ", s), a(s);
852
+ }), B(() => {
853
+ const s = () => {
854
+ const c = e?.getSession();
855
+ c && r(c);
856
+ };
857
+ return e?.on("status_change", s), () => {
858
+ e?.off("status_change", s);
859
+ };
860
+ }, [e]), B(() => {
861
+ const s = (c) => {
862
+ r(c), a(c.getState());
863
+ };
864
+ return e?.on("session_started", s), () => {
865
+ e?.off("session_started", s);
866
+ };
867
+ }, [e]), B(() => {
868
+ t && a(t.getState());
869
+ }, [t]), {
870
+ uri: i,
871
+ status: o
872
+ };
873
+ }, pn = () => {
874
+ const { provider: e } = me(), { settings: t } = rt();
875
+ return {
876
+ start: () => {
877
+ const r = t?.signaling?.p, n = t?.signaling?.s[r];
878
+ if (!r || !n)
879
+ throw new Error("Invalid protocol or server");
880
+ return e?.createSession({
881
+ p: r,
882
+ s: n
883
+ });
884
+ }
885
+ };
886
+ }, Xe = ({ state: e }) => {
887
+ const { status: t, uri: r } = Ce(), { status: n } = me();
888
+ return console.error("Unknown state: ", { state: e, sessionStatus: t, providerStatus: n }), /* @__PURE__ */ b("div", { className: "rounded-md bg-gray-100 p-2 text-gray-500", children: [
889
+ /* @__PURE__ */ b("div", { children: [
890
+ "Unknown state: ",
891
+ JSON.stringify(e)
892
+ ] }),
893
+ /* @__PURE__ */ b("div", { children: [
894
+ "URI: ",
895
+ r
896
+ ] }),
897
+ /* @__PURE__ */ b("div", { children: [
898
+ "Session Status: ",
899
+ JSON.stringify(t)
900
+ ] }),
901
+ /* @__PURE__ */ b("div", { children: [
902
+ "Provider Status: ",
903
+ JSON.stringify(n)
904
+ ] })
905
+ ] });
906
+ }, hn = ({
907
+ onCopy: e
908
+ }) => {
909
+ const { uri: t } = Ce(), r = q(() => {
910
+ t && e(t);
911
+ }, [t, e]), n = q((i) => {
912
+ const o = ur(0, "M");
913
+ return o.addData(i), o.make(), o.createSvgTag({ cellSize: 5, margin: 0, scalable: !0 });
914
+ }, []);
915
+ return /* @__PURE__ */ b("div", { className: "flex flex-col items-center gap-4 px-2", children: [
916
+ /* @__PURE__ */ b("div", { className: "w-full space-y-4 rounded-md border border-neutral-200 bg-neutral-100 p-4", children: [
917
+ t && /* @__PURE__ */ l("div", { className: "relative mx-auto flex w-fit items-center justify-center rounded-lg border-2 border-gray-200 bg-gray-50 p-4", children: /* @__PURE__ */ l(
918
+ "button",
919
+ {
920
+ className: "flex h-[200px] w-[200px] cursor-pointer items-center justify-center",
921
+ onClick: r,
922
+ title: "Click to copy connection URL",
923
+ dangerouslySetInnerHTML: { __html: n(t) }
924
+ }
925
+ ) }),
926
+ /* @__PURE__ */ l("div", { className: "w-full", children: /* @__PURE__ */ l(
927
+ "button",
928
+ {
929
+ type: "button",
930
+ onClick: r,
931
+ className: "w-full cursor-pointer rounded-lg border border-gray-300 bg-gray-200 px-4 py-2 text-gray-700 text-sm transition hover:bg-gray-300",
932
+ children: "Copy Connection URL"
933
+ }
934
+ ) })
935
+ ] }),
936
+ /* @__PURE__ */ b("div", { className: "w-full", children: [
937
+ /* @__PURE__ */ l("span", { children: "Scan the link above using your mobile wallet." }),
938
+ /* @__PURE__ */ l("br", {}),
939
+ /* @__PURE__ */ l("span", { children: "Or copy the link and paste it into your wallet." })
940
+ ] })
941
+ ] });
942
+ }, gn = () => typeof document < "u" && "startViewTransition" in document, vn = (e) => {
943
+ gn() ? document.startViewTransition(e) : e();
944
+ }, mn = () => /* @__PURE__ */ l("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ l("div", { className: "h-8 w-8 animate-spin rounded-full border-4 border-blue-500 border-t-transparent" }) }), I = {
945
+ CONNECTING: "connecting",
946
+ READY: "ready",
947
+ CONFIRMING: "confirming",
948
+ CONNECTED: "connected",
949
+ DISCONNECTED: "disconnected",
950
+ ERROR: "error"
951
+ }, yn = (e) => {
952
+ const [t, r] = M(e), n = J(e);
953
+ return B(() => {
954
+ e !== n.current && vn(() => {
955
+ r(e), n.current = e;
956
+ });
957
+ }, [e]), {
958
+ displayState: t
959
+ };
960
+ }, wn = (e) => X(e).with({ status: le.CREATED }, () => I.CONNECTING).with(
961
+ { status: le.SIGNALING },
962
+ () => X(e?.signaling).with({ state: U.STANDBY }, () => I.CONNECTING).with({ state: U.CONNECTING }, () => I.CONNECTING).with({ state: U.READY }, () => I.READY).with({ state: U.HANDSHAKE }, () => I.CONFIRMING).with({ state: U.HANDSHAKE_PARTIAL }, () => I.CONFIRMING).with({ state: U.ENCRYPTED }, () => I.CONNECTED).otherwise(() => I.CONNECTING)
963
+ ).with({ status: le.READY }, () => I.READY).with({ status: le.CONNECTED }, () => I.CONNECTED).with({ status: le.DISCONNECTED }, () => I.DISCONNECTED).otherwise(() => I.ERROR), bn = ({ onClose: e, onCopy: t }) => {
964
+ const { status: r } = Ce(), { displayState: n } = yn(wn(r));
965
+ return /* @__PURE__ */ l("div", { style: { viewTransitionName: "connection-flow" }, className: "w-full", children: X(n).with(I.CONNECTING, () => /* @__PURE__ */ b("div", { className: "flex flex-col items-center gap-4 p-6", children: [
966
+ /* @__PURE__ */ l(mn, {}),
967
+ /* @__PURE__ */ b("div", { className: "text-center", children: [
968
+ /* @__PURE__ */ l("h3", { className: "mb-2 font-semibold text-gray-900 text-lg", children: "Connecting" }),
969
+ /* @__PURE__ */ l("p", { className: "text-gray-500 text-sm", children: "Waiting for wallet to connect..." })
970
+ ] })
971
+ ] })).with(I.READY, () => /* @__PURE__ */ l(hn, { onCopy: t })).with(I.CONFIRMING, () => /* @__PURE__ */ l("div", { className: "flex flex-col items-center gap-4 p-6", children: /* @__PURE__ */ l("div", { className: "text-center", children: /* @__PURE__ */ l("h3", { className: "mb-2 font-semibold text-gray-900 text-lg", children: "Establishing e2e encryption..." }) }) })).with(I.CONNECTED, () => /* @__PURE__ */ l("div", { className: "flex flex-col items-center gap-4 p-6", children: /* @__PURE__ */ b("div", { className: "text-center", children: [
972
+ /* @__PURE__ */ l("div", { className: "mb-4 text-4xl", children: "✅" }),
973
+ /* @__PURE__ */ l("h3", { className: "mb-2 font-semibold text-gray-900 text-lg", children: "Connected Successfully!" }),
974
+ /* @__PURE__ */ l("p", { className: "text-gray-500 text-sm", children: "Your wallet is now connected and ready to use." })
975
+ ] }) })).with(I.DISCONNECTED, () => /* @__PURE__ */ b("div", { className: "flex flex-col items-center gap-4 p-6", children: [
976
+ /* @__PURE__ */ b("div", { className: "text-center", children: [
977
+ /* @__PURE__ */ l("div", { className: "mb-4 text-4xl", children: "🔌" }),
978
+ /* @__PURE__ */ l("h3", { className: "mb-2 font-semibold text-gray-900 text-lg", children: "Disconnected" }),
979
+ /* @__PURE__ */ l("p", { className: "mb-4 text-gray-500 text-sm", children: "The connection has been closed." })
980
+ ] }),
981
+ /* @__PURE__ */ l(
982
+ "button",
983
+ {
984
+ type: "button",
985
+ onClick: e,
986
+ className: "w-full rounded-lg bg-gray-100 px-4 py-2 font-semibold text-gray-700 text-sm transition hover:bg-gray-200",
987
+ children: "Close"
988
+ }
989
+ )
990
+ ] })).otherwise(() => /* @__PURE__ */ l(Xe, { state: r })) });
991
+ };
992
+ var Qt = {
993
+ color: void 0,
994
+ size: void 0,
995
+ className: void 0,
996
+ style: void 0,
997
+ attr: void 0
998
+ }, yt = de.createContext && /* @__PURE__ */ de.createContext(Qt), xn = ["attr", "size", "title"];
999
+ function _n(e, t) {
1000
+ if (e == null) return {};
1001
+ var r = Nn(e, t), n, i;
1002
+ if (Object.getOwnPropertySymbols) {
1003
+ var o = Object.getOwnPropertySymbols(e);
1004
+ for (i = 0; i < o.length; i++)
1005
+ n = o[i], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (r[n] = e[n]);
1006
+ }
1007
+ return r;
1008
+ }
1009
+ function Nn(e, t) {
1010
+ if (e == null) return {};
1011
+ var r = {};
1012
+ for (var n in e)
1013
+ if (Object.prototype.hasOwnProperty.call(e, n)) {
1014
+ if (t.indexOf(n) >= 0) continue;
1015
+ r[n] = e[n];
1016
+ }
1017
+ return r;
1018
+ }
1019
+ function Re() {
1020
+ return Re = Object.assign ? Object.assign.bind() : function(e) {
1021
+ for (var t = 1; t < arguments.length; t++) {
1022
+ var r = arguments[t];
1023
+ for (var n in r)
1024
+ Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]);
1025
+ }
1026
+ return e;
1027
+ }, Re.apply(this, arguments);
1028
+ }
1029
+ function wt(e, t) {
1030
+ var r = Object.keys(e);
1031
+ if (Object.getOwnPropertySymbols) {
1032
+ var n = Object.getOwnPropertySymbols(e);
1033
+ t && (n = n.filter(function(i) {
1034
+ return Object.getOwnPropertyDescriptor(e, i).enumerable;
1035
+ })), r.push.apply(r, n);
1036
+ }
1037
+ return r;
1038
+ }
1039
+ function Te(e) {
1040
+ for (var t = 1; t < arguments.length; t++) {
1041
+ var r = arguments[t] != null ? arguments[t] : {};
1042
+ t % 2 ? wt(Object(r), !0).forEach(function(n) {
1043
+ kn(e, n, r[n]);
1044
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : wt(Object(r)).forEach(function(n) {
1045
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(r, n));
1046
+ });
1047
+ }
1048
+ return e;
1049
+ }
1050
+ function kn(e, t, r) {
1051
+ return t = Cn(t), t in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e;
1052
+ }
1053
+ function Cn(e) {
1054
+ var t = An(e, "string");
1055
+ return typeof t == "symbol" ? t : t + "";
1056
+ }
1057
+ function An(e, t) {
1058
+ if (typeof e != "object" || !e) return e;
1059
+ var r = e[Symbol.toPrimitive];
1060
+ if (r !== void 0) {
1061
+ var n = r.call(e, t);
1062
+ if (typeof n != "object") return n;
1063
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1064
+ }
1065
+ return (t === "string" ? String : Number)(e);
1066
+ }
1067
+ function Zt(e) {
1068
+ return e && e.map((t, r) => /* @__PURE__ */ de.createElement(t.tag, Te({
1069
+ key: r
1070
+ }, t.attr), Zt(t.child)));
1071
+ }
1072
+ function Pe(e) {
1073
+ return (t) => /* @__PURE__ */ de.createElement(Sn, Re({
1074
+ attr: Te({}, e.attr)
1075
+ }, t), Zt(e.child));
1076
+ }
1077
+ function Sn(e) {
1078
+ var t = (r) => {
1079
+ var {
1080
+ attr: n,
1081
+ size: i,
1082
+ title: o
1083
+ } = e, a = _n(e, xn), s = i || r.size || "1em", c;
1084
+ return r.className && (c = r.className), e.className && (c = (c ? c + " " : "") + e.className), /* @__PURE__ */ de.createElement("svg", Re({
1085
+ stroke: "currentColor",
1086
+ fill: "currentColor",
1087
+ strokeWidth: "0"
1088
+ }, r.attr, n, a, {
1089
+ className: c,
1090
+ style: Te(Te({
1091
+ color: e.color || r.color
1092
+ }, r.style), e.style),
1093
+ height: s,
1094
+ width: s,
1095
+ xmlns: "http://www.w3.org/2000/svg"
1096
+ }), o && /* @__PURE__ */ de.createElement("title", null, o), e.children);
1097
+ };
1098
+ return yt !== void 0 ? /* @__PURE__ */ de.createElement(yt.Consumer, null, (r) => t(r)) : t(Qt);
1099
+ }
1100
+ function En(e) {
1101
+ return Pe({ attr: { viewBox: "0 0 512 512" }, child: [{ tag: "path", attr: { d: "M416.3 256c0-21 13.1-38.9 31.7-46.1-4.9-20.5-13-39.7-23.7-57.1-6.4 2.8-13.2 4.3-20.1 4.3-12.6 0-25.2-4.8-34.9-14.4-14.9-14.9-18.2-36.8-10.2-55-17.3-10.7-36.6-18.8-57-23.7C295 82.5 277 95.7 256 95.7S217 82.5 209.9 64c-20.5 4.9-39.7 13-57.1 23.7 8.1 18.1 4.7 40.1-10.2 55-9.6 9.6-22.3 14.4-34.9 14.4-6.9 0-13.7-1.4-20.1-4.3C77 170.3 68.9 189.5 64 210c18.5 7.1 31.7 25 31.7 46.1 0 21-13.1 38.9-31.6 46.1 4.9 20.5 13 39.7 23.7 57.1 6.4-2.8 13.2-4.2 20-4.2 12.6 0 25.2 4.8 34.9 14.4 14.8 14.8 18.2 36.8 10.2 54.9 17.4 10.7 36.7 18.8 57.1 23.7 7.1-18.5 25-31.6 46-31.6s38.9 13.1 46 31.6c20.5-4.9 39.7-13 57.1-23.7-8-18.1-4.6-40 10.2-54.9 9.6-9.6 22.2-14.4 34.9-14.4 6.8 0 13.7 1.4 20 4.2 10.7-17.4 18.8-36.7 23.7-57.1-18.4-7.2-31.6-25.1-31.6-46.2zm-159.4 79.9c-44.3 0-80-35.9-80-80s35.7-80 80-80 80 35.9 80 80-35.7 80-80 80z" }, child: [] }] })(e);
1102
+ }
1103
+ var On = /\s+/g, Ye = (e) => typeof e != "string" || !e ? e : e.replace(On, " ").trim(), je = (...e) => {
1104
+ let t = [], r = (n) => {
1105
+ if (!n && n !== 0 && n !== 0n) return;
1106
+ if (Array.isArray(n)) {
1107
+ for (let o = 0, a = n.length; o < a; o++) r(n[o]);
1108
+ return;
1109
+ }
1110
+ let i = typeof n;
1111
+ if (i === "string" || i === "number" || i === "bigint") {
1112
+ if (i === "number" && n !== n) return;
1113
+ t.push(String(n));
1114
+ } else if (i === "object") {
1115
+ let o = Object.keys(n);
1116
+ for (let a = 0, s = o.length; a < s; a++) {
1117
+ let c = o[a];
1118
+ n[c] && t.push(c);
1119
+ }
1120
+ }
1121
+ };
1122
+ for (let n = 0, i = e.length; n < i; n++) {
1123
+ let o = e[n];
1124
+ o != null && r(o);
1125
+ }
1126
+ return t.length > 0 ? Ye(t.join(" ")) : void 0;
1127
+ }, bt = (e) => e === !1 ? "false" : e === !0 ? "true" : e === 0 ? "0" : e, W = (e) => {
1128
+ if (!e || typeof e != "object") return !0;
1129
+ for (let t in e) return !1;
1130
+ return !0;
1131
+ }, Rn = (e, t) => {
1132
+ if (e === t) return !0;
1133
+ if (!e || !t) return !1;
1134
+ let r = Object.keys(e), n = Object.keys(t);
1135
+ if (r.length !== n.length) return !1;
1136
+ for (let i = 0; i < r.length; i++) {
1137
+ let o = r[i];
1138
+ if (!n.includes(o) || e[o] !== t[o]) return !1;
1139
+ }
1140
+ return !0;
1141
+ }, xt = (e, t) => {
1142
+ for (let r in t) if (Object.prototype.hasOwnProperty.call(t, r)) {
1143
+ let n = t[r];
1144
+ r in e ? e[r] = je(e[r], n) : e[r] = n;
1145
+ }
1146
+ return e;
1147
+ }, qt = (e, t) => {
1148
+ for (let r = 0; r < e.length; r++) {
1149
+ let n = e[r];
1150
+ Array.isArray(n) ? qt(n, t) : n && t.push(n);
1151
+ }
1152
+ }, $t = (...e) => {
1153
+ let t = [];
1154
+ qt(e, t);
1155
+ let r = [];
1156
+ for (let n = 0; n < t.length; n++) t[n] && r.push(t[n]);
1157
+ return r;
1158
+ }, Qe = (e, t) => {
1159
+ let r = {};
1160
+ for (let n in e) {
1161
+ let i = e[n];
1162
+ if (n in t) {
1163
+ let o = t[n];
1164
+ Array.isArray(i) || Array.isArray(o) ? r[n] = $t(o, i) : typeof i == "object" && typeof o == "object" && i && o ? r[n] = Qe(i, o) : r[n] = o + " " + i;
1165
+ } else r[n] = i;
1166
+ }
1167
+ for (let n in t) n in e || (r[n] = t[n]);
1168
+ return r;
1169
+ }, Tn = { twMerge: !0, twMergeConfig: {}, responsiveVariants: !1 };
1170
+ function jn() {
1171
+ let e = null, t = {}, r = !1;
1172
+ return { get cachedTwMerge() {
1173
+ return e;
1174
+ }, set cachedTwMerge(n) {
1175
+ e = n;
1176
+ }, get cachedTwMergeConfig() {
1177
+ return t;
1178
+ }, set cachedTwMergeConfig(n) {
1179
+ t = n;
1180
+ }, get didTwMergeConfigChange() {
1181
+ return r;
1182
+ }, set didTwMergeConfigChange(n) {
1183
+ r = n;
1184
+ }, reset() {
1185
+ e = null, t = {}, r = !1;
1186
+ } };
1187
+ }
1188
+ var Fe = jn(), Dn = (e) => {
1189
+ let t = (r, n) => {
1190
+ let { extend: i = null, slots: o = {}, variants: a = {}, compoundVariants: s = [], compoundSlots: c = [], defaultVariants: u = {} } = r, d = { ...Tn, ...n }, p = i?.base ? je(i.base, r?.base) : r?.base, w = i?.variants && !W(i.variants) ? Qe(a, i.variants) : a, S = i?.defaultVariants && !W(i.defaultVariants) ? { ...i.defaultVariants, ...u } : u;
1191
+ !W(d.twMergeConfig) && !Rn(d.twMergeConfig, Fe.cachedTwMergeConfig) && (Fe.didTwMergeConfigChange = !0, Fe.cachedTwMergeConfig = d.twMergeConfig);
1192
+ let N = W(i?.slots), P = W(o) ? {} : { base: je(r?.base, N && i?.base), ...o }, f = N ? P : xt({ ...i?.slots }, W(P) ? { base: r?.base } : P), j = W(i?.compoundVariants) ? s : $t(i?.compoundVariants, s), O = (H) => {
1193
+ if (W(w) && W(o) && N) return e(p, H?.class, H?.className)(d);
1194
+ if (j && !Array.isArray(j)) throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof j}`);
1195
+ if (c && !Array.isArray(c)) throw new TypeError(`The "compoundSlots" prop must be an array. Received: ${typeof c}`);
1196
+ let Y = (v, g, h = [], x) => {
1197
+ let _ = h;
1198
+ if (typeof g == "string") {
1199
+ let y = Ye(g).split(" ");
1200
+ for (let A = 0; A < y.length; A++) _.push(`${v}:${y[A]}`);
1201
+ } else if (Array.isArray(g)) for (let y = 0; y < g.length; y++) _.push(`${v}:${g[y]}`);
1202
+ else if (typeof g == "object" && typeof x == "string" && x in g) {
1203
+ let y = g[x];
1204
+ if (y && typeof y == "string") {
1205
+ let A = Ye(y).split(" "), L = [];
1206
+ for (let D = 0; D < A.length; D++) L.push(`${v}:${A[D]}`);
1207
+ _[x] = _[x] ? _[x].concat(L) : L;
1208
+ } else if (Array.isArray(y) && y.length > 0) {
1209
+ let A = [];
1210
+ for (let L = 0; L < y.length; L++) A.push(`${v}:${y[L]}`);
1211
+ _[x] = A;
1212
+ }
1213
+ }
1214
+ return _;
1215
+ }, te = (v, g = w, h = null, x = null) => {
1216
+ let _ = g[v];
1217
+ if (!_ || W(_)) return null;
1218
+ let y = x?.[v] ?? H?.[v];
1219
+ if (y === null) return null;
1220
+ let A = bt(y), L = Array.isArray(d.responsiveVariants) && d.responsiveVariants.length > 0 || d.responsiveVariants === !0, D = S?.[v], T = [];
1221
+ if (typeof A == "object" && L) for (let [ne, at] of Object.entries(A)) {
1222
+ let nr = _[at];
1223
+ if (ne === "initial") {
1224
+ D = at;
1225
+ continue;
1226
+ }
1227
+ Array.isArray(d.responsiveVariants) && !d.responsiveVariants.includes(ne) || (T = Y(ne, nr, T, h));
1228
+ }
1229
+ let re = A != null && typeof A != "object" ? A : bt(D), G = _[re || "false"];
1230
+ return typeof T == "object" && typeof h == "string" && T[h] ? xt(T, G) : T.length > 0 ? (T.push(G), h === "base" ? T.join(" ") : T) : G;
1231
+ }, ue = () => {
1232
+ if (!w) return null;
1233
+ let v = Object.keys(w), g = [];
1234
+ for (let h = 0; h < v.length; h++) {
1235
+ let x = te(v[h], w);
1236
+ x && g.push(x);
1237
+ }
1238
+ return g;
1239
+ }, Le = (v, g) => {
1240
+ if (!w || typeof w != "object") return null;
1241
+ let h = [];
1242
+ for (let x in w) {
1243
+ let _ = te(x, w, v, g), y = v === "base" && typeof _ == "string" ? _ : _ && _[v];
1244
+ y && h.push(y);
1245
+ }
1246
+ return h;
1247
+ }, ye = {};
1248
+ for (let v in H) {
1249
+ let g = H[v];
1250
+ g !== void 0 && (ye[v] = g);
1251
+ }
1252
+ let $ = (v, g) => {
1253
+ let h = typeof H?.[v] == "object" ? { [v]: H[v]?.initial } : {};
1254
+ return { ...S, ...ye, ...h, ...g };
1255
+ }, we = (v = [], g) => {
1256
+ let h = [], x = v.length;
1257
+ for (let _ = 0; _ < x; _++) {
1258
+ let { class: y, className: A, ...L } = v[_], D = !0, T = $(null, g);
1259
+ for (let re in L) {
1260
+ let G = L[re], ne = T[re];
1261
+ if (Array.isArray(G)) {
1262
+ if (!G.includes(ne)) {
1263
+ D = !1;
1264
+ break;
1265
+ }
1266
+ } else {
1267
+ if ((G == null || G === !1) && (ne == null || ne === !1)) continue;
1268
+ if (ne !== G) {
1269
+ D = !1;
1270
+ break;
1271
+ }
1272
+ }
1273
+ }
1274
+ D && (y && h.push(y), A && h.push(A));
1275
+ }
1276
+ return h;
1277
+ }, Me = (v) => {
1278
+ let g = we(j, v);
1279
+ if (!Array.isArray(g)) return g;
1280
+ let h = {}, x = e;
1281
+ for (let _ = 0; _ < g.length; _++) {
1282
+ let y = g[_];
1283
+ if (typeof y == "string") h.base = x(h.base, y)(d);
1284
+ else if (typeof y == "object") for (let A in y) h[A] = x(h[A], y[A])(d);
1285
+ }
1286
+ return h;
1287
+ }, Ae = (v) => {
1288
+ if (c.length < 1) return null;
1289
+ let g = {}, h = $(null, v);
1290
+ for (let x = 0; x < c.length; x++) {
1291
+ let { slots: _ = [], class: y, className: A, ...L } = c[x];
1292
+ if (!W(L)) {
1293
+ let D = !0;
1294
+ for (let T in L) {
1295
+ let re = h[T], G = L[T];
1296
+ if (re === void 0 || (Array.isArray(G) ? !G.includes(re) : G !== re)) {
1297
+ D = !1;
1298
+ break;
1299
+ }
1300
+ }
1301
+ if (!D) continue;
1302
+ }
1303
+ for (let D = 0; D < _.length; D++) {
1304
+ let T = _[D];
1305
+ g[T] || (g[T] = []), g[T].push([y, A]);
1306
+ }
1307
+ }
1308
+ return g;
1309
+ };
1310
+ if (!W(o) || !N) {
1311
+ let v = {};
1312
+ if (typeof f == "object" && !W(f)) {
1313
+ let g = e;
1314
+ for (let h in f) v[h] = (x) => {
1315
+ let _ = Me(x), y = Ae(x);
1316
+ return g(f[h], Le(h, x), _ ? _[h] : void 0, y ? y[h] : void 0, x?.class, x?.className)(d);
1317
+ };
1318
+ }
1319
+ return v;
1320
+ }
1321
+ return e(p, ue(), we(j), H?.class, H?.className)(d);
1322
+ }, k = () => {
1323
+ if (!(!w || typeof w != "object")) return Object.keys(w);
1324
+ };
1325
+ return O.variantKeys = k(), O.extend = i, O.base = p, O.slots = f, O.variants = w, O.defaultVariants = S, O.compoundSlots = c, O.compoundVariants = j, O;
1326
+ };
1327
+ return { tv: t, createTV: (r) => (n, i) => t(n, i ? Qe(r, i) : r) };
1328
+ }, In = (...e) => (t) => je(e) || void 0, { tv: er } = Dn(In);
1329
+ const Pn = er({
1330
+ base: "flex items-center justify-center rounded-lg transition-colors cursor-pointer active:scale-95 transition-transform",
1331
+ variants: {
1332
+ $variant: {
1333
+ primary: "bg-blue-500 font-semibold text-sm text-white hover:bg-blue-600",
1334
+ secondary: "border border-gray-300 text-gray-500 hover:bg-gray-200",
1335
+ tertiary: "text-gray-500 hover:text-gray-700 hover:bg-gray-200"
1336
+ },
1337
+ $size: {
1338
+ sm: "h-6",
1339
+ md: "h-8",
1340
+ lg: "h-11"
1341
+ },
1342
+ $aspect: {
1343
+ square: "aspect-square",
1344
+ auto: ""
1345
+ }
1346
+ },
1347
+ defaultVariants: {
1348
+ $size: "md",
1349
+ $variant: "primary",
1350
+ $aspect: "auto"
1351
+ }
1352
+ }), xe = ({
1353
+ href: e,
1354
+ onClick: t,
1355
+ children: r,
1356
+ className: n,
1357
+ $variant: i,
1358
+ $size: o,
1359
+ $aspect: a,
1360
+ ...s
1361
+ }) => ee(
1362
+ e ? "a" : "button",
1363
+ {
1364
+ href: e ?? void 0,
1365
+ onClick: t,
1366
+ className: pe(Pn({ $variant: i, $size: o, $aspect: a }), n),
1367
+ ...s
1368
+ },
1369
+ r
1370
+ ), Ln = ({ isApple: e }) => /* @__PURE__ */ b("div", { className: "flex h-full w-full justify-between", children: [
1371
+ /* @__PURE__ */ l("div", { className: "grow py-1 pl-1", children: /* @__PURE__ */ l("div", { className: "h-full rounded-sm border border-gray-300 bg-gray-400" }) }),
1372
+ /* @__PURE__ */ l("div", { className: "flex h-full w-3 flex-col items-center justify-center gap-0.5 pr-0.5", children: Array.from({ length: e ? 1 : 3 }).map((t, r) => /* @__PURE__ */ l(
1373
+ "div",
1374
+ {
1375
+ className: "h-1.5 w-1.5 rounded-full border border-gray-500"
1376
+ },
1377
+ "dot-t-" + r
1378
+ )) })
1379
+ ] }), Mn = ({ isApple: e }) => /* @__PURE__ */ b("div", { className: "flex h-full w-full flex-col justify-between", children: [
1380
+ /* @__PURE__ */ l("div", { className: "grow px-1 pt-1", children: /* @__PURE__ */ l("div", { className: "h-full rounded-sm border border-gray-200 bg-gray-300" }) }),
1381
+ /* @__PURE__ */ l("div", { className: "flex h-3 w-full items-center justify-center gap-0.5 pb-0.5", children: Array.from({ length: e ? 1 : 3 }).map((t, r) => /* @__PURE__ */ l(
1382
+ "div",
1383
+ {
1384
+ className: "h-1.5 w-1.5 rounded-full border border-gray-400"
1385
+ },
1386
+ "dot-p-" + r
1387
+ )) })
1388
+ ] }), zn = () => /* @__PURE__ */ b("div", { className: "-space-x-4 flex items-end", children: [
1389
+ /* @__PURE__ */ l("div", { className: "h-38 w-48 overflow-hidden rounded-lg bg-gray-300", children: /* @__PURE__ */ l(Ln, { isApple: !0 }) }),
1390
+ /* @__PURE__ */ l("div", { className: "h-18 w-12 overflow-hidden rounded-lg bg-gray-200", children: /* @__PURE__ */ l(Mn, { isApple: !0 }) })
1391
+ ] }), Vn = ({
1392
+ onSettings: e
1393
+ }) => {
1394
+ const { start: t } = pn();
1395
+ return /* @__PURE__ */ b("div", { className: "flex flex-col items-center gap-4 p-6", children: [
1396
+ /* @__PURE__ */ l(zn, {}),
1397
+ /* @__PURE__ */ l("div", { className: "text-center", children: /* @__PURE__ */ l("p", { className: "text-gray-500 text-sm", children: "Click the button below to start a connection" }) }),
1398
+ /* @__PURE__ */ b("div", { className: "flex items-center", children: [
1399
+ /* @__PURE__ */ l(
1400
+ xe,
1401
+ {
1402
+ type: "button",
1403
+ onClick: t,
1404
+ className: "z-10 px-6 py-3",
1405
+ $variant: "primary",
1406
+ $size: "lg",
1407
+ children: "Generate QR"
1408
+ }
1409
+ ),
1410
+ /* @__PURE__ */ l(
1411
+ xe,
1412
+ {
1413
+ type: "button",
1414
+ "aria-label": "Connection settings",
1415
+ "aria-pressed": !1,
1416
+ onClick: e,
1417
+ className: "-ml-1 rounded-l-none px-3",
1418
+ $aspect: "square",
1419
+ $size: "lg",
1420
+ $variant: "secondary",
1421
+ children: /* @__PURE__ */ l(En, { className: "h-5 w-5 text-gray-500" })
1422
+ }
1423
+ )
1424
+ ] })
1425
+ ] });
1426
+ }, Bn = async (e) => {
1427
+ if (!e) return !1;
1428
+ try {
1429
+ if (navigator?.clipboard?.writeText)
1430
+ return await navigator.clipboard.writeText(e), !0;
1431
+ } catch {
1432
+ }
1433
+ try {
1434
+ const t = document.createElement("textarea");
1435
+ t.value = e, t.style.position = "fixed", t.style.left = "-999999px", t.style.top = "-999999px", document.body.appendChild(t), t.focus(), t.select();
1436
+ const r = document.execCommand("copy");
1437
+ return document.body.removeChild(t), r;
1438
+ } catch {
1439
+ return !1;
1440
+ }
1441
+ }, _t = (e, { duration: t = 200 } = {}) => {
1442
+ const [r, n] = M(e), [i, o] = M(null), a = J(), s = J(e);
1443
+ return B(() => {
1444
+ if (!Object.is(e, s.current))
1445
+ return a.current && window.clearTimeout(a.current), o(s.current), n(e), s.current = e, a.current = window.setTimeout(() => {
1446
+ o(null), a.current = void 0;
1447
+ }, t), () => {
1448
+ a.current && window.clearTimeout(a.current);
1449
+ };
1450
+ }, [e, t]), {
1451
+ current: r,
1452
+ previous: i,
1453
+ isTransitioning: i !== null
1454
+ };
1455
+ }, Fn = "data:image/webp;base64,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", Hn = () => {
1456
+ const { status: e } = Ce(), { status: t } = me(), r = X(t).with(K.STANDBY, () => {
1457
+ }).with(
1458
+ Pt.union(
1459
+ K.CREATING,
1460
+ K.CONNECTING,
1461
+ K.CONNECTED,
1462
+ K.ERROR
1463
+ ),
1464
+ () => X({ status: e?.status }).with({ status: le.CREATED }, () => {
1465
+ }).with({ status: le.CONNECTED }, () => ({
1466
+ icon: "✅",
1467
+ text: "Connected Successfully!"
1468
+ })).with(
1469
+ { status: le.SIGNALING },
1470
+ () => X({ status: e?.signaling?.state }).with({ status: U.STANDBY }, () => ({
1471
+ icon: "🫥",
1472
+ text: "Connecting"
1473
+ })).with({ status: U.CONNECTING }, () => ({
1474
+ icon: "↗️",
1475
+ text: "Connecting"
1476
+ })).with({ status: U.READY }, () => ({
1477
+ icon: "👋",
1478
+ text: "Ready"
1479
+ })).with({ status: U.HANDSHAKE }, () => ({
1480
+ icon: "🤝",
1481
+ text: "Handshake Closed"
1482
+ })).with({ status: U.HANDSHAKE_PARTIAL }, () => ({
1483
+ icon: "🤝",
1484
+ text: "Handshake Partial"
1485
+ })).with({ status: U.ENCRYPTED }, () => ({
1486
+ icon: "🔒",
1487
+ text: "Encrypted"
1488
+ })).with({ status: U.ERROR }, () => ({
1489
+ icon: "❌",
1490
+ text: "Signal Error"
1491
+ })).otherwise(() => ({
1492
+ icon: "❓",
1493
+ text: "Unknown " + e?.signaling?.state
1494
+ }))
1495
+ ).otherwise((n) => ({
1496
+ icon: "❓",
1497
+ text: "Unknown " + JSON.stringify(n)
1498
+ }))
1499
+ ).otherwise(() => ({
1500
+ icon: "❓",
1501
+ text: "Unknown provider status " + JSON.stringify(t)
1502
+ }));
1503
+ return r ? /* @__PURE__ */ b("div", { className: "group flex items-center gap-2 rounded-md px-2 py-2 hover:bg-neutral-200", children: [
1504
+ /* @__PURE__ */ l("div", { className: "text-gray-900 text-xs opacity-0 transition-opacity duration-300 group-hover:opacity-100", children: r.text }),
1505
+ /* @__PURE__ */ l("div", { children: r.icon })
1506
+ ] }) : /* @__PURE__ */ l(kt, {});
1507
+ }, Gn = () => /* @__PURE__ */ b(kt, { children: [
1508
+ /* @__PURE__ */ l("div", { className: "h-11 w-full" }),
1509
+ /* @__PURE__ */ b("div", { className: "absolute inset-x-0 bottom-0 flex items-end justify-between gap-2 px-3 py-2 text-gray-500", children: [
1510
+ /* @__PURE__ */ b(
1511
+ "a",
1512
+ {
1513
+ href: "https://github.com/v3xlabs/open-lavatory",
1514
+ target: "_blank",
1515
+ rel: "noreferrer",
1516
+ className: "flex items-center gap-2 p-1 font-semibold text-gray-500 text-sm",
1517
+ children: [
1518
+ /* @__PURE__ */ l(
1519
+ "img",
1520
+ {
1521
+ src: Fn,
1522
+ alt: "Open Lavatory Logo",
1523
+ width: 20,
1524
+ height: 20,
1525
+ className: "rounded"
1526
+ }
1527
+ ),
1528
+ /* @__PURE__ */ l("span", { children: "openlv" })
1529
+ ]
1530
+ }
1531
+ ),
1532
+ /* @__PURE__ */ l("div", { className: "text-gray-500 text-sm", children: /* @__PURE__ */ l(Hn, {}) })
1533
+ ] })
1534
+ ] });
1535
+ function Wn(e) {
1536
+ return Pe({ attr: { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, child: [{ tag: "path", attr: { d: "m15 18-6-6 6-6" }, child: [] }] })(e);
1537
+ }
1538
+ function tr(e) {
1539
+ return Pe({ attr: { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, child: [{ tag: "circle", attr: { cx: "12", cy: "12", r: "10" }, child: [] }, { tag: "path", attr: { d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3" }, child: [] }, { tag: "path", attr: { d: "M12 17h.01" }, child: [] }] })(e);
1540
+ }
1541
+ function Un(e) {
1542
+ return Pe({ attr: { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, child: [{ tag: "path", attr: { d: "M18 6 6 18" }, child: [] }, { tag: "path", attr: { d: "m6 6 12 12" }, child: [] }] })(e);
1543
+ }
1544
+ const Kn = ({
1545
+ title: e,
1546
+ view: t,
1547
+ onClose: r,
1548
+ onBack: n
1549
+ }) => /* @__PURE__ */ b("div", { className: "flex items-center justify-between px-2 py-2", children: [
1550
+ n ? /* @__PURE__ */ l(
1551
+ xe,
1552
+ {
1553
+ onClick: n,
1554
+ "aria-label": t === "settings" ? "Back to QR" : "Close modal",
1555
+ $variant: "tertiary",
1556
+ $aspect: "square",
1557
+ $size: "md",
1558
+ children: /* @__PURE__ */ l(Wn, { className: "h-6 w-6 text-gray-500" })
1559
+ }
1560
+ ) : /* @__PURE__ */ l(
1561
+ xe,
1562
+ {
1563
+ type: "button",
1564
+ href: "https://openlv.sh",
1565
+ target: "_blank",
1566
+ $variant: "tertiary",
1567
+ $aspect: "square",
1568
+ $size: "md",
1569
+ children: /* @__PURE__ */ l(tr, { className: "h-5 w-5" })
1570
+ }
1571
+ ),
1572
+ /* @__PURE__ */ l("h2", { className: "flex items-center justify-center gap-2 font-semibold text-gray-900 text-lg", children: e }),
1573
+ /* @__PURE__ */ l(
1574
+ xe,
1575
+ {
1576
+ type: "button",
1577
+ "aria-label": "close",
1578
+ "aria-pressed": !1,
1579
+ onClick: r,
1580
+ $variant: "tertiary",
1581
+ $aspect: "square",
1582
+ $size: "md",
1583
+ children: /* @__PURE__ */ l(Un, { className: "h-6 w-6 text-gray-500" })
1584
+ }
1585
+ )
1586
+ ] }), Jn = er({
1587
+ slots: {
1588
+ root: "group relative",
1589
+ box: "cursor-pointer rounded-md transition-colors hover:bg-neutral-200 flex items-center justify-center",
1590
+ popover: "-translate-x-1/2 absolute top-full left-1/2 z-10 hidden rounded-md bg-neutral-100 p-2 shadow-sm group-hover:block",
1591
+ icon: ""
1592
+ },
1593
+ variants: {
1594
+ size: {
1595
+ sm: {
1596
+ box: "h-5 w-5 p-1",
1597
+ icon: "h-3 w-3"
1598
+ },
1599
+ md: {
1600
+ box: "h-6 w-6 p-1",
1601
+ icon: "h-4 w-4"
1602
+ },
1603
+ lg: {
1604
+ box: "h-8 w-8 p-1.5",
1605
+ icon: "h-4 w-4"
1606
+ }
1607
+ },
1608
+ variant: {
1609
+ icon: "",
1610
+ text: ""
1611
+ }
1612
+ },
1613
+ defaultVariants: {
1614
+ size: "lg"
1615
+ }
1616
+ }), nt = ({
1617
+ variant: e = "icon",
1618
+ children: t,
1619
+ size: r = "lg"
1620
+ }) => {
1621
+ const { root: n, box: i, popover: o, icon: a } = Jn({ size: r, variant: e });
1622
+ return /* @__PURE__ */ b("div", { className: n(), children: [
1623
+ /* @__PURE__ */ l("div", { className: i(), children: X(e).with("icon", () => /* @__PURE__ */ l(tr, { className: a() })).with("text", () => /* @__PURE__ */ l("div", { children: "Text" })).exhaustive() }),
1624
+ /* @__PURE__ */ l("div", { className: o(), children: t })
1625
+ ] });
1626
+ }, it = ({ title: e, right: t, children: r }) => /* @__PURE__ */ b("div", { children: [
1627
+ /* @__PURE__ */ b("div", { className: "flex items-end justify-between px-2 py-1", children: [
1628
+ /* @__PURE__ */ l("div", { className: "font-medium text-gray-900 text-sm", children: e }),
1629
+ /* @__PURE__ */ l("div", { children: t })
1630
+ ] }),
1631
+ /* @__PURE__ */ l("div", { className: "flex flex-col gap-1 rounded-md bg-[#F4F5F6] p-2", children: r })
1632
+ ] }), De = ({ label: e, children: t }) => /* @__PURE__ */ b("div", { className: "flex items-baseline justify-between gap-2", children: [
1633
+ /* @__PURE__ */ l("div", { className: "pl-1 text-sm", children: e }),
1634
+ /* @__PURE__ */ l("div", { children: t })
1635
+ ] }), ot = ({ options: e, value: t, onChange: r }) => /* @__PURE__ */ l("div", { className: "flex divide-x rounded-md border border-gray-300", children: e.map(([n, i]) => /* @__PURE__ */ l(
1636
+ "button",
1637
+ {
1638
+ type: "button",
1639
+ onClick: () => r(n),
1640
+ "aria-pressed": n === t,
1641
+ className: pe(
1642
+ "px-4 py-2 font-semibold text-xs transition first:rounded-l-md last:rounded-r-md",
1643
+ n === t ? "border-blue-500 bg-blue-50 text-blue-600" : "cursor-pointer border-gray-300 text-gray-600 hover:border-gray-400"
1644
+ ),
1645
+ children: i
1646
+ },
1647
+ n
1648
+ )) }), Xn = ({ label: e, value: t, onChange: r }) => /* @__PURE__ */ l(
1649
+ ot,
1650
+ {
1651
+ options: [
1652
+ ["true", "Yes"],
1653
+ ["false", "No"]
1654
+ ],
1655
+ value: t ? "true" : "false",
1656
+ onChange: (n) => r(n === "true")
1657
+ }
1658
+ ), Yn = () => {
1659
+ const { settings: e, updateRetainHistory: t, updateAutoReconnect: r } = rt();
1660
+ return /* @__PURE__ */ l(
1661
+ it,
1662
+ {
1663
+ title: "Connection preferences",
1664
+ right: /* @__PURE__ */ l(nt, { variant: "icon", children: "Something something very cool" }),
1665
+ children: [
1666
+ [
1667
+ "Retain session history",
1668
+ "retainHistory",
1669
+ e?.retainHistory ?? !1,
1670
+ t
1671
+ ],
1672
+ [
1673
+ "Auto reconnect",
1674
+ "autoReconnect",
1675
+ e?.autoReconnect ?? !1,
1676
+ r
1677
+ ]
1678
+ ].map(([n, i, o, a]) => /* @__PURE__ */ l(De, { label: n, children: /* @__PURE__ */ l(Xn, { label: n, value: o, onChange: a }) }, i))
1679
+ }
1680
+ );
1681
+ }, Qn = "h-9 w-full rounded-lg border border-gray-300 bg-white px-3 text-sm text-gray-700 focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-200", Zn = ({
1682
+ // eslint-disable-next-line no-restricted-syntax
1683
+ id: e,
1684
+ value: t,
1685
+ placeholder: r,
1686
+ ariaLabel: n,
1687
+ readOnly: i = !0,
1688
+ onChange: o
1689
+ }) => /* @__PURE__ */ l(
1690
+ "input",
1691
+ {
1692
+ id: e,
1693
+ className: Qn,
1694
+ value: t,
1695
+ placeholder: r,
1696
+ "aria-label": n,
1697
+ readOnly: i,
1698
+ onChange: (a) => {
1699
+ a.target instanceof HTMLInputElement && o?.(a.target.value);
1700
+ }
1701
+ }
1702
+ ), qn = ["MQTT", "NTFY", "GUN"], $n = () => {
1703
+ const { settings: e, updateSignalingProtocol: t, updateSignalingServer: r } = rt();
1704
+ return /* @__PURE__ */ l("div", { children: /* @__PURE__ */ b(
1705
+ it,
1706
+ {
1707
+ title: "Signaling",
1708
+ right: /* @__PURE__ */ l(nt, { variant: "icon", children: "Something something very cool" }),
1709
+ children: [
1710
+ /* @__PURE__ */ l(De, { label: "Protocol", children: /* @__PURE__ */ l(
1711
+ ot,
1712
+ {
1713
+ options: qn.map((n) => [
1714
+ n.toLowerCase(),
1715
+ n
1716
+ ]),
1717
+ value: e?.signaling.p || "",
1718
+ onChange: t
1719
+ }
1720
+ ) }),
1721
+ /* @__PURE__ */ l(De, { label: "Server", children: /* @__PURE__ */ l(
1722
+ Zn,
1723
+ {
1724
+ id: "server",
1725
+ value: e?.signaling.s[e?.signaling.p || ""] || "",
1726
+ onChange: (n) => r(n),
1727
+ placeholder: "Server URL",
1728
+ ariaLabel: "Server URL",
1729
+ readOnly: !1
1730
+ }
1731
+ ) })
1732
+ ]
1733
+ }
1734
+ ) });
1735
+ }, ei = ["WebRTC"], ti = () => {
1736
+ const [e, t] = M("WebRTC");
1737
+ return /* @__PURE__ */ l(
1738
+ it,
1739
+ {
1740
+ title: "Transport",
1741
+ right: /* @__PURE__ */ l(nt, { variant: "icon", children: "Something something very cool" }),
1742
+ children: /* @__PURE__ */ l(De, { label: "Protocol", children: /* @__PURE__ */ l(
1743
+ ot,
1744
+ {
1745
+ options: ei.map((r) => [r, r]),
1746
+ value: e,
1747
+ onChange: (r) => t(r)
1748
+ }
1749
+ ) })
1750
+ }
1751
+ );
1752
+ }, ri = () => /* @__PURE__ */ b("div", { className: "px-4 pb-2", children: [
1753
+ /* @__PURE__ */ l($n, {}),
1754
+ /* @__PURE__ */ l(ti, {}),
1755
+ /* @__PURE__ */ l(Yn, {})
1756
+ ] }), ni = () => {
1757
+ const [e, t] = M("start"), [r, n] = M(!1);
1758
+ return B(() => {
1759
+ if (!r) return;
1760
+ const i = window.setTimeout(() => n(!1), 2e3);
1761
+ return () => window.clearTimeout(i);
1762
+ }, [r]), {
1763
+ view: e,
1764
+ setView: t,
1765
+ copied: r,
1766
+ setCopied: n
1767
+ };
1768
+ }, ii = (e) => {
1769
+ B(() => {
1770
+ const t = (r) => {
1771
+ r.key === "Escape" && e();
1772
+ };
1773
+ return document.addEventListener("keydown", t), () => document.removeEventListener("keydown", t);
1774
+ }, [e]);
1775
+ }, oi = () => {
1776
+ const e = J(null), [t, r] = M(0), n = J(!1), i = q(
1777
+ (o, a = !1) => {
1778
+ const s = o || e.current;
1779
+ if (!s) return;
1780
+ const c = a ? s.scrollHeight : s.getBoundingClientRect().height;
1781
+ c > 0 && (r(
1782
+ (u) => typeof u == "number" && Math.abs(u - c) < 0.5 ? u : c
1783
+ ), n.current = !0);
1784
+ },
1785
+ []
1786
+ );
1787
+ return ve(() => {
1788
+ const o = e.current;
1789
+ if (!o || typeof ResizeObserver > "u") return;
1790
+ const a = new ResizeObserver(() => {
1791
+ i();
1792
+ });
1793
+ return a.observe(o), () => a.disconnect();
1794
+ }, [i]), B(() => {
1795
+ if (typeof window > "u") return;
1796
+ const o = () => {
1797
+ i();
1798
+ };
1799
+ return window.addEventListener("resize", o), () => window.removeEventListener("resize", o);
1800
+ }, [i]), {
1801
+ contentRef: e,
1802
+ height: t,
1803
+ measureHeight: i,
1804
+ setHeight: r
1805
+ };
1806
+ }, ai = ({ onClose: e = () => {
1807
+ }, onCopy: t }) => {
1808
+ const { view: r, setView: n, copied: i, setCopied: o } = ni(), { uri: a } = Ce(), { status: s, provider: c } = me(), { contentRef: u, height: d, measureHeight: p } = oi(), {
1809
+ current: w,
1810
+ previous: S,
1811
+ isTransitioning: N
1812
+ } = _t(r), {
1813
+ current: P,
1814
+ previous: f,
1815
+ isTransitioning: j
1816
+ } = _t(s), O = q(() => n("settings"), [n]), k = X(r).with("start", () => "Connect Wallet").with("settings", () => "Settings").exhaustive();
1817
+ ii(e);
1818
+ const H = q(async () => {
1819
+ a && await Bn(a) && o(!0);
1820
+ }, [a, o]), Y = J(!0), te = J(), ue = J(void 0), [Le, ye] = M(!1), $ = J();
1821
+ ve(() => {
1822
+ if (u.current)
1823
+ return Y.current ? (te.current && window.clearTimeout(te.current), te.current = window.setTimeout(() => {
1824
+ u.current && (p(void 0, !0), Y.current = !1);
1825
+ }, 0)) : p(), () => {
1826
+ te.current && window.clearTimeout(te.current);
1827
+ };
1828
+ }, [p, P, w]), B(() => (ue.current !== void 0 && d !== ue.current && d > 0 && ue.current > 0 && Math.abs(d - ue.current) > 0.5 && (ye(!0), $.current && window.clearTimeout($.current), $.current = window.setTimeout(() => {
1829
+ ye(!1), $.current = void 0;
1830
+ }, 200)), ue.current = d, () => {
1831
+ $.current && window.clearTimeout($.current);
1832
+ }), [d]);
1833
+ const we = () => {
1834
+ c?.closeSession();
1835
+ }, Me = X({ view: r, status: s }).with({ view: "start", status: K.STANDBY }, () => {
1836
+ }).with({ view: "start" }, () => we).with({ view: "settings" }, () => () => n("start")).otherwise(() => () => {
1837
+ we(), e();
1838
+ }), Ae = (h) => X(h).with("start", () => /* @__PURE__ */ l(Vn, { onSettings: O })).with("settings", () => /* @__PURE__ */ l(ri, {})).otherwise(() => /* @__PURE__ */ l(Xe, { state: h })), v = () => /* @__PURE__ */ b("div", { className: "modal-transition__container", children: [
1839
+ S && /* @__PURE__ */ l("div", { className: "modal-transition__layer modal-transition__layer--outgoing", children: Ae(S) }),
1840
+ /* @__PURE__ */ l(
1841
+ "div",
1842
+ {
1843
+ className: pe(
1844
+ "modal-transition__layer",
1845
+ N && "modal-transition__layer--incoming"
1846
+ ),
1847
+ children: Ae(w)
1848
+ }
1849
+ )
1850
+ ] }), g = (h) => X(h).with(K.STANDBY, () => v()).with(
1851
+ Pt.union(
1852
+ K.CREATING,
1853
+ K.CONNECTING,
1854
+ K.CONNECTED
1855
+ ),
1856
+ () => /* @__PURE__ */ l(bn, { onClose: e, onCopy: t || H })
1857
+ ).otherwise((x) => /* @__PURE__ */ l(Xe, { state: x || "unknown status" }));
1858
+ return tt("view", r), /* @__PURE__ */ l(
1859
+ "div",
1860
+ {
1861
+ className: "fixed inset-0 z-[10000] flex animate-[bg-in_0.15s_ease-in-out] items-end justify-center bg-black/30 font-sans text-slate-800 backdrop-blur-sm md:items-center lg:p-4",
1862
+ onClick: e,
1863
+ role: "presentation",
1864
+ "data-openlv-modal-root": !0,
1865
+ children: /* @__PURE__ */ b(
1866
+ "div",
1867
+ {
1868
+ className: pe(
1869
+ "relative w-full max-w-[400px] animate-[fade-in_0.15s_ease-in-out] rounded-t-radius bg-body-background transition-[height] duration-[200ms] ease-out md:rounded-b-radius",
1870
+ Le || f ? "overflow-hidden" : void 0
1871
+ ),
1872
+ role: "dialog",
1873
+ "aria-modal": "true",
1874
+ "aria-label": k,
1875
+ onClick: (h) => h.stopPropagation(),
1876
+ style: typeof d == "number" && d > 0 ? { height: `${d}px` } : void 0,
1877
+ children: [
1878
+ /* @__PURE__ */ b("div", { ref: u, children: [
1879
+ /* @__PURE__ */ l(
1880
+ Kn,
1881
+ {
1882
+ title: k,
1883
+ view: r,
1884
+ onClose: e,
1885
+ onBack: Me
1886
+ }
1887
+ ),
1888
+ /* @__PURE__ */ b("div", { className: "modal-transition__container", children: [
1889
+ f && /* @__PURE__ */ l("div", { className: "modal-transition__layer modal-transition__layer--outgoing absolute", children: /* @__PURE__ */ l("div", { className: "flex flex-col text-center", children: g(f) }) }),
1890
+ /* @__PURE__ */ l(
1891
+ "div",
1892
+ {
1893
+ className: pe(
1894
+ "modal-transition__layer",
1895
+ j && "modal-transition__layer--incoming"
1896
+ ),
1897
+ children: /* @__PURE__ */ l("div", { className: "flex flex-col text-center", children: g(P) })
1898
+ }
1899
+ )
1900
+ ] }),
1901
+ /* @__PURE__ */ l(Gn, {})
1902
+ ] }),
1903
+ /* @__PURE__ */ l(
1904
+ "div",
1905
+ {
1906
+ className: pe(
1907
+ "absolute top-5 right-5 rounded-lg bg-blue-500 px-4 py-3 font-medium text-sm text-white transition-all",
1908
+ i ? "translate-x-0 opacity-100" : "translate-x-full opacity-0"
1909
+ ),
1910
+ children: "📋 Connection URL copied to clipboard!"
1911
+ }
1912
+ )
1913
+ ]
1914
+ }
1915
+ )
1916
+ }
1917
+ );
1918
+ }, Nt = '/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-blue-50:oklch(97% .014 254.604);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-slate-800:oklch(27.9% .041 260.031);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wide:.025em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-body-background:var(--lv-body-background);--radius-radius:var(--lv-border-radius)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.top-5{top:calc(var(--spacing)*5)}.top-full{top:100%}.right-5{right:calc(var(--spacing)*5)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-1\\/2{left:50%}.z-10{z-index:10}.z-\\[10000\\]{z-index:10000}.mx-auto{margin-inline:auto}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.-ml-1{margin-left:calc(var(--spacing)*-1)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1}.h-1\\.5{height:calc(var(--spacing)*1.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-11{height:calc(var(--spacing)*11)}.h-18{height:calc(var(--spacing)*18)}.h-38{height:calc(var(--spacing)*38)}.h-\\[200px\\]{height:200px}.h-full{height:100%}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-48{width:calc(var(--spacing)*48)}.w-\\[200px\\]{width:200px}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\\[400px\\]{max-width:400px}.grow{flex-grow:1}.-translate-x-1\\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.animate-\\[bg-in_0\\.15s_ease-in-out\\]{animation:.15s ease-in-out bg-in}.animate-\\[fade-in_0\\.15s_ease-in-out\\]{animation:.15s ease-in-out fade-in}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.-space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*-4)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*-4)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px*var(--tw-divide-x-reverse));border-inline-end-width:calc(1px*calc(1 - var(--tw-divide-x-reverse)))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-radius{border-top-left-radius:var(--radius-radius);border-top-right-radius:var(--radius-radius)}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-lg{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-blue-500{border-color:var(--color-blue-500)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-400{border-color:var(--color-gray-400)}.border-gray-500{border-color:var(--color-gray-500)}.border-neutral-200{border-color:var(--color-neutral-200)}.border-t-transparent{border-top-color:#0000}.bg-\\[\\#F4F5F6\\]{background-color:#f4f5f6}.bg-black\\/30{background-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.bg-black\\/30{background-color:color-mix(in oklab,var(--color-black)30%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-body-background{background-color:var(--color-body-background)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-white{background-color:var(--color-white)}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.pt-1{padding-top:calc(var(--spacing)*1)}.pr-0\\.5{padding-right:calc(var(--spacing)*.5)}.pr-3{padding-right:calc(var(--spacing)*3)}.pb-0\\.5{padding-bottom:calc(var(--spacing)*.5)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-1{padding-left:calc(var(--spacing)*1)}.pl-4{padding-left:calc(var(--spacing)*4)}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-blue-600{color:var(--color-blue-600)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-slate-800{color:var(--color-slate-800)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[height\\]{transition-property:height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-\\[200ms\\]{--tw-duration:.2s;transition-duration:.2s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.group-hover\\:block:is(:where(.group):hover *){display:block}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.first\\:rounded-l-md:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.last\\:rounded-r-md:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}@media (hover:hover){.hover\\:border-gray-400:hover{border-color:var(--color-gray-400)}.hover\\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\\:bg-gray-300:hover{background-color:var(--color-gray-300)}.hover\\:bg-neutral-200:hover{background-color:var(--color-neutral-200)}.hover\\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-blue-200:focus{--tw-ring-color:var(--color-blue-200)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}@media (min-width:48rem){.md\\:items-center{align-items:center}.md\\:rounded-b-radius{border-bottom-right-radius:var(--radius-radius);border-bottom-left-radius:var(--radius-radius)}}@media (min-width:64rem){.lg\\:p-4{padding:calc(var(--spacing)*4)}}}@keyframes fade-in{0%{transform:translateY(-2px)scale(.95)}to{transform:translateY(0)scale(1)}}@keyframes bg-in{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}.modal-transition__container{display:grid;position:relative}.modal-transition__layer{will-change:transform,opacity;grid-area:1/1;width:100%}.modal-transition__layer--outgoing{z-index:2;animation:.2s ease-out forwards modal-transition-out;position:absolute}.modal-transition__layer--incoming{animation:.2s ease-out forwards modal-transition-in}@keyframes modal-transition-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modal-transition-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}', si = async (e, t) => {
1919
+ if (e) {
1920
+ if (e.querySelector("style[data-openlv-modal]"))
1921
+ return;
1922
+ const n = document.createElement("style");
1923
+ if (n.setAttribute("data-openlv-modal", "true"), t) {
1924
+ const i = Jt(t), o = `:root, :host {${Object.entries(i).map(([a, s]) => `${a}: ${s};`).join(`
1925
+ `)}}`;
1926
+ n.textContent = `${o}
1927
+ ${Nt}`;
1928
+ } else
1929
+ n.textContent = Nt;
1930
+ e.appendChild(n);
1931
+ }
1932
+ };
1933
+ class rr extends HTMLElement {
1934
+ constructor(r, n = et) {
1935
+ super();
1936
+ fe(this, "onClose");
1937
+ fe(this, "provider");
1938
+ fe(this, "theme");
1939
+ fe(this, "shadow");
1940
+ fe(this, "renderRequested", !1);
1941
+ this.provider = r, this.theme = n, this.shadow = this.attachShadow({ mode: "open" }), si(this.shadow, this.theme);
1942
+ }
1943
+ connectedCallback() {
1944
+ this.requestRender();
1945
+ }
1946
+ disconnectedCallback() {
1947
+ ge(null, this.shadow);
1948
+ }
1949
+ showModal() {
1950
+ this.style.display = "block";
1951
+ }
1952
+ hideModal() {
1953
+ this.style.display = "none";
1954
+ }
1955
+ requestRender() {
1956
+ this.renderRequested || (this.renderRequested = !0, queueMicrotask(() => {
1957
+ this.renderRequested = !1, this.performRender();
1958
+ }));
1959
+ }
1960
+ performRender() {
1961
+ ge(
1962
+ cr(dn, {
1963
+ onClose: this.onClose ?? (() => this.remove()),
1964
+ provider: this.provider
1965
+ }),
1966
+ this.shadow
1967
+ );
1968
+ }
1969
+ }
1970
+ const gi = (e = "idle") => {
1971
+ const [t, r] = M({
1972
+ state: e
1973
+ }), n = q(
1974
+ (a, s) => {
1975
+ r((c) => ({
1976
+ ...c,
1977
+ state: a,
1978
+ ...s
1979
+ }));
1980
+ },
1981
+ []
1982
+ ), i = q((a) => {
1983
+ r(a);
1984
+ }, []), o = q(() => {
1985
+ r({ state: "idle" });
1986
+ }, []);
1987
+ return {
1988
+ connectionInfo: t,
1989
+ updateState: n,
1990
+ updateConnectionInfo: i,
1991
+ reset: o
1992
+ };
1993
+ }, li = (e = "openlv-modal") => {
1994
+ if (typeof window > "u")
1995
+ return e;
1996
+ const t = window.customElements;
1997
+ return t ? (t.get(e) || t.define(
1998
+ e,
1999
+ rr
2000
+ ), e) : (console.warn(
2001
+ "OpenLV modal: custom elements are not supported in this environment."
2002
+ ), e);
2003
+ }, vi = (e) => {
2004
+ const t = document.querySelector("openlv-modal");
2005
+ if (t && t.remove(), !t) {
2006
+ li();
2007
+ const r = new rr(e);
2008
+ document.body.appendChild(r), r.showModal(), r.onClose = () => {
2009
+ tt("modal closed"), r.remove();
2010
+ };
2011
+ }
2012
+ };
2013
+ export {
2014
+ ai as ModalRoot,
2015
+ Fn as OPENLV_ICON_128,
2016
+ rr as OpenLVModalElement,
2017
+ rr as default,
2018
+ li as registerOpenLVModal,
2019
+ vi as triggerOpenModal,
2020
+ gi as useConnectionState
2021
+ };
2022
+ //# sourceMappingURL=index.es.js.map