@ddict/bubble 1.3.10 → 1.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bubble.es.js CHANGED
@@ -1,54 +1,54 @@
1
- import { computed as I, ref as R, shallowRef as Gt, watch as ee, getCurrentScope as Jt, onScopeDispose as Qt, shallowReadonly as ce, unref as Ce, createElementBlock as v, openBlock as p, createStaticVNode as Ke, createElementVNode as C, createVNode as D, toDisplayString as ne, Fragment as K, renderList as me, createCommentVNode as M, normalizeClass as k, createTextVNode as we, onUnmounted as Ge, createBlock as _, normalizeStyle as Xe, withModifiers as en, onMounted as St, nextTick as ct } from "vue";
2
- const ke = Math.min, te = Math.max, Re = Math.round, Ae = Math.floor, X = (e) => ({
1
+ import { computed as B, ref as R, shallowRef as nn, watch as te, getCurrentScope as on, onScopeDispose as rn, shallowReadonly as ce, unref as Ce, createElementBlock as v, openBlock as p, createStaticVNode as Je, createElementVNode as C, createVNode as W, toDisplayString as oe, Fragment as K, renderList as me, createCommentVNode as M, normalizeClass as k, createTextVNode as we, onUnmounted as Qe, createBlock as P, normalizeStyle as Ke, withModifiers as sn, onMounted as kt, nextTick as ht } from "vue";
2
+ const Re = Math.min, ne = Math.max, Be = Math.round, $e = Math.floor, X = (e) => ({
3
3
  x: e,
4
4
  y: e
5
- }), tn = {
5
+ }), ln = {
6
6
  left: "right",
7
7
  right: "left",
8
8
  bottom: "top",
9
9
  top: "bottom"
10
- }, nn = {
10
+ }, an = {
11
11
  start: "end",
12
12
  end: "start"
13
13
  };
14
- function ut(e, t, n) {
15
- return te(e, ke(t, n));
14
+ function pt(e, t, n) {
15
+ return ne(e, Re(t, n));
16
16
  }
17
- function Me(e, t) {
17
+ function Oe(e, t) {
18
18
  return typeof e == "function" ? e(t) : e;
19
19
  }
20
- function oe(e) {
20
+ function ie(e) {
21
21
  return e.split("-")[0];
22
22
  }
23
- function Oe(e) {
23
+ function De(e) {
24
24
  return e.split("-")[1];
25
25
  }
26
- function Tt(e) {
26
+ function Rt(e) {
27
27
  return e === "x" ? "y" : "x";
28
28
  }
29
- function Et(e) {
29
+ function Bt(e) {
30
30
  return e === "y" ? "height" : "width";
31
31
  }
32
32
  function de(e) {
33
- return ["top", "bottom"].includes(oe(e)) ? "y" : "x";
33
+ return ["top", "bottom"].includes(ie(e)) ? "y" : "x";
34
34
  }
35
- function At(e) {
36
- return Tt(de(e));
35
+ function It(e) {
36
+ return Rt(de(e));
37
37
  }
38
- function on(e, t, n) {
38
+ function cn(e, t, n) {
39
39
  n === void 0 && (n = !1);
40
- const o = Oe(e), i = At(e), s = Et(i);
40
+ const o = De(e), i = It(e), s = Bt(i);
41
41
  let r = i === "x" ? o === (n ? "end" : "start") ? "right" : "left" : o === "start" ? "bottom" : "top";
42
42
  return t.reference[s] > t.floating[s] && (r = Ie(r)), [r, Ie(r)];
43
43
  }
44
- function rn(e) {
44
+ function un(e) {
45
45
  const t = Ie(e);
46
- return [Ye(e), t, Ye(t)];
46
+ return [Ge(e), t, Ge(t)];
47
47
  }
48
- function Ye(e) {
49
- return e.replace(/start|end/g, (t) => nn[t]);
48
+ function Ge(e) {
49
+ return e.replace(/start|end/g, (t) => an[t]);
50
50
  }
51
- function sn(e, t, n) {
51
+ function dn(e, t, n) {
52
52
  const o = ["left", "right"], i = ["right", "left"], s = ["top", "bottom"], r = ["bottom", "top"];
53
53
  switch (e) {
54
54
  case "top":
@@ -61,15 +61,15 @@ function sn(e, t, n) {
61
61
  return [];
62
62
  }
63
63
  }
64
- function ln(e, t, n, o) {
65
- const i = Oe(e);
66
- let s = sn(oe(e), n === "start", o);
67
- return i && (s = s.map((r) => r + "-" + i), t && (s = s.concat(s.map(Ye)))), s;
64
+ function fn(e, t, n, o) {
65
+ const i = De(e);
66
+ let s = dn(ie(e), n === "start", o);
67
+ return i && (s = s.map((r) => r + "-" + i), t && (s = s.concat(s.map(Ge)))), s;
68
68
  }
69
69
  function Ie(e) {
70
- return e.replace(/left|right|bottom|top/g, (t) => tn[t]);
70
+ return e.replace(/left|right|bottom|top/g, (t) => ln[t]);
71
71
  }
72
- function an(e) {
72
+ function mn(e) {
73
73
  return {
74
74
  top: 0,
75
75
  right: 0,
@@ -78,15 +78,15 @@ function an(e) {
78
78
  ...e
79
79
  };
80
80
  }
81
- function cn(e) {
82
- return typeof e != "number" ? an(e) : {
81
+ function hn(e) {
82
+ return typeof e != "number" ? mn(e) : {
83
83
  top: e,
84
84
  right: e,
85
85
  bottom: e,
86
86
  left: e
87
87
  };
88
88
  }
89
- function Be(e) {
89
+ function Me(e) {
90
90
  const {
91
91
  x: t,
92
92
  y: n,
@@ -104,12 +104,12 @@ function Be(e) {
104
104
  y: n
105
105
  };
106
106
  }
107
- function dt(e, t, n) {
107
+ function gt(e, t, n) {
108
108
  let {
109
109
  reference: o,
110
110
  floating: i
111
111
  } = e;
112
- const s = de(t), r = At(t), a = Et(r), l = oe(t), c = s === "y", d = o.x + o.width / 2 - i.width / 2, h = o.y + o.height / 2 - i.height / 2, g = o[a] / 2 - i[a] / 2;
112
+ const s = de(t), r = It(t), a = Bt(r), l = ie(t), c = s === "y", d = o.x + o.width / 2 - i.width / 2, h = o.y + o.height / 2 - i.height / 2, g = o[a] / 2 - i[a] / 2;
113
113
  let f;
114
114
  switch (l) {
115
115
  case "top":
@@ -142,7 +142,7 @@ function dt(e, t, n) {
142
142
  y: o.y
143
143
  };
144
144
  }
145
- switch (Oe(t)) {
145
+ switch (De(t)) {
146
146
  case "start":
147
147
  f[r] -= g * (n && c ? -1 : 1);
148
148
  break;
@@ -152,7 +152,7 @@ function dt(e, t, n) {
152
152
  }
153
153
  return f;
154
154
  }
155
- const un = async (e, t, n) => {
155
+ const pn = async (e, t, n) => {
156
156
  const {
157
157
  placement: o = "bottom",
158
158
  strategy: i = "absolute",
@@ -166,7 +166,7 @@ const un = async (e, t, n) => {
166
166
  }), {
167
167
  x: d,
168
168
  y: h
169
- } = dt(c, o, l), g = o, f = {}, m = 0;
169
+ } = gt(c, o, l), g = o, f = {}, m = 0;
170
170
  for (let w = 0; w < a.length; w++) {
171
171
  const {
172
172
  name: y,
@@ -203,7 +203,7 @@ const un = async (e, t, n) => {
203
203
  }) : E.rects), {
204
204
  x: d,
205
205
  y: h
206
- } = dt(c, g, l)), w = -1);
206
+ } = gt(c, g, l)), w = -1);
207
207
  }
208
208
  return {
209
209
  x: d,
@@ -213,7 +213,7 @@ const un = async (e, t, n) => {
213
213
  middlewareData: f
214
214
  };
215
215
  };
216
- async function $t(e, t) {
216
+ async function Mt(e, t) {
217
217
  var n;
218
218
  t === void 0 && (t = {});
219
219
  const {
@@ -229,7 +229,7 @@ async function $t(e, t) {
229
229
  elementContext: h = "floating",
230
230
  altBoundary: g = !1,
231
231
  padding: f = 0
232
- } = Me(t, e), m = cn(f), y = a[g ? h === "floating" ? "reference" : "floating" : h], L = Be(await s.getClippingRect({
232
+ } = Oe(t, e), m = hn(f), y = a[g ? h === "floating" ? "reference" : "floating" : h], L = Me(await s.getClippingRect({
233
233
  element: (n = await (s.isElement == null ? void 0 : s.isElement(y))) == null || n ? y : y.contextElement || await (s.getDocumentElement == null ? void 0 : s.getDocumentElement(a.floating)),
234
234
  boundary: c,
235
235
  rootBoundary: d,
@@ -245,7 +245,7 @@ async function $t(e, t) {
245
245
  } : {
246
246
  x: 1,
247
247
  y: 1
248
- }, E = Be(s.convertOffsetParentRelativeRectToViewportRelativeRect ? await s.convertOffsetParentRelativeRectToViewportRelativeRect({
248
+ }, E = Me(s.convertOffsetParentRelativeRectToViewportRelativeRect ? await s.convertOffsetParentRelativeRectToViewportRelativeRect({
249
249
  elements: a,
250
250
  rect: S,
251
251
  offsetParent: x,
@@ -258,7 +258,7 @@ async function $t(e, t) {
258
258
  right: (E.right - L.right + m.right) / $.x
259
259
  };
260
260
  }
261
- const dn = function(e) {
261
+ const gn = function(e) {
262
262
  return e === void 0 && (e = {}), {
263
263
  name: "flip",
264
264
  options: e,
@@ -279,16 +279,16 @@ const dn = function(e) {
279
279
  fallbackAxisSideDirection: m = "none",
280
280
  flipAlignment: w = !0,
281
281
  ...y
282
- } = Me(e, t);
282
+ } = Oe(e, t);
283
283
  if ((n = s.arrow) != null && n.alignmentOffset)
284
284
  return {};
285
- const L = oe(i), S = de(a), x = oe(a) === a, $ = await (l.isRTL == null ? void 0 : l.isRTL(c.floating)), E = g || (x || !w ? [Ie(a)] : rn(a)), B = m !== "none";
286
- !g && B && E.push(...ln(a, w, m, $));
287
- const T = [a, ...E], F = await $t(t, y), N = [];
285
+ const L = ie(i), S = de(a), x = ie(a) === a, $ = await (l.isRTL == null ? void 0 : l.isRTL(c.floating)), E = g || (x || !w ? [Ie(a)] : un(a)), I = m !== "none";
286
+ !g && I && E.push(...fn(a, w, m, $));
287
+ const T = [a, ...E], z = await Mt(t, y), N = [];
288
288
  let G = ((o = s.flip) == null ? void 0 : o.overflows) || [];
289
- if (d && N.push(F[L]), h) {
290
- const O = on(i, r, $);
291
- N.push(F[O[0]], F[O[1]]);
289
+ if (d && N.push(z[L]), h) {
290
+ const O = cn(i, r, $);
291
+ N.push(z[O[0]], z[O[1]]);
292
292
  }
293
293
  if (G = [...G, {
294
294
  placement: i,
@@ -306,20 +306,20 @@ const dn = function(e) {
306
306
  placement: Se
307
307
  }
308
308
  };
309
- let J = (he = G.filter((H) => H.overflows[0] <= 0).sort((H, W) => H.overflows[1] - W.overflows[1])[0]) == null ? void 0 : he.placement;
309
+ let J = (he = G.filter((H) => H.overflows[0] <= 0).sort((H, D) => H.overflows[1] - D.overflows[1])[0]) == null ? void 0 : he.placement;
310
310
  if (!J)
311
311
  switch (f) {
312
312
  case "bestFit": {
313
313
  var pe;
314
- const H = (pe = G.filter((W) => {
315
- if (B) {
316
- const P = de(W.placement);
317
- return P === S || // Create a bias to the `y` side axis due to horizontal
314
+ const H = (pe = G.filter((D) => {
315
+ if (I) {
316
+ const F = de(D.placement);
317
+ return F === S || // Create a bias to the `y` side axis due to horizontal
318
318
  // reading directions favoring greater width.
319
- P === "y";
319
+ F === "y";
320
320
  }
321
321
  return !0;
322
- }).map((W) => [W.placement, W.overflows.filter((P) => P > 0).reduce((P, le) => P + le, 0)]).sort((W, P) => W[1] - P[1])[0]) == null ? void 0 : pe[0];
322
+ }).map((D) => [D.placement, D.overflows.filter((F) => F > 0).reduce((F, Q) => F + Q, 0)]).sort((D, F) => D[1] - F[1])[0]) == null ? void 0 : pe[0];
323
323
  H && (J = H);
324
324
  break;
325
325
  }
@@ -338,12 +338,12 @@ const dn = function(e) {
338
338
  }
339
339
  };
340
340
  };
341
- async function fn(e, t) {
341
+ async function vn(e, t) {
342
342
  const {
343
343
  placement: n,
344
344
  platform: o,
345
345
  elements: i
346
- } = e, s = await (o.isRTL == null ? void 0 : o.isRTL(i.floating)), r = oe(n), a = Oe(n), l = de(n) === "y", c = ["left", "top"].includes(r) ? -1 : 1, d = s && l ? -1 : 1, h = Me(t, e);
346
+ } = e, s = await (o.isRTL == null ? void 0 : o.isRTL(i.floating)), r = ie(n), a = De(n), l = de(n) === "y", c = ["left", "top"].includes(r) ? -1 : 1, d = s && l ? -1 : 1, h = Oe(t, e);
347
347
  let {
348
348
  mainAxis: g,
349
349
  crossAxis: f,
@@ -366,7 +366,7 @@ async function fn(e, t) {
366
366
  y: f * d
367
367
  };
368
368
  }
369
- const mn = function(e) {
369
+ const bn = function(e) {
370
370
  return e === void 0 && (e = 0), {
371
371
  name: "offset",
372
372
  options: e,
@@ -377,7 +377,7 @@ const mn = function(e) {
377
377
  y: s,
378
378
  placement: r,
379
379
  middlewareData: a
380
- } = t, l = await fn(t, e);
380
+ } = t, l = await vn(t, e);
381
381
  return r === ((n = a.offset) == null ? void 0 : n.placement) && (o = a.arrow) != null && o.alignmentOffset ? {} : {
382
382
  x: i + l.x,
383
383
  y: s + l.y,
@@ -388,7 +388,7 @@ const mn = function(e) {
388
388
  };
389
389
  }
390
390
  };
391
- }, hn = function(e) {
391
+ }, Cn = function(e) {
392
392
  return e === void 0 && (e = {}), {
393
393
  name: "shift",
394
394
  options: e,
@@ -413,18 +413,18 @@ const mn = function(e) {
413
413
  }
414
414
  },
415
415
  ...l
416
- } = Me(e, t), c = {
416
+ } = Oe(e, t), c = {
417
417
  x: n,
418
418
  y: o
419
- }, d = await $t(t, l), h = de(oe(i)), g = Tt(h);
419
+ }, d = await Mt(t, l), h = de(ie(i)), g = Rt(h);
420
420
  let f = c[g], m = c[h];
421
421
  if (s) {
422
422
  const y = g === "y" ? "top" : "left", L = g === "y" ? "bottom" : "right", S = f + d[y], x = f - d[L];
423
- f = ut(S, f, x);
423
+ f = pt(S, f, x);
424
424
  }
425
425
  if (r) {
426
426
  const y = h === "y" ? "top" : "left", L = h === "y" ? "bottom" : "right", S = m + d[y], x = m - d[L];
427
- m = ut(S, m, x);
427
+ m = pt(S, m, x);
428
428
  }
429
429
  const w = a.fn({
430
430
  ...t,
@@ -441,28 +441,28 @@ const mn = function(e) {
441
441
  }
442
442
  };
443
443
  };
444
- function re(e) {
445
- return Je(e) ? (e.nodeName || "").toLowerCase() : "#document";
444
+ function se(e) {
445
+ return et(e) ? (e.nodeName || "").toLowerCase() : "#document";
446
446
  }
447
- function z(e) {
447
+ function _(e) {
448
448
  var t;
449
449
  return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
450
450
  }
451
451
  function q(e) {
452
452
  var t;
453
- return (t = (Je(e) ? e.ownerDocument : e.document) || window.document) == null ? void 0 : t.documentElement;
453
+ return (t = (et(e) ? e.ownerDocument : e.document) || window.document) == null ? void 0 : t.documentElement;
454
454
  }
455
- function Je(e) {
456
- return e instanceof Node || e instanceof z(e).Node;
455
+ function et(e) {
456
+ return e instanceof Node || e instanceof _(e).Node;
457
457
  }
458
458
  function U(e) {
459
- return e instanceof Element || e instanceof z(e).Element;
459
+ return e instanceof Element || e instanceof _(e).Element;
460
460
  }
461
461
  function Z(e) {
462
- return e instanceof HTMLElement || e instanceof z(e).HTMLElement;
462
+ return e instanceof HTMLElement || e instanceof _(e).HTMLElement;
463
463
  }
464
- function ft(e) {
465
- return typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof z(e).ShadowRoot;
464
+ function vt(e) {
465
+ return typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof _(e).ShadowRoot;
466
466
  }
467
467
  function xe(e) {
468
468
  const {
@@ -473,10 +473,10 @@ function xe(e) {
473
473
  } = V(e);
474
474
  return /auto|scroll|overlay|hidden|clip/.test(t + o + n) && !["inline", "contents"].includes(i);
475
475
  }
476
- function pn(e) {
477
- return ["table", "td", "th"].includes(re(e));
476
+ function wn(e) {
477
+ return ["table", "td", "th"].includes(se(e));
478
478
  }
479
- function De(e) {
479
+ function Fe(e) {
480
480
  return [":popover-open", ":modal"].some((t) => {
481
481
  try {
482
482
  return e.matches(t);
@@ -485,31 +485,31 @@ function De(e) {
485
485
  }
486
486
  });
487
487
  }
488
- function Qe(e) {
489
- const t = et(), n = V(e);
488
+ function tt(e) {
489
+ const t = nt(), n = V(e);
490
490
  return n.transform !== "none" || n.perspective !== "none" || (n.containerType ? n.containerType !== "normal" : !1) || !t && (n.backdropFilter ? n.backdropFilter !== "none" : !1) || !t && (n.filter ? n.filter !== "none" : !1) || ["transform", "perspective", "filter"].some((o) => (n.willChange || "").includes(o)) || ["paint", "layout", "strict", "content"].some((o) => (n.contain || "").includes(o));
491
491
  }
492
- function gn(e) {
492
+ function yn(e) {
493
493
  let t = Y(e);
494
494
  for (; Z(t) && !fe(t); ) {
495
- if (De(t))
495
+ if (Fe(t))
496
496
  return null;
497
- if (Qe(t))
497
+ if (tt(t))
498
498
  return t;
499
499
  t = Y(t);
500
500
  }
501
501
  return null;
502
502
  }
503
- function et() {
503
+ function nt() {
504
504
  return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
505
505
  }
506
506
  function fe(e) {
507
- return ["html", "body", "#document"].includes(re(e));
507
+ return ["html", "body", "#document"].includes(se(e));
508
508
  }
509
509
  function V(e) {
510
- return z(e).getComputedStyle(e);
510
+ return _(e).getComputedStyle(e);
511
511
  }
512
- function Fe(e) {
512
+ function We(e) {
513
513
  return U(e) ? {
514
514
  scrollLeft: e.scrollLeft,
515
515
  scrollTop: e.scrollTop
@@ -519,96 +519,96 @@ function Fe(e) {
519
519
  };
520
520
  }
521
521
  function Y(e) {
522
- if (re(e) === "html")
522
+ if (se(e) === "html")
523
523
  return e;
524
524
  const t = (
525
525
  // Step into the shadow DOM of the parent of a slotted node.
526
526
  e.assignedSlot || // DOM Element detected.
527
527
  e.parentNode || // ShadowRoot detected.
528
- ft(e) && e.host || // Fallback.
528
+ vt(e) && e.host || // Fallback.
529
529
  q(e)
530
530
  );
531
- return ft(t) ? t.host : t;
531
+ return vt(t) ? t.host : t;
532
532
  }
533
- function kt(e) {
533
+ function Ot(e) {
534
534
  const t = Y(e);
535
- return fe(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : Z(t) && xe(t) ? t : kt(t);
535
+ return fe(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : Z(t) && xe(t) ? t : Ot(t);
536
536
  }
537
537
  function ye(e, t, n) {
538
538
  var o;
539
539
  t === void 0 && (t = []), n === void 0 && (n = !0);
540
- const i = kt(e), s = i === ((o = e.ownerDocument) == null ? void 0 : o.body), r = z(i);
540
+ const i = Ot(e), s = i === ((o = e.ownerDocument) == null ? void 0 : o.body), r = _(i);
541
541
  return s ? t.concat(r, r.visualViewport || [], xe(i) ? i : [], r.frameElement && n ? ye(r.frameElement) : []) : t.concat(i, ye(i, [], n));
542
542
  }
543
- function Rt(e) {
543
+ function Dt(e) {
544
544
  const t = V(e);
545
545
  let n = parseFloat(t.width) || 0, o = parseFloat(t.height) || 0;
546
- const i = Z(e), s = i ? e.offsetWidth : n, r = i ? e.offsetHeight : o, a = Re(n) !== s || Re(o) !== r;
546
+ const i = Z(e), s = i ? e.offsetWidth : n, r = i ? e.offsetHeight : o, a = Be(n) !== s || Be(o) !== r;
547
547
  return a && (n = s, o = r), {
548
548
  width: n,
549
549
  height: o,
550
550
  $: a
551
551
  };
552
552
  }
553
- function tt(e) {
553
+ function ot(e) {
554
554
  return U(e) ? e : e.contextElement;
555
555
  }
556
556
  function ue(e) {
557
- const t = tt(e);
557
+ const t = ot(e);
558
558
  if (!Z(t))
559
559
  return X(1);
560
560
  const n = t.getBoundingClientRect(), {
561
561
  width: o,
562
562
  height: i,
563
563
  $: s
564
- } = Rt(t);
565
- let r = (s ? Re(n.width) : n.width) / o, a = (s ? Re(n.height) : n.height) / i;
564
+ } = Dt(t);
565
+ let r = (s ? Be(n.width) : n.width) / o, a = (s ? Be(n.height) : n.height) / i;
566
566
  return (!r || !Number.isFinite(r)) && (r = 1), (!a || !Number.isFinite(a)) && (a = 1), {
567
567
  x: r,
568
568
  y: a
569
569
  };
570
570
  }
571
- const vn = /* @__PURE__ */ X(0);
572
- function It(e) {
573
- const t = z(e);
574
- return !et() || !t.visualViewport ? vn : {
571
+ const xn = /* @__PURE__ */ X(0);
572
+ function Ft(e) {
573
+ const t = _(e);
574
+ return !nt() || !t.visualViewport ? xn : {
575
575
  x: t.visualViewport.offsetLeft,
576
576
  y: t.visualViewport.offsetTop
577
577
  };
578
578
  }
579
- function bn(e, t, n) {
580
- return t === void 0 && (t = !1), !n || t && n !== z(e) ? !1 : t;
579
+ function Ln(e, t, n) {
580
+ return t === void 0 && (t = !1), !n || t && n !== _(e) ? !1 : t;
581
581
  }
582
- function ie(e, t, n, o) {
582
+ function re(e, t, n, o) {
583
583
  t === void 0 && (t = !1), n === void 0 && (n = !1);
584
- const i = e.getBoundingClientRect(), s = tt(e);
584
+ const i = e.getBoundingClientRect(), s = ot(e);
585
585
  let r = X(1);
586
586
  t && (o ? U(o) && (r = ue(o)) : r = ue(e));
587
- const a = bn(s, n, o) ? It(s) : X(0);
587
+ const a = Ln(s, n, o) ? Ft(s) : X(0);
588
588
  let l = (i.left + a.x) / r.x, c = (i.top + a.y) / r.y, d = i.width / r.x, h = i.height / r.y;
589
589
  if (s) {
590
- const g = z(s), f = o && U(o) ? z(o) : o;
590
+ const g = _(s), f = o && U(o) ? _(o) : o;
591
591
  let m = g, w = m.frameElement;
592
592
  for (; w && o && f !== m; ) {
593
593
  const y = ue(w), L = w.getBoundingClientRect(), S = V(w), x = L.left + (w.clientLeft + parseFloat(S.paddingLeft)) * y.x, $ = L.top + (w.clientTop + parseFloat(S.paddingTop)) * y.y;
594
- l *= y.x, c *= y.y, d *= y.x, h *= y.y, l += x, c += $, m = z(w), w = m.frameElement;
594
+ l *= y.x, c *= y.y, d *= y.x, h *= y.y, l += x, c += $, m = _(w), w = m.frameElement;
595
595
  }
596
596
  }
597
- return Be({
597
+ return Me({
598
598
  width: d,
599
599
  height: h,
600
600
  x: l,
601
601
  y: c
602
602
  });
603
603
  }
604
- function Cn(e) {
604
+ function Sn(e) {
605
605
  let {
606
606
  elements: t,
607
607
  rect: n,
608
608
  offsetParent: o,
609
609
  strategy: i
610
610
  } = e;
611
- const s = i === "fixed", r = q(o), a = t ? De(t.floating) : !1;
611
+ const s = i === "fixed", r = q(o), a = t ? Fe(t.floating) : !1;
612
612
  if (o === r || a && s)
613
613
  return n;
614
614
  let l = {
@@ -616,8 +616,8 @@ function Cn(e) {
616
616
  scrollTop: 0
617
617
  }, c = X(1);
618
618
  const d = X(0), h = Z(o);
619
- if ((h || !h && !s) && ((re(o) !== "body" || xe(r)) && (l = Fe(o)), Z(o))) {
620
- const g = ie(o);
619
+ if ((h || !h && !s) && ((se(o) !== "body" || xe(r)) && (l = We(o)), Z(o))) {
620
+ const g = re(o);
621
621
  c = ue(o), d.x = g.x + o.clientLeft, d.y = g.y + o.clientTop;
622
622
  }
623
623
  return {
@@ -627,29 +627,29 @@ function Cn(e) {
627
627
  y: n.y * c.y - l.scrollTop * c.y + d.y
628
628
  };
629
629
  }
630
- function wn(e) {
630
+ function Tn(e) {
631
631
  return Array.from(e.getClientRects());
632
632
  }
633
- function Bt(e) {
634
- return ie(q(e)).left + Fe(e).scrollLeft;
633
+ function Wt(e) {
634
+ return re(q(e)).left + We(e).scrollLeft;
635
635
  }
636
- function yn(e) {
637
- const t = q(e), n = Fe(e), o = e.ownerDocument.body, i = te(t.scrollWidth, t.clientWidth, o.scrollWidth, o.clientWidth), s = te(t.scrollHeight, t.clientHeight, o.scrollHeight, o.clientHeight);
638
- let r = -n.scrollLeft + Bt(e);
636
+ function En(e) {
637
+ const t = q(e), n = We(e), o = e.ownerDocument.body, i = ne(t.scrollWidth, t.clientWidth, o.scrollWidth, o.clientWidth), s = ne(t.scrollHeight, t.clientHeight, o.scrollHeight, o.clientHeight);
638
+ let r = -n.scrollLeft + Wt(e);
639
639
  const a = -n.scrollTop;
640
- return V(o).direction === "rtl" && (r += te(t.clientWidth, o.clientWidth) - i), {
640
+ return V(o).direction === "rtl" && (r += ne(t.clientWidth, o.clientWidth) - i), {
641
641
  width: i,
642
642
  height: s,
643
643
  x: r,
644
644
  y: a
645
645
  };
646
646
  }
647
- function xn(e, t) {
648
- const n = z(e), o = q(e), i = n.visualViewport;
647
+ function An(e, t) {
648
+ const n = _(e), o = q(e), i = n.visualViewport;
649
649
  let s = o.clientWidth, r = o.clientHeight, a = 0, l = 0;
650
650
  if (i) {
651
651
  s = i.width, r = i.height;
652
- const c = et();
652
+ const c = nt();
653
653
  (!c || c && t === "fixed") && (a = i.offsetLeft, l = i.offsetTop);
654
654
  }
655
655
  return {
@@ -659,8 +659,8 @@ function xn(e, t) {
659
659
  y: l
660
660
  };
661
661
  }
662
- function Ln(e, t) {
663
- const n = ie(e, !0, t === "fixed"), o = n.top + e.clientTop, i = n.left + e.clientLeft, s = Z(e) ? ue(e) : X(1), r = e.clientWidth * s.x, a = e.clientHeight * s.y, l = i * s.x, c = o * s.y;
662
+ function $n(e, t) {
663
+ const n = re(e, !0, t === "fixed"), o = n.top + e.clientTop, i = n.left + e.clientLeft, s = Z(e) ? ue(e) : X(1), r = e.clientWidth * s.x, a = e.clientHeight * s.y, l = i * s.x, c = o * s.y;
664
664
  return {
665
665
  width: r,
666
666
  height: a,
@@ -668,52 +668,52 @@ function Ln(e, t) {
668
668
  y: c
669
669
  };
670
670
  }
671
- function mt(e, t, n) {
671
+ function bt(e, t, n) {
672
672
  let o;
673
673
  if (t === "viewport")
674
- o = xn(e, n);
674
+ o = An(e, n);
675
675
  else if (t === "document")
676
- o = yn(q(e));
676
+ o = En(q(e));
677
677
  else if (U(t))
678
- o = Ln(t, n);
678
+ o = $n(t, n);
679
679
  else {
680
- const i = It(e);
680
+ const i = Ft(e);
681
681
  o = {
682
682
  ...t,
683
683
  x: t.x - i.x,
684
684
  y: t.y - i.y
685
685
  };
686
686
  }
687
- return Be(o);
687
+ return Me(o);
688
688
  }
689
- function Mt(e, t) {
689
+ function zt(e, t) {
690
690
  const n = Y(e);
691
- return n === t || !U(n) || fe(n) ? !1 : V(n).position === "fixed" || Mt(n, t);
691
+ return n === t || !U(n) || fe(n) ? !1 : V(n).position === "fixed" || zt(n, t);
692
692
  }
693
- function Sn(e, t) {
693
+ function kn(e, t) {
694
694
  const n = t.get(e);
695
695
  if (n)
696
696
  return n;
697
- let o = ye(e, [], !1).filter((a) => U(a) && re(a) !== "body"), i = null;
697
+ let o = ye(e, [], !1).filter((a) => U(a) && se(a) !== "body"), i = null;
698
698
  const s = V(e).position === "fixed";
699
699
  let r = s ? Y(e) : e;
700
700
  for (; U(r) && !fe(r); ) {
701
- const a = V(r), l = Qe(r);
702
- !l && a.position === "fixed" && (i = null), (s ? !l && !i : !l && a.position === "static" && !!i && ["absolute", "fixed"].includes(i.position) || xe(r) && !l && Mt(e, r)) ? o = o.filter((d) => d !== r) : i = a, r = Y(r);
701
+ const a = V(r), l = tt(r);
702
+ !l && a.position === "fixed" && (i = null), (s ? !l && !i : !l && a.position === "static" && !!i && ["absolute", "fixed"].includes(i.position) || xe(r) && !l && zt(e, r)) ? o = o.filter((d) => d !== r) : i = a, r = Y(r);
703
703
  }
704
704
  return t.set(e, o), o;
705
705
  }
706
- function Tn(e) {
706
+ function Rn(e) {
707
707
  let {
708
708
  element: t,
709
709
  boundary: n,
710
710
  rootBoundary: o,
711
711
  strategy: i
712
712
  } = e;
713
- const r = [...n === "clippingAncestors" ? De(t) ? [] : Sn(t, this._c) : [].concat(n), o], a = r[0], l = r.reduce((c, d) => {
714
- const h = mt(t, d, i);
715
- return c.top = te(h.top, c.top), c.right = ke(h.right, c.right), c.bottom = ke(h.bottom, c.bottom), c.left = te(h.left, c.left), c;
716
- }, mt(t, a, i));
713
+ const r = [...n === "clippingAncestors" ? Fe(t) ? [] : kn(t, this._c) : [].concat(n), o], a = r[0], l = r.reduce((c, d) => {
714
+ const h = bt(t, d, i);
715
+ return c.top = ne(h.top, c.top), c.right = Re(h.right, c.right), c.bottom = Re(h.bottom, c.bottom), c.left = ne(h.left, c.left), c;
716
+ }, bt(t, a, i));
717
717
  return {
718
718
  width: l.right - l.left,
719
719
  height: l.bottom - l.top,
@@ -721,28 +721,28 @@ function Tn(e) {
721
721
  y: l.top
722
722
  };
723
723
  }
724
- function En(e) {
724
+ function Bn(e) {
725
725
  const {
726
726
  width: t,
727
727
  height: n
728
- } = Rt(e);
728
+ } = Dt(e);
729
729
  return {
730
730
  width: t,
731
731
  height: n
732
732
  };
733
733
  }
734
- function An(e, t, n) {
735
- const o = Z(t), i = q(t), s = n === "fixed", r = ie(e, !0, s, t);
734
+ function In(e, t, n) {
735
+ const o = Z(t), i = q(t), s = n === "fixed", r = re(e, !0, s, t);
736
736
  let a = {
737
737
  scrollLeft: 0,
738
738
  scrollTop: 0
739
739
  };
740
740
  const l = X(0);
741
741
  if (o || !o && !s)
742
- if ((re(t) !== "body" || xe(i)) && (a = Fe(t)), o) {
743
- const h = ie(t, !0, s, t);
742
+ if ((se(t) !== "body" || xe(i)) && (a = We(t)), o) {
743
+ const h = re(t, !0, s, t);
744
744
  l.x = h.x + t.clientLeft, l.y = h.y + t.clientTop;
745
- } else i && (l.x = Bt(i));
745
+ } else i && (l.x = Wt(i));
746
746
  const c = r.left + a.scrollLeft - l.x, d = r.top + a.scrollTop - l.y;
747
747
  return {
748
748
  x: c,
@@ -751,34 +751,34 @@ function An(e, t, n) {
751
751
  height: r.height
752
752
  };
753
753
  }
754
- function je(e) {
754
+ function qe(e) {
755
755
  return V(e).position === "static";
756
756
  }
757
- function ht(e, t) {
757
+ function Ct(e, t) {
758
758
  return !Z(e) || V(e).position === "fixed" ? null : t ? t(e) : e.offsetParent;
759
759
  }
760
- function Ot(e, t) {
761
- const n = z(e);
762
- if (De(e))
760
+ function _t(e, t) {
761
+ const n = _(e);
762
+ if (Fe(e))
763
763
  return n;
764
764
  if (!Z(e)) {
765
765
  let i = Y(e);
766
766
  for (; i && !fe(i); ) {
767
- if (U(i) && !je(i))
767
+ if (U(i) && !qe(i))
768
768
  return i;
769
769
  i = Y(i);
770
770
  }
771
771
  return n;
772
772
  }
773
- let o = ht(e, t);
774
- for (; o && pn(o) && je(o); )
775
- o = ht(o, t);
776
- return o && fe(o) && je(o) && !Qe(o) ? n : o || gn(e) || n;
773
+ let o = Ct(e, t);
774
+ for (; o && wn(o) && qe(o); )
775
+ o = Ct(o, t);
776
+ return o && fe(o) && qe(o) && !tt(o) ? n : o || yn(e) || n;
777
777
  }
778
- const $n = async function(e) {
779
- const t = this.getOffsetParent || Ot, n = this.getDimensions, o = await n(e.floating);
778
+ const Mn = async function(e) {
779
+ const t = this.getOffsetParent || _t, n = this.getDimensions, o = await n(e.floating);
780
780
  return {
781
- reference: An(e.reference, await t(e.floating), e.strategy),
781
+ reference: In(e.reference, await t(e.floating), e.strategy),
782
782
  floating: {
783
783
  x: 0,
784
784
  y: 0,
@@ -787,22 +787,22 @@ const $n = async function(e) {
787
787
  }
788
788
  };
789
789
  };
790
- function kn(e) {
790
+ function On(e) {
791
791
  return V(e).direction === "rtl";
792
792
  }
793
- const Rn = {
794
- convertOffsetParentRelativeRectToViewportRelativeRect: Cn,
793
+ const Dn = {
794
+ convertOffsetParentRelativeRectToViewportRelativeRect: Sn,
795
795
  getDocumentElement: q,
796
- getClippingRect: Tn,
797
- getOffsetParent: Ot,
798
- getElementRects: $n,
799
- getClientRects: wn,
800
- getDimensions: En,
796
+ getClippingRect: Rn,
797
+ getOffsetParent: _t,
798
+ getElementRects: Mn,
799
+ getClientRects: Tn,
800
+ getDimensions: Bn,
801
801
  getScale: ue,
802
802
  isElement: U,
803
- isRTL: kn
803
+ isRTL: On
804
804
  };
805
- function In(e, t) {
805
+ function Fn(e, t) {
806
806
  let n = null, o;
807
807
  const i = q(e);
808
808
  function s() {
@@ -819,17 +819,17 @@ function In(e, t) {
819
819
  } = e.getBoundingClientRect();
820
820
  if (a || t(), !h || !g)
821
821
  return;
822
- const f = Ae(d), m = Ae(i.clientWidth - (c + h)), w = Ae(i.clientHeight - (d + g)), y = Ae(c), S = {
822
+ const f = $e(d), m = $e(i.clientWidth - (c + h)), w = $e(i.clientHeight - (d + g)), y = $e(c), S = {
823
823
  rootMargin: -f + "px " + -m + "px " + -w + "px " + -y + "px",
824
- threshold: te(0, ke(1, l)) || 1
824
+ threshold: ne(0, Re(1, l)) || 1
825
825
  };
826
826
  let x = !0;
827
827
  function $(E) {
828
- const B = E[0].intersectionRatio;
829
- if (B !== l) {
828
+ const I = E[0].intersectionRatio;
829
+ if (I !== l) {
830
830
  if (!x)
831
831
  return r();
832
- B ? r(!1, B) : o = setTimeout(() => {
832
+ I ? r(!1, I) : o = setTimeout(() => {
833
833
  r(!1, 1e-7);
834
834
  }, 1e3);
835
835
  }
@@ -848,7 +848,7 @@ function In(e, t) {
848
848
  }
849
849
  return r(!0), s;
850
850
  }
851
- function Bn(e, t, n, o) {
851
+ function Wn(e, t, n, o) {
852
852
  o === void 0 && (o = {});
853
853
  const {
854
854
  ancestorScroll: i = !0,
@@ -856,13 +856,13 @@ function Bn(e, t, n, o) {
856
856
  elementResize: r = typeof ResizeObserver == "function",
857
857
  layoutShift: a = typeof IntersectionObserver == "function",
858
858
  animationFrame: l = !1
859
- } = o, c = tt(e), d = i || s ? [...c ? ye(c) : [], ...ye(t)] : [];
859
+ } = o, c = ot(e), d = i || s ? [...c ? ye(c) : [], ...ye(t)] : [];
860
860
  d.forEach((L) => {
861
861
  i && L.addEventListener("scroll", n, {
862
862
  passive: !0
863
863
  }), s && L.addEventListener("resize", n);
864
864
  });
865
- const h = c && a ? In(c, n) : null;
865
+ const h = c && a ? Fn(c, n) : null;
866
866
  let g = -1, f = null;
867
867
  r && (f = new ResizeObserver((L) => {
868
868
  let [S] = L;
@@ -871,10 +871,10 @@ function Bn(e, t, n, o) {
871
871
  (x = f) == null || x.observe(t);
872
872
  })), n();
873
873
  }), c && !l && f.observe(c), f.observe(t));
874
- let m, w = l ? ie(e) : null;
874
+ let m, w = l ? re(e) : null;
875
875
  l && y();
876
876
  function y() {
877
- const L = ie(e);
877
+ const L = re(e);
878
878
  w && (L.x !== w.x || L.y !== w.y || L.width !== w.width || L.height !== w.height) && n(), w = L, m = requestAnimationFrame(y);
879
879
  }
880
880
  return n(), () => {
@@ -884,54 +884,54 @@ function Bn(e, t, n, o) {
884
884
  }), h == null || h(), (L = f) == null || L.disconnect(), f = null, l && cancelAnimationFrame(m);
885
885
  };
886
886
  }
887
- const Mn = mn, On = hn, Dn = dn, Fn = (e, t, n) => {
887
+ const zn = bn, _n = Cn, Pn = gn, Vn = (e, t, n) => {
888
888
  const o = /* @__PURE__ */ new Map(), i = {
889
- platform: Rn,
889
+ platform: Dn,
890
890
  ...n
891
891
  }, s = {
892
892
  ...i.platform,
893
893
  _c: o
894
894
  };
895
- return un(e, t, {
895
+ return pn(e, t, {
896
896
  ...i,
897
897
  platform: s
898
898
  });
899
899
  };
900
- function Wn(e) {
900
+ function Nn(e) {
901
901
  return e != null && typeof e == "object" && "$el" in e;
902
902
  }
903
- function pt(e) {
904
- if (Wn(e)) {
903
+ function wt(e) {
904
+ if (Nn(e)) {
905
905
  const t = e.$el;
906
- return Je(t) && re(t) === "#comment" ? null : t;
906
+ return et(t) && se(t) === "#comment" ? null : t;
907
907
  }
908
908
  return e;
909
909
  }
910
910
  function ve(e) {
911
911
  return typeof e == "function" ? e() : Ce(e);
912
912
  }
913
- function Dt(e) {
913
+ function Pt(e) {
914
914
  return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
915
915
  }
916
- function gt(e, t) {
917
- const n = Dt(e);
916
+ function yt(e, t) {
917
+ const n = Pt(e);
918
918
  return Math.round(t * n) / n;
919
919
  }
920
- function zn(e, t, n) {
920
+ function Hn(e, t, n) {
921
921
  n === void 0 && (n = {});
922
- const o = n.whileElementsMounted, i = I(() => {
922
+ const o = n.whileElementsMounted, i = B(() => {
923
923
  var T;
924
924
  return (T = ve(n.open)) != null ? T : !0;
925
- }), s = I(() => ve(n.middleware)), r = I(() => {
925
+ }), s = B(() => ve(n.middleware)), r = B(() => {
926
926
  var T;
927
927
  return (T = ve(n.placement)) != null ? T : "bottom";
928
- }), a = I(() => {
928
+ }), a = B(() => {
929
929
  var T;
930
930
  return (T = ve(n.strategy)) != null ? T : "absolute";
931
- }), l = I(() => {
931
+ }), l = B(() => {
932
932
  var T;
933
933
  return (T = ve(n.transform)) != null ? T : !0;
934
- }), c = I(() => pt(e.value)), d = I(() => pt(t.value)), h = R(0), g = R(0), f = R(a.value), m = R(r.value), w = Gt({}), y = R(!1), L = I(() => {
934
+ }), c = B(() => wt(e.value)), d = B(() => wt(t.value)), h = R(0), g = R(0), f = R(a.value), m = R(r.value), w = nn({}), y = R(!1), L = B(() => {
935
935
  const T = {
936
936
  position: f.value,
937
937
  left: "0",
@@ -939,22 +939,22 @@ function zn(e, t, n) {
939
939
  };
940
940
  if (!d.value)
941
941
  return T;
942
- const F = gt(d.value, h.value), N = gt(d.value, g.value);
942
+ const z = yt(d.value, h.value), N = yt(d.value, g.value);
943
943
  return l.value ? {
944
944
  ...T,
945
- transform: "translate(" + F + "px, " + N + "px)",
946
- ...Dt(d.value) >= 1.5 && {
945
+ transform: "translate(" + z + "px, " + N + "px)",
946
+ ...Pt(d.value) >= 1.5 && {
947
947
  willChange: "transform"
948
948
  }
949
949
  } : {
950
950
  position: f.value,
951
- left: F + "px",
951
+ left: z + "px",
952
952
  top: N + "px"
953
953
  };
954
954
  });
955
955
  let S;
956
956
  function x() {
957
- c.value == null || d.value == null || Fn(c.value, d.value, {
957
+ c.value == null || d.value == null || Vn(c.value, d.value, {
958
958
  middleware: s.value,
959
959
  placement: r.value,
960
960
  strategy: a.value
@@ -975,16 +975,16 @@ function zn(e, t, n) {
975
975
  return;
976
976
  }
977
977
  }
978
- function B() {
978
+ function I() {
979
979
  i.value || (y.value = !1);
980
980
  }
981
- return ee([s, r, a], x, {
981
+ return te([s, r, a], x, {
982
982
  flush: "sync"
983
- }), ee([c, d], E, {
983
+ }), te([c, d], E, {
984
984
  flush: "sync"
985
- }), ee(i, B, {
985
+ }), te(i, I, {
986
986
  flush: "sync"
987
- }), Jt() && Qt($), {
987
+ }), on() && rn($), {
988
988
  x: ce(h),
989
989
  y: ce(g),
990
990
  strategy: ce(f),
@@ -995,50 +995,50 @@ function zn(e, t, n) {
995
995
  update: x
996
996
  };
997
997
  }
998
- const _n = "data:image/svg+xml,%3csvg%20width='1324'%20height='1326'%20viewBox='0%200%201324%201326'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='141'%20y='78'%20width='1042'%20height='1170'%20fill='white'/%3e%3cpath%20d='M184.533%201.99984C135.867%207.19984%2089.8666%2029.8665%2056.4%2065.1998C29.6%2093.4665%2012.5333%20126.266%203.73329%20166.4L0.666626%20180V663.333V1146.67L3.73329%201160.27C12.5333%201200.4%2029.6%201233.2%2056.4%201261.47C90.4%201297.33%20135.333%201319.33%20185.6%201324.67C203.333%201326.53%201122.53%201326.4%201139.73%201324.53C1188.53%201319.33%201229.07%201299.73%201264.13%201264.8C1294.27%201234.67%201311.47%201202.67%201320.8%201159.33C1323.2%201148.4%201323.33%201130%201323.33%20663.333C1323.33%20196.667%201323.2%20178.266%201320.8%20167.333C1311.47%20124%201294.27%2091.9998%201264.13%2061.8664C1229.07%2026.9331%201188.53%207.33314%201139.73%202.13314C1124.67%200.399809%20200%200.399842%20184.533%201.99984ZM732.933%20151.466C746.8%20152.933%20763.333%20157.6%20774%20163.067C800.267%20176.267%20822.4%20200.4%20833.2%20227.333C841.867%20249.333%20841.467%20233.467%20841.067%20502C840.533%20777.6%20841.733%20750.267%20829.2%20776.133C822.133%20790.933%20810.667%20806.533%20800.267%20815.2C795.2%20819.6%20793.2%20822.267%20792%20827.067C786.133%20848.267%20768.667%20885.867%20755.2%20906.133C724.533%20952%20681.2%20986.133%20624%201009.33C615.6%201012.8%20608.4%201015.87%20608.133%201016.13C607.867%201016.27%20614.533%201023.33%20622.933%201031.6C633.467%201042.13%20639.333%201049.07%20642.133%201054.4C646.933%201063.87%20645.467%201064%20672.667%201050.8C724.933%201025.47%20762.933%20994.8%20794.933%20952C811.467%20929.867%20829.867%20895.333%20839.333%20868.267C841.333%20862.667%20843.467%20858%20844.133%20858C844.667%20858%20845.6%20859.333%20846.133%20860.933C848.267%20868.133%20863.333%20900.8%20870.133%20913.2C898%20963.867%20931.6%201001.2%20975.333%201030.27C989.867%201040%201017.2%201054.4%201031.6%201059.73L1037.2%201061.87L1041.33%201054.67C1048.4%201042.4%201056.67%201032.27%201067.87%201022.4L1078.67%201012.8L1071.6%201010.27C1067.87%201008.8%201060.53%201006%201055.6%201004.13C1040.93%20998.533%201013.73%20984%201000%20974.267C985.733%20964.133%20960.8%20940.667%20948.933%20926.267C935.067%20909.333%20921.467%20887.467%20910%20864C900.133%20844%20887.2%20812.133%20884.667%20801.6L883.733%20798H971.867H1060V769.333V740.667H963.333H866.533L867.333%20736.267C868.4%20729.867%20870.4%20693.067%20871.467%20662.933C872.267%20639.067%20872.533%20636.4%20874.8%20635.2C878.667%20633.2%20881.333%20626.667%20882.267%20617.333L883.067%20608.667H872.133C864.133%20608.667%20861.067%20608.133%20860.533%20606.8C860%20605.467%20881.2%20466%20886.133%20438.267L886.933%20433.867L977.867%20434.4C1066.67%20434.8%201068.93%20434.8%201079.87%20437.733C1124.8%20449.6%201158.67%20482.533%201172.93%20528L1176.67%20540V808V1076L1172.93%201087.73C1158.53%201133.6%201126.13%201164.93%201078.93%201178.4L1068.67%201181.33L812.667%201181.73C638.8%201182%20552.667%201181.73%20544.4%201180.67C488.667%201174.4%20443.2%201132.13%20432.533%201076.93C431.067%201068.93%20430.667%201046.4%20430.667%20956.667V846.133L340.4%20845.6C252.8%20845.2%20249.6%20845.067%20239.067%20842.267C196.533%20831.067%20164.533%20800.133%20151.067%20757.333L147.333%20745.333V499.333V253.333L150.4%20242C159.067%20209.067%20180.4%20181.866%20210.667%20164.933C221.2%20159.066%20240.4%20152.933%20252.667%20151.6C268.533%20149.733%20716.933%20149.6%20732.933%20151.466Z'%20fill='%233B5695'/%3e%3cpath%20d='M256.533%20213.333C232.933%20218.533%20214.133%20237.067%20209.333%20259.733C208.4%20264.533%20208%20337.2%20208.267%20502L208.667%20737.333L211.733%20744.933C218.533%20761.733%20231.733%20774.533%20248.667%20780.933L256.667%20784L490%20784.4C749.2%20784.8%20734.4%20785.333%20750.133%20776C764.267%20767.6%20775.467%20752.4%20778.667%20737.067C779.6%20732.8%20780%20652.133%20779.733%20494L779.333%20257.333L775.067%20248.267C767.2%20231.6%20756.933%20222%20740.133%20215.467L731.333%20212L498%20211.733C306.8%20211.6%20263.2%20211.867%20256.533%20213.333ZM492%20281.2C546.267%20290.267%20590.267%20311.2%20622.533%20343.333C653.867%20374.667%20671.867%20409.867%20680.267%20456.667C684.133%20478.533%20684.133%20516.267%20680.133%20538.533C665.467%20621.067%20606.933%20684.4%20524%20707.467C490%20716.933%20488.4%20716.933%20392.4%20717.6L305.333%20718.133V498V277.867L391.733%20278.4C465.733%20278.8%20480%20279.2%20492%20281.2Z'%20fill='%233B5695'/%3e%3cpath%20d='M384%20462.933V576.133L345.067%20611.467C306.533%20646.267%20306.133%20646.667%20310.667%20647.067C313.2%20647.333%20348.933%20647.333%20390%20646.933C472.667%20646.267%20477.6%20645.867%20503.6%20637.333C527.6%20629.333%20543.333%20620%20560.267%20603.6C590.133%20574.667%20604.4%20536.267%20602.267%20489.733C600.533%20450.267%20588.267%20420%20564%20395.333C546.8%20377.867%20531.6%20368.4%20506.267%20360C482.933%20352.133%20474.533%20351.2%20427.067%20350.4L384%20349.733V462.933Z'%20fill='%233B5695'/%3e%3c/svg%3e", se = (e, t) => {
998
+ const Un = "data:image/svg+xml,%3csvg%20width='1324'%20height='1326'%20viewBox='0%200%201324%201326'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='141'%20y='78'%20width='1042'%20height='1170'%20fill='white'/%3e%3cpath%20d='M184.533%201.99984C135.867%207.19984%2089.8666%2029.8665%2056.4%2065.1998C29.6%2093.4665%2012.5333%20126.266%203.73329%20166.4L0.666626%20180V663.333V1146.67L3.73329%201160.27C12.5333%201200.4%2029.6%201233.2%2056.4%201261.47C90.4%201297.33%20135.333%201319.33%20185.6%201324.67C203.333%201326.53%201122.53%201326.4%201139.73%201324.53C1188.53%201319.33%201229.07%201299.73%201264.13%201264.8C1294.27%201234.67%201311.47%201202.67%201320.8%201159.33C1323.2%201148.4%201323.33%201130%201323.33%20663.333C1323.33%20196.667%201323.2%20178.266%201320.8%20167.333C1311.47%20124%201294.27%2091.9998%201264.13%2061.8664C1229.07%2026.9331%201188.53%207.33314%201139.73%202.13314C1124.67%200.399809%20200%200.399842%20184.533%201.99984ZM732.933%20151.466C746.8%20152.933%20763.333%20157.6%20774%20163.067C800.267%20176.267%20822.4%20200.4%20833.2%20227.333C841.867%20249.333%20841.467%20233.467%20841.067%20502C840.533%20777.6%20841.733%20750.267%20829.2%20776.133C822.133%20790.933%20810.667%20806.533%20800.267%20815.2C795.2%20819.6%20793.2%20822.267%20792%20827.067C786.133%20848.267%20768.667%20885.867%20755.2%20906.133C724.533%20952%20681.2%20986.133%20624%201009.33C615.6%201012.8%20608.4%201015.87%20608.133%201016.13C607.867%201016.27%20614.533%201023.33%20622.933%201031.6C633.467%201042.13%20639.333%201049.07%20642.133%201054.4C646.933%201063.87%20645.467%201064%20672.667%201050.8C724.933%201025.47%20762.933%20994.8%20794.933%20952C811.467%20929.867%20829.867%20895.333%20839.333%20868.267C841.333%20862.667%20843.467%20858%20844.133%20858C844.667%20858%20845.6%20859.333%20846.133%20860.933C848.267%20868.133%20863.333%20900.8%20870.133%20913.2C898%20963.867%20931.6%201001.2%20975.333%201030.27C989.867%201040%201017.2%201054.4%201031.6%201059.73L1037.2%201061.87L1041.33%201054.67C1048.4%201042.4%201056.67%201032.27%201067.87%201022.4L1078.67%201012.8L1071.6%201010.27C1067.87%201008.8%201060.53%201006%201055.6%201004.13C1040.93%20998.533%201013.73%20984%201000%20974.267C985.733%20964.133%20960.8%20940.667%20948.933%20926.267C935.067%20909.333%20921.467%20887.467%20910%20864C900.133%20844%20887.2%20812.133%20884.667%20801.6L883.733%20798H971.867H1060V769.333V740.667H963.333H866.533L867.333%20736.267C868.4%20729.867%20870.4%20693.067%20871.467%20662.933C872.267%20639.067%20872.533%20636.4%20874.8%20635.2C878.667%20633.2%20881.333%20626.667%20882.267%20617.333L883.067%20608.667H872.133C864.133%20608.667%20861.067%20608.133%20860.533%20606.8C860%20605.467%20881.2%20466%20886.133%20438.267L886.933%20433.867L977.867%20434.4C1066.67%20434.8%201068.93%20434.8%201079.87%20437.733C1124.8%20449.6%201158.67%20482.533%201172.93%20528L1176.67%20540V808V1076L1172.93%201087.73C1158.53%201133.6%201126.13%201164.93%201078.93%201178.4L1068.67%201181.33L812.667%201181.73C638.8%201182%20552.667%201181.73%20544.4%201180.67C488.667%201174.4%20443.2%201132.13%20432.533%201076.93C431.067%201068.93%20430.667%201046.4%20430.667%20956.667V846.133L340.4%20845.6C252.8%20845.2%20249.6%20845.067%20239.067%20842.267C196.533%20831.067%20164.533%20800.133%20151.067%20757.333L147.333%20745.333V499.333V253.333L150.4%20242C159.067%20209.067%20180.4%20181.866%20210.667%20164.933C221.2%20159.066%20240.4%20152.933%20252.667%20151.6C268.533%20149.733%20716.933%20149.6%20732.933%20151.466Z'%20fill='%233B5695'/%3e%3cpath%20d='M256.533%20213.333C232.933%20218.533%20214.133%20237.067%20209.333%20259.733C208.4%20264.533%20208%20337.2%20208.267%20502L208.667%20737.333L211.733%20744.933C218.533%20761.733%20231.733%20774.533%20248.667%20780.933L256.667%20784L490%20784.4C749.2%20784.8%20734.4%20785.333%20750.133%20776C764.267%20767.6%20775.467%20752.4%20778.667%20737.067C779.6%20732.8%20780%20652.133%20779.733%20494L779.333%20257.333L775.067%20248.267C767.2%20231.6%20756.933%20222%20740.133%20215.467L731.333%20212L498%20211.733C306.8%20211.6%20263.2%20211.867%20256.533%20213.333ZM492%20281.2C546.267%20290.267%20590.267%20311.2%20622.533%20343.333C653.867%20374.667%20671.867%20409.867%20680.267%20456.667C684.133%20478.533%20684.133%20516.267%20680.133%20538.533C665.467%20621.067%20606.933%20684.4%20524%20707.467C490%20716.933%20488.4%20716.933%20392.4%20717.6L305.333%20718.133V498V277.867L391.733%20278.4C465.733%20278.8%20480%20279.2%20492%20281.2Z'%20fill='%233B5695'/%3e%3cpath%20d='M384%20462.933V576.133L345.067%20611.467C306.533%20646.267%20306.133%20646.667%20310.667%20647.067C313.2%20647.333%20348.933%20647.333%20390%20646.933C472.667%20646.267%20477.6%20645.867%20503.6%20637.333C527.6%20629.333%20543.333%20620%20560.267%20603.6C590.133%20574.667%20604.4%20536.267%20602.267%20489.733C600.533%20450.267%20588.267%20420%20564%20395.333C546.8%20377.867%20531.6%20368.4%20506.267%20360C482.933%20352.133%20474.533%20351.2%20427.067%20350.4L384%20349.733V462.933Z'%20fill='%233B5695'/%3e%3c/svg%3e", le = (e, t) => {
999
999
  const n = e.__vccOpts || e;
1000
1000
  for (const [o, i] of t)
1001
1001
  n[o] = i;
1002
1002
  return n;
1003
- }, Pn = {
1003
+ }, Zn = {
1004
1004
  name: "Logo"
1005
- }, Vn = {
1006
- src: _n,
1005
+ }, jn = {
1006
+ src: Un,
1007
1007
  alt: "DDict Logo",
1008
1008
  class: "w-6 h-6 cursor-pointer"
1009
1009
  };
1010
- function Nn(e, t, n, o, i, s) {
1011
- return p(), v("img", Vn);
1010
+ function qn(e, t, n, o, i, s) {
1011
+ return p(), v("img", jn);
1012
1012
  }
1013
- const Hn = /* @__PURE__ */ se(Pn, [["render", Nn]]), Un = {}, Zn = {
1013
+ const Xn = /* @__PURE__ */ le(Zn, [["render", qn]]), Yn = {}, Kn = {
1014
1014
  class: "w-12 h-12 text-primary",
1015
1015
  xmlns: "http://www.w3.org/2000/svg",
1016
1016
  viewBox: "0 0 24 24"
1017
- }, jn = /* @__PURE__ */ Ke('<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle>', 3), qn = [
1018
- jn
1017
+ }, Gn = /* @__PURE__ */ Je('<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle>', 3), Jn = [
1018
+ Gn
1019
1019
  ];
1020
- function Xn(e, t) {
1021
- return p(), v("svg", Zn, qn);
1020
+ function Qn(e, t) {
1021
+ return p(), v("svg", Kn, Jn);
1022
1022
  }
1023
- const Yn = /* @__PURE__ */ se(Un, [["render", Xn]]), Kn = { class: "rounded-lg bg-base-100 px-4 py-2 border border-base-300 shadow-lg" }, Gn = { class: "flex justify-center" }, Jn = {
1023
+ const eo = /* @__PURE__ */ le(Yn, [["render", Qn]]), to = { class: "rounded-lg bg-base-100 px-4 py-2 border border-base-300 shadow-lg" }, no = { class: "flex justify-center" }, oo = {
1024
1024
  __name: "Loading",
1025
1025
  setup(e) {
1026
- return (t, n) => (p(), v("div", Kn, [
1027
- C("div", Gn, [
1028
- D(Yn)
1026
+ return (t, n) => (p(), v("div", to, [
1027
+ C("div", no, [
1028
+ W(eo)
1029
1029
  ])
1030
1030
  ]));
1031
1031
  }
1032
- }, Qn = {
1032
+ }, io = {
1033
1033
  name: "Phonetic",
1034
1034
  props: ["phonetic"]
1035
- }, eo = { class: "p-0 m-0" }, to = { class: "text-xs font-md text-base-content/60" };
1036
- function no(e, t, n, o, i, s) {
1037
- return p(), v("p", eo, [
1038
- C("span", to, "/" + ne(n.phonetic) + "/", 1)
1035
+ }, ro = { class: "p-0 m-0" }, so = { class: "text-xs font-md text-base-content/60" };
1036
+ function lo(e, t, n, o, i, s) {
1037
+ return p(), v("p", ro, [
1038
+ C("span", so, "/" + oe(n.phonetic) + "/", 1)
1039
1039
  ]);
1040
1040
  }
1041
- const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-col gap-2" }, ro = {
1041
+ const ao = /* @__PURE__ */ le(io, [["render", lo]]), co = { class: "flex flex-col gap-2" }, uo = {
1042
1042
  __name: "Sentences",
1043
1043
  props: {
1044
1044
  sentences: {
@@ -1047,22 +1047,22 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1047
1047
  }
1048
1048
  },
1049
1049
  setup(e) {
1050
- const t = e, n = I(() => t.sentences.split(`
1050
+ const t = e, n = B(() => t.sentences.split(`
1051
1051
  `));
1052
- return (o, i) => (p(), v("div", io, [
1052
+ return (o, i) => (p(), v("div", co, [
1053
1053
  (p(!0), v(K, null, me(n.value, (s, r) => (p(), v("p", {
1054
1054
  key: r,
1055
1055
  class: "text-base text-base-content leading-tight p-0 mr-2"
1056
- }, ne(s), 1))), 128))
1056
+ }, oe(s), 1))), 128))
1057
1057
  ]));
1058
1058
  }
1059
- }, so = /* @__PURE__ */ C("p", { class: "text-sm font-medium text-primary text-center" }, [
1059
+ }, fo = /* @__PURE__ */ C("p", { class: "text-sm font-medium text-primary text-center" }, [
1060
1060
  /* @__PURE__ */ we(" 🤔 Don't understand? "),
1061
1061
  /* @__PURE__ */ C("span", { class: "text-secondary font-semibold" }, "Try AI"),
1062
1062
  /* @__PURE__ */ we(" ✨ ")
1063
- ], -1), lo = [
1064
- so
1065
- ], ao = {
1063
+ ], -1), mo = [
1064
+ fo
1065
+ ], ho = {
1066
1066
  __name: "AIPromptButton",
1067
1067
  props: {
1068
1068
  show: {
@@ -1083,11 +1083,11 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1083
1083
  e.isLoading ? "from-primary/5 to-secondary/5 border-primary/10 cursor-not-allowed opacity-75" : "from-primary/10 to-secondary/10 border-primary/20 cursor-pointer hover:from-primary/20 hover:to-secondary/20 hover:border-primary/30"
1084
1084
  ]),
1085
1085
  onClick: n[0] || (n[0] = (o) => !e.isLoading && t.$emit("click"))
1086
- }, lo, 2)) : M("", !0);
1086
+ }, mo, 2)) : M("", !0);
1087
1087
  }
1088
- }, co = /* @__PURE__ */ C("p", { class: "text-sm font-medium text-accent text-center" }, "💡 Need Summary? ✨", -1), uo = [
1089
- co
1090
- ], fo = {
1088
+ }, po = /* @__PURE__ */ C("p", { class: "text-sm font-medium text-accent text-center" }, "💡 Need Summary? ✨", -1), go = [
1089
+ po
1090
+ ], vo = {
1091
1091
  __name: "AIExplainPromptButton",
1092
1092
  props: {
1093
1093
  show: {
@@ -1108,15 +1108,15 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1108
1108
  e.isLoading ? "from-accent/5 to-info/5 border-accent/10 cursor-not-allowed opacity-75" : "from-accent/10 to-info/10 border-accent/20 cursor-pointer hover:from-accent/20 hover:to-info/20 hover:border-accent/30"
1109
1109
  ]),
1110
1110
  onClick: n[0] || (n[0] = (o) => !e.isLoading && t.$emit("click"))
1111
- }, uo, 2)) : M("", !0);
1111
+ }, go, 2)) : M("", !0);
1112
1112
  }
1113
- }, mo = /* @__PURE__ */ C("p", { class: "text-sm font-medium text-success text-center" }, [
1113
+ }, bo = /* @__PURE__ */ C("p", { class: "text-sm font-medium text-success text-center" }, [
1114
1114
  /* @__PURE__ */ we(" 📚 Learn this? "),
1115
1115
  /* @__PURE__ */ C("span", { class: "text-warning font-semibold" }, "Study now"),
1116
1116
  /* @__PURE__ */ we(" 🎯 ")
1117
- ], -1), ho = [
1118
- mo
1119
- ], po = {
1117
+ ], -1), Co = [
1118
+ bo
1119
+ ], wo = {
1120
1120
  __name: "LearnPromptButton",
1121
1121
  props: {
1122
1122
  show: {
@@ -1133,9 +1133,9 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1133
1133
  "from-success/10 to-warning/10 border-success/20 cursor-pointer hover:from-success/20 hover:to-warning/20 hover:border-success/30"
1134
1134
  ]),
1135
1135
  onClick: n[0] || (n[0] = (o) => t.$emit("click"))
1136
- }, ho)) : M("", !0);
1136
+ }, Co)) : M("", !0);
1137
1137
  }
1138
- }, go = { class: "capitalize text-base italic font-normal text-base-content/60" }, vo = { class: "text-base leading-6 text-base-content" }, bo = {
1138
+ }, yo = { class: "capitalize text-base italic font-normal text-base-content/60" }, xo = { class: "text-base leading-6 text-base-content" }, Lo = {
1139
1139
  __name: "Dict",
1140
1140
  props: {
1141
1141
  dictionary: Array
@@ -1146,15 +1146,15 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1146
1146
  key: i,
1147
1147
  class: "mt-2"
1148
1148
  }, [
1149
- C("p", go, ne(o.pos), 1),
1150
- C("span", vo, ne(o.terms.join(", ")), 1)
1149
+ C("p", yo, oe(o.pos), 1),
1150
+ C("span", xo, oe(o.terms.join(", ")), 1)
1151
1151
  ]))), 128))
1152
1152
  ]));
1153
1153
  }
1154
- }, Co = { class: "" }, wo = /* @__PURE__ */ C("p", { class: "capitalize text-base italic font-normal text-base-content/60 mt-2" }, "Summary", -1), yo = {
1154
+ }, So = { class: "" }, To = /* @__PURE__ */ C("p", { class: "capitalize text-base italic font-normal text-base-content/60 mt-2" }, "Summary", -1), Eo = {
1155
1155
  key: 0,
1156
1156
  class: "list-none list-outside mt-2"
1157
- }, xo = ["innerHTML"], Lo = {
1157
+ }, Ao = ["innerHTML"], $o = {
1158
1158
  __name: "Explanation",
1159
1159
  props: {
1160
1160
  explanation: Object
@@ -1162,32 +1162,32 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1162
1162
  setup(e) {
1163
1163
  return (t, n) => {
1164
1164
  var o, i;
1165
- return p(), v("div", Co, [
1166
- wo,
1167
- (o = e.explanation) != null && o.result ? (p(), v("ul", yo, [
1165
+ return p(), v("div", So, [
1166
+ To,
1167
+ (o = e.explanation) != null && o.result ? (p(), v("ul", Eo, [
1168
1168
  (p(!0), v(K, null, me(((i = e.explanation) == null ? void 0 : i.result.split(`
1169
1169
  `)) || [], (s, r) => (p(), v("li", {
1170
1170
  key: `${s}-${r}`,
1171
1171
  innerHTML: s,
1172
1172
  class: "text-base text-base-content"
1173
- }, null, 8, xo))), 128))
1173
+ }, null, 8, Ao))), 128))
1174
1174
  ])) : M("", !0)
1175
1175
  ]);
1176
1176
  };
1177
1177
  }
1178
- }, So = ["disabled"], To = /* @__PURE__ */ C("path", {
1178
+ }, ko = ["disabled"], Ro = /* @__PURE__ */ C("path", {
1179
1179
  d: "M2.33325 4.66667H3.51125C3.82693 4.6667 4.13239 4.55473 4.37325 4.35067L6.83392 2.26667C6.99592 2.12953 7.19374 2.04156 7.40407 2.01312C7.61441 1.98468 7.82849 2.01696 8.02109 2.10615C8.21369 2.19534 8.37678 2.33772 8.49114 2.51652C8.60551 2.69532 8.66638 2.90309 8.66659 3.11534V12.8847C8.66649 13.097 8.60565 13.305 8.49125 13.4839C8.37685 13.6628 8.21367 13.8053 8.02094 13.8945C7.82822 13.9837 7.614 14.0159 7.40356 13.9874C7.19312 13.9588 6.99523 13.8707 6.83325 13.7333L4.37325 11.6487C4.13229 11.4449 3.82685 11.3331 3.51125 11.3333H2.33325C2.06804 11.3333 1.81368 11.228 1.62615 11.0404C1.43861 10.8529 1.33325 10.5986 1.33325 10.3333V5.66667C1.33325 5.40145 1.43861 5.1471 1.62615 4.95956C1.81368 4.77203 2.06804 4.66667 2.33325 4.66667ZM11.1779 11.18C11.5969 10.763 11.9294 10.2674 12.1562 9.72156C12.3831 9.17572 12.4999 8.59044 12.4999 7.99934C12.4999 7.40823 12.3831 6.82295 12.1562 6.27711C11.9294 5.73127 11.5969 5.23564 11.1779 4.81867C11.1317 4.77098 11.0765 4.73297 11.0155 4.70686C10.9544 4.68075 10.8888 4.66705 10.8224 4.66657C10.756 4.66609 10.6902 4.67883 10.6288 4.70406C10.5674 4.72929 10.5116 4.76649 10.4647 4.8135C10.4179 4.86051 10.3808 4.91639 10.3558 4.97787C10.3307 5.03935 10.3181 5.10521 10.3188 5.17159C10.3195 5.23798 10.3334 5.30357 10.3597 5.36453C10.3859 5.42549 10.4241 5.48061 10.4719 5.52667C10.7977 5.85079 11.0562 6.23609 11.2326 6.66043C11.409 7.08477 11.4998 7.53979 11.4998 7.99934C11.4998 8.45888 11.409 8.9139 11.2326 9.33824C11.0562 9.76258 10.7977 10.1479 10.4719 10.472C10.4241 10.5181 10.3859 10.5732 10.3597 10.6341C10.3334 10.6951 10.3195 10.7607 10.3188 10.8271C10.3181 10.8935 10.3307 10.9593 10.3558 11.0208C10.3808 11.0823 10.4179 11.1382 10.4647 11.1852C10.5116 11.2322 10.5674 11.2694 10.6288 11.2946C10.6902 11.3198 10.756 11.3326 10.8224 11.3321C10.8888 11.3316 10.9544 11.3179 11.0155 11.2918C11.0765 11.2657 11.1317 11.2277 11.1779 11.18ZM12.7113 13.2127C12.6123 13.2126 12.5157 13.1832 12.4335 13.1281C12.3513 13.0731 12.2873 12.9949 12.2495 12.9035C12.2118 12.8121 12.202 12.7115 12.2214 12.6146C12.2408 12.5176 12.2886 12.4285 12.3586 12.3587C12.9317 11.7866 13.3865 11.1071 13.6967 10.359C14.0069 9.61101 14.1666 8.80915 14.1666 7.99934C14.1666 7.18952 14.0069 6.38766 13.6967 5.63963C13.3865 4.8916 12.9317 4.2121 12.3586 3.64C12.3122 3.59351 12.2754 3.53834 12.2503 3.47764C12.2252 3.41693 12.2124 3.35188 12.2124 3.2862C12.2125 3.22052 12.2255 3.15549 12.2507 3.09483C12.2759 3.03417 12.3128 2.97907 12.3593 2.93267C12.4057 2.88627 12.4609 2.84948 12.5216 2.8244C12.5823 2.79932 12.6474 2.78645 12.7131 2.78651C12.7787 2.78657 12.8438 2.79957 12.9044 2.82476C12.9651 2.84995 13.0202 2.88685 13.0666 2.93334C13.7327 3.59825 14.2612 4.38801 14.6218 5.25741C14.9824 6.12681 15.168 7.05879 15.168 8C15.168 8.94122 14.9824 9.87319 14.6218 10.7426C14.2612 11.612 13.7327 12.4018 13.0666 13.0667C13.02 13.1134 12.9646 13.1504 12.9036 13.1756C12.8426 13.2007 12.7772 13.2129 12.7113 13.2127Z",
1180
1180
  fill: "currentColor"
1181
- }, null, -1), Eo = [
1182
- To
1183
- ], Ao = ["disabled"], $o = /* @__PURE__ */ C("path", {
1181
+ }, null, -1), Bo = [
1182
+ Ro
1183
+ ], Io = ["disabled"], Mo = /* @__PURE__ */ C("path", {
1184
1184
  "fill-rule": "evenodd",
1185
1185
  d: "M4.5 7.5a3 3 0 0 1 3-3h9a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3h-9a3 3 0 0 1-3-3v-9Z",
1186
1186
  "clip-rule": "evenodd",
1187
1187
  fill: "currentColor"
1188
- }, null, -1), ko = [
1189
- $o
1190
- ], Ro = {
1188
+ }, null, -1), Oo = [
1189
+ Mo
1190
+ ], Do = {
1191
1191
  __name: "Player",
1192
1192
  props: {
1193
1193
  tts: {
@@ -1201,9 +1201,9 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1201
1201
  },
1202
1202
  emits: ["loadTTS"],
1203
1203
  setup(e, { emit: t }) {
1204
- const n = e, o = t, i = I(() => n.tts), s = R(!1), r = new Audio(), a = new (window.AudioContext || window.webkitAudioContext)();
1204
+ const n = e, o = t, i = B(() => n.tts), s = R(!1), r = new Audio(), a = new (window.AudioContext || window.webkitAudioContext)();
1205
1205
  let l = null;
1206
- ee(
1206
+ te(
1207
1207
  i,
1208
1208
  () => {
1209
1209
  if (!i.value) {
@@ -1213,7 +1213,7 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1213
1213
  d();
1214
1214
  },
1215
1215
  { immediate: !0 }
1216
- ), Ge(() => {
1216
+ ), Qe(() => {
1217
1217
  g(), r.src = "", a.close();
1218
1218
  });
1219
1219
  function c() {
@@ -1262,8 +1262,8 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1262
1262
  viewBox: "0 0 24 24",
1263
1263
  fill: "none",
1264
1264
  xmlns: "http://www.w3.org/2000/svg"
1265
- }, ko, 2))
1266
- ], 10, Ao)) : (p(), v("button", {
1265
+ }, Oo, 2))
1266
+ ], 10, Io)) : (p(), v("button", {
1267
1267
  key: 0,
1268
1268
  class: k(["btn btn-xs btn-circle", [
1269
1269
  { "btn-ghost": !e.disabled },
@@ -1277,30 +1277,30 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1277
1277
  viewBox: "0 0 16 16",
1278
1278
  fill: "none",
1279
1279
  xmlns: "http://www.w3.org/2000/svg"
1280
- }, Eo, 2))
1281
- ], 10, So));
1280
+ }, Bo, 2))
1281
+ ], 10, ko));
1282
1282
  }
1283
- }, Io = {
1283
+ }, Fo = {
1284
1284
  class: "bg-base-100 tooltip tooltip-top before:!bottom-[100%] before:!bg-base-100 before:!border before:!border-solid before:!border-base-300 before:!shadow-lg before:!rounded-md before:!text-base-content after:!border-transparent",
1285
1285
  "data-tip": "Favorite"
1286
- }, Bo = ["disabled"], Mo = /* @__PURE__ */ C("path", {
1286
+ }, Wo = ["disabled"], zo = /* @__PURE__ */ C("path", {
1287
1287
  d: "M14.9491 5.89315C14.8278 5.53128 14.5111 5.27252 14.1226 5.21783L10.5264 4.7114L8.91813 1.55315C8.74435 1.21195 8.39257 1 7.99998 1C7.60739 1 7.25557 1.21195 7.08183 1.55315L5.47358 4.7114L1.8774 5.21783C1.48888 5.27252 1.17219 5.53128 1.05086 5.89315C0.929554 6.25501 1.02881 6.64477 1.30993 6.91038L3.91217 9.36871L3.29786 12.8399C3.2315 13.215 3.38755 13.5868 3.7052 13.8105C3.88128 13.9344 4.08938 14 4.30704 14C4.47232 14 4.63705 13.9606 4.78341 13.886L7.99995 12.2471L11.2165 13.886C11.3628 13.9606 11.5276 14 11.6929 14C11.9106 14 12.1187 13.9345 12.2948 13.8105C12.6124 13.5868 12.7685 13.215 12.7021 12.84L12.0878 9.36871L14.6901 6.91035C14.9712 6.64477 15.0704 6.25498 14.9491 5.89315ZM14.0266 6.25082L11.2455 8.87813C11.1335 8.98392 11.0824 9.13637 11.1089 9.28575L11.7654 12.9956C11.7701 13.0226 11.759 13.0493 11.7362 13.0653C11.7202 13.0766 11.7038 13.079 11.6929 13.079C11.6809 13.079 11.6694 13.0762 11.6587 13.0708L8.22108 11.3192C8.15189 11.284 8.07593 11.2663 7.99998 11.2663C7.92402 11.2663 7.84807 11.284 7.77882 11.3193L4.34118 13.0708C4.33052 13.0763 4.31904 13.079 4.30701 13.079C4.29611 13.079 4.27969 13.0767 4.26373 13.0654C4.24092 13.0494 4.22975 13.0226 4.2345 12.9957L4.89104 9.28584C4.91747 9.13646 4.86637 8.98401 4.75439 8.87822L1.97327 6.25091C1.95308 6.23184 1.94595 6.20383 1.95466 6.17786C1.9634 6.15185 1.98612 6.13326 2.01405 6.12933L5.85743 5.58807C6.0122 5.56626 6.14599 5.47208 6.21521 5.33616L7.93404 1.9608C7.94653 1.9363 7.97178 1.92107 7.99998 1.92107C8.02818 1.92107 8.05343 1.9363 8.06591 1.9608L9.78468 5.33607C9.85391 5.47199 9.9877 5.5662 10.1425 5.58799L13.9859 6.12924C14.0138 6.1332 14.0365 6.15176 14.0452 6.17777C14.0539 6.20374 14.0468 6.23175 14.0266 6.25082Z",
1288
1288
  fill: "currentColor"
1289
- }, null, -1), Oo = [
1290
- Mo
1291
- ], Do = /* @__PURE__ */ C("path", {
1289
+ }, null, -1), _o = [
1290
+ zo
1291
+ ], Po = /* @__PURE__ */ C("path", {
1292
1292
  d: "M7.47207 1.31905C7.57125 1.12371 7.77589 1 8.00001 1C8.22413 1 8.42877 1.12367 8.52795 1.31905L10.3721 4.95175L14.4959 5.53427C14.7177 5.5656 14.9019 5.7166 14.9712 5.9238C15.0404 6.13101 14.9827 6.35843 14.8222 6.51049L11.8382 9.33816L12.5427 13.3309C12.5806 13.5456 12.4897 13.7626 12.3084 13.8906C12.1272 14.0187 11.8868 14.0356 11.6884 13.9342L8.00004 12.0491L4.31158 13.9343C4.11323 14.0356 3.87286 14.0187 3.69157 13.8907C3.51028 13.7627 3.4195 13.5457 3.45736 13.3309L4.1618 9.33819L1.17781 6.51052C1.01735 6.35846 0.959571 6.13101 1.02884 5.92383C1.09807 5.71663 1.28232 5.56563 1.50409 5.53431L5.62787 4.95178L7.47207 1.31905Z",
1293
1293
  fill: "currentColor"
1294
- }, null, -1), Fo = [
1295
- Do
1296
- ], Wo = {
1294
+ }, null, -1), Vo = [
1295
+ Po
1296
+ ], No = {
1297
1297
  __name: "Favorite",
1298
1298
  props: {
1299
1299
  isFilled: Boolean,
1300
1300
  disabled: Boolean
1301
1301
  },
1302
1302
  setup(e) {
1303
- return (t, n) => (p(), v("div", Io, [
1303
+ return (t, n) => (p(), v("div", Fo, [
1304
1304
  C("button", {
1305
1305
  class: k(["btn btn-xs btn-circle", [
1306
1306
  { "btn-ghost": !e.disabled },
@@ -1314,45 +1314,45 @@ const oo = /* @__PURE__ */ se(Qn, [["render", no]]), io = { class: "flex flex-co
1314
1314
  viewBox: "0 0 16 16",
1315
1315
  fill: "none",
1316
1316
  xmlns: "http://www.w3.org/2000/svg"
1317
- }, Fo, 2)) : (p(), v("svg", {
1317
+ }, Vo, 2)) : (p(), v("svg", {
1318
1318
  key: 0,
1319
1319
  class: k(["w-4 h-4 text-primary", [{ "opacity-100": !e.disabled }, { "opacity-50 transform": e.disabled }]]),
1320
1320
  viewBox: "0 0 16 16",
1321
1321
  fill: "none",
1322
1322
  xmlns: "http://www.w3.org/2000/svg"
1323
- }, Oo, 2))
1324
- ], 10, Bo)
1323
+ }, _o, 2))
1324
+ ], 10, Wo)
1325
1325
  ]));
1326
1326
  }
1327
- }, zo = {}, _o = {
1327
+ }, Ho = {}, Uo = {
1328
1328
  class: "w-6 h-6 text-primary",
1329
1329
  xmlns: "http://www.w3.org/2000/svg",
1330
1330
  viewBox: "0 0 24 24"
1331
- }, Po = /* @__PURE__ */ Ke('<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle>', 3), Vo = [
1332
- Po
1331
+ }, Zo = /* @__PURE__ */ Je('<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"></animate></circle>', 3), jo = [
1332
+ Zo
1333
1333
  ];
1334
- function No(e, t) {
1335
- return p(), v("svg", _o, Vo);
1334
+ function qo(e, t) {
1335
+ return p(), v("svg", Uo, jo);
1336
1336
  }
1337
- const nt = /* @__PURE__ */ se(zo, [["render", No]]), Ho = {
1337
+ const it = /* @__PURE__ */ le(Ho, [["render", qo]]), Xo = {
1338
1338
  class: "bg-base-100 tooltip tooltip-top before:!bottom-[100%] before:!bg-base-100 before:!border before:!border-solid before:!border-base-300 before:!shadow-lg before:!rounded-md before:!text-base-content after:!border-transparent",
1339
1339
  "data-tip": "AI Translate"
1340
- }, Uo = ["disabled"], Zo = /* @__PURE__ */ C("path", {
1340
+ }, Yo = ["disabled"], Ko = /* @__PURE__ */ C("path", {
1341
1341
  d: "M6.8544 3.20309C5.39975 2.89815 4.26277 1.76117 3.95787 0.30649C3.92042 0.12792 3.76292 0 3.58041 0C3.3979 0 3.2404 0.12792 3.20297 0.30652C2.89805 1.76117 1.76107 2.89812 0.306418 3.20302C0.127818 3.24045 -0.00012207 3.39798 -0.00012207 3.58046C-0.00012207 3.76295 0.127798 3.92047 0.306418 3.9579C1.76105 4.26285 2.89798 5.3998 3.2029 6.85448C3.24033 7.03307 3.39783 7.16102 3.58034 7.16102C3.76282 7.16102 3.92035 7.0331 3.95778 6.85448C4.26272 5.39983 5.39973 4.26287 6.85438 3.95799C7.03297 3.92056 7.16092 3.76306 7.16092 3.58056C7.1609 3.39805 7.03297 3.24052 6.8544 3.20309ZM3.58036 5.60938C3.14292 4.73132 2.42956 4.01792 1.55151 3.58049C2.42958 3.14305 3.14297 2.42968 3.58041 1.55161C4.01785 2.4297 4.73122 3.14307 5.60926 3.58053C4.73119 4.01797 4.0178 4.73132 3.58036 5.60938Z",
1342
1342
  fill: "currentColor"
1343
- }, null, -1), jo = /* @__PURE__ */ C("path", {
1343
+ }, null, -1), Go = /* @__PURE__ */ C("path", {
1344
1344
  d: "M6.21683 9.574C5.53147 9.4303 4.99578 8.8947 4.85209 8.2093C4.81466 8.0307 4.65716 7.90271 4.47465 7.90271C4.29217 7.90271 4.13464 8.0306 4.09721 8.2092C3.95352 8.8946 3.4178 9.4303 2.73244 9.574C2.55385 9.6114 2.4259 9.7689 2.4259 9.9514C2.4259 10.1339 2.55383 10.2914 2.73244 10.3288C3.41778 10.4725 3.95349 11.0082 4.09716 11.6936C4.13459 11.8722 4.2921 12.0002 4.4746 12.0002C4.65709 12.0002 4.81461 11.8723 4.85204 11.6936C4.99574 11.0082 5.53145 10.4725 6.21683 10.3289C6.39543 10.2914 6.52337 10.1339 6.52337 9.9514C6.52337 9.7689 6.39545 9.6114 6.21683 9.574ZM4.47463 10.6408C4.29163 10.3688 4.05725 10.1345 3.78526 9.9515C4.0573 9.7684 4.29163 9.5341 4.47463 9.2621C4.65765 9.5341 4.892 9.7685 5.164 9.9515C4.892 10.1345 4.65763 10.3688 4.47463 10.6408Z",
1345
1345
  fill: "currentColor"
1346
- }, null, -1), qo = /* @__PURE__ */ C("path", {
1346
+ }, null, -1), Jo = /* @__PURE__ */ C("path", {
1347
1347
  d: "M11.4271 6.00324C10.5007 5.80904 9.7766 5.08496 9.5825 4.15859C9.545 3.98 9.3875 3.85205 9.205 3.85205C9.0225 3.85205 8.865 3.97995 8.8276 4.15857C8.6334 5.08496 7.90932 5.80902 6.98293 6.0032C6.80434 6.04063 6.67639 6.19815 6.67639 6.38064C6.67639 6.56312 6.80431 6.72062 6.98293 6.75807C7.9093 6.95228 8.6334 7.67633 8.8275 8.6027C8.865 8.7813 9.0225 8.9093 9.205 8.9093C9.3875 8.9093 9.545 8.7814 9.5824 8.6027C9.7766 7.67633 10.5007 6.95228 11.4271 6.75812C11.6057 6.72067 11.7336 6.56317 11.7336 6.38068C11.7336 6.1982 11.6057 6.04067 11.4271 6.00324ZM9.205 7.47681C8.9365 7.02634 8.5593 6.64914 8.1089 6.38066C8.5593 6.11218 8.9365 5.73502 9.205 5.28453C9.4735 5.73502 9.8507 6.11221 10.3012 6.38068C9.8507 6.64916 9.4735 7.02636 9.205 7.47681Z",
1348
1348
  fill: "currentColor"
1349
- }, null, -1), Xo = [
1350
- Zo,
1351
- jo,
1352
- qo
1353
- ], Yo = /* @__PURE__ */ Ke('<path d="M6.8544 3.20309C5.39975 2.89815 4.26277 1.76117 3.95787 0.30649C3.92042 0.12792 3.76292 0 3.58041 0C3.3979 0 3.2404 0.12792 3.20297 0.30652C2.89805 1.76117 1.76107 2.89812 0.306418 3.20302C0.127818 3.24045 -0.00012207 3.39798 -0.00012207 3.58046C-0.00012207 3.76295 0.127798 3.92047 0.306418 3.9579C1.76105 4.26285 2.89798 5.3998 3.2029 6.85448C3.24033 7.03307 3.39783 7.16102 3.58034 7.16102C3.76282 7.16102 3.92035 7.0331 3.95778 6.85448C4.26272 5.39983 5.39973 4.26287 6.85438 3.95799C7.03297 3.92056 7.16092 3.76306 7.16092 3.58056C7.1609 3.39805 7.03297 3.24052 6.8544 3.20309ZM3.58036 5.60938C3.14292 4.73132 2.42956 4.01792 1.55151 3.58049C2.42958 3.14305 3.14297 2.42968 3.58041 1.55161C4.01785 2.4297 4.73122 3.14307 5.60926 3.58053C4.73119 4.01797 4.0178 4.73132 3.58036 5.60938Z" fill="currentColor"></path><path d="M6.21683 9.574C5.53147 9.4303 4.99578 8.8947 4.85209 8.2093C4.81466 8.0307 4.65716 7.90271 4.47465 7.90271C4.29217 7.90271 4.13464 8.0306 4.09721 8.2092C3.95352 8.8946 3.4178 9.4303 2.73244 9.574C2.55385 9.6114 2.4259 9.7689 2.4259 9.9514C2.4259 10.1339 2.55383 10.2914 2.73244 10.3288C3.41778 10.4725 3.95349 11.0082 4.09716 11.6936C4.13459 11.8722 4.2921 12.0002 4.4746 12.0002C4.65709 12.0002 4.81461 11.8723 4.85204 11.6936C4.99574 11.0082 5.53145 10.4725 6.21683 10.3289C6.39543 10.2914 6.52337 10.1339 6.52337 9.9514C6.52337 9.7689 6.39545 9.6114 6.21683 9.574ZM4.47463 10.6408C4.29163 10.3688 4.05725 10.1345 3.78526 9.9515C4.0573 9.7684 4.29163 9.5341 4.47463 9.2621C4.65765 9.5341 4.892 9.7685 5.164 9.9515C4.892 10.1345 4.65763 10.3688 4.47463 10.6408Z" fill="currentColor"></path><path d="M11.4271 6.00324C10.5007 5.80904 9.7766 5.08496 9.5825 4.15859C9.545 3.98 9.3875 3.85205 9.205 3.85205C9.0225 3.85205 8.865 3.97995 8.8276 4.15857C8.6334 5.08496 7.90932 5.80902 6.98293 6.0032C6.80434 6.04063 6.67639 6.19815 6.67639 6.38064C6.67639 6.56312 6.80431 6.72062 6.98293 6.75807C7.9093 6.95228 8.6334 7.67633 8.8275 8.6027C8.865 8.7813 9.0225 8.9093 9.205 8.9093C9.3875 8.9093 9.545 8.7814 9.5824 8.6027C9.7766 7.67633 10.5007 6.95228 11.4271 6.75812C11.6057 6.72067 11.7336 6.56317 11.7336 6.38068C11.7336 6.1982 11.6057 6.04067 11.4271 6.00324ZM9.205 7.47681C8.9365 7.02634 8.5593 6.64914 8.1089 6.38066C8.5593 6.11218 8.9365 5.73502 9.205 5.28453C9.4735 5.73502 9.8507 6.11221 10.3012 6.38068C9.8507 6.64916 9.4735 7.02636 9.205 7.47681Z" fill="currentColor"></path><circle cx="3.5" cy="3.5" r="1.5" fill="currentColor"></circle><ellipse cx="4.5" cy="10" rx="0.5" ry="1" fill="currentColor"></ellipse><circle cx="9" cy="6" r="1" fill="currentColor"></circle>', 6), Ko = [
1354
- Yo
1355
- ], Go = {
1349
+ }, null, -1), Qo = [
1350
+ Ko,
1351
+ Go,
1352
+ Jo
1353
+ ], ei = /* @__PURE__ */ Je('<path d="M6.8544 3.20309C5.39975 2.89815 4.26277 1.76117 3.95787 0.30649C3.92042 0.12792 3.76292 0 3.58041 0C3.3979 0 3.2404 0.12792 3.20297 0.30652C2.89805 1.76117 1.76107 2.89812 0.306418 3.20302C0.127818 3.24045 -0.00012207 3.39798 -0.00012207 3.58046C-0.00012207 3.76295 0.127798 3.92047 0.306418 3.9579C1.76105 4.26285 2.89798 5.3998 3.2029 6.85448C3.24033 7.03307 3.39783 7.16102 3.58034 7.16102C3.76282 7.16102 3.92035 7.0331 3.95778 6.85448C4.26272 5.39983 5.39973 4.26287 6.85438 3.95799C7.03297 3.92056 7.16092 3.76306 7.16092 3.58056C7.1609 3.39805 7.03297 3.24052 6.8544 3.20309ZM3.58036 5.60938C3.14292 4.73132 2.42956 4.01792 1.55151 3.58049C2.42958 3.14305 3.14297 2.42968 3.58041 1.55161C4.01785 2.4297 4.73122 3.14307 5.60926 3.58053C4.73119 4.01797 4.0178 4.73132 3.58036 5.60938Z" fill="currentColor"></path><path d="M6.21683 9.574C5.53147 9.4303 4.99578 8.8947 4.85209 8.2093C4.81466 8.0307 4.65716 7.90271 4.47465 7.90271C4.29217 7.90271 4.13464 8.0306 4.09721 8.2092C3.95352 8.8946 3.4178 9.4303 2.73244 9.574C2.55385 9.6114 2.4259 9.7689 2.4259 9.9514C2.4259 10.1339 2.55383 10.2914 2.73244 10.3288C3.41778 10.4725 3.95349 11.0082 4.09716 11.6936C4.13459 11.8722 4.2921 12.0002 4.4746 12.0002C4.65709 12.0002 4.81461 11.8723 4.85204 11.6936C4.99574 11.0082 5.53145 10.4725 6.21683 10.3289C6.39543 10.2914 6.52337 10.1339 6.52337 9.9514C6.52337 9.7689 6.39545 9.6114 6.21683 9.574ZM4.47463 10.6408C4.29163 10.3688 4.05725 10.1345 3.78526 9.9515C4.0573 9.7684 4.29163 9.5341 4.47463 9.2621C4.65765 9.5341 4.892 9.7685 5.164 9.9515C4.892 10.1345 4.65763 10.3688 4.47463 10.6408Z" fill="currentColor"></path><path d="M11.4271 6.00324C10.5007 5.80904 9.7766 5.08496 9.5825 4.15859C9.545 3.98 9.3875 3.85205 9.205 3.85205C9.0225 3.85205 8.865 3.97995 8.8276 4.15857C8.6334 5.08496 7.90932 5.80902 6.98293 6.0032C6.80434 6.04063 6.67639 6.19815 6.67639 6.38064C6.67639 6.56312 6.80431 6.72062 6.98293 6.75807C7.9093 6.95228 8.6334 7.67633 8.8275 8.6027C8.865 8.7813 9.0225 8.9093 9.205 8.9093C9.3875 8.9093 9.545 8.7814 9.5824 8.6027C9.7766 7.67633 10.5007 6.95228 11.4271 6.75812C11.6057 6.72067 11.7336 6.56317 11.7336 6.38068C11.7336 6.1982 11.6057 6.04067 11.4271 6.00324ZM9.205 7.47681C8.9365 7.02634 8.5593 6.64914 8.1089 6.38066C8.5593 6.11218 8.9365 5.73502 9.205 5.28453C9.4735 5.73502 9.8507 6.11221 10.3012 6.38068C9.8507 6.64916 9.4735 7.02636 9.205 7.47681Z" fill="currentColor"></path><circle cx="3.5" cy="3.5" r="1.5" fill="currentColor"></circle><ellipse cx="4.5" cy="10" rx="0.5" ry="1" fill="currentColor"></ellipse><circle cx="9" cy="6" r="1" fill="currentColor"></circle>', 6), ti = [
1354
+ ei
1355
+ ], ni = {
1356
1356
  __name: "AITranslateBtn",
1357
1357
  props: {
1358
1358
  isLoading: Boolean,
@@ -1360,8 +1360,8 @@ const nt = /* @__PURE__ */ se(zo, [["render", No]]), Ho = {
1360
1360
  isFilled: Boolean
1361
1361
  },
1362
1362
  setup(e) {
1363
- return (t, n) => (p(), v("div", Ho, [
1364
- e.isLoading ? (p(), _(nt, {
1363
+ return (t, n) => (p(), v("div", Xo, [
1364
+ e.isLoading ? (p(), P(it, {
1365
1365
  key: 0,
1366
1366
  class: "inset-0 flex items-center justify-center"
1367
1367
  })) : (p(), v("button", {
@@ -1378,40 +1378,40 @@ const nt = /* @__PURE__ */ se(zo, [["render", No]]), Ho = {
1378
1378
  viewBox: "0 0 12 12",
1379
1379
  fill: "none",
1380
1380
  xmlns: "http://www.w3.org/2000/svg"
1381
- }, Ko, 2)) : (p(), v("svg", {
1381
+ }, ti, 2)) : (p(), v("svg", {
1382
1382
  key: 0,
1383
1383
  class: k(["w-4 h-4 text-primary", [{ "opacity-100": !e.disabled }, { "opacity-50 transform": e.disabled }]]),
1384
1384
  viewBox: "0 0 12 12",
1385
1385
  fill: "none",
1386
1386
  xmlns: "http://www.w3.org/2000/svg"
1387
- }, Xo, 2))
1388
- ], 10, Uo))
1387
+ }, Qo, 2))
1388
+ ], 10, Yo))
1389
1389
  ]));
1390
1390
  }
1391
- }, Jo = {
1391
+ }, oi = {
1392
1392
  class: "bg-base-100 tooltip tooltip-top before:!bottom-[100%] before:!bg-base-100 before:!border before:!border-solid before:!border-base-300 before:!shadow-lg before:!rounded-md before:!text-base-content after:!border-transparent",
1393
1393
  "data-tip": "AI Summarize"
1394
- }, Qo = ["disabled"], ei = /* @__PURE__ */ C("path", {
1394
+ }, ii = ["disabled"], ri = /* @__PURE__ */ C("path", {
1395
1395
  stroke: "currentColor",
1396
1396
  "stroke-linecap": "round",
1397
1397
  "stroke-linejoin": "round",
1398
1398
  "stroke-width": "2",
1399
1399
  d: "M21 12h1m-3.5-6.5 1-1M12 3V2M5.5 5.5l-1-1M3 12H2m8 10h4m3-10a5 5 0 1 0-7 4.584V19h4v-2.416A5.001 5.001 0 0 0 17 12z"
1400
- }, null, -1), ti = [
1401
- ei
1402
- ], ni = /* @__PURE__ */ C("path", {
1400
+ }, null, -1), si = [
1401
+ ri
1402
+ ], li = /* @__PURE__ */ C("path", {
1403
1403
  fill: "currentColor",
1404
1404
  d: "M12 7a5 5 0 0 0-2 9.584V19h4v-2.416A5.001 5.001 0 0 0 12 7z"
1405
- }, null, -1), oi = /* @__PURE__ */ C("path", {
1405
+ }, null, -1), ai = /* @__PURE__ */ C("path", {
1406
1406
  stroke: "currentColor",
1407
1407
  "stroke-linecap": "round",
1408
1408
  "stroke-linejoin": "round",
1409
1409
  "stroke-width": "2",
1410
1410
  d: "M21 12h1m-3.5-6.5 1-1M12 3V2M5.5 5.5l-1-1M3 12H2m8 10h4m3-10a5 5 0 1 0-7 4.584V19h4v-2.416A5.001 5.001 0 0 0 17 12z"
1411
- }, null, -1), ii = [
1412
- ni,
1413
- oi
1414
- ], ri = {
1411
+ }, null, -1), ci = [
1412
+ li,
1413
+ ai
1414
+ ], ui = {
1415
1415
  __name: "AIExplainBtn",
1416
1416
  props: {
1417
1417
  isLoading: Boolean,
@@ -1419,8 +1419,8 @@ const nt = /* @__PURE__ */ se(zo, [["render", No]]), Ho = {
1419
1419
  isFilled: Boolean
1420
1420
  },
1421
1421
  setup(e) {
1422
- return (t, n) => (p(), v("div", Jo, [
1423
- e.isLoading ? (p(), _(nt, { key: 0 })) : (p(), v("button", {
1422
+ return (t, n) => (p(), v("div", oi, [
1423
+ e.isLoading ? (p(), P(it, { key: 0 })) : (p(), v("button", {
1424
1424
  key: 1,
1425
1425
  class: k(["btn btn-xs btn-circle", [
1426
1426
  { "btn-ghost": !e.disabled },
@@ -1434,17 +1434,17 @@ const nt = /* @__PURE__ */ se(zo, [["render", No]]), Ho = {
1434
1434
  viewBox: "0 0 24 24",
1435
1435
  fill: "none",
1436
1436
  xmlns: "http://www.w3.org/2000/svg"
1437
- }, ii, 2)) : (p(), v("svg", {
1437
+ }, ci, 2)) : (p(), v("svg", {
1438
1438
  key: 0,
1439
1439
  class: k(["w-4 h-4 text-primary", [{ "opacity-100": !e.disabled }, { "opacity-50 transform": e.disabled }]]),
1440
1440
  viewBox: "0 0 24 24",
1441
1441
  fill: "none",
1442
1442
  xmlns: "http://www.w3.org/2000/svg"
1443
- }, ti, 2))
1444
- ], 10, Qo))
1443
+ }, si, 2))
1444
+ ], 10, ii))
1445
1445
  ]));
1446
1446
  }
1447
- }, si = {}, li = { class: "btn btn-xs btn-ghost btn-circle" }, ai = /* @__PURE__ */ C("svg", {
1447
+ }, di = {}, fi = { class: "btn btn-xs btn-ghost btn-circle" }, mi = /* @__PURE__ */ C("svg", {
1448
1448
  class: "w-4 h-4 text-primary",
1449
1449
  viewBox: "0 0 24 24",
1450
1450
  fill: "none",
@@ -1458,13 +1458,13 @@ const nt = /* @__PURE__ */ se(zo, [["render", No]]), Ho = {
1458
1458
  d: "M7.75 12C7.75 9.65278 9.65279 7.75 12 7.75C14.3472 7.75 16.25 9.65278 16.25 12C16.25 14.3472 14.3472 16.25 12 16.25C9.65279 16.25 7.75 14.3472 7.75 12ZM12 9.25C10.4812 9.25 9.25 10.4812 9.25 12C9.25 13.5188 10.4812 14.75 12 14.75C13.5188 14.75 14.75 13.5188 14.75 12C14.75 10.4812 13.5188 9.25 12 9.25Z",
1459
1459
  fill: "currentColor"
1460
1460
  })
1461
- ], -1), ci = [
1462
- ai
1461
+ ], -1), hi = [
1462
+ mi
1463
1463
  ];
1464
- function ui(e, t) {
1465
- return p(), v("button", li, ci);
1464
+ function pi(e, t) {
1465
+ return p(), v("button", fi, hi);
1466
1466
  }
1467
- const di = /* @__PURE__ */ se(si, [["render", ui]]), fi = {}, mi = { class: "btn btn-xs btn-circle btn-ghost" }, hi = /* @__PURE__ */ C("svg", {
1467
+ const gi = /* @__PURE__ */ le(di, [["render", pi]]), vi = {}, bi = { class: "btn btn-xs btn-circle btn-ghost" }, Ci = /* @__PURE__ */ C("svg", {
1468
1468
  class: "w-4 h-4 text-primary",
1469
1469
  viewBox: "0 0 16 16",
1470
1470
  fill: "none",
@@ -1482,13 +1482,13 @@ const di = /* @__PURE__ */ se(si, [["render", ui]]), fi = {}, mi = { class: "btn
1482
1482
  d: "M12.809 3.19102C13.0637 3.44571 13.0637 3.85864 12.809 4.11333L4.11333 12.809C3.85864 13.0637 3.44571 13.0637 3.19102 12.809C2.93633 12.5543 2.93633 12.1414 3.19102 11.8867L11.8867 3.19102C12.1414 2.93633 12.5543 2.93633 12.809 3.19102Z",
1483
1483
  fill: "currentColor"
1484
1484
  })
1485
- ], -1), pi = [
1486
- hi
1485
+ ], -1), wi = [
1486
+ Ci
1487
1487
  ];
1488
- function gi(e, t) {
1489
- return p(), v("button", mi, pi);
1488
+ function yi(e, t) {
1489
+ return p(), v("button", bi, wi);
1490
1490
  }
1491
- const vi = /* @__PURE__ */ se(fi, [["render", gi]]), bi = {
1491
+ const xi = /* @__PURE__ */ le(vi, [["render", yi]]), Li = {
1492
1492
  name: "ThemeSelector",
1493
1493
  props: {
1494
1494
  currentTheme: {
@@ -1525,7 +1525,7 @@ const vi = /* @__PURE__ */ se(fi, [["render", gi]]), bi = {
1525
1525
  });
1526
1526
  }
1527
1527
  }
1528
- }, Ci = { class: "dropdown dropdown-end z-50" }, wi = /* @__PURE__ */ C("div", {
1528
+ }, Si = { class: "dropdown dropdown-end z-50" }, Ti = /* @__PURE__ */ C("div", {
1529
1529
  tabindex: "0",
1530
1530
  role: "button",
1531
1531
  class: "btn btn-ghost btn-circle btn-xs"
@@ -1537,14 +1537,14 @@ const vi = /* @__PURE__ */ se(fi, [["render", gi]]), bi = {
1537
1537
  }, [
1538
1538
  /* @__PURE__ */ C("path", { d: "M17.293 13.293A8 8 0 016.707 2.707a8.001 8.001 0 1010.586 10.586z" })
1539
1539
  ])
1540
- ], -1), yi = {
1540
+ ], -1), Ei = {
1541
1541
  tabindex: "0",
1542
1542
  class: "dropdown-content menu p-2 shadow bg-base-100 rounded-box w-52 max-h-96 overflow-y-auto z-50 border border-base-300"
1543
- }, xi = ["id", "value", "checked", "onChange"], Li = ["for"], Si = { class: "flex items-center gap-2" };
1544
- function Ti(e, t, n, o, i, s) {
1545
- return p(), v("div", Ci, [
1546
- wi,
1547
- C("ul", yi, [
1543
+ }, Ai = ["id", "value", "checked", "onChange"], $i = ["for"], ki = { class: "flex items-center gap-2" };
1544
+ function Ri(e, t, n, o, i, s) {
1545
+ return p(), v("div", Si, [
1546
+ Ti,
1547
+ C("ul", Ei, [
1548
1548
  (p(!0), v(K, null, me(i.availableThemes, (r) => (p(), v("li", {
1549
1549
  key: r.value
1550
1550
  }, [
@@ -1555,31 +1555,31 @@ function Ti(e, t, n, o, i, s) {
1555
1555
  checked: n.currentTheme === r.value,
1556
1556
  onChange: (a) => s.handleThemeChange(r.value),
1557
1557
  class: "theme-controller sr-only"
1558
- }, null, 40, xi),
1558
+ }, null, 40, Ai),
1559
1559
  C("label", {
1560
1560
  for: `theme-${r.value}`,
1561
1561
  class: k(["cursor-pointer rounded-lg px-2 py-1 hover:bg-base-200", { "bg-primary text-primary-content": n.currentTheme === r.value }]),
1562
1562
  onClick: t[0] || (t[0] = (...a) => s.handleLabelClick && s.handleLabelClick(...a))
1563
1563
  }, [
1564
- C("span", Si, [
1564
+ C("span", ki, [
1565
1565
  C("span", {
1566
1566
  class: "w-3 h-3 rounded-full",
1567
- style: Xe({ backgroundColor: r.color })
1567
+ style: Ke({ backgroundColor: r.color })
1568
1568
  }, null, 4),
1569
- we(" " + ne(r.name), 1)
1569
+ we(" " + oe(r.name), 1)
1570
1570
  ])
1571
- ], 10, Li)
1571
+ ], 10, $i)
1572
1572
  ]))), 128))
1573
1573
  ])
1574
1574
  ]);
1575
1575
  }
1576
- const Ei = /* @__PURE__ */ se(bi, [["render", Ti]]), Ai = { class: "flex flex-col" }, $i = {
1576
+ const Bi = /* @__PURE__ */ le(Li, [["render", Ri]]), Ii = { class: "flex flex-col" }, Mi = {
1577
1577
  class: "flex min-w-0 gap-1",
1578
1578
  "data-mode-toggle": ""
1579
- }, ki = ["disabled"], Ri = { class: "flex shrink-0 items-center" }, Ii = {
1579
+ }, Oi = ["disabled"], Di = { class: "flex shrink-0 items-center" }, Fi = {
1580
1580
  key: 0,
1581
1581
  class: "flex items-center gap-1 px-2 pb-1"
1582
- }, vt = {
1582
+ }, xt = {
1583
1583
  __name: "Header",
1584
1584
  props: {
1585
1585
  tts: String,
@@ -1622,18 +1622,18 @@ const Ei = /* @__PURE__ */ se(bi, [["render", Ti]]), Ai = { class: "flex flex-co
1622
1622
  "requestWrite"
1623
1623
  ],
1624
1624
  setup(e, { emit: t }) {
1625
- const n = e, o = I(() => n.mode !== "write" && !n.isServiceUnavailable), i = t, s = (a) => {
1625
+ const n = e, o = B(() => n.mode !== "write" && !n.isServiceUnavailable), i = t, s = (a) => {
1626
1626
  a.target.closest('button, input, select, textarea, [role="button"]') || (i("dragStart", { type: "mouse", event: a }), a.preventDefault());
1627
1627
  }, r = (a) => {
1628
1628
  a.target.closest('button, input, select, textarea, [role="button"]') || (i("dragStart", { type: "touch", event: a }), a.preventDefault());
1629
1629
  };
1630
- return (a, l) => (p(), v("div", Ai, [
1630
+ return (a, l) => (p(), v("div", Ii, [
1631
1631
  C("div", {
1632
1632
  class: "flex cursor-grab flex-row items-center justify-between gap-1 p-2 pb-1 active:cursor-grabbing",
1633
1633
  onMousedown: s,
1634
1634
  onTouchstart: r
1635
1635
  }, [
1636
- C("div", $i, [
1636
+ C("div", Mi, [
1637
1637
  C("button", {
1638
1638
  type: "button",
1639
1639
  class: k(["btn btn-xs", e.mode === "write" ? "btn-ghost" : "btn-primary"]),
@@ -1646,41 +1646,41 @@ const Ei = /* @__PURE__ */ se(bi, [["render", Ti]]), Ai = { class: "flex flex-co
1646
1646
  disabled: !e.canWrite,
1647
1647
  "data-mode": "write",
1648
1648
  onClick: l[1] || (l[1] = (c) => i("requestWrite"))
1649
- }, " Write ", 10, ki)
1649
+ }, " Write ", 10, Oi)
1650
1650
  ]),
1651
- C("div", Ri, [
1652
- e.showThemeSelector ? (p(), _(Ei, {
1651
+ C("div", Di, [
1652
+ e.showThemeSelector ? (p(), P(Bi, {
1653
1653
  key: 0,
1654
1654
  "current-theme": e.theme,
1655
1655
  onThemeChange: l[2] || (l[2] = (c) => i("themeChange", c))
1656
1656
  }, null, 8, ["current-theme"])) : M("", !0),
1657
- D(di, {
1657
+ W(gi, {
1658
1658
  onClick: l[3] || (l[3] = (c) => i("setting"))
1659
1659
  }),
1660
- D(vi, {
1660
+ W(xi, {
1661
1661
  onClick: l[4] || (l[4] = (c) => i("close"))
1662
1662
  })
1663
1663
  ])
1664
1664
  ], 32),
1665
- o.value ? (p(), v("div", Ii, [
1666
- D(Ro, {
1665
+ o.value ? (p(), v("div", Fi, [
1666
+ W(Do, {
1667
1667
  disabled: e.isAITranslationLoading || e.isAIExplainLoading,
1668
1668
  tts: n.tts,
1669
1669
  onLoadTTS: l[5] || (l[5] = (c) => a.$emit("loadTTS"))
1670
1670
  }, null, 8, ["disabled", "tts"]),
1671
- e.isAITranslateVisible ? (p(), _(Go, {
1671
+ e.isAITranslateVisible ? (p(), P(ni, {
1672
1672
  key: 0,
1673
1673
  isLoading: e.isAITranslationLoading,
1674
1674
  isFilled: e.isAITranslate,
1675
1675
  onClick: l[6] || (l[6] = (c) => i("aiTranslate"))
1676
1676
  }, null, 8, ["isLoading", "isFilled"])) : M("", !0),
1677
- e.isAIExplainVisible ? (p(), _(ri, {
1677
+ e.isAIExplainVisible ? (p(), P(ui, {
1678
1678
  key: 1,
1679
1679
  isLoading: e.isAIExplainLoading,
1680
1680
  isFilled: e.isAIExplain,
1681
1681
  onClick: l[7] || (l[7] = (c) => i("aiExplain"))
1682
1682
  }, null, 8, ["isLoading", "isFilled"])) : M("", !0),
1683
- n.isFavoriteFeatureEnabled ? (p(), _(Wo, {
1683
+ n.isFavoriteFeatureEnabled ? (p(), P(No, {
1684
1684
  key: 2,
1685
1685
  isFilled: n.isFavorite,
1686
1686
  onClick: l[8] || (l[8] = (c) => i("favorite")),
@@ -1689,7 +1689,7 @@ const Ei = /* @__PURE__ */ se(bi, [["render", Ti]]), Ai = { class: "flex flex-co
1689
1689
  ])) : M("", !0)
1690
1690
  ]));
1691
1691
  }
1692
- }, Bi = { class: "pointer-events-none absolute inset-0 z-20" }, Mi = ["data-resize", "aria-label", "onPointerdown"], Oi = {
1692
+ }, Wi = { class: "pointer-events-none absolute inset-0 z-20" }, zi = ["data-resize", "aria-label", "onPointerdown"], _i = {
1693
1693
  __name: "ResizeHandle",
1694
1694
  emits: ["resizeStart"],
1695
1695
  setup(e, { emit: t }) {
@@ -1706,38 +1706,38 @@ const Ei = /* @__PURE__ */ se(bi, [["render", Ti]]), Ai = { class: "flex flex-co
1706
1706
  var a, l;
1707
1707
  r.pointerType === "mouse" && r.button !== 0 || (r.preventDefault(), r.stopPropagation(), (l = (a = r.currentTarget).setPointerCapture) == null || l.call(a, r.pointerId), n("resizeStart", { edge: s, event: r }));
1708
1708
  };
1709
- return (s, r) => (p(), v("div", Bi, [
1709
+ return (s, r) => (p(), v("div", Wi, [
1710
1710
  (p(), v(K, null, me(o, (a) => C("div", {
1711
1711
  key: a.name,
1712
1712
  "data-resize": a.name,
1713
1713
  class: k(["pointer-events-auto absolute touch-none hover:bg-base-content/20", a.class]),
1714
1714
  "aria-label": `Resize from the ${a.name} border`,
1715
1715
  onPointerdown: (l) => i(a.name, l),
1716
- onClick: r[0] || (r[0] = en(() => {
1716
+ onClick: r[0] || (r[0] = sn(() => {
1717
1717
  }, ["stop"]))
1718
- }, null, 42, Mi)), 64))
1718
+ }, null, 42, zi)), 64))
1719
1719
  ]));
1720
1720
  }
1721
- }, ot = 4, $e = "check", Di = [
1721
+ }, rt = 4, ke = "check", Pi = [
1722
1722
  { value: "check", label: "Check" },
1723
1723
  { value: "improve", label: "Improve" },
1724
1724
  { value: "improve-plus", label: "Academy" },
1725
1725
  { value: "friendly", label: "Friendly" },
1726
1726
  { value: "simplify", label: "Simplify" },
1727
1727
  { value: "more-detailed", label: "More detailed" }
1728
- ], Fi = /* @__PURE__ */ new Set(["", "text", "search", "email", "url", "tel"]), Wi = 4e4;
1729
- function Ft(e, t) {
1730
- return !!e && String(t || "").trim().length >= ot;
1728
+ ], Vi = /* @__PURE__ */ new Set(["", "text", "search", "email", "url", "tel"]), Ni = 4e4;
1729
+ function Vt(e, t) {
1730
+ return !!e && String(t || "").trim().length >= rt;
1731
1731
  }
1732
- function zi(e) {
1732
+ function Hi(e) {
1733
1733
  const t = (e == null ? void 0 : e.nodeType) === 3 ? e.parentElement : e;
1734
1734
  if (!t || t.nodeType !== 1) return !1;
1735
- if (_i(t)) return !0;
1735
+ if (Ui(t)) return !0;
1736
1736
  if (t.disabled || t.readOnly) return !1;
1737
1737
  const n = t.tagName;
1738
- return n === "TEXTAREA" ? !0 : n === "INPUT" ? Fi.has((t.type || "text").toLowerCase()) : !1;
1738
+ return n === "TEXTAREA" ? !0 : n === "INPUT" ? Vi.has((t.type || "text").toLowerCase()) : !1;
1739
1739
  }
1740
- function _i(e) {
1740
+ function Ui(e) {
1741
1741
  var n;
1742
1742
  let t = e;
1743
1743
  for (; t && t.nodeType === 1; ) {
@@ -1749,30 +1749,30 @@ function _i(e) {
1749
1749
  }
1750
1750
  return !1;
1751
1751
  }
1752
- function Pi(e, t) {
1753
- const n = bt(e), o = bt(t);
1754
- return !n.length && !o.length ? [] : n.length * o.length > Wi ? [{ value: String(t || ""), added: !1, removed: !1 }] : Ui(n, o, Hi(n, o));
1752
+ function Zi(e, t) {
1753
+ const n = Lt(e), o = Lt(t);
1754
+ return !n.length && !o.length ? [] : n.length * o.length > Ni ? [{ value: String(t || ""), added: !1, removed: !1 }] : Yi(n, o, Xi(n, o));
1755
1755
  }
1756
- function Vi(e) {
1756
+ function ji(e) {
1757
1757
  return String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
1758
1758
  }
1759
- function Ni(e, t) {
1760
- return Pi(e, t).map((n) => {
1761
- const o = Vi(n.value);
1759
+ function qi(e, t) {
1760
+ return Zi(e, t).map((n) => {
1761
+ const o = ji(n.value);
1762
1762
  return n.added ? `<span class="bg-success/40">${o}</span>` : n.removed ? `<span class="bg-error/30 line-through">${o}</span>` : o;
1763
1763
  }).join("");
1764
1764
  }
1765
- function bt(e) {
1765
+ function Lt(e) {
1766
1766
  return String(e || "").split(/(\s+)/).filter((t) => t.length);
1767
1767
  }
1768
- function Hi(e, t) {
1768
+ function Xi(e, t) {
1769
1769
  const n = Array.from({ length: e.length + 1 }, () => new Array(t.length + 1).fill(0));
1770
1770
  for (let o = e.length - 1; o >= 0; o--)
1771
1771
  for (let i = t.length - 1; i >= 0; i--)
1772
1772
  n[o][i] = e[o] === t[i] ? n[o + 1][i + 1] + 1 : Math.max(n[o + 1][i], n[o][i + 1]);
1773
1773
  return n;
1774
1774
  }
1775
- function Ui(e, t, n) {
1775
+ function Yi(e, t, n) {
1776
1776
  const o = [];
1777
1777
  let i = 0, s = 0;
1778
1778
  const r = (a, l, c) => {
@@ -1791,20 +1791,20 @@ function Ui(e, t, n) {
1791
1791
  r(t[s], !0, !1), s += 1;
1792
1792
  return o;
1793
1793
  }
1794
- const Zi = {
1794
+ const Ki = {
1795
1795
  class: "flex flex-col gap-2 border-t border-base-300 p-3",
1796
1796
  "data-write-view": ""
1797
- }, ji = { class: "flex items-center gap-1" }, qi = ["value", "disabled"], Xi = ["value"], Yi = ["disabled"], Ki = {
1797
+ }, Gi = { class: "flex items-center gap-1" }, Ji = ["value", "disabled"], Qi = ["value"], er = ["disabled"], tr = {
1798
1798
  key: 0,
1799
1799
  "data-write-loading": ""
1800
- }, Gi = {
1800
+ }, nr = {
1801
1801
  key: 1,
1802
1802
  class: "text-base leading-tight text-base-content"
1803
- }, Ji = ["innerHTML"], Qi = {
1803
+ }, or = ["innerHTML"], ir = {
1804
1804
  key: 3,
1805
1805
  class: "whitespace-pre-wrap break-words text-base leading-tight text-base-content",
1806
1806
  "data-result": ""
1807
- }, er = {
1807
+ }, rr = {
1808
1808
  __name: "WriteView",
1809
1809
  props: {
1810
1810
  text: {
@@ -1825,15 +1825,15 @@ const Zi = {
1825
1825
  },
1826
1826
  emits: ["action", "copy", "replace"],
1827
1827
  setup(e, { emit: t }) {
1828
- const n = e, o = t, i = I(() => n.text.trim().length < ot), s = I(() => !n.loading && !!n.result), r = I(() => n.editable && s.value), a = I(() => n.action === "check" && !!n.result), l = I(() => a.value ? Ni(n.text, n.result) : "");
1828
+ const n = e, o = t, i = B(() => n.text.trim().length < rt), s = B(() => !n.loading && !!n.result), r = B(() => n.editable && s.value), a = B(() => n.action === "check" && !!n.result), l = B(() => a.value ? qi(n.text, n.result) : "");
1829
1829
  function c() {
1830
1830
  s.value && o("copy", n.result);
1831
1831
  }
1832
1832
  function d() {
1833
1833
  r.value && o("replace", { text: n.text, result: n.result });
1834
1834
  }
1835
- return (h, g) => (p(), v("div", Zi, [
1836
- C("div", ji, [
1835
+ return (h, g) => (p(), v("div", Ki, [
1836
+ C("div", Gi, [
1837
1837
  C("select", {
1838
1838
  class: "select select-bordered select-xs min-w-0 flex-1",
1839
1839
  value: e.action,
@@ -1841,18 +1841,18 @@ const Zi = {
1841
1841
  "data-write-action": "",
1842
1842
  onChange: g[0] || (g[0] = (f) => o("action", f.target.value))
1843
1843
  }, [
1844
- (p(!0), v(K, null, me(Ce(Di), (f) => (p(), v("option", {
1844
+ (p(!0), v(K, null, me(Ce(Pi), (f) => (p(), v("option", {
1845
1845
  key: f.value,
1846
1846
  value: f.value
1847
- }, ne(f.label), 9, Xi))), 128))
1848
- ], 40, qi),
1847
+ }, oe(f.label), 9, Qi))), 128))
1848
+ ], 40, Ji),
1849
1849
  C("button", {
1850
1850
  type: "button",
1851
1851
  class: "btn btn-xs",
1852
1852
  disabled: !s.value,
1853
1853
  "data-copy": "",
1854
1854
  onClick: c
1855
- }, " Copy ", 8, Yi),
1855
+ }, " Copy ", 8, er),
1856
1856
  r.value ? (p(), v("button", {
1857
1857
  key: 0,
1858
1858
  type: "button",
@@ -1861,14 +1861,14 @@ const Zi = {
1861
1861
  onClick: d
1862
1862
  }, " Replace ")) : M("", !0)
1863
1863
  ]),
1864
- e.loading ? (p(), v("div", Ki, [
1865
- D(nt)
1866
- ])) : e.unavailable ? (p(), v("p", Gi, " Service Unavailable ")) : a.value ? (p(), v("pre", {
1864
+ e.loading ? (p(), v("div", tr, [
1865
+ W(it)
1866
+ ])) : e.unavailable ? (p(), v("p", nr, " Service Unavailable ")) : a.value ? (p(), v("pre", {
1867
1867
  key: 2,
1868
1868
  class: "m-0 whitespace-pre-wrap break-words text-base leading-tight text-base-content",
1869
1869
  "data-diff": "",
1870
1870
  innerHTML: l.value
1871
- }, null, 8, Ji)) : e.result ? (p(), v("p", Qi, ne(e.result), 1)) : M("", !0)
1871
+ }, null, 8, or)) : e.result ? (p(), v("p", ir, oe(e.result), 1)) : M("", !0)
1872
1872
  ]));
1873
1873
  }
1874
1874
  }, j = {
@@ -1877,13 +1877,13 @@ const Zi = {
1877
1877
  DATA: "DATA",
1878
1878
  ERROR: "ERROR",
1879
1879
  HIDDEN: "HIDDEN"
1880
- }, Ct = 320, tr = 240, wt = 250, nr = 120, or = 8, ir = ["ar", "fa", "iw", "yi", "ur", "pa"], rr = {
1880
+ }, St = 320, sr = 240, Tt = 250, lr = 120, ar = 8, cr = ["ar", "fa", "iw", "yi", "ur", "pa"], ur = {
1881
1881
  key: 0,
1882
1882
  class: "flex justify-center"
1883
- }, sr = {
1883
+ }, dr = {
1884
1884
  key: 1,
1885
1885
  class: "flex justify-center"
1886
- }, lr = { class: "p-3 border-t border-base-300" }, ar = {
1886
+ }, fr = { class: "p-3 border-t border-base-300" }, mr = {
1887
1887
  name: "Bubble",
1888
1888
  props: [
1889
1889
  "translation",
@@ -1948,14 +1948,14 @@ const Zi = {
1948
1948
  },
1949
1949
  currentAction() {
1950
1950
  var e;
1951
- return this.writeAction || ((e = this.writing) == null ? void 0 : e.action) || $e;
1951
+ return this.writeAction || ((e = this.writing) == null ? void 0 : e.action) || ke;
1952
1952
  },
1953
1953
  activeText() {
1954
1954
  var e, t;
1955
1955
  return this.selectedText || ((e = this.writing) == null ? void 0 : e.text) || ((t = this.data) == null ? void 0 : t.text) || "";
1956
1956
  },
1957
1957
  canWrite() {
1958
- return this.activeText.trim().length >= ot;
1958
+ return this.activeText.trim().length >= rt;
1959
1959
  },
1960
1960
  shownResult() {
1961
1961
  var e;
@@ -1964,7 +1964,7 @@ const Zi = {
1964
1964
  },
1965
1965
  methods: {
1966
1966
  handleLogo() {
1967
- if (Ft(this.editable, this.selectedText)) {
1967
+ if (Vt(this.editable, this.selectedText)) {
1968
1968
  this.$emit("write", { text: this.selectedText, action: this.currentAction });
1969
1969
  return;
1970
1970
  }
@@ -2024,14 +2024,14 @@ const Zi = {
2024
2024
  this.status === j.ERROR && (this.isServiceUnavailable = !0);
2025
2025
  }
2026
2026
  }
2027
- }, cr = /* @__PURE__ */ Object.assign(ar, {
2027
+ }, hr = /* @__PURE__ */ Object.assign(mr, {
2028
2028
  setup(e) {
2029
2029
  return (t, n) => {
2030
2030
  var o, i, s, r, a, l, c, d, h, g, f;
2031
- return e.status === Ce(j).LOGO ? (p(), v("div", rr, [
2032
- D(Hn, { onClick: t.handleLogo }, null, 8, ["onClick"])
2033
- ])) : e.status === Ce(j).LOADING ? (p(), v("div", sr, [
2034
- D(Jn)
2031
+ return e.status === Ce(j).LOGO ? (p(), v("div", ur, [
2032
+ W(Xn, { onClick: t.handleLogo }, null, 8, ["onClick"])
2033
+ ])) : e.status === Ce(j).LOADING ? (p(), v("div", dr, [
2034
+ W(oo)
2035
2035
  ])) : e.status !== Ce(j).HIDDEN ? (p(), v("div", {
2036
2036
  key: 2,
2037
2037
  class: k([
@@ -2049,7 +2049,7 @@ const Zi = {
2049
2049
  e.constrained ? "flex min-h-0 min-w-0 flex-1 flex-col" : ""
2050
2050
  ])
2051
2051
  }, [
2052
- t.isServiceUnavailable ? (p(), _(vt, {
2052
+ t.isServiceUnavailable ? (p(), P(xt, {
2053
2053
  key: 0,
2054
2054
  class: "shrink-0",
2055
2055
  isServiceUnavailable: t.isServiceUnavailable,
@@ -2065,7 +2065,7 @@ const Zi = {
2065
2065
  onThemeChange: n[4] || (n[4] = (m) => t.$emit("themeChange", m)),
2066
2066
  onRequestTranslate: t.requestTranslate,
2067
2067
  onRequestWrite: t.requestWrite
2068
- }, null, 8, ["isServiceUnavailable", "theme", "showThemeSelector", "mode", "canWrite", "onRequestTranslate", "onRequestWrite"])) : (p(), _(vt, {
2068
+ }, null, 8, ["isServiceUnavailable", "theme", "showThemeSelector", "mode", "canWrite", "onRequestTranslate", "onRequestWrite"])) : (p(), P(xt, {
2069
2069
  key: 1,
2070
2070
  class: "shrink-0",
2071
2071
  tts: e.tts,
@@ -2098,7 +2098,7 @@ const Zi = {
2098
2098
  e.constrained ? "min-h-0 min-w-0 flex-1 overflow-y-auto overflow-x-hidden break-words overscroll-contain" : ""
2099
2099
  )
2100
2100
  }, [
2101
- t.isWrite ? (p(), _(er, {
2101
+ t.isWrite ? (p(), P(rr, {
2102
2102
  key: 0,
2103
2103
  text: t.activeText,
2104
2104
  result: t.shownResult,
@@ -2110,42 +2110,42 @@ const Zi = {
2110
2110
  onCopy: t.handleCopy,
2111
2111
  onReplace: t.handleReplace
2112
2112
  }, null, 8, ["text", "result", "action", "loading", "editable", "unavailable", "onAction", "onCopy", "onReplace"])) : (p(), v(K, { key: 1 }, [
2113
- C("div", lr, [
2114
- (l = (a = t.data) == null ? void 0 : a.phonetic) != null && l.src ? (p(), _(oo, {
2113
+ C("div", fr, [
2114
+ (l = (a = t.data) == null ? void 0 : a.phonetic) != null && l.src ? (p(), P(ao, {
2115
2115
  key: 0,
2116
2116
  phonetic: (d = (c = t.data) == null ? void 0 : c.phonetic) == null ? void 0 : d.src
2117
2117
  }, null, 8, ["phonetic"])) : M("", !0),
2118
- D(ro, {
2118
+ W(uo, {
2119
2119
  sentences: t.isServiceUnavailable ? "Service Unavailable" : (h = t.data) == null ? void 0 : h.result
2120
2120
  }, null, 8, ["sentences"]),
2121
- D(ao, {
2121
+ W(ho, {
2122
2122
  show: t.showAIPrompt,
2123
2123
  isLoading: t.isAITranslationLoading,
2124
2124
  onClick: t.handleAITranslate
2125
2125
  }, null, 8, ["show", "isLoading", "onClick"]),
2126
- D(fo, {
2126
+ W(vo, {
2127
2127
  show: t.showAIExplainPrompt,
2128
2128
  isLoading: t.isAIExplainLoading,
2129
2129
  onClick: t.handleAIExplain
2130
2130
  }, null, 8, ["show", "isLoading", "onClick"]),
2131
- D(po, {
2131
+ W(wo, {
2132
2132
  show: t.showLearnPrompt,
2133
2133
  onClick: t.handleLearn
2134
2134
  }, null, 8, ["show", "onClick"])
2135
2135
  ]),
2136
- !t.isServiceUnavailable && ((f = (g = t.data) == null ? void 0 : g.dictionary) == null ? void 0 : f.length) > 0 ? (p(), _(bo, {
2136
+ !t.isServiceUnavailable && ((f = (g = t.data) == null ? void 0 : g.dictionary) == null ? void 0 : f.length) > 0 ? (p(), P(Lo, {
2137
2137
  key: 0,
2138
2138
  class: "p-3 pt-0 border-t border-base-300",
2139
2139
  dictionary: t.data.dictionary
2140
2140
  }, null, 8, ["dictionary"])) : M("", !0),
2141
- !t.isServiceUnavailable && e.isAIExplain && e.explanation ? (p(), _(Lo, {
2141
+ !t.isServiceUnavailable && e.isAIExplain && e.explanation ? (p(), P($o, {
2142
2142
  key: 1,
2143
2143
  class: "p-3 pt-0 border-t border-base-300",
2144
2144
  explanation: e.explanation
2145
2145
  }, null, 8, ["explanation"])) : M("", !0)
2146
2146
  ], 64))
2147
2147
  ], 2),
2148
- D(Oi, {
2148
+ W(_i, {
2149
2149
  onResizeStart: n[11] || (n[11] = (m) => t.$emit("resizeStart", m))
2150
2150
  })
2151
2151
  ], 2)
@@ -2153,12 +2153,12 @@ const Zi = {
2153
2153
  };
2154
2154
  }
2155
2155
  });
2156
- function ur(e) {
2156
+ function pr(e) {
2157
2157
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
2158
2158
  }
2159
- var qe = { exports: {} }, yt;
2160
- function dr() {
2161
- return yt || (yt = 1, function(e) {
2159
+ var Xe = { exports: {} }, Et;
2160
+ function gr() {
2161
+ return Et || (Et = 1, function(e) {
2162
2162
  (function() {
2163
2163
  var t = [
2164
2164
  "direction",
@@ -2223,19 +2223,19 @@ function dr() {
2223
2223
  }
2224
2224
  e.exports = i;
2225
2225
  })();
2226
- }(qe)), qe.exports;
2226
+ }(Xe)), Xe.exports;
2227
2227
  }
2228
- var fr = dr();
2229
- const xt = /* @__PURE__ */ ur(fr);
2230
- function Q(e) {
2228
+ var vr = gr();
2229
+ const At = /* @__PURE__ */ pr(vr);
2230
+ function ee(e) {
2231
2231
  const t = window.getSelection();
2232
2232
  let n = t + "";
2233
2233
  if (n = n.trim(), e && e.type === "password" || !n.length && (!e || e.selectionStart == null || e.selectionEnd == null || e.selectionStart === e.selectionEnd || (n = e.value.substring(e.selectionStart, e.selectionEnd), n = n.trim(), !n.length)))
2234
2234
  return !1;
2235
- let o = pr(t), { top: i, bottom: s, left: r, width: a, height: l } = o;
2235
+ let o = wr(t), { top: i, bottom: s, left: r, width: a, height: l } = o;
2236
2236
  if (!s && !r) {
2237
2237
  if (!e || e.selectionStart == null || e.selectionEnd == null) return !1;
2238
- let c = xt(e, e.selectionStart), d = xt(e, e.selectionEnd);
2238
+ let c = At(e, e.selectionStart), d = At(e, e.selectionEnd);
2239
2239
  o = e.getBoundingClientRect(), r = o.left + c.left, a = d.left - c.left, c.top != d.top && (r = o.left, a = o.width), i = o.top + c.top, s = o.top + d.top + 20;
2240
2240
  }
2241
2241
  return l === 0 && (l = s - i), {
@@ -2251,14 +2251,17 @@ function Q(e) {
2251
2251
  height: l
2252
2252
  };
2253
2253
  }
2254
- function mr(e) {
2254
+ function br(e) {
2255
2255
  var t;
2256
2256
  return ((t = e == null ? void 0 : e.key) == null ? void 0 : t.toLowerCase()) === "a" && !!(e.ctrlKey || e.metaKey);
2257
2257
  }
2258
- function hr(e) {
2258
+ function Ye(e, t) {
2259
+ return !!(e || t);
2260
+ }
2261
+ function Cr(e) {
2259
2262
  return (e == null ? void 0 : e.key) === "Control" || (e == null ? void 0 : e.key) === "Meta" || (e == null ? void 0 : e.key) === "Shift" || (e == null ? void 0 : e.key) === "Alt";
2260
2263
  }
2261
- function pr(e) {
2264
+ function wr(e) {
2262
2265
  if (!e || e.rangeCount === 0)
2263
2266
  return { top: 0, bottom: 0, left: 0, width: 0, height: 0 };
2264
2267
  try {
@@ -2267,7 +2270,7 @@ function pr(e) {
2267
2270
  return { top: 0, bottom: 0, left: 0, width: 0, height: 0 };
2268
2271
  }
2269
2272
  }
2270
- function gr() {
2273
+ function yr() {
2271
2274
  const e = document.getElementsByTagName("ddict-div");
2272
2275
  for (let t of e)
2273
2276
  if (!t.parentNode.matches('wrapper[dir="rtl"]')) {
@@ -2275,17 +2278,17 @@ function gr() {
2275
2278
  n.setAttribute("dir", "rtl"), t.parentNode.insertBefore(n, t), n.appendChild(t);
2276
2279
  }
2277
2280
  }
2278
- function vr() {
2281
+ function xr() {
2279
2282
  const e = document.querySelectorAll('wrapper[dir="rtl"]');
2280
2283
  for (let t of e) {
2281
2284
  const n = t.querySelector("ddict-div");
2282
2285
  n && (t.parentNode.insertBefore(n, t), t.remove());
2283
2286
  }
2284
2287
  }
2285
- const Lt = {
2286
- supportRTL: gr,
2287
- removeRTL: vr
2288
- }, br = 2, Cr = {
2288
+ const $t = {
2289
+ supportRTL: yr,
2290
+ removeRTL: xr
2291
+ }, Lr = 2, Sr = {
2289
2292
  n: { x: !1, y: !0, fromStartX: !1, fromStartY: !0 },
2290
2293
  s: { x: !1, y: !0, fromStartX: !1, fromStartY: !1 },
2291
2294
  e: { x: !0, y: !1, fromStartX: !1, fromStartY: !1 },
@@ -2295,14 +2298,14 @@ const Lt = {
2295
2298
  se: { x: !0, y: !0, fromStartX: !1, fromStartY: !1 },
2296
2299
  sw: { x: !0, y: !0, fromStartX: !0, fromStartY: !1 }
2297
2300
  };
2298
- function wr(e, t, n = br) {
2301
+ function Tr(e, t, n = Lr) {
2299
2302
  return Math.abs(e) >= n || Math.abs(t) >= n;
2300
2303
  }
2301
2304
  function be(e, t, n) {
2302
2305
  const o = n > t ? n : t;
2303
2306
  return Math.min(o, Math.max(t, e));
2304
2307
  }
2305
- function yr({
2308
+ function Er({
2306
2309
  x: e,
2307
2310
  y: t,
2308
2311
  width: n,
@@ -2317,22 +2320,22 @@ function yr({
2317
2320
  viewportHeight: h,
2318
2321
  margin: g = 8
2319
2322
  }) {
2320
- const f = Cr[a];
2323
+ const f = Sr[a];
2321
2324
  if (!f) return { x: e, y: t, width: n, height: o };
2322
2325
  const m = r > 0 ? r : 1, w = e + n * m, y = t + o * m, L = d - g, S = h - g;
2323
- let x = e, $ = t, E = n, B = o;
2326
+ let x = e, $ = t, E = n, I = o;
2324
2327
  if (f.x && f.fromStartX) {
2325
- const T = g, F = w - l * m;
2326
- x = be(e + i, T, F), E = (w - x) / m;
2328
+ const T = g, z = w - l * m;
2329
+ x = be(e + i, T, z), E = (w - x) / m;
2327
2330
  } else f.x && (E = be(
2328
2331
  n + i / m,
2329
2332
  l,
2330
2333
  Math.max(l, (L - e) / m)
2331
2334
  ));
2332
2335
  if (f.y && f.fromStartY) {
2333
- const T = g, F = y - c * m;
2334
- $ = be(t + s, T, F), B = (y - $) / m;
2335
- } else f.y && (B = be(
2336
+ const T = g, z = y - c * m;
2337
+ $ = be(t + s, T, z), I = (y - $) / m;
2338
+ } else f.y && (I = be(
2336
2339
  o + s / m,
2337
2340
  c,
2338
2341
  Math.max(c, (S - t) / m)
@@ -2341,13 +2344,13 @@ function yr({
2341
2344
  x: Math.round(x),
2342
2345
  y: Math.round($),
2343
2346
  width: Math.round(E),
2344
- height: Math.round(B)
2347
+ height: Math.round(I)
2345
2348
  };
2346
2349
  }
2347
- function xr(e) {
2348
- const t = kr(e);
2350
+ function Ar(e) {
2351
+ const t = Or(e);
2349
2352
  if (!t) return null;
2350
- if (Rr(t)) {
2353
+ if (Dr(t)) {
2351
2354
  const s = t.selectionStart, r = t.selectionEnd;
2352
2355
  return s == null || r == null || s === r ? null : {
2353
2356
  kind: "value",
@@ -2362,10 +2365,10 @@ function xr(e) {
2362
2365
  const o = n.getRangeAt(0).cloneRange(), i = o.toString();
2363
2366
  return i ? { kind: "range", element: t, range: o, text: i } : null;
2364
2367
  }
2365
- function Lr(e, t) {
2366
- return !e || t == null ? !1 : e.kind === "value" ? Tr(e, t) : Er(e, t);
2368
+ function $r(e, t) {
2369
+ return !e || t == null ? !1 : e.kind === "value" ? Rr(e, t) : Br(e, t);
2367
2370
  }
2368
- async function Sr(e) {
2371
+ async function kr(e) {
2369
2372
  var t;
2370
2373
  if (!e) return !1;
2371
2374
  try {
@@ -2373,32 +2376,32 @@ async function Sr(e) {
2373
2376
  return await navigator.clipboard.writeText(e), !0;
2374
2377
  } catch {
2375
2378
  }
2376
- return $r(e);
2379
+ return Mr(e);
2377
2380
  }
2378
- function Tr(e, t) {
2381
+ function Rr(e, t) {
2379
2382
  const n = e.element;
2380
2383
  if (!n || n.value.slice(e.start, e.end) !== e.text) return !1;
2381
2384
  const o = n.value.slice(0, e.start) + t + n.value.slice(e.end);
2382
- Ar(n, o);
2385
+ Ir(n, o);
2383
2386
  const i = e.start + t.length;
2384
- return n.focus(), n.setSelectionRange(i, i), Wt(n), !0;
2387
+ return n.focus(), n.setSelectionRange(i, i), Nt(n), !0;
2385
2388
  }
2386
- function Er(e, t) {
2389
+ function Br(e, t) {
2387
2390
  const n = e.range;
2388
2391
  if (!n || n.toString() !== e.text) return !1;
2389
2392
  n.deleteContents();
2390
2393
  const o = n.startContainer.ownerDocument.createTextNode(t);
2391
- return n.insertNode(o), n.setStartAfter(o), n.collapse(!0), Wt(e.element), !0;
2394
+ return n.insertNode(o), n.setStartAfter(o), n.collapse(!0), Nt(e.element), !0;
2392
2395
  }
2393
- function Ar(e, t) {
2396
+ function Ir(e, t) {
2394
2397
  var o;
2395
2398
  const n = (o = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(e), "value")) == null ? void 0 : o.set;
2396
2399
  n ? n.call(e, t) : e.value = t;
2397
2400
  }
2398
- function Wt(e) {
2401
+ function Nt(e) {
2399
2402
  e.dispatchEvent(new Event("input", { bubbles: !0 })), e.dispatchEvent(new Event("change", { bubbles: !0 }));
2400
2403
  }
2401
- function $r(e) {
2404
+ function Mr(e) {
2402
2405
  const t = document.createElement("textarea");
2403
2406
  t.value = e, t.setAttribute("readonly", ""), t.style.position = "fixed", t.style.left = "-9999px", document.body.appendChild(t), t.select();
2404
2407
  let n = !1;
@@ -2409,13 +2412,13 @@ function $r(e) {
2409
2412
  }
2410
2413
  return t.remove(), n;
2411
2414
  }
2412
- function kr(e) {
2415
+ function Or(e) {
2413
2416
  return e ? e.nodeType === 3 ? e.parentElement : e : null;
2414
2417
  }
2415
- function Rr(e) {
2418
+ function Dr(e) {
2416
2419
  return e.tagName === "TEXTAREA" || e.tagName === "INPUT";
2417
2420
  }
2418
- const Ir = {
2421
+ const Fr = {
2419
2422
  __name: "HotKeysListener",
2420
2423
  props: {
2421
2424
  textSelected: String
@@ -2446,13 +2449,13 @@ const Ir = {
2446
2449
  break;
2447
2450
  }
2448
2451
  };
2449
- return St(() => {
2452
+ return kt(() => {
2450
2453
  window.addEventListener("dblclick", i), window.addEventListener("keydown", s), window.addEventListener("keyup", r);
2451
- }), Ge(() => {
2454
+ }), Qe(() => {
2452
2455
  window.removeEventListener("dblclick", i), window.removeEventListener("keydown", s), window.removeEventListener("keyup", r);
2453
2456
  }), (l, c) => (p(), v("div"));
2454
2457
  }
2455
- }, Br = ["data-theme"], Or = {
2458
+ }, Wr = ["data-theme"], _r = {
2456
2459
  __name: "BubbleWrapper",
2457
2460
  props: {
2458
2461
  translation: Object,
@@ -2489,7 +2492,7 @@ const Ir = {
2489
2492
  },
2490
2493
  writeAction: {
2491
2494
  type: String,
2492
- default: $e
2495
+ default: ke
2493
2496
  },
2494
2497
  isWriteLoading: {
2495
2498
  type: Boolean,
@@ -2512,39 +2515,39 @@ const Ir = {
2512
2515
  "copy"
2513
2516
  ],
2514
2517
  setup(e, { emit: t }) {
2515
- const n = e, o = t, i = R(null), s = R(null), r = R(null), a = R(!1), l = R(""), c = R(!1), d = R(n.writeAction || $e);
2518
+ const n = e, o = t, i = R(null), s = R(null), r = R(null), a = R(!1), l = R(""), c = R(!1), d = R(n.writeAction || ke);
2516
2519
  let h = null;
2517
- ee(
2520
+ te(
2518
2521
  () => n.writeAction,
2519
2522
  (u, b) => {
2520
2523
  u && u !== b && (d.value = u);
2521
2524
  }
2522
2525
  );
2523
2526
  const g = R(n.theme), f = R(!1), m = R(!1), w = R({ x: 0, y: 0 }), y = R(null), L = R(null), S = R(null), x = R(null), $ = R(!1);
2524
- let E = !1, B = 0, T = !1, F = "", N = "";
2525
- const G = I(() => typeof window > "u" || !r.value || !l.value ? null : {
2526
- getBoundingClientRect: () => Q(r.value),
2527
- getClientRects: () => Q(r.value)
2528
- }), { floatingStyles: Le, update: he } = zn(G, i, {
2527
+ let E = !1, I = 0, T = !1, z = "", N = "";
2528
+ const G = B(() => typeof window > "u" || !r.value || !l.value ? null : {
2529
+ getBoundingClientRect: () => ee(r.value),
2530
+ getClientRects: () => ee(r.value)
2531
+ }), { floatingStyles: Le, update: he } = Hn(G, i, {
2529
2532
  placement: "bottom",
2530
- middleware: [Mn(4), Dn(), On()],
2533
+ middleware: [zn(4), Pn(), _n()],
2531
2534
  whileElementsMounted(u, b, A) {
2532
- return Bn(u, b, A, {
2535
+ return Wn(u, b, A, {
2533
2536
  ancestorScroll: !0,
2534
2537
  elementResize: !1
2535
2538
  });
2536
2539
  }
2537
- }), pe = I(
2540
+ }), pe = B(
2538
2541
  () => n.status === j.DATA || n.status === j.ERROR
2539
- ), O = I(() => {
2542
+ ), O = B(() => {
2540
2543
  var b, A;
2541
2544
  if (!pe.value) return null;
2542
- const u = S.value ? be(S.value, wt, Ct) : Ct;
2545
+ const u = S.value ? be(S.value, Tt, St) : St;
2543
2546
  return {
2544
2547
  width: ((b = L.value) == null ? void 0 : b.width) ?? u,
2545
- height: ((A = L.value) == null ? void 0 : A.height) ?? tr
2548
+ height: ((A = L.value) == null ? void 0 : A.height) ?? sr
2546
2549
  };
2547
- }), Se = I(() => {
2550
+ }), Se = B(() => {
2548
2551
  let u = Le.value;
2549
2552
  if (y.value)
2550
2553
  u = {
@@ -2555,7 +2558,7 @@ const Ir = {
2555
2558
  transform: "none"
2556
2559
  };
2557
2560
  else if ($.value && r.value && l.value) {
2558
- const b = Q(r.value);
2561
+ const b = ee(r.value);
2559
2562
  b && (u = {
2560
2563
  ...u,
2561
2564
  position: "fixed",
@@ -2574,117 +2577,124 @@ const Ir = {
2574
2577
  maxWidth: `${O.value.width}px`,
2575
2578
  boxSizing: "border-box"
2576
2579
  }), u;
2577
- }), J = I(() => {
2580
+ }), J = B(() => {
2578
2581
  const u = {
2579
2582
  transform: n.scale !== 1 ? `scale(${n.scale})` : "none",
2580
2583
  transformOrigin: "top left"
2581
2584
  };
2582
2585
  return O.value && (u.width = `${O.value.width}px`, u.height = `${O.value.height}px`, u.boxSizing = "border-box"), u;
2583
2586
  });
2584
- St(() => {
2585
- document.addEventListener("keyup", it), document.addEventListener("select", rt), document.addEventListener("selectionchange", st), document.addEventListener("pointerdown", P), document.addEventListener("pointerup", le), document.addEventListener("pointercancel", le), document.documentElement.onclick = (u) => {
2586
- if (lt()) return;
2587
- const b = Q(u.target);
2587
+ kt(() => {
2588
+ document.addEventListener("keyup", ct), document.addEventListener("select", ut), document.addEventListener("selectionchange", dt), document.addEventListener("pointerdown", st), document.addEventListener("pointerup", lt), document.addEventListener("pointercancel", at), document.documentElement.onclick = (u) => {
2589
+ if (ze(), ft()) return;
2590
+ const b = ee(u.target);
2588
2591
  if (!b) {
2589
- _e();
2592
+ Pe();
2590
2593
  return;
2591
2594
  }
2592
- ze(b, u);
2595
+ _e(b, u);
2593
2596
  }, document.documentElement.ontouchend = (u) => {
2594
- if (lt()) return;
2595
- const b = Q(u.target);
2597
+ if (ze(), ft()) return;
2598
+ const b = ee(u.target);
2596
2599
  if (!b) {
2597
- _e();
2600
+ Pe();
2598
2601
  return;
2599
2602
  }
2600
- ze(b, u);
2603
+ _e(b, u);
2601
2604
  };
2602
- }), Ge(() => {
2603
- document.removeEventListener("keyup", it), document.removeEventListener("select", rt), document.removeEventListener("selectionchange", st), document.removeEventListener("pointerdown", P), document.removeEventListener("pointerup", le), document.removeEventListener("pointercancel", le), cancelAnimationFrame(H), document.documentElement.onclick = null, document.documentElement.ontouchend = null, clearTimeout(B), document.removeEventListener("mousemove", Pe), document.removeEventListener("mouseup", Ne), document.removeEventListener("touchmove", Ve), document.removeEventListener("touchend", He), Ze();
2605
+ }), Qe(() => {
2606
+ document.removeEventListener("keyup", ct), document.removeEventListener("select", ut), document.removeEventListener("selectionchange", dt), document.removeEventListener("pointerdown", st), document.removeEventListener("pointerup", lt), document.removeEventListener("pointercancel", at), cancelAnimationFrame(H), clearTimeout(Q), document.documentElement.onclick = null, document.documentElement.ontouchend = null, clearTimeout(I), document.removeEventListener("mousemove", Ve), document.removeEventListener("mouseup", He), document.removeEventListener("touchmove", Ne), document.removeEventListener("touchend", Ue), je();
2604
2607
  });
2605
- let H = 0, W = !1;
2606
- const P = () => {
2607
- W = !0;
2608
- }, le = () => {
2609
- W = !1;
2610
- }, it = (u) => {
2611
- if (!hr(u)) {
2612
- if (mr(u)) {
2613
- We();
2608
+ let H = 0, D = !1, F = !1, Q = 0;
2609
+ const st = () => {
2610
+ D = !0, F = !0, clearTimeout(Q);
2611
+ }, lt = () => {
2612
+ D = !1, clearTimeout(Q), Q = window.setTimeout(() => {
2613
+ F = !1, Te();
2614
+ }, 50);
2615
+ }, at = () => {
2616
+ D = !1, ze();
2617
+ }, ze = () => {
2618
+ F = !1, clearTimeout(Q);
2619
+ }, ct = (u) => {
2620
+ if (!Cr(u)) {
2621
+ if (br(u)) {
2622
+ Te();
2614
2623
  return;
2615
2624
  }
2616
- Q(u.target) || _e();
2625
+ ee(u.target) || Pe();
2617
2626
  }
2618
- }, rt = (u) => {
2619
- W || We(u.target);
2620
- }, st = () => {
2621
- W || n.status === j.DATA || n.status === j.LOADING || We();
2622
- }, We = (u) => {
2627
+ }, ut = (u) => {
2628
+ Ye(D, F) || Te(u.target);
2629
+ }, dt = () => {
2630
+ Ye(D, F) || n.status === j.DATA || n.status === j.LOADING || Te();
2631
+ }, Te = (u) => {
2623
2632
  cancelAnimationFrame(H), H = requestAnimationFrame(() => {
2624
- const b = u || document.activeElement, A = Q(b);
2625
- A && (a.value && l.value === A.text || ze(A, { target: b }));
2633
+ if (Ye(D, F)) return;
2634
+ const b = u || document.activeElement, A = ee(b);
2635
+ A && (a.value && l.value === A.text || _e(A, { target: b }));
2626
2636
  });
2627
- }, ze = (u, b) => {
2628
- n.status !== j.LOGO && o("close"), a.value && !$.value && ($.value = !0), r.value = b.target, u.width && (S.value = u.width), c.value = zi(b.target), h = c.value ? xr(b.target) : null, l.value = u.text, a.value = !0, ct(he);
2629
- }, _e = () => {
2637
+ }, _e = (u, b) => {
2638
+ n.status !== j.LOGO && o("close"), a.value && !$.value && ($.value = !0), r.value = b.target, u.width && (S.value = u.width), c.value = Hi(b.target), h = c.value ? Ar(b.target) : null, l.value = u.text, a.value = !0, ht(he);
2639
+ }, Pe = () => {
2630
2640
  l.value = "", c.value = !1, h = null, ge();
2631
- }, zt = (u) => {
2632
- Sr(u), o("copy", u), ge();
2633
- }, _t = (u) => {
2634
- Lr(h, u == null ? void 0 : u.result), h = null, o("replace", u), ge();
2635
- }, Pt = (u) => {
2641
+ }, Ht = (u) => {
2642
+ kr(u), o("copy", u), ge();
2643
+ }, Ut = (u) => {
2644
+ $r(h, u == null ? void 0 : u.result), h = null, o("replace", u), ge();
2645
+ }, Zt = (u) => {
2636
2646
  u != null && u.action && (d.value = u.action), o("write", u);
2637
- }, Vt = (u) => {
2638
- if (Ft(c.value, l.value)) {
2647
+ }, jt = (u) => {
2648
+ if (Vt(c.value, l.value)) {
2639
2649
  o("write", {
2640
2650
  text: l.value,
2641
- action: d.value || $e
2651
+ action: d.value || ke
2642
2652
  });
2643
2653
  return;
2644
2654
  }
2645
2655
  o("toggleKey", u);
2646
- }, Nt = (u) => {
2656
+ }, qt = (u) => {
2647
2657
  u.stopPropagation();
2648
2658
  }, ge = async () => {
2649
- Ze(), a.value = !1, y.value = null, $.value = !1, o("close");
2650
- }, Ht = (u) => {
2659
+ je(), a.value = !1, y.value = null, $.value = !1, o("close");
2660
+ }, Xt = (u) => {
2651
2661
  g.value = u, o("themeChange", u);
2652
- }, Ut = ({ type: u, event: b }) => {
2662
+ }, Yt = ({ type: u, event: b }) => {
2653
2663
  f.value = !0;
2654
2664
  const A = i.value.getBoundingClientRect();
2655
2665
  if (u === "mouse")
2656
2666
  w.value = {
2657
2667
  x: b.clientX - A.left,
2658
2668
  y: b.clientY - A.top
2659
- }, document.addEventListener("mousemove", Pe), document.addEventListener("mouseup", Ne);
2669
+ }, document.addEventListener("mousemove", Ve), document.addEventListener("mouseup", He);
2660
2670
  else if (u === "touch") {
2661
2671
  const ae = b.touches[0];
2662
2672
  w.value = {
2663
2673
  x: ae.clientX - A.left,
2664
2674
  y: ae.clientY - A.top
2665
- }, document.addEventListener("touchmove", Ve), document.addEventListener("touchend", He);
2675
+ }, document.addEventListener("touchmove", Ne), document.addEventListener("touchend", Ue);
2666
2676
  }
2667
- }, Pe = (u) => {
2677
+ }, Ve = (u) => {
2668
2678
  f.value && (y.value = {
2669
2679
  x: u.clientX - w.value.x,
2670
2680
  y: u.clientY - w.value.y
2671
2681
  });
2672
- }, Ve = (u) => {
2682
+ }, Ne = (u) => {
2673
2683
  if (!f.value) return;
2674
2684
  const b = u.touches[0];
2675
2685
  y.value = {
2676
2686
  x: b.clientX - w.value.x,
2677
2687
  y: b.clientY - w.value.y
2678
2688
  };
2679
- }, Ne = () => {
2680
- f.value && Ue(), f.value = !1, document.removeEventListener("mousemove", Pe), document.removeEventListener("mouseup", Ne);
2681
2689
  }, He = () => {
2682
- f.value && Ue(), f.value = !1, document.removeEventListener("touchmove", Ve), document.removeEventListener("touchend", He);
2683
- }, lt = () => f.value || m.value ? !0 : E ? (E = !1, clearTimeout(B), !0) : !1, Ue = () => {
2684
- E = !0, clearTimeout(B), B = window.setTimeout(() => {
2690
+ f.value && Ze(), f.value = !1, document.removeEventListener("mousemove", Ve), document.removeEventListener("mouseup", He);
2691
+ }, Ue = () => {
2692
+ f.value && Ze(), f.value = !1, document.removeEventListener("touchmove", Ne), document.removeEventListener("touchend", Ue);
2693
+ }, ft = () => f.value || m.value ? !0 : E ? (E = !1, clearTimeout(I), !0) : !1, Ze = () => {
2694
+ E = !0, clearTimeout(I), I = window.setTimeout(() => {
2685
2695
  E = !1;
2686
2696
  }, 50);
2687
- }, Zt = {
2697
+ }, Kt = {
2688
2698
  n: "ns-resize",
2689
2699
  s: "ns-resize",
2690
2700
  e: "ew-resize",
@@ -2693,11 +2703,11 @@ const Ir = {
2693
2703
  sw: "nesw-resize",
2694
2704
  nw: "nwse-resize",
2695
2705
  se: "nwse-resize"
2696
- }, jt = (u) => {
2697
- !document.body || T || (F = document.body.style.cursor, N = document.body.style.userSelect, document.body.style.cursor = Zt[u] || "nwse-resize", document.body.style.userSelect = "none", T = !0);
2698
- }, qt = () => {
2699
- !document.body || !T || (document.body.style.cursor = F, document.body.style.userSelect = N, T = !1);
2700
- }, Xt = ({ edge: u, event: b }) => {
2706
+ }, Gt = (u) => {
2707
+ !document.body || T || (z = document.body.style.cursor, N = document.body.style.userSelect, document.body.style.cursor = Kt[u] || "nwse-resize", document.body.style.userSelect = "none", T = !0);
2708
+ }, Jt = () => {
2709
+ !document.body || !T || (document.body.style.cursor = z, document.body.style.userSelect = N, T = !1);
2710
+ }, Qt = ({ edge: u, event: b }) => {
2701
2711
  if (!s.value || !i.value || !s.value.offsetWidth || !s.value.offsetHeight) return;
2702
2712
  const A = i.value.getBoundingClientRect();
2703
2713
  m.value = !0, x.value = {
@@ -2709,13 +2719,13 @@ const Ir = {
2709
2719
  height: s.value.offsetHeight,
2710
2720
  edge: u,
2711
2721
  moved: !1
2712
- }, jt(u), document.addEventListener("pointermove", at), document.addEventListener("pointerup", Te), document.addEventListener("pointercancel", Te);
2713
- }, Yt = (u, b) => {
2722
+ }, Gt(u), document.addEventListener("pointermove", mt), document.addEventListener("pointerup", Ee), document.addEventListener("pointercancel", Ee);
2723
+ }, en = (u, b) => {
2714
2724
  if (!m.value || !x.value || !i.value) return;
2715
2725
  const A = u - x.value.pointerX, ae = b - x.value.pointerY;
2716
- if (!x.value.moved && !wr(A, ae)) return;
2726
+ if (!x.value.moved && !Tr(A, ae)) return;
2717
2727
  x.value.moved = !0;
2718
- const Ee = yr({
2728
+ const Ae = Er({
2719
2729
  x: x.value.left,
2720
2730
  y: x.value.top,
2721
2731
  width: x.value.width,
@@ -2724,30 +2734,30 @@ const Ir = {
2724
2734
  dy: ae,
2725
2735
  scale: n.scale,
2726
2736
  edge: x.value.edge,
2727
- minWidth: wt,
2728
- minHeight: nr,
2737
+ minWidth: Tt,
2738
+ minHeight: lr,
2729
2739
  viewportWidth: window.innerWidth,
2730
2740
  viewportHeight: window.innerHeight,
2731
- margin: or
2741
+ margin: ar
2732
2742
  });
2733
- y.value = { x: Ee.x, y: Ee.y }, L.value = { width: Ee.width, height: Ee.height };
2734
- }, at = (u) => {
2735
- u.cancelable && u.preventDefault(), Yt(u.clientX, u.clientY);
2736
- }, Te = () => {
2737
- Ze();
2738
- }, Ze = () => {
2739
- m.value && Ue(), m.value = !1, x.value = null, qt(), document.removeEventListener("pointermove", at), document.removeEventListener("pointerup", Te), document.removeEventListener("pointercancel", Te);
2740
- }, Kt = () => {
2743
+ y.value = { x: Ae.x, y: Ae.y }, L.value = { width: Ae.width, height: Ae.height };
2744
+ }, mt = (u) => {
2745
+ u.cancelable && u.preventDefault(), en(u.clientX, u.clientY);
2746
+ }, Ee = () => {
2747
+ je();
2748
+ }, je = () => {
2749
+ m.value && Ze(), m.value = !1, x.value = null, Jt(), document.removeEventListener("pointermove", mt), document.removeEventListener("pointerup", Ee), document.removeEventListener("pointercancel", Ee);
2750
+ }, tn = () => {
2741
2751
  var b;
2742
2752
  const u = (b = n == null ? void 0 : n.translation) == null ? void 0 : b.target;
2743
- ir.includes(u) ? Lt.supportRTL() : Lt.removeRTL();
2753
+ cr.includes(u) ? $t.supportRTL() : $t.removeRTL();
2744
2754
  };
2745
- return ee(
2755
+ return te(
2746
2756
  () => n.status,
2747
2757
  () => {
2748
- a.value && ct(he), Kt();
2758
+ a.value && ht(he), tn();
2749
2759
  }
2750
- ), ee(
2760
+ ), te(
2751
2761
  () => n.theme,
2752
2762
  (u) => {
2753
2763
  g.value = u;
@@ -2757,17 +2767,17 @@ const Ir = {
2757
2767
  key: 0,
2758
2768
  ref_key: "floatingEl",
2759
2769
  ref: i,
2760
- style: Xe(Se.value),
2761
- onClick: Nt
2770
+ style: Ke(Se.value),
2771
+ onClick: qt
2762
2772
  }, [
2763
2773
  C("div", {
2764
2774
  ref_key: "contentEl",
2765
2775
  ref: s,
2766
2776
  class: "relative rounded-lg",
2767
- style: Xe(J.value),
2777
+ style: Ke(J.value),
2768
2778
  "data-theme": g.value
2769
2779
  }, [
2770
- D(cr, {
2780
+ W(hr, {
2771
2781
  translation: n.translation,
2772
2782
  explanation: n.explanation,
2773
2783
  tts: n.tts,
@@ -2787,9 +2797,9 @@ const Ir = {
2787
2797
  editable: c.value,
2788
2798
  selectedText: l.value,
2789
2799
  onLogo: b[0] || (b[0] = (A) => o("logo")),
2790
- onWrite: Pt,
2791
- onReplace: _t,
2792
- onCopy: zt,
2800
+ onWrite: Zt,
2801
+ onReplace: Ut,
2802
+ onCopy: Ht,
2793
2803
  onFavorite: b[1] || (b[1] = (A) => o("favorite")),
2794
2804
  onSettings: b[2] || (b[2] = (A) => o("settings")),
2795
2805
  onClose: ge,
@@ -2797,20 +2807,20 @@ const Ir = {
2797
2807
  onAiTranslate: b[4] || (b[4] = (A) => o("aiTranslate")),
2798
2808
  onAiExplain: b[5] || (b[5] = (A) => o("aiExplain")),
2799
2809
  onLearn: b[6] || (b[6] = (A) => o("learn", A)),
2800
- onThemeChange: Ht,
2801
- onDragStart: Ut,
2802
- onResizeStart: Xt
2810
+ onThemeChange: Xt,
2811
+ onDragStart: Yt,
2812
+ onResizeStart: Qt
2803
2813
  }, null, 8, ["translation", "explanation", "tts", "status", "isFavorite", "isFavoriteFeatureEnabled", "isAITranslate", "isAIExplain", "aiExplainMinLength", "theme", "showThemeSelector", "constrained", "mode", "writing", "writeAction", "isWriteLoading", "editable", "selectedText"])
2804
- ], 12, Br)
2814
+ ], 12, Wr)
2805
2815
  ], 4)) : M("", !0),
2806
- D(Ir, {
2816
+ W(Fr, {
2807
2817
  textSelected: l.value,
2808
- onToggleKey: Vt,
2818
+ onToggleKey: jt,
2809
2819
  onClose: ge
2810
2820
  }, null, 8, ["textSelected"])
2811
2821
  ], 64));
2812
2822
  }
2813
2823
  };
2814
2824
  export {
2815
- Or as default
2825
+ _r as default
2816
2826
  };