@ddict/popup 1.4.5 → 1.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/popup.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { openBlock as C, createElementBlock as y, createElementVNode as p, createCommentVNode as H, computed as $, unref as T, shallowRef as ze, watch as R, triggerRef as F0, onScopeDispose as _0, ref as I, onUnmounted as R2, inject as l2, watchEffect as f2, onMounted as s2, cloneVNode as le, h as V2, Fragment as j, defineComponent as p2, provide as c2, reactive as se, nextTick as Q, toRaw as n2, effectScope as ie, markRaw as C2, hasInjectionContext as Ue, getCurrentInstance as ae, isRef as S2, isReactive as E0, toRef as a0, getCurrentScope as re, toRefs as A0, mergeModels as We, useModel as qe, createBlock as q, withCtx as Z2, createVNode as D, renderList as X, normalizeClass as N, toDisplayString as J, withModifiers as d0, createTextVNode as F2, withDirectives as e0, vModelText as t0, pushScopeId as L0, popScopeId as S0, withKeys as Ge } from "vue";
1
+ import { openBlock as C, createElementBlock as y, createElementVNode as p, createCommentVNode as H, computed as T, unref as $, shallowRef as ze, watch as R, triggerRef as F0, onScopeDispose as _0, ref as I, onUnmounted as R2, inject as l2, watchEffect as f2, onMounted as s2, cloneVNode as le, h as V2, Fragment as j, defineComponent as p2, provide as c2, reactive as se, nextTick as Q, toRaw as n2, effectScope as ie, markRaw as C2, hasInjectionContext as Ue, getCurrentInstance as ae, isRef as S2, isReactive as E0, toRef as a0, getCurrentScope as re, toRefs as A0, mergeModels as We, useModel as qe, createBlock as q, withCtx as Z2, createVNode as D, renderList as X, normalizeClass as N, toDisplayString as J, withModifiers as d0, createTextVNode as F2, withDirectives as e0, vModelText as t0, pushScopeId as L0, popScopeId as S0, withKeys as Ge } from "vue";
2
2
  const f0 = navigator.userAgent.match(
3
3
  /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i
4
4
  ), j2 = {
@@ -101,8 +101,8 @@ function I2(e, n, t) {
101
101
  o = c;
102
102
  let x;
103
103
  if (t.key && ((a = t.debug) != null && a.call(t)) && (x = Date.now()), l = n(...c), t.key && ((i = t.debug) != null && i.call(t))) {
104
- const h = Math.round((Date.now() - u) * 100) / 100, b = Math.round((Date.now() - x) * 100) / 100, m = b / 16, V = (w, g) => {
105
- for (w = String(w); w.length < g; )
104
+ const h = Math.round((Date.now() - u) * 100) / 100, b = Math.round((Date.now() - x) * 100) / 100, g = b / 16, V = (w, m) => {
105
+ for (w = String(w); w.length < m; )
106
106
  w = " " + w;
107
107
  return w;
108
108
  };
@@ -113,7 +113,7 @@ function I2(e, n, t) {
113
113
  font-weight: bold;
114
114
  color: hsl(${Math.max(
115
115
  0,
116
- Math.min(120 - 120 * m, 120)
116
+ Math.min(120 - 120 * g, 120)
117
117
  )}deg 100% 31%);`,
118
118
  t == null ? void 0 : t.key
119
119
  );
@@ -349,12 +349,12 @@ class Et {
349
349
  this.options.measureElement(M, void 0, this)
350
350
  );
351
351
  });
352
- const h = s(d), b = this.options.lanes === 1 ? c[d - 1] : this.getFurthestMeasurement(c, d), m = b ? b.end + this.options.gap : o + l, V = i.get(h), w = typeof V == "number" ? V : this.options.estimateSize(d), g = m + w, S = b ? b.lane : d % this.options.lanes;
352
+ const h = s(d), b = this.options.lanes === 1 ? c[d - 1] : this.getFurthestMeasurement(c, d), g = b ? b.end + this.options.gap : o + l, V = i.get(h), w = typeof V == "number" ? V : this.options.estimateSize(d), m = g + w, S = b ? b.lane : d % this.options.lanes;
353
353
  c[d] = {
354
354
  index: d,
355
- start: m,
355
+ start: g,
356
356
  size: w,
357
- end: g,
357
+ end: m,
358
358
  key: h,
359
359
  lane: S,
360
360
  measureElement: x
@@ -541,9 +541,9 @@ function Lt({
541
541
  return { startIndex: s, endIndex: a };
542
542
  }
543
543
  function St(e) {
544
- const n = new Et(T(e)), t = ze(n), o = n._didMount();
544
+ const n = new Et($(e)), t = ze(n), o = n._didMount();
545
545
  return R(
546
- () => T(e).getScrollElement(),
546
+ () => $(e).getScrollElement(),
547
547
  (l) => {
548
548
  l && n._willUpdate();
549
549
  },
@@ -551,7 +551,7 @@ function St(e) {
551
551
  immediate: !0
552
552
  }
553
553
  ), R(
554
- () => T(e),
554
+ () => $(e),
555
555
  (l) => {
556
556
  n.setOptions({
557
557
  ...l,
@@ -566,19 +566,19 @@ function St(e) {
566
566
  }
567
567
  ), _0(o), t;
568
568
  }
569
- function $t(e) {
569
+ function Tt(e) {
570
570
  return St(
571
- $(() => ({
571
+ T(() => ({
572
572
  observeElementRect: bt,
573
573
  observeElementOffset: wt,
574
574
  scrollToFn: _t,
575
- ...T(e)
575
+ ...$(e)
576
576
  }))
577
577
  );
578
578
  }
579
- function Tt(e, n, t) {
580
- let o = I(t == null ? void 0 : t.value), l = $(() => e.value !== void 0);
581
- return [$(() => l.value ? e.value : o.value), function(s) {
579
+ function $t(e, n, t) {
580
+ let o = I(t == null ? void 0 : t.value), l = T(() => e.value !== void 0);
581
+ return [T(() => l.value ? e.value : o.value), function(s) {
582
582
  return l.value || (o.value = s), n == null ? void 0 : n(s);
583
583
  }];
584
584
  }
@@ -676,9 +676,9 @@ let Bt = class {
676
676
  detect() {
677
677
  return typeof window > "u" || typeof document > "u" ? "server" : "client";
678
678
  }
679
- }, $0 = new Bt();
680
- function T0(e) {
681
- if ($0.isServer) return null;
679
+ }, T0 = new Bt();
680
+ function $0(e) {
681
+ if (T0.isServer) return null;
682
682
  if (e instanceof Node) return e.ownerDocument;
683
683
  if (e != null && e.hasOwnProperty("value")) {
684
684
  let n = B(e);
@@ -690,7 +690,7 @@ let D0 = ["[contentEditable=true]", "[tabindex]", "a[href]", "area[href]", "butt
690
690
  var Ht = ((e) => (e[e.First = 1] = "First", e[e.Previous = 2] = "Previous", e[e.Next = 4] = "Next", e[e.Last = 8] = "Last", e[e.WrapAround = 16] = "WrapAround", e[e.NoScroll = 32] = "NoScroll", e))(Ht || {}), Dt = ((e) => (e[e.Error = 0] = "Error", e[e.Overflow = 1] = "Overflow", e[e.Success = 2] = "Success", e[e.Underflow = 3] = "Underflow", e))(Dt || {}), Rt = ((e) => (e[e.Previous = -1] = "Previous", e[e.Next = 1] = "Next", e))(Rt || {}), ce = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(ce || {});
691
691
  function Pt(e, n = 0) {
692
692
  var t;
693
- return e === ((t = T0(e)) == null ? void 0 : t.body) ? !1 : u2(n, { 0() {
693
+ return e === ((t = $0(e)) == null ? void 0 : t.body) ? !1 : u2(n, { 0() {
694
694
  return e.matches(D0);
695
695
  }, 1() {
696
696
  let o = e;
@@ -725,16 +725,16 @@ function de() {
725
725
  return jt() || zt();
726
726
  }
727
727
  function z2(e, n, t) {
728
- $0.isServer || f2((o) => {
728
+ T0.isServer || f2((o) => {
729
729
  document.addEventListener(e, n, t), o(() => document.removeEventListener(e, n, t));
730
730
  });
731
731
  }
732
732
  function Ut(e, n, t) {
733
- $0.isServer || f2((o) => {
733
+ T0.isServer || f2((o) => {
734
734
  window.addEventListener(e, n, t), o(() => window.removeEventListener(e, n, t));
735
735
  });
736
736
  }
737
- function Wt(e, n, t = $(() => !0)) {
737
+ function Wt(e, n, t = T(() => !0)) {
738
738
  function o(s, a) {
739
739
  if (!t.value || s.defaultPrevented) return;
740
740
  let i = a(s);
@@ -790,7 +790,7 @@ function Jt({ container: e, accept: n, walk: t, enabled: o }) {
790
790
  f2(() => {
791
791
  let l = e.value;
792
792
  if (!l || o !== void 0 && !o.value) return;
793
- let s = T0(e);
793
+ let s = $0(e);
794
794
  if (!s) return;
795
795
  let a = Object.assign((r) => n(r), { acceptNode: n }), i = s.createTreeWalker(l, NodeFilter.SHOW_ELEMENT, a, !1);
796
796
  for (; i.nextNode(); ) t(i.currentNode);
@@ -822,12 +822,12 @@ function u0({ props: e, attrs: n, slots: t, slot: o, name: l }) {
822
822
  if (i === "template") {
823
823
  if (u = fe(u ?? []), Object.keys(r).length > 0 || Object.keys(n).length > 0) {
824
824
  let [d, ...x] = u ?? [];
825
- if (!Xt(d) || x.length > 0) throw new Error(['Passing props on "template"!', "", `The current component <${l} /> is rendering a "template".`, "However we need to passthrough the following props:", Object.keys(r).concat(Object.keys(n)).map((m) => m.trim()).filter((m, V, w) => w.indexOf(m) === V).sort((m, V) => m.localeCompare(V)).map((m) => ` - ${m}`).join(`
826
- `), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".', "Render a single element as the child so that we can forward the props onto that element."].map((m) => ` - ${m}`).join(`
825
+ if (!Xt(d) || x.length > 0) throw new Error(['Passing props on "template"!', "", `The current component <${l} /> is rendering a "template".`, "However we need to passthrough the following props:", Object.keys(r).concat(Object.keys(n)).map((g) => g.trim()).filter((g, V, w) => w.indexOf(g) === V).sort((g, V) => g.localeCompare(V)).map((g) => ` - ${g}`).join(`
826
+ `), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".', "Render a single element as the child so that we can forward the props onto that element."].map((g) => ` - ${g}`).join(`
827
827
  `)].join(`
828
828
  `));
829
829
  let h = ve((a = d.props) != null ? a : {}, r, c), b = le(d, h, !0);
830
- for (let m in h) m.startsWith("on") && (b.props || (b.props = {}), b.props[m] = h[m]);
830
+ for (let g in h) g.startsWith("on") && (b.props || (b.props = {}), b.props[g] = h[g]);
831
831
  return b;
832
832
  }
833
833
  return Array.isArray(u) && u.length === 1 ? u[0] : u;
@@ -955,16 +955,16 @@ function y2(e) {
955
955
  return n;
956
956
  }
957
957
  let we = Symbol("VirtualContext"), r1 = p2({ name: "VirtualProvider", setup(e, { slots: n }) {
958
- let t = y2("VirtualProvider"), o = $(() => {
958
+ let t = y2("VirtualProvider"), o = T(() => {
959
959
  let i = B(t.optionsRef);
960
960
  if (!i) return { start: 0, end: 0 };
961
961
  let r = window.getComputedStyle(i);
962
962
  return { start: parseFloat(r.paddingBlockStart || r.paddingTop), end: parseFloat(r.paddingBlockEnd || r.paddingBottom) };
963
- }), l = $t($(() => ({ scrollPaddingStart: o.value.start, scrollPaddingEnd: o.value.end, count: t.virtual.value.options.length, estimateSize() {
963
+ }), l = Tt(T(() => ({ scrollPaddingStart: o.value.start, scrollPaddingEnd: o.value.end, count: t.virtual.value.options.length, estimateSize() {
964
964
  return 40;
965
965
  }, getScrollElement() {
966
966
  return B(t.optionsRef);
967
- }, overscan: 12 }))), s = $(() => {
967
+ }, overscan: 12 }))), s = T(() => {
968
968
  var i;
969
969
  return (i = t.virtual.value) == null ? void 0 : i.options;
970
970
  }), a = I(0);
@@ -982,16 +982,16 @@ let we = Symbol("VirtualContext"), r1 = p2({ name: "VirtualProvider", setup(e, {
982
982
  let v = d.value !== null ? c.value[d.value] : null, O = f(c.value.slice()), k = O.length > 0 && O[0].dataRef.order.value !== null ? O.sort((Z, K) => Z.dataRef.order.value - K.dataRef.order.value) : Zt(O, (Z) => B(Z.dataRef.domRef)), P = v ? k.indexOf(v) : null;
983
983
  return P === -1 && (P = null), { options: k, activeOptionIndex: P };
984
984
  }
985
- let m = $(() => e.multiple ? 1 : 0), V = $(() => e.nullable), [w, g] = Tt($(() => e.modelValue), (f) => o("update:modelValue", f), $(() => e.defaultValue)), S = $(() => w.value === void 0 ? u2(m.value, { 1: [], 0: void 0 }) : w.value), M = null, _ = null;
985
+ let g = T(() => e.multiple ? 1 : 0), V = T(() => e.nullable), [w, m] = $t(T(() => e.modelValue), (f) => o("update:modelValue", f), T(() => e.defaultValue)), S = T(() => w.value === void 0 ? u2(g.value, { 1: [], 0: void 0 }) : w.value), M = null, _ = null;
986
986
  function F(f) {
987
- return u2(m.value, { 0() {
988
- return g == null ? void 0 : g(f);
987
+ return u2(g.value, { 0() {
988
+ return m == null ? void 0 : m(f);
989
989
  }, 1: () => {
990
990
  let v = n2(L.value.value).slice(), O = n2(f), k = v.findIndex((P) => L.compare(O, n2(P)));
991
- return k === -1 ? v.push(O) : v.splice(k, 1), g == null ? void 0 : g(v);
991
+ return k === -1 ? v.push(O) : v.splice(k, 1), m == null ? void 0 : m(v);
992
992
  } });
993
993
  }
994
- let E = $(() => {
994
+ let E = T(() => {
995
995
  });
996
996
  R([E], ([f], [v]) => {
997
997
  if (L.virtual.value && f && v && d.value !== null) {
@@ -999,7 +999,7 @@ let we = Symbol("VirtualContext"), r1 = p2({ name: "VirtualProvider", setup(e, {
999
999
  O !== -1 ? d.value = O : d.value = null;
1000
1000
  }
1001
1001
  });
1002
- let L = { comboboxState: l, value: S, mode: m, compare(f, v) {
1002
+ let L = { comboboxState: l, value: S, mode: g, compare(f, v) {
1003
1003
  if (typeof e.by == "string") {
1004
1004
  let O = e.by;
1005
1005
  return (f == null ? void 0 : f[O]) === (v == null ? void 0 : v[O]);
@@ -1007,9 +1007,9 @@ let we = Symbol("VirtualContext"), r1 = p2({ name: "VirtualProvider", setup(e, {
1007
1007
  return e.by === null ? l1(f, v) : e.by(f, v);
1008
1008
  }, calculateIndex(f) {
1009
1009
  return L.virtual.value ? e.by === null ? L.virtual.value.options.indexOf(f) : L.virtual.value.options.findIndex((v) => L.compare(v, f)) : c.value.findIndex((v) => L.compare(v.dataRef.value, f));
1010
- }, defaultValue: $(() => e.defaultValue), nullable: V, immediate: $(() => !1), virtual: $(() => null), inputRef: a, labelRef: s, buttonRef: i, optionsRef: r, disabled: $(() => e.disabled), options: c, change(f) {
1011
- g(f);
1012
- }, activeOptionIndex: $(() => {
1010
+ }, defaultValue: T(() => e.defaultValue), nullable: V, immediate: T(() => !1), virtual: T(() => null), inputRef: a, labelRef: s, buttonRef: i, optionsRef: r, disabled: T(() => e.disabled), options: c, change(f) {
1011
+ m(f);
1012
+ }, activeOptionIndex: T(() => {
1013
1013
  if (h.value && d.value === null && (L.virtual.value ? L.virtual.value.options.length > 0 : c.value.length > 0)) {
1014
1014
  if (L.virtual.value) {
1015
1015
  let v = L.virtual.value.options.findIndex((O) => {
@@ -1094,12 +1094,12 @@ let we = Symbol("VirtualContext"), r1 = p2({ name: "VirtualProvider", setup(e, {
1094
1094
  });
1095
1095
  c.value = O.options, d.value = O.activeOptionIndex, x.value = 2;
1096
1096
  }, isSelected(f) {
1097
- return u2(m.value, { 0: () => L.compare(n2(L.value.value), n2(f)), 1: () => n2(L.value.value).some((v) => L.compare(n2(v), n2(f))) });
1097
+ return u2(g.value, { 0: () => L.compare(n2(L.value.value), n2(f)), 1: () => n2(L.value.value).some((v) => L.compare(n2(v), n2(f))) });
1098
1098
  }, isActive(f) {
1099
1099
  return d.value === L.calculateIndex(f);
1100
1100
  } };
1101
- Wt([a, i, r], () => L.closeCombobox(), $(() => l.value === 0)), c2(xe, L), t1($(() => u2(l.value, { 0: B2.Open, 1: B2.Closed })));
1102
- let A = $(() => {
1101
+ Wt([a, i, r], () => L.closeCombobox(), T(() => l.value === 0)), c2(xe, L), t1(T(() => u2(l.value, { 0: B2.Open, 1: B2.Closed })));
1102
+ let A = T(() => {
1103
1103
  var f;
1104
1104
  return (f = B(a)) == null ? void 0 : f.closest("form");
1105
1105
  });
@@ -1167,7 +1167,7 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1167
1167
  return;
1168
1168
  }
1169
1169
  }
1170
- let u = qt($(() => ({ as: e.as, type: n.type })), a.buttonRef);
1170
+ let u = qt(T(() => ({ as: e.as, type: n.type })), a.buttonRef);
1171
1171
  return () => {
1172
1172
  var c, d;
1173
1173
  let x = { open: a.comboboxState.value === 0, disabled: a.disabled.value, value: a.value.value }, { ...h } = e, b = { ref: a.buttonRef, id: s, type: u.value, tabindex: "-1", "aria-haspopup": "listbox", "aria-controls": (c = B(a.optionsRef)) == null ? void 0 : c.id, "aria-expanded": a.comboboxState.value === 0, "aria-labelledby": a.labelRef.value ? [(d = B(a.labelRef)) == null ? void 0 : d.id, s].join(" ") : void 0, disabled: a.disabled.value === !0 ? !0 : void 0, onKeydown: r, onClick: i };
@@ -1175,14 +1175,14 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1175
1175
  };
1176
1176
  } }), d1 = p2({ name: "ComboboxInput", props: { as: { type: [Object, String], default: "input" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, displayValue: { type: Function }, defaultValue: { type: String, default: void 0 }, id: { type: String, default: null } }, emits: { change: (e) => !0 }, setup(e, { emit: n, attrs: t, slots: o, expose: l }) {
1177
1177
  var s;
1178
- let a = (s = e.id) != null ? s : `headlessui-combobox-input-${P2()}`, i = y2("ComboboxInput"), r = $(() => T0(B(i.inputRef))), u = { value: !1 };
1178
+ let a = (s = e.id) != null ? s : `headlessui-combobox-input-${P2()}`, i = y2("ComboboxInput"), r = T(() => $0(B(i.inputRef))), u = { value: !1 };
1179
1179
  l({ el: i.inputRef, $el: i.inputRef });
1180
1180
  function c() {
1181
1181
  i.change(null);
1182
1182
  let _ = B(i.optionsRef);
1183
1183
  _ && (_.scrollTop = 0), i.goToOption(W.Nothing);
1184
1184
  }
1185
- let d = $(() => {
1185
+ let d = T(() => {
1186
1186
  var _;
1187
1187
  let F = i.value.value;
1188
1188
  return B(i.inputRef) ? typeof e.displayValue < "u" && F !== void 0 ? (_ = e.displayValue(F)) != null ? _ : "" : typeof F == "string" ? F : "" : "";
@@ -1216,9 +1216,9 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1216
1216
  x.value = !1;
1217
1217
  });
1218
1218
  }
1219
- let m = Mt();
1219
+ let g = Mt();
1220
1220
  function V(_) {
1221
- switch (u.value = !0, m(() => {
1221
+ switch (u.value = !0, g(() => {
1222
1222
  u.value = !1;
1223
1223
  }), _.key) {
1224
1224
  case Y.Enter:
@@ -1260,7 +1260,7 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1260
1260
  function w(_) {
1261
1261
  n("change", _), i.nullable.value && i.mode.value === 0 && _.target.value === "" && c(), i.openCombobox();
1262
1262
  }
1263
- function g(_) {
1263
+ function m(_) {
1264
1264
  var F, E, L;
1265
1265
  let A = (F = _.relatedTarget) != null ? F : m2.find((f) => f !== _.currentTarget);
1266
1266
  if (u.value = !1, !((E = B(i.optionsRef)) != null && E.contains(A)) && !((L = B(i.buttonRef)) != null && L.contains(A)) && i.comboboxState.value === 0) return _.preventDefault(), i.mode.value === 0 && (i.nullable.value && i.value.value === null ? c() : i.activationTrigger.value !== 1 && i.selectActiveOption()), i.closeCombobox();
@@ -1272,13 +1272,13 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1272
1272
  i.setActivationTrigger(1);
1273
1273
  }));
1274
1274
  }
1275
- let M = $(() => {
1275
+ let M = T(() => {
1276
1276
  var _, F, E, L;
1277
1277
  return (L = (E = (F = e.defaultValue) != null ? F : i.defaultValue.value !== void 0 ? (_ = e.displayValue) == null ? void 0 : _.call(e, i.defaultValue.value) : null) != null ? E : i.defaultValue.value) != null ? L : "";
1278
1278
  });
1279
1279
  return () => {
1280
1280
  var _, F, E, L, A, f, v;
1281
- let O = { open: i.comboboxState.value === 0 }, { displayValue: k, onChange: P, ...Z } = e, K = { "aria-controls": (_ = i.optionsRef.value) == null ? void 0 : _.id, "aria-expanded": i.comboboxState.value === 0, "aria-activedescendant": i.activeOptionIndex.value === null ? void 0 : i.virtual.value ? (F = i.options.value.find((e2) => !i.virtual.value.disabled(e2.dataRef.value) && i.compare(e2.dataRef.value, i.virtual.value.options[i.activeOptionIndex.value]))) == null ? void 0 : F.id : (E = i.options.value[i.activeOptionIndex.value]) == null ? void 0 : E.id, "aria-labelledby": (f = (L = B(i.labelRef)) == null ? void 0 : L.id) != null ? f : (A = B(i.buttonRef)) == null ? void 0 : A.id, "aria-autocomplete": "list", id: a, onCompositionstart: h, onCompositionend: b, onKeydown: V, onInput: w, onFocus: S, onBlur: g, role: "combobox", type: (v = t.type) != null ? v : "text", tabIndex: 0, ref: i.inputRef, defaultValue: M.value, disabled: i.disabled.value === !0 ? !0 : void 0 };
1281
+ let O = { open: i.comboboxState.value === 0 }, { displayValue: k, onChange: P, ...Z } = e, K = { "aria-controls": (_ = i.optionsRef.value) == null ? void 0 : _.id, "aria-expanded": i.comboboxState.value === 0, "aria-activedescendant": i.activeOptionIndex.value === null ? void 0 : i.virtual.value ? (F = i.options.value.find((e2) => !i.virtual.value.disabled(e2.dataRef.value) && i.compare(e2.dataRef.value, i.virtual.value.options[i.activeOptionIndex.value]))) == null ? void 0 : F.id : (E = i.options.value[i.activeOptionIndex.value]) == null ? void 0 : E.id, "aria-labelledby": (f = (L = B(i.labelRef)) == null ? void 0 : L.id) != null ? f : (A = B(i.buttonRef)) == null ? void 0 : A.id, "aria-autocomplete": "list", id: a, onCompositionstart: h, onCompositionend: b, onKeydown: V, onInput: w, onFocus: S, onBlur: m, role: "combobox", type: (v = t.type) != null ? v : "text", tabIndex: 0, ref: i.inputRef, defaultValue: M.value, disabled: i.disabled.value === !0 ? !0 : void 0 };
1282
1282
  return w2({ ourProps: K, theirProps: Z, slot: O, attrs: t, slots: o, features: A2.RenderStrategy | A2.Static, name: "ComboboxInput" });
1283
1283
  };
1284
1284
  } }), f1 = p2({ name: "ComboboxOptions", props: { as: { type: [Object, String], default: "ul" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, hold: { type: [Boolean], default: !1 } }, setup(e, { attrs: n, slots: t, expose: o }) {
@@ -1288,8 +1288,8 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1288
1288
  }), f2(() => {
1289
1289
  l.optionsPropsRef.value.hold = e.hold;
1290
1290
  });
1291
- let a = e1(), i = $(() => a !== null ? (a.value & B2.Open) === B2.Open : l.comboboxState.value === 0);
1292
- Jt({ container: $(() => B(l.optionsRef)), enabled: $(() => l.comboboxState.value === 0), accept(u) {
1291
+ let a = e1(), i = T(() => a !== null ? (a.value & B2.Open) === B2.Open : l.comboboxState.value === 0);
1292
+ Jt({ container: T(() => B(l.optionsRef)), enabled: T(() => l.comboboxState.value === 0), accept(u) {
1293
1293
  return u.getAttribute("role") === "option" ? NodeFilter.FILTER_REJECT : u.hasAttribute("role") ? NodeFilter.FILTER_SKIP : NodeFilter.FILTER_ACCEPT;
1294
1294
  }, walk(u) {
1295
1295
  u.setAttribute("role", "none");
@@ -1303,49 +1303,49 @@ let c1 = p2({ name: "ComboboxButton", props: { as: { type: [Object, String], def
1303
1303
  return w2({ ourProps: h, theirProps: b, slot: x, attrs: n, slots: l.virtual.value && l.comboboxState.value === 0 ? { ...t, default: () => [V2(r1, {}, t.default)] } : t, features: A2.RenderStrategy | A2.Static, visible: i.value, name: "ComboboxOptions" });
1304
1304
  };
1305
1305
  } }), v1 = p2({ name: "ComboboxOption", props: { as: { type: [Object, String], default: "li" }, value: { type: [Object, String, Number, Boolean] }, disabled: { type: Boolean, default: !1 }, order: { type: [Number], default: null } }, setup(e, { slots: n, attrs: t, expose: o }) {
1306
- let l = y2("ComboboxOption"), s = `headlessui-combobox-option-${P2()}`, a = I(null), i = $(() => e.disabled);
1306
+ let l = y2("ComboboxOption"), s = `headlessui-combobox-option-${P2()}`, a = I(null), i = T(() => e.disabled);
1307
1307
  o({ el: a, $el: a });
1308
- let r = $(() => {
1309
- var g;
1310
- return l.virtual.value ? l.activeOptionIndex.value === l.calculateIndex(e.value) : l.activeOptionIndex.value === null ? !1 : ((g = l.options.value[l.activeOptionIndex.value]) == null ? void 0 : g.id) === s;
1311
- }), u = $(() => l.isSelected(e.value)), c = l2(we, null), d = $(() => ({ disabled: e.disabled, value: e.value, domRef: a, order: $(() => e.order) }));
1308
+ let r = T(() => {
1309
+ var m;
1310
+ return l.virtual.value ? l.activeOptionIndex.value === l.calculateIndex(e.value) : l.activeOptionIndex.value === null ? !1 : ((m = l.options.value[l.activeOptionIndex.value]) == null ? void 0 : m.id) === s;
1311
+ }), u = T(() => l.isSelected(e.value)), c = l2(we, null), d = T(() => ({ disabled: e.disabled, value: e.value, domRef: a, order: T(() => e.order) }));
1312
1312
  s2(() => l.registerOption(s, d)), R2(() => l.unregisterOption(s, r.value)), f2(() => {
1313
- let g = B(a);
1314
- g && (c == null || c.value.measureElement(g));
1313
+ let m = B(a);
1314
+ m && (c == null || c.value.measureElement(m));
1315
1315
  }), f2(() => {
1316
1316
  l.comboboxState.value === 0 && r.value && (l.virtual.value || l.activationTrigger.value !== 0 && Q(() => {
1317
- var g, S;
1318
- return (S = (g = B(a)) == null ? void 0 : g.scrollIntoView) == null ? void 0 : S.call(g, { block: "nearest" });
1317
+ var m, S;
1318
+ return (S = (m = B(a)) == null ? void 0 : m.scrollIntoView) == null ? void 0 : S.call(m, { block: "nearest" });
1319
1319
  }));
1320
1320
  });
1321
- function x(g) {
1322
- g.preventDefault(), g.button === ge.Left && (i.value || (l.selectOption(s), de() || requestAnimationFrame(() => {
1321
+ function x(m) {
1322
+ m.preventDefault(), m.button === ge.Left && (i.value || (l.selectOption(s), de() || requestAnimationFrame(() => {
1323
1323
  var S;
1324
1324
  return (S = B(l.inputRef)) == null ? void 0 : S.focus({ preventScroll: !0 });
1325
1325
  }), l.mode.value === 0 && l.closeCombobox()));
1326
1326
  }
1327
1327
  function h() {
1328
- var g;
1329
- if (e.disabled || (g = l.virtual.value) != null && g.disabled(e.value)) return l.goToOption(W.Nothing);
1328
+ var m;
1329
+ if (e.disabled || (m = l.virtual.value) != null && m.disabled(e.value)) return l.goToOption(W.Nothing);
1330
1330
  let S = l.calculateIndex(e.value);
1331
1331
  l.goToOption(W.Specific, S);
1332
1332
  }
1333
1333
  let b = Gt();
1334
- function m(g) {
1335
- b.update(g);
1334
+ function g(m) {
1335
+ b.update(m);
1336
1336
  }
1337
- function V(g) {
1337
+ function V(m) {
1338
1338
  var S;
1339
- if (!b.wasMoved(g) || e.disabled || (S = l.virtual.value) != null && S.disabled(e.value) || r.value) return;
1339
+ if (!b.wasMoved(m) || e.disabled || (S = l.virtual.value) != null && S.disabled(e.value) || r.value) return;
1340
1340
  let M = l.calculateIndex(e.value);
1341
1341
  l.goToOption(W.Specific, M, 0);
1342
1342
  }
1343
- function w(g) {
1343
+ function w(m) {
1344
1344
  var S;
1345
- b.wasMoved(g) && (e.disabled || (S = l.virtual.value) != null && S.disabled(e.value) || r.value && (l.optionsPropsRef.value.hold || l.goToOption(W.Nothing)));
1345
+ b.wasMoved(m) && (e.disabled || (S = l.virtual.value) != null && S.disabled(e.value) || r.value && (l.optionsPropsRef.value.hold || l.goToOption(W.Nothing)));
1346
1346
  }
1347
1347
  return () => {
1348
- let { disabled: g } = e, S = { active: r.value, selected: u.value, disabled: g }, M = { id: s, ref: a, role: "option", tabIndex: g === !0 ? void 0 : -1, "aria-disabled": g === !0 ? !0 : void 0, "aria-selected": u.value, disabled: void 0, onMousedown: x, onFocus: h, onPointerenter: m, onMouseenter: m, onPointermove: V, onMousemove: V, onPointerleave: w, onMouseleave: w }, _ = n0(e, ["order", "value"]);
1348
+ let { disabled: m } = e, S = { active: r.value, selected: u.value, disabled: m }, M = { id: s, ref: a, role: "option", tabIndex: m === !0 ? void 0 : -1, "aria-disabled": m === !0 ? !0 : void 0, "aria-selected": u.value, disabled: void 0, onMousedown: x, onFocus: h, onPointerenter: g, onMouseenter: g, onPointermove: V, onMousemove: V, onPointerleave: w, onMouseleave: w }, _ = n0(e, ["order", "value"]);
1349
1349
  return w2({ ourProps: M, theirProps: _, slot: S, attrs: t, slots: n, name: "ComboboxOption" });
1350
1350
  };
1351
1351
  } });
@@ -1519,7 +1519,7 @@ function E1(e, { autoBom: n = !1 } = {}) {
1519
1519
  function I0(e, n, t) {
1520
1520
  const o = new XMLHttpRequest();
1521
1521
  o.open("GET", e), o.responseType = "blob", o.onload = function() {
1522
- Te(o.response, n, t);
1522
+ $e(o.response, n, t);
1523
1523
  }, o.onerror = function() {
1524
1524
  console.error("could not download file");
1525
1525
  }, o.send();
@@ -1541,13 +1541,13 @@ function q2(e) {
1541
1541
  t.initMouseEvent("click", !0, !0, window, 0, 0, 0, 80, 20, !1, !1, !1, !1, 0, null), e.dispatchEvent(t);
1542
1542
  }
1543
1543
  }
1544
- const G2 = typeof navigator == "object" ? navigator : { userAgent: "" }, $e = /Macintosh/.test(G2.userAgent) && /AppleWebKit/.test(G2.userAgent) && !/Safari/.test(G2.userAgent), Te = o0 ? (
1544
+ const G2 = typeof navigator == "object" ? navigator : { userAgent: "" }, Te = /Macintosh/.test(G2.userAgent) && /AppleWebKit/.test(G2.userAgent) && !/Safari/.test(G2.userAgent), $e = o0 ? (
1545
1545
  // Use download attribute first if possible (#193 Lumia mobile) unless this is a macOS WebView or mini program
1546
- typeof HTMLAnchorElement < "u" && "download" in HTMLAnchorElement.prototype && !$e ? L1 : (
1546
+ typeof HTMLAnchorElement < "u" && "download" in HTMLAnchorElement.prototype && !Te ? L1 : (
1547
1547
  // Use msSaveOrOpenBlob as a second approach
1548
1548
  "msSaveOrOpenBlob" in G2 ? S1 : (
1549
1549
  // Fallback to using FileReader and a popup
1550
- $1
1550
+ T1
1551
1551
  )
1552
1552
  )
1553
1553
  ) : () => {
@@ -1573,11 +1573,11 @@ function S1(e, n = "download", t) {
1573
1573
  else
1574
1574
  navigator.msSaveOrOpenBlob(E1(e, t), n);
1575
1575
  }
1576
- function $1(e, n, t, o) {
1576
+ function T1(e, n, t, o) {
1577
1577
  if (o = o || open("", "_blank"), o && (o.document.title = o.document.body.innerText = "downloading..."), typeof e == "string")
1578
1578
  return I0(e, n, t);
1579
1579
  const l = e.type === "application/octet-stream", s = /constructor/i.test(String(Z0.HTMLElement)) || "safari" in Z0, a = /CriOS\/[\d]+/.test(navigator.userAgent);
1580
- if ((a || l && s || $e) && typeof FileReader < "u") {
1580
+ if ((a || l && s || Te) && typeof FileReader < "u") {
1581
1581
  const i = new FileReader();
1582
1582
  i.onloadend = function() {
1583
1583
  let r = i.result;
@@ -1606,7 +1606,7 @@ function Ie() {
1606
1606
  function Oe(e) {
1607
1607
  return e instanceof Error && e.message.toLowerCase().includes("document is not focused") ? (U('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.', "warn"), !0) : !1;
1608
1608
  }
1609
- async function T1(e) {
1609
+ async function $1(e) {
1610
1610
  if (!Ie())
1611
1611
  try {
1612
1612
  await navigator.clipboard.writeText(JSON.stringify(e.state.value)), U("Global state copied to clipboard.");
@@ -1628,7 +1628,7 @@ async function I1(e) {
1628
1628
  }
1629
1629
  async function O1(e) {
1630
1630
  try {
1631
- Te(new Blob([JSON.stringify(e.state.value)], {
1631
+ $e(new Blob([JSON.stringify(e.state.value)], {
1632
1632
  type: "text/plain;charset=utf-8"
1633
1633
  }), "pinia-state.json");
1634
1634
  } catch (n) {
@@ -1771,7 +1771,7 @@ function D1(e, n) {
1771
1771
  {
1772
1772
  icon: "content_copy",
1773
1773
  action: () => {
1774
- T1(n);
1774
+ $1(n);
1775
1775
  },
1776
1776
  tooltip: "Serialize and copy the state"
1777
1777
  },
@@ -1954,7 +1954,7 @@ function R1(e, n) {
1954
1954
  });
1955
1955
  });
1956
1956
  }, !0), n._customProperties.forEach((a) => {
1957
- R(() => T(n[a]), (i, r) => {
1957
+ R(() => $(n[a]), (i, r) => {
1958
1958
  t.notifyComponentUpdate(), t.sendInspectorState(G), L2 && t.addTimelineEvent({
1959
1959
  layerId: g2,
1960
1960
  event: {
@@ -2118,7 +2118,7 @@ function W0(e, n, t, o) {
2118
2118
  // use ref() to unwrap refs inside state TODO: check if this is still necessary
2119
2119
  A0(I(l ? l() : {}).value)
2120
2120
  ) : A0(t.state.value[e]);
2121
- return t2(c, s, Object.keys(a || {}).reduce((d, x) => (process.env.NODE_ENV !== "production" && x in c && console.warn(`[🍍]: A getter cannot have the same name as another state property. Rename one of them. Found with "${x}" in store "${e}".`), d[x] = C2($(() => {
2121
+ return t2(c, s, Object.keys(a || {}).reduce((d, x) => (process.env.NODE_ENV !== "production" && x in c && console.warn(`[🍍]: A getter cannot have the same name as another state property. Rename one of them. Found with "${x}" in store "${e}".`), d[x] = C2(T(() => {
2122
2122
  H2(t);
2123
2123
  const h = t._s.get(e);
2124
2124
  return a[x].call(h, h);
@@ -2141,7 +2141,7 @@ function g0(e, n, t = {}, o, l, s) {
2141
2141
  let u, c, d = [], x = [], h;
2142
2142
  const b = o.state.value[e];
2143
2143
  !s && !b && (process.env.NODE_ENV === "production" || !l) && (o.state.value[e] = {});
2144
- const m = I({});
2144
+ const g = I({});
2145
2145
  let V;
2146
2146
  function w(f) {
2147
2147
  let v;
@@ -2160,7 +2160,7 @@ function g0(e, n, t = {}, o, l, s) {
2160
2160
  V === O && (u = !0);
2161
2161
  }), c = !0, E2(d, v, o.state.value[e]);
2162
2162
  }
2163
- const g = s ? function() {
2163
+ const m = s ? function() {
2164
2164
  const { state: v } = t, O = v ? v() : {};
2165
2165
  this.$patch((k) => {
2166
2166
  t2(k, O);
@@ -2204,14 +2204,14 @@ function g0(e, n, t = {}, o, l, s) {
2204
2204
  actions: {},
2205
2205
  getters: {},
2206
2206
  state: [],
2207
- hotState: m
2207
+ hotState: g
2208
2208
  }), F = {
2209
2209
  _p: o,
2210
2210
  // _s: scope,
2211
2211
  $id: e,
2212
2212
  $onAction: z0.bind(null, x),
2213
2213
  $patch: w,
2214
- $reset: g,
2214
+ $reset: m,
2215
2215
  $subscribe(f, v = {}) {
2216
2216
  const O = z0(d, f, v.detached, () => k()), k = a.run(() => R(() => o.state.value[e], (P) => {
2217
2217
  (v.flush === "sync" ? c : u) && f({
@@ -2238,7 +2238,7 @@ function g0(e, n, t = {}, o, l, s) {
2238
2238
  for (const f in A) {
2239
2239
  const v = A[f];
2240
2240
  if (S2(v) && !U0(v) || E0(v))
2241
- process.env.NODE_ENV !== "production" && l ? U2(m.value, f, a0(A, f)) : s || (b && z1(v) && (S2(v) ? v.value = b[f] : h0(v, b[f])), o.state.value[e][f] = v), process.env.NODE_ENV !== "production" && _.state.push(f);
2241
+ process.env.NODE_ENV !== "production" && l ? U2(g.value, f, a0(A, f)) : s || (b && z1(v) && (S2(v) ? v.value = b[f] : h0(v, b[f])), o.state.value[e][f] = v), process.env.NODE_ENV !== "production" && _.state.push(f);
2242
2242
  else if (typeof v == "function") {
2243
2243
  const O = process.env.NODE_ENV !== "production" && l ? v : M(f, v);
2244
2244
  A[f] = O, process.env.NODE_ENV !== "production" && (_.actions[f] = v), i.actions[f] = v;
@@ -2249,7 +2249,7 @@ function g0(e, n, t = {}, o, l, s) {
2249
2249
  (A._getters = C2([]))).push(f));
2250
2250
  }
2251
2251
  if (t2(E, A), t2(n2(E), A), Object.defineProperty(E, "$state", {
2252
- get: () => process.env.NODE_ENV !== "production" && l ? m.value : o.state.value[e],
2252
+ get: () => process.env.NODE_ENV !== "production" && l ? g.value : o.state.value[e],
2253
2253
  set: (f) => {
2254
2254
  if (process.env.NODE_ENV !== "production" && l)
2255
2255
  throw new Error("cannot set hotState");
@@ -2276,7 +2276,7 @@ function g0(e, n, t = {}, o, l, s) {
2276
2276
  for (const v in f._hmrPayload.getters) {
2277
2277
  const O = f._hmrPayload.getters[v], k = s ? (
2278
2278
  // special handling of options api
2279
- $(() => (H2(o), O.call(E, E)))
2279
+ T(() => (H2(o), O.call(E, E)))
2280
2280
  ) : O;
2281
2281
  U2(E, v, k);
2282
2282
  }
@@ -2371,32 +2371,32 @@ const x2 = N2("loader", () => {
2371
2371
  }),
2372
2372
  emits: ["update:modelValue"],
2373
2373
  setup(e) {
2374
- const n = x2(), t = e, o = qe(e, "modelValue"), l = I(""), s = I(null), a = $(() => Object.entries(t.languages).filter(
2374
+ const n = x2(), t = e, o = qe(e, "modelValue"), l = I(""), s = I(null), a = T(() => Object.entries(t.languages).filter(
2375
2375
  ([, r]) => r.toLowerCase().includes(l.value.toLowerCase())
2376
2376
  )), i = (r) => {
2377
2377
  r.target.value = "", l.value = "", s.value && s.value.$el.click();
2378
2378
  };
2379
- return (r, u) => (C(), q(T(u1), {
2379
+ return (r, u) => (C(), q($(u1), {
2380
2380
  modelValue: o.value,
2381
2381
  "onUpdate:modelValue": u[3] || (u[3] = (c) => o.value = c),
2382
- disabled: T(n).loading,
2382
+ disabled: $(n).loading,
2383
2383
  as: "div",
2384
2384
  class: "relative mt-1"
2385
2385
  }, {
2386
2386
  default: Z2(() => [
2387
- D(T(d1), {
2387
+ D($(d1), {
2388
2388
  class: "w-full bg-white border border-gray-300 rounded py-2.5 pl-3 pr-10 text-sm text-gray-800 font-medium focus:outline-none focus:ring-0.5 focus:ring-gray-400 focus:border-gray-400",
2389
2389
  onChange: u[0] || (u[0] = (c) => l.value = c.target.value),
2390
2390
  displayValue: (c) => e.languages[c],
2391
2391
  onFocus: u[1] || (u[1] = (c) => i(c))
2392
2392
  }, null, 8, ["displayValue"]),
2393
- D(T(c1), {
2393
+ D($(c1), {
2394
2394
  ref_key: "btnSelect",
2395
2395
  ref: s,
2396
2396
  class: "absolute inset-y-0 right-0 flex items-center pr-2"
2397
2397
  }, {
2398
2398
  default: Z2(() => [
2399
- D(T(h1), {
2399
+ D($(h1), {
2400
2400
  class: "h-5 w-5 text-gray-400",
2401
2401
  "aria-hidden": "true",
2402
2402
  onClick: u[2] || (u[2] = (c) => i(c))
@@ -2404,9 +2404,9 @@ const x2 = N2("loader", () => {
2404
2404
  ]),
2405
2405
  _: 1
2406
2406
  }, 512),
2407
- D(T(f1), { class: "absolute mt-1 max-h-60 w-full overflow-auto rounded-md bg-white py-1 text-base shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none sm:text-sm z-50" }, {
2407
+ D($(f1), { class: "absolute mt-1 max-h-60 w-full overflow-auto rounded-md bg-white py-1 text-base shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none sm:text-sm z-50" }, {
2408
2408
  default: Z2(() => [
2409
- (C(!0), y(j, null, X(a.value, ([c, d]) => (C(), q(T(v1), {
2409
+ (C(!0), y(j, null, X(a.value, ([c, d]) => (C(), q($(v1), {
2410
2410
  key: c,
2411
2411
  value: c
2412
2412
  }, {
@@ -2453,7 +2453,7 @@ const x2 = N2("loader", () => {
2453
2453
  },
2454
2454
  emits: ["swap"],
2455
2455
  setup(e, { emit: n }) {
2456
- const t = x2(), o = $(() => t.isLoading("translation")), l = n;
2456
+ const t = x2(), o = T(() => t.isLoading("translation")), l = n;
2457
2457
  return (s, a) => e.isBidirect ? (C(), y("button", {
2458
2458
  key: 1,
2459
2459
  onClick: a[0] || (a[0] = (i) => l("swap")),
@@ -2463,11 +2463,11 @@ const x2 = N2("loader", () => {
2463
2463
  disabled: o.value
2464
2464
  }, q1, 8, U1));
2465
2465
  }
2466
- }, $2 = N2("language", () => {
2466
+ }, T2 = N2("language", () => {
2467
2467
  const e = I("auto"), n = I("vi"), t = I({
2468
2468
  src: [],
2469
2469
  target: []
2470
- }), o = $(() => t.value.src[e.value]), l = $(() => t.value.target[n.value]);
2470
+ }), o = T(() => t.value.src[e.value]), l = T(() => t.value.target[n.value]);
2471
2471
  function s(r, u) {
2472
2472
  e.value = r == null ? void 0 : r.src, n.value = r == null ? void 0 : r.target, t.value = u;
2473
2473
  }
@@ -2492,7 +2492,7 @@ const x2 = N2("loader", () => {
2492
2492
  }, sn = ["onClick"], an = { class: "flex" }, rn = { class: "grow flex flex-col" }, un = { class: "grow flex flex-col" }, G0 = 3, cn = {
2493
2493
  __name: "Selects",
2494
2494
  setup(e) {
2495
- const n = $2(), t = I([]), o = I([]);
2495
+ const n = T2(), t = I([]), o = I([]);
2496
2496
  function l() {
2497
2497
  n.swap();
2498
2498
  }
@@ -2509,15 +2509,15 @@ const x2 = N2("loader", () => {
2509
2509
  (s) => {
2510
2510
  s && (o.value.includes(s) || (o.value.unshift(s), o.value = o.value.slice(0, G0), j2.setLocalStorage("recentTarget", o.value)));
2511
2511
  }
2512
- ), (s, a) => T(n).languages ? (C(), y("div", X1, [
2512
+ ), (s, a) => $(n).languages ? (C(), y("div", X1, [
2513
2513
  p("div", K1, [
2514
2514
  p("div", en, [
2515
2515
  t.value.length > 0 ? (C(), y("div", tn, [
2516
2516
  (C(!0), y(j, null, X(t.value, (i) => (C(), y("button", {
2517
2517
  key: i,
2518
2518
  class: "px-1 bg-baseColor border border-primaryColor text-primaryColor text-xs rounded hover:bg-primaryColor hover:text-baseColor",
2519
- onClick: (r) => T(n).src = i
2520
- }, J(T(n).languages.src[i]), 9, nn))), 128))
2519
+ onClick: (r) => $(n).src = i
2520
+ }, J($(n).languages.src[i]), 9, nn))), 128))
2521
2521
  ])) : H("", !0)
2522
2522
  ]),
2523
2523
  p("div", on, [
@@ -2525,37 +2525,37 @@ const x2 = N2("loader", () => {
2525
2525
  (C(!0), y(j, null, X(o.value, (i) => (C(), y("button", {
2526
2526
  key: i,
2527
2527
  class: "px-1 bg-baseColor border border-primaryColor text-primaryColor text-xs rounded hover:bg-primaryColor hover:text-baseColor",
2528
- onClick: (r) => T(n).target = i
2529
- }, J(T(n).languages.target[i]), 9, sn))), 128))
2528
+ onClick: (r) => $(n).target = i
2529
+ }, J($(n).languages.target[i]), 9, sn))), 128))
2530
2530
  ])) : H("", !0)
2531
2531
  ])
2532
2532
  ]),
2533
2533
  p("div", an, [
2534
2534
  p("div", rn, [
2535
2535
  D(q0, {
2536
- modelValue: T(n).src,
2537
- "onUpdate:modelValue": a[0] || (a[0] = (i) => T(n).src = i),
2538
- languages: T(n).languages.src,
2536
+ modelValue: $(n).src,
2537
+ "onUpdate:modelValue": a[0] || (a[0] = (i) => $(n).src = i),
2538
+ languages: $(n).languages.src,
2539
2539
  class: "grow"
2540
2540
  }, null, 8, ["modelValue", "languages"])
2541
2541
  ]),
2542
2542
  D(Q1, {
2543
- isBidirect: T(n).src !== "auto",
2543
+ isBidirect: $(n).src !== "auto",
2544
2544
  class: "grow-0 mx-3 mt-4 self-start",
2545
2545
  onSwap: l
2546
2546
  }, null, 8, ["isBidirect"]),
2547
2547
  p("div", un, [
2548
2548
  D(q0, {
2549
- modelValue: T(n).target,
2550
- "onUpdate:modelValue": a[1] || (a[1] = (i) => T(n).target = i),
2551
- languages: T(n).languages.target,
2549
+ modelValue: $(n).target,
2550
+ "onUpdate:modelValue": a[1] || (a[1] = (i) => $(n).target = i),
2551
+ languages: $(n).languages.target,
2552
2552
  class: "grow"
2553
2553
  }, null, 8, ["modelValue", "languages"])
2554
2554
  ])
2555
2555
  ])
2556
2556
  ])) : H("", !0);
2557
2557
  }
2558
- }, T2 = {
2558
+ }, $2 = {
2559
2559
  INPUT_MAX_LENGTH: 5e3,
2560
2560
  INPUT_DEBOUNCE: 1e3,
2561
2561
  IMPROVE_INPUT_MIN_LENGTH: 4,
@@ -2604,7 +2604,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2604
2604
  },
2605
2605
  emits: ["loadTTS"],
2606
2606
  setup(e, { emit: n }) {
2607
- const t = m0(), o = e, l = n, s = $(() => t.tts[o.type]), a = I(!1), i = new Audio();
2607
+ const t = m0(), o = e, l = n, s = T(() => t.tts[o.type]), a = I(!1), i = new Audio();
2608
2608
  R(
2609
2609
  s,
2610
2610
  () => {
@@ -2641,7 +2641,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2641
2641
  onClick: d0(c, ["prevent"])
2642
2642
  }, [
2643
2643
  p("img", {
2644
- src: T(hn),
2644
+ src: $(hn),
2645
2645
  alt: "Stop",
2646
2646
  class: "w-4"
2647
2647
  }, null, 8, Cn)
@@ -2655,7 +2655,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2655
2655
  onClick: d0(r, ["prevent"])
2656
2656
  }, [
2657
2657
  p("img", {
2658
- src: T(pn),
2658
+ src: $(pn),
2659
2659
  alt: "Play",
2660
2660
  class: N(["w-4", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
2661
2661
  }, null, 10, mn)
@@ -2679,7 +2679,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2679
2679
  disabled: e.disabled
2680
2680
  }, [
2681
2681
  p("img", {
2682
- src: T(xn),
2682
+ src: $(xn),
2683
2683
  alt: "Clear",
2684
2684
  class: N(["w-4", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
2685
2685
  }, null, 10, _n)
@@ -2689,7 +2689,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2689
2689
  }, En = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M7.47207%201.31905C7.57125%201.12371%207.77589%201%208.00001%201C8.22413%201%208.42877%201.12367%208.52795%201.31905L10.3721%204.95175L14.4959%205.53427C14.7177%205.5656%2014.9019%205.7166%2014.9712%205.9238C15.0404%206.13101%2014.9827%206.35843%2014.8222%206.51049L11.8382%209.33816L12.5427%2013.3309C12.5806%2013.5456%2012.4897%2013.7626%2012.3084%2013.8906C12.1272%2014.0187%2011.8868%2014.0356%2011.6884%2013.9342L8.00004%2012.0491L4.31158%2013.9343C4.11323%2014.0356%203.87286%2014.0187%203.69157%2013.8907C3.51028%2013.7627%203.4195%2013.5457%203.45736%2013.3309L4.1618%209.33819L1.17781%206.51052C1.01735%206.35846%200.959571%206.13101%201.02884%205.92383C1.09807%205.71663%201.28232%205.56563%201.50409%205.53431L5.62787%204.95178L7.47207%201.31905Z'%20fill='%23FFC857'/%3e%3c/svg%3e", Ln = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M14.9491%205.89315C14.8278%205.53128%2014.5111%205.27252%2014.1226%205.21783L10.5264%204.7114L8.91813%201.55315C8.74435%201.21195%208.39257%201%207.99998%201C7.60739%201%207.25557%201.21195%207.08183%201.55315L5.47358%204.7114L1.8774%205.21783C1.48888%205.27252%201.17219%205.53128%201.05086%205.89315C0.929554%206.25501%201.02881%206.64477%201.30993%206.91038L3.91217%209.36871L3.29786%2012.8399C3.2315%2013.215%203.38755%2013.5868%203.7052%2013.8105C3.88128%2013.9344%204.08938%2014%204.30704%2014C4.47232%2014%204.63705%2013.9606%204.78341%2013.886L7.99995%2012.2471L11.2165%2013.886C11.3628%2013.9606%2011.5276%2014%2011.6929%2014C11.9106%2014%2012.1187%2013.9345%2012.2948%2013.8105C12.6124%2013.5868%2012.7685%2013.215%2012.7021%2012.84L12.0878%209.36871L14.6901%206.91035C14.9712%206.64477%2015.0704%206.25498%2014.9491%205.89315ZM14.0266%206.25082L11.2455%208.87813C11.1335%208.98392%2011.0824%209.13637%2011.1089%209.28575L11.7654%2012.9956C11.7701%2013.0226%2011.759%2013.0493%2011.7362%2013.0653C11.7202%2013.0766%2011.7038%2013.079%2011.6929%2013.079C11.6809%2013.079%2011.6694%2013.0762%2011.6587%2013.0708L8.22108%2011.3192C8.15189%2011.284%208.07593%2011.2663%207.99998%2011.2663C7.92402%2011.2663%207.84807%2011.284%207.77882%2011.3193L4.34118%2013.0708C4.33052%2013.0763%204.31904%2013.079%204.30701%2013.079C4.29611%2013.079%204.27969%2013.0767%204.26373%2013.0654C4.24092%2013.0494%204.22975%2013.0226%204.2345%2012.9957L4.89104%209.28584C4.91747%209.13646%204.86637%208.98401%204.75439%208.87822L1.97327%206.25091C1.95308%206.23184%201.94595%206.20383%201.95466%206.17786C1.9634%206.15185%201.98612%206.13326%202.01405%206.12933L5.85743%205.58807C6.0122%205.56626%206.14599%205.47208%206.21521%205.33616L7.93404%201.9608C7.94653%201.9363%207.97178%201.92107%207.99998%201.92107C8.02818%201.92107%208.05343%201.9363%208.06591%201.9608L9.78468%205.33607C9.85391%205.47199%209.9877%205.5662%2010.1425%205.58799L13.9859%206.12924C14.0138%206.1332%2014.0365%206.15176%2014.0452%206.17777C14.0539%206.20374%2014.0468%206.23175%2014.0266%206.25082Z'%20fill='%231A1F2A'/%3e%3c/svg%3e", Sn = {
2690
2690
  class: "tooltip tooltip-bottom tooltip-small before:!bg-baseColor before:!border before:!border-solid before:!border-gray-200 before:![box-shadow:0px_1px_8px_0px_#3D44514D] before:!rounded-md before:!text-textSecondary before:!top-[90%] before:!text-xs before:!py-1 before:!px-2",
2691
2691
  "data-tip": "Favorite"
2692
- }, $n = ["disabled"], Tn = ["src"], In = {
2692
+ }, Tn = ["disabled"], $n = ["src"], In = {
2693
2693
  __name: "FavoriteBtn",
2694
2694
  props: {
2695
2695
  disabled: Boolean,
@@ -2705,11 +2705,11 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2705
2705
  disabled: e.disabled
2706
2706
  }, [
2707
2707
  p("img", {
2708
- src: e.isFilled ? T(En) : T(Ln),
2708
+ src: e.isFilled ? $(En) : $(Ln),
2709
2709
  alt: "Favorite",
2710
2710
  class: N(["w-4", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
2711
- }, null, 10, Tn)
2712
- ], 10, $n)
2711
+ }, null, 10, $n)
2712
+ ], 10, Tn)
2713
2713
  ]));
2714
2714
  }
2715
2715
  }, On = "data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.8544%203.20309C5.39975%202.89815%204.26277%201.76117%203.95787%200.30649C3.92042%200.12792%203.76292%200%203.58041%200C3.3979%200%203.2404%200.12792%203.20297%200.30652C2.89805%201.76117%201.76107%202.89812%200.306418%203.20302C0.127818%203.24045%20-0.00012207%203.39798%20-0.00012207%203.58046C-0.00012207%203.76295%200.127798%203.92047%200.306418%203.9579C1.76105%204.26285%202.89798%205.3998%203.2029%206.85448C3.24033%207.03307%203.39783%207.16102%203.58034%207.16102C3.76282%207.16102%203.92035%207.0331%203.95778%206.85448C4.26272%205.39983%205.39973%204.26287%206.85438%203.95799C7.03297%203.92056%207.16092%203.76306%207.16092%203.58056C7.1609%203.39805%207.03297%203.24052%206.8544%203.20309ZM3.58036%205.60938C3.14292%204.73132%202.42956%204.01792%201.55151%203.58049C2.42958%203.14305%203.14297%202.42968%203.58041%201.55161C4.01785%202.4297%204.73122%203.14307%205.60926%203.58053C4.73119%204.01797%204.0178%204.73132%203.58036%205.60938Z'%20fill='%23FFC857'/%3e%3cpath%20d='M6.21683%209.574C5.53147%209.4303%204.99578%208.8947%204.85209%208.2093C4.81466%208.0307%204.65716%207.90271%204.47465%207.90271C4.29217%207.90271%204.13464%208.0306%204.09721%208.2092C3.95352%208.8946%203.4178%209.4303%202.73244%209.574C2.55385%209.6114%202.4259%209.7689%202.4259%209.9514C2.4259%2010.1339%202.55383%2010.2914%202.73244%2010.3288C3.41778%2010.4725%203.95349%2011.0082%204.09716%2011.6936C4.13459%2011.8722%204.2921%2012.0002%204.4746%2012.0002C4.65709%2012.0002%204.81461%2011.8723%204.85204%2011.6936C4.99574%2011.0082%205.53145%2010.4725%206.21683%2010.3289C6.39543%2010.2914%206.52337%2010.1339%206.52337%209.9514C6.52337%209.7689%206.39545%209.6114%206.21683%209.574ZM4.47463%2010.6408C4.29163%2010.3688%204.05725%2010.1345%203.78526%209.9515C4.0573%209.7684%204.29163%209.5341%204.47463%209.2621C4.65765%209.5341%204.892%209.7685%205.164%209.9515C4.892%2010.1345%204.65763%2010.3688%204.47463%2010.6408Z'%20fill='%23FFC857'/%3e%3cpath%20d='M11.4271%206.00324C10.5007%205.80904%209.7766%205.08496%209.5825%204.15859C9.545%203.98%209.3875%203.85205%209.205%203.85205C9.0225%203.85205%208.865%203.97995%208.8276%204.15857C8.6334%205.08496%207.90932%205.80902%206.98293%206.0032C6.80434%206.04063%206.67639%206.19815%206.67639%206.38064C6.67639%206.56312%206.80431%206.72062%206.98293%206.75807C7.9093%206.95228%208.6334%207.67633%208.8275%208.6027C8.865%208.7813%209.0225%208.9093%209.205%208.9093C9.3875%208.9093%209.545%208.7814%209.5824%208.6027C9.7766%207.67633%2010.5007%206.95228%2011.4271%206.75812C11.6057%206.72067%2011.7336%206.56317%2011.7336%206.38068C11.7336%206.1982%2011.6057%206.04067%2011.4271%206.00324ZM9.205%207.47681C8.9365%207.02634%208.5593%206.64914%208.1089%206.38066C8.5593%206.11218%208.9365%205.73502%209.205%205.28453C9.4735%205.73502%209.8507%206.11221%2010.3012%206.38068C9.8507%206.64916%209.4735%207.02636%209.205%207.47681Z'%20fill='%23FFC857'/%3e%3ccircle%20cx='3.5'%20cy='3.5'%20r='1.5'%20fill='%23FFC857'/%3e%3cellipse%20cx='4.5'%20cy='10'%20rx='0.5'%20ry='1'%20fill='%23FFC857'/%3e%3cpath%20d='M3.5%201L4.79904%202.5H2.20096L3.5%201Z'%20fill='%23FFC857'/%3e%3cpath%20d='M6%203.5L4.5%204.79904L4.5%202.20096L6%203.5Z'%20fill='%23FFC857'/%3e%3cpath%20d='M10.3697%206.67832L8.22108%207.01422L9.5776%204.65296L10.3697%206.67832Z'%20fill='%23FFC857'/%3e%3cpath%20d='M8.27756%205.34149L10.768%206.00067L9.11199%207.77878L8.27756%205.34149Z'%20fill='%23FFC857'/%3e%3cpath%20d='M1%203.5L2.5%202.20096L2.5%204.79904L1%203.5Z'%20fill='%23FFC857'/%3e%3cpath%20d='M3.5%206L2.20096%204.5L4.79904%204.5L3.5%206Z'%20fill='%23FFC857'/%3e%3ccircle%20cx='9'%20cy='6'%20r='1'%20fill='%23FFC857'/%3e%3cpath%20d='M5.49718%209.92495L4.03391%2010.4693L3.96891%209.60573L5.49718%209.92495Z'%20fill='%23FFC857'/%3e%3cpath%20d='M3.54089%209.71696L5.10212%209.72621L4.857%2010.5568L3.54089%209.71696Z'%20fill='%23FFC857'/%3e%3cpath%20d='M3.50071%209.96247L5.0159%209.58606L4.9834%2010.4515L3.50071%209.96247Z'%20fill='%23FFC857'/%3e%3c/svg%3e", Mn = "data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.8544%203.20309C5.39975%202.89815%204.26277%201.76117%203.95787%200.30649C3.92042%200.12792%203.76292%200%203.58041%200C3.3979%200%203.2404%200.12792%203.20297%200.30652C2.89805%201.76117%201.76107%202.89812%200.306418%203.20302C0.127818%203.24045%20-0.00012207%203.39798%20-0.00012207%203.58046C-0.00012207%203.76295%200.127798%203.92047%200.306418%203.9579C1.76105%204.26285%202.89798%205.3998%203.2029%206.85448C3.24033%207.03307%203.39783%207.16102%203.58034%207.16102C3.76282%207.16102%203.92035%207.0331%203.95778%206.85448C4.26272%205.39983%205.39973%204.26287%206.85438%203.95799C7.03297%203.92056%207.16092%203.76306%207.16092%203.58056C7.1609%203.39805%207.03297%203.24052%206.8544%203.20309ZM3.58036%205.60938C3.14292%204.73132%202.42956%204.01792%201.55151%203.58049C2.42958%203.14305%203.14297%202.42968%203.58041%201.55161C4.01785%202.4297%204.73122%203.14307%205.60926%203.58053C4.73119%204.01797%204.0178%204.73132%203.58036%205.60938Z'%20fill='%23FFC857'/%3e%3cpath%20d='M6.21683%209.574C5.53147%209.4303%204.99578%208.8947%204.85209%208.2093C4.81466%208.0307%204.65716%207.90271%204.47465%207.90271C4.29217%207.90271%204.13464%208.0306%204.09721%208.2092C3.95352%208.8946%203.4178%209.4303%202.73244%209.574C2.55385%209.6114%202.4259%209.7689%202.4259%209.9514C2.4259%2010.1339%202.55383%2010.2914%202.73244%2010.3288C3.41778%2010.4725%203.95349%2011.0082%204.09716%2011.6936C4.13459%2011.8722%204.2921%2012.0002%204.4746%2012.0002C4.65709%2012.0002%204.81461%2011.8723%204.85204%2011.6936C4.99574%2011.0082%205.53145%2010.4725%206.21683%2010.3289C6.39543%2010.2914%206.52337%2010.1339%206.52337%209.9514C6.52337%209.7689%206.39545%209.6114%206.21683%209.574ZM4.47463%2010.6408C4.29163%2010.3688%204.05725%2010.1345%203.78526%209.9515C4.0573%209.7684%204.29163%209.5341%204.47463%209.2621C4.65765%209.5341%204.892%209.7685%205.164%209.9515C4.892%2010.1345%204.65763%2010.3688%204.47463%2010.6408Z'%20fill='%23FFC857'/%3e%3cpath%20d='M11.4271%206.00324C10.5007%205.80904%209.7766%205.08496%209.5825%204.15859C9.545%203.98%209.3875%203.85205%209.205%203.85205C9.0225%203.85205%208.865%203.97995%208.8276%204.15857C8.6334%205.08496%207.90932%205.80902%206.98293%206.0032C6.80434%206.04063%206.67639%206.19815%206.67639%206.38064C6.67639%206.56312%206.80431%206.72062%206.98293%206.75807C7.9093%206.95228%208.6334%207.67633%208.8275%208.6027C8.865%208.7813%209.0225%208.9093%209.205%208.9093C9.3875%208.9093%209.545%208.7814%209.5824%208.6027C9.7766%207.67633%2010.5007%206.95228%2011.4271%206.75812C11.6057%206.72067%2011.7336%206.56317%2011.7336%206.38068C11.7336%206.1982%2011.6057%206.04067%2011.4271%206.00324ZM9.205%207.47681C8.9365%207.02634%208.5593%206.64914%208.1089%206.38066C8.5593%206.11218%208.9365%205.73502%209.205%205.28453C9.4735%205.73502%209.8507%206.11221%2010.3012%206.38068C9.8507%206.64916%209.4735%207.02636%209.205%207.47681Z'%20fill='%23FFC857'/%3e%3c/svg%3e", kn = {
@@ -2731,7 +2731,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2731
2731
  disabled: e.disabled
2732
2732
  }, [
2733
2733
  p("img", {
2734
- src: e.isFilled ? T(On) : T(Mn),
2734
+ src: e.isFilled ? $(On) : $(Mn),
2735
2735
  alt: "AI",
2736
2736
  class: N(["w-4", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
2737
2737
  }, null, 10, Fn)
@@ -2762,7 +2762,7 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2762
2762
  onClick: t
2763
2763
  }, [
2764
2764
  p("img", {
2765
- src: T(Bn),
2765
+ src: $(Bn),
2766
2766
  alt: "Copy",
2767
2767
  class: N(["w-3", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
2768
2768
  }, null, 10, Rn)
@@ -2779,6 +2779,10 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2779
2779
  type: Boolean,
2780
2780
  default: !1
2781
2781
  },
2782
+ isTTS: {
2783
+ type: Boolean,
2784
+ default: !0
2785
+ },
2782
2786
  src: {
2783
2787
  type: String,
2784
2788
  default: ""
@@ -2829,21 +2833,21 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2829
2833
  setup(e, { emit: n }) {
2830
2834
  const t = n;
2831
2835
  return (o, l) => (C(), y("div", Pn, [
2832
- e.src ? (C(), q(bn, {
2836
+ e.src && e.isTTS ? (C(), q(bn, {
2833
2837
  key: 0,
2834
2838
  type: e.type,
2835
2839
  onLoadTTS: l[0] || (l[0] = (s) => t("loadTTS"))
2836
2840
  }, null, 8, ["type"])) : H("", !0),
2837
2841
  p("div", Nn, [
2838
2842
  F2(J(e.srcLabel) + " ", 1),
2839
- e.phonetic ? (C(), y("span", Zn, "- [" + J(e.phonetic) + "]", 1)) : H("", !0)
2843
+ e.phonetic ? (C(), y("span", Zn, "- " + J(e.phonetic), 1)) : H("", !0)
2840
2844
  ]),
2841
2845
  e.loading ? (C(), q(M0, {
2842
2846
  key: 1,
2843
2847
  class: "absolute right-6 top-2"
2844
2848
  })) : H("", !0),
2845
2849
  p("div", jn, [
2846
- e.hasClearBtn && e.src ? (C(), q(He, {
2850
+ e.hasClearBtn ? (C(), q(He, {
2847
2851
  key: 0,
2848
2852
  onClick: l[1] || (l[1] = (s) => t("clear")),
2849
2853
  disabled: e.loading
@@ -2868,16 +2872,16 @@ const M0 = /* @__PURE__ */ h2(dn, [["render", vn]]), m0 = N2("tts", () => {
2868
2872
  ])
2869
2873
  ]));
2870
2874
  }
2871
- }, Re = /* @__PURE__ */ h2(zn, [["__scopeId", "data-v-02c4ffe0"]]), v2 = N2("translation", () => {
2875
+ }, Re = /* @__PURE__ */ h2(zn, [["__scopeId", "data-v-a687b916"]]), v2 = N2("translation", () => {
2872
2876
  const e = I(null), n = I(null), t = I(null), o = I({
2873
2877
  src: null,
2874
2878
  target: null
2875
2879
  }), l = I(null), s = I([]), a = I([]), i = I([]), r = I([]), u = I({
2876
2880
  src: null,
2877
2881
  target: null
2878
- }), c = $2(), d = $(() => c.getLabel(e.value)), x = $(() => c.getLabel(n.value));
2879
- function h(m) {
2880
- e.value = m.src, n.value = m.target, t.value = m.text, o.value = m.phonetic, l.value = m.result, s.value = m.dictionary, a.value = m.definitions, i.value = m.synonyms, r.value = m.examples, u.value = m.tts;
2882
+ }), c = T2(), d = T(() => c.getLabel(e.value)), x = T(() => c.getLabel(n.value));
2883
+ function h(g) {
2884
+ e.value = g.src, n.value = g.target, t.value = g.text, o.value = g.phonetic, l.value = g.result, s.value = g.dictionary, a.value = g.definitions, i.value = g.synonyms, r.value = g.examples, u.value = g.tts;
2881
2885
  }
2882
2886
  function b() {
2883
2887
  e.value = null, n.value = null, t.value = null, o.value = {
@@ -2909,7 +2913,7 @@ function Un(e) {
2909
2913
  return re() ? (_0(e), !0) : !1;
2910
2914
  }
2911
2915
  function X2(e) {
2912
- return typeof e == "function" ? e() : T(e);
2916
+ return typeof e == "function" ? e() : $(e);
2913
2917
  }
2914
2918
  const Wn = typeof window < "u" && typeof document < "u";
2915
2919
  typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
@@ -2959,14 +2963,14 @@ function Qn() {
2959
2963
  }
2960
2964
  function Xn(e) {
2961
2965
  const n = Qn();
2962
- return $(() => (n.value, !!e()));
2966
+ return T(() => (n.value, !!e()));
2963
2967
  }
2964
2968
  function Kn(e, n, t = {}) {
2965
2969
  const { window: o = Yn, ...l } = t;
2966
2970
  let s;
2967
2971
  const a = Xn(() => o && "ResizeObserver" in o), i = () => {
2968
2972
  s && (s.disconnect(), s = void 0);
2969
- }, r = $(() => Array.isArray(e) ? e.map((d) => Y0(d)) : [Y0(e)]), u = R(
2973
+ }, r = T(() => Array.isArray(e) ? e.map((d) => Y0(d)) : [Y0(e)]), u = R(
2970
2974
  r,
2971
2975
  (d) => {
2972
2976
  if (i(), a.value && o) {
@@ -3009,16 +3013,20 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3009
3013
  text: {
3010
3014
  type: String,
3011
3015
  default: ""
3016
+ },
3017
+ isTTS: {
3018
+ type: Boolean,
3019
+ default: !0
3012
3020
  }
3013
3021
  },
3014
3022
  emits: ["change", "clear", "loadTTS"],
3015
3023
  setup(e, { emit: n }) {
3016
- const t = v2(), o = e, l = I(o.text), s = $(() => t.src), a = $(() => t.srcLabel), i = $(() => {
3024
+ const t = v2(), o = e, l = I(o.text), s = T(() => t.src), a = T(() => t.srcLabel), i = T(() => {
3017
3025
  var b;
3018
3026
  return (b = t.phonetic) == null ? void 0 : b.src;
3019
3027
  }), { textarea: r } = l0({ input: l, styleProp: "minHeight" }), u = n, c = Jn(() => {
3020
3028
  u("change", l.value);
3021
- }, T2.INPUT_DEBOUNCE);
3029
+ }, $2.INPUT_DEBOUNCE);
3022
3030
  s2(() => {
3023
3031
  h();
3024
3032
  });
@@ -3040,20 +3048,21 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3040
3048
  (b) => {
3041
3049
  l.value !== b && h(), l.value = b;
3042
3050
  }
3043
- ), (b, m) => (C(), y("div", eo, [
3051
+ ), (b, g) => (C(), y("div", eo, [
3044
3052
  D(Re, {
3045
3053
  src: s.value,
3046
3054
  srcLabel: a.value,
3055
+ isTTS: e.isTTS,
3047
3056
  type: "src",
3048
3057
  phonetic: i.value,
3049
- hasClearBtn: !0,
3058
+ hasClearBtn: l.value.length > 0,
3050
3059
  onClear: x,
3051
- onLoadTTS: m[0] || (m[0] = (V) => u("loadTTS"))
3052
- }, null, 8, ["src", "srcLabel", "phonetic"]),
3060
+ onLoadTTS: g[0] || (g[0] = (V) => u("loadTTS"))
3061
+ }, null, 8, ["src", "srcLabel", "isTTS", "phonetic", "hasClearBtn"]),
3053
3062
  e0(p("textarea", {
3054
3063
  ref_key: "textarea",
3055
3064
  ref: r,
3056
- "onUpdate:modelValue": m[1] || (m[1] = (V) => l.value = V),
3065
+ "onUpdate:modelValue": g[1] || (g[1] = (V) => l.value = V),
3057
3066
  class: "w-full outline-none px-2 pr-8 bg-transparent text-gray-800 resize-none pb-3 overflow-x-hidden overflow-y-hidden",
3058
3067
  autofocus: "",
3059
3068
  rows: "2",
@@ -3069,20 +3078,24 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3069
3078
  ])
3070
3079
  ]));
3071
3080
  }
3072
- }, no = /* @__PURE__ */ h2(to, [["__scopeId", "data-v-cc5ad887"]]), oo = { class: "bg-white relative z-10 rounded-md h-full" }, lo = { class: "bg-transparent" }, so = {
3081
+ }, no = /* @__PURE__ */ h2(to, [["__scopeId", "data-v-0133ec1c"]]), oo = { class: "bg-white relative z-10 rounded-md h-full" }, lo = { class: "bg-transparent" }, so = {
3073
3082
  __name: "Result",
3074
3083
  props: {
3075
3084
  isFavoriteFeatureEnabled: Boolean,
3076
3085
  isAITranslateFeatureEnabled: Boolean,
3077
3086
  isAITranslate: Boolean,
3078
- isFavorite: Boolean
3087
+ isFavorite: Boolean,
3088
+ isTTS: {
3089
+ type: Boolean,
3090
+ default: !0
3091
+ }
3079
3092
  },
3080
3093
  emits: ["loadTTS", "favorite", "aiTranslate", "copy"],
3081
3094
  setup(e, { emit: n }) {
3082
- const t = v2(), o = $(() => t.result), l = $(() => t.target), s = $(() => t.targetLabel), a = $(() => {
3095
+ const t = v2(), o = T(() => t.result), l = T(() => t.target), s = T(() => t.targetLabel), a = T(() => {
3083
3096
  var x;
3084
3097
  return (x = t.phonetic) == null ? void 0 : x.target;
3085
- }), i = x2(), r = $(() => i.isLoading("translation")), { textarea: u, input: c } = l0({ input: o, styleProp: "minHeight" }), d = n;
3098
+ }), i = x2(), r = T(() => i.isLoading("translation")), { textarea: u, input: c } = l0({ input: o, styleProp: "minHeight" }), d = n;
3086
3099
  return (x, h) => (C(), y("div", {
3087
3100
  class: N([
3088
3101
  "relative p-0.5 bg-[length:300%_300%] bg-[position:0%_50%] border rounded",
@@ -3096,6 +3109,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3096
3109
  loading: r.value,
3097
3110
  src: l.value,
3098
3111
  srcLabel: s.value,
3112
+ isTTS: e.isTTS,
3099
3113
  type: "target",
3100
3114
  hasFavoriteBtn: e.isFavoriteFeatureEnabled,
3101
3115
  hasAIBtn: e.isAITranslateFeatureEnabled,
@@ -3107,7 +3121,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3107
3121
  onLoadTTS: h[1] || (h[1] = (b) => d("loadTTS")),
3108
3122
  onAiTranslate: h[2] || (h[2] = (b) => d("aiTranslate")),
3109
3123
  onCopy: h[3] || (h[3] = (b) => d("copy"))
3110
- }, null, 8, ["loading", "src", "srcLabel", "hasFavoriteBtn", "hasAIBtn", "isFavorite", "isAITranslate", "phonetic"]),
3124
+ }, null, 8, ["loading", "src", "srcLabel", "isTTS", "hasFavoriteBtn", "hasAIBtn", "isFavorite", "isAITranslate", "phonetic"]),
3111
3125
  p("div", lo, [
3112
3126
  e0(p("textarea", {
3113
3127
  ref_key: "textarea",
@@ -3118,13 +3132,13 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3118
3132
  rows: "2",
3119
3133
  spellcheck: "false"
3120
3134
  }, null, 512), [
3121
- [t0, T(c)]
3135
+ [t0, $(c)]
3122
3136
  ])
3123
3137
  ])
3124
3138
  ])
3125
3139
  ], 2));
3126
3140
  }
3127
- }, io = /* @__PURE__ */ h2(so, [["__scopeId", "data-v-08a8c85c"]]), ao = { class: "btn btn-xs btn-circle btn-ghost" }, s0 = {
3141
+ }, io = /* @__PURE__ */ h2(so, [["__scopeId", "data-v-439ecf6b"]]), ao = { class: "btn btn-xs btn-circle btn-ghost" }, s0 = {
3128
3142
  __name: "ToggleBtn",
3129
3143
  props: {
3130
3144
  isExpanded: Boolean
@@ -3132,10 +3146,10 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3132
3146
  setup(e) {
3133
3147
  const n = e;
3134
3148
  return (t, o) => (C(), y("button", ao, [
3135
- n.isExpanded ? (C(), q(T(g1), {
3149
+ n.isExpanded ? (C(), q($(g1), {
3136
3150
  key: 0,
3137
3151
  class: "w-7 text-gray-400"
3138
- })) : (C(), q(T(p1), {
3152
+ })) : (C(), q($(p1), {
3139
3153
  key: 1,
3140
3154
  class: "w-7 text-gray-400"
3141
3155
  }))
@@ -3145,7 +3159,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3145
3159
  __name: "Dictionary",
3146
3160
  emits: ["translate"],
3147
3161
  setup(e, { emit: n }) {
3148
- const t = I(!0), o = v2(), l = $2(), s = $(() => o.dictionary), a = n, i = () => {
3162
+ const t = I(!0), o = v2(), l = T2(), s = T(() => o.dictionary), a = n, i = () => {
3149
3163
  t.value = !t.value;
3150
3164
  }, r = (u) => {
3151
3165
  a("translate", u, o.target, o.src), l.src = o.target, l.target = o.src, window.scrollTo(0, 0);
@@ -3173,7 +3187,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3173
3187
  }, [
3174
3188
  p("span", {
3175
3189
  class: "m-0.5 font-normal badge badge-ghost bg-primaryColor text-white cursor-pointer border-0 rounded",
3176
- onClick: (m) => r(h.word)
3190
+ onClick: (g) => r(h.word)
3177
3191
  }, J(h.word), 9, fo),
3178
3192
  p("small", vo, " - " + J(h.reverse_translation.join(", ")), 1)
3179
3193
  ]))), 128))
@@ -3189,7 +3203,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3189
3203
  }, xo = {
3190
3204
  __name: "Definition",
3191
3205
  setup(e) {
3192
- const n = I(!0), t = v2(), o = $(() => t.definitions), l = () => {
3206
+ const n = I(!0), t = v2(), o = T(() => t.definitions), l = () => {
3193
3207
  n.value = !n.value;
3194
3208
  };
3195
3209
  return (s, a) => (C(), y(j, null, [
@@ -3227,7 +3241,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3227
3241
  }, wo = /* @__PURE__ */ p("h2", { class: "card-title text-base font-bold text-textCustom" }, "Examples", -1), yo = { class: "text-textCustom text-sm list-disc list-outside ml-5 my-2" }, _o = ["innerHTML"], Eo = {
3228
3242
  __name: "Example",
3229
3243
  setup(e) {
3230
- const n = I(!0), t = v2(), o = $(() => t.examples), l = () => {
3244
+ const n = I(!0), t = v2(), o = T(() => t.examples), l = () => {
3231
3245
  n.value = !n.value;
3232
3246
  };
3233
3247
  return (s, a) => (C(), y(j, null, [
@@ -3250,11 +3264,11 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3250
3264
  ], 2)
3251
3265
  ], 64));
3252
3266
  }
3253
- }, Lo = /* @__PURE__ */ p("h2", { class: "card-title text-base font-bold text-textCustom" }, "Synonyms", -1), So = { class: "capitalize text-xs font-normal text-textSecondary mb-1" }, $o = { class: "list-none list-inside" }, To = { class: "flex flex-wrap" }, Io = ["onClick"], Oo = {
3267
+ }, Lo = /* @__PURE__ */ p("h2", { class: "card-title text-base font-bold text-textCustom" }, "Synonyms", -1), So = { class: "capitalize text-xs font-normal text-textSecondary mb-1" }, To = { class: "list-none list-inside" }, $o = { class: "flex flex-wrap" }, Io = ["onClick"], Oo = {
3254
3268
  __name: "Synonyms",
3255
3269
  emits: ["translate"],
3256
3270
  setup(e, { emit: n }) {
3257
- const t = I(!0), o = v2(), l = $(() => o.synonyms), s = n, a = () => {
3271
+ const t = I(!0), o = v2(), l = T(() => o.synonyms), s = n, a = () => {
3258
3272
  t.value = !t.value;
3259
3273
  }, i = (r) => {
3260
3274
  s("translate", r), window.scrollTo(0, 0);
@@ -3276,14 +3290,14 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3276
3290
  class: "mb-2"
3277
3291
  }, [
3278
3292
  p("h5", So, J(c.pos), 1),
3279
- p("ul", $o, [
3293
+ p("ul", To, [
3280
3294
  (C(!0), y(j, null, X(c.items, (x, h) => (C(), y("li", {
3281
3295
  key: `${x.word}-${h}`,
3282
3296
  class: "mb-2"
3283
3297
  }, [
3284
- p("div", To, [
3285
- (C(!0), y(j, null, X(x.synonym, (b, m) => (C(), y("span", {
3286
- key: `${b}-${m}`,
3298
+ p("div", $o, [
3299
+ (C(!0), y(j, null, X(x.synonym, (b, g) => (C(), y("span", {
3300
+ key: `${b}-${g}`,
3287
3301
  class: "m-0.5 ml-0 font-normal badge badge-ghost bg-primaryColor text-white cursor-pointer border-0 rounded",
3288
3302
  onClick: (V) => i(b)
3289
3303
  }, J(b), 9, Io))), 128))
@@ -3310,7 +3324,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3310
3324
  disabled: e.disabled
3311
3325
  }, [
3312
3326
  p("img", {
3313
- src: e.isExpanded ? T(Mo) : T(ko),
3327
+ src: e.isExpanded ? $(Mo) : $(ko),
3314
3328
  alt: "AI",
3315
3329
  class: N(["w-6", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
3316
3330
  }, null, 10, Fo)
@@ -3337,7 +3351,7 @@ const eo = { class: "bg-white relative z-10 border rounded" }, to = {
3337
3351
  },
3338
3352
  emits: ["aiExplain"],
3339
3353
  setup(e, { emit: n }) {
3340
- const t = x2(), o = $(() => t.isLoading("aiExplanation")), l = n;
3354
+ const t = x2(), o = T(() => t.isLoading("aiExplanation")), l = n;
3341
3355
  function s() {
3342
3356
  l("aiExplain");
3343
3357
  }
@@ -3381,7 +3395,7 @@ function Uo() {
3381
3395
  const Q0 = {
3382
3396
  supportRTL: zo,
3383
3397
  removeRTL: Uo
3384
- }, Wo = ["ar", "fa", "iw", "yi", "ur", "pa"], qo = (e) => (L0("data-v-443f76ab"), e = e(), S0(), e), Go = { class: "pb-6" }, Jo = { class: "flex flex-col lg:flex-row lg:gap-2" }, Yo = {
3398
+ }, Wo = ["ar", "fa", "iw", "yi", "ur", "pa"], qo = (e) => (L0("data-v-77944531"), e = e(), S0(), e), Go = { class: "pb-6" }, Jo = { class: "flex flex-col lg:flex-row lg:gap-2" }, Yo = {
3385
3399
  id: "input",
3386
3400
  class: "w-full lg:w-[calc(50%-1rem)] flex mt-1"
3387
3401
  }, Qo = /* @__PURE__ */ qo(() => /* @__PURE__ */ p("div", { class: "w-6 h-4 mx-auto hidden lg:block" }, null, -1)), Xo = { class: "w-full lg:w-[calc(50%-1rem)] flex mt-1" }, Ko = {
@@ -3413,6 +3427,7 @@ const Q0 = {
3413
3427
  translation: Object,
3414
3428
  explanation: Object,
3415
3429
  tts: Object,
3430
+ isTTS: Boolean,
3416
3431
  isFavoriteFeatureEnabled: Boolean,
3417
3432
  isAITranslateFeatureEnabled: Boolean,
3418
3433
  isFavorite: Boolean,
@@ -3456,10 +3471,10 @@ const Q0 = {
3456
3471
  s.set(w);
3457
3472
  },
3458
3473
  { immediate: !0 }
3459
- ), R([() => o.opt, () => o.languages], ([w, g]) => {
3460
- a.init(w, g), u();
3461
- }), R([() => a.src, () => a.target], ([w, g]) => {
3462
- r("opt", { src: w, target: g }), h(t.value);
3474
+ ), R([() => o.opt, () => o.languages], ([w, m]) => {
3475
+ a.init(w, m), u();
3476
+ }), R([() => a.src, () => a.target], ([w, m]) => {
3477
+ r("opt", { src: w, target: m }), h(t.value);
3463
3478
  }), s2(() => {
3464
3479
  a.init(o.opt, o.languages), u();
3465
3480
  });
@@ -3470,12 +3485,12 @@ const Q0 = {
3470
3485
  t.value = w, h(w);
3471
3486
  }
3472
3487
  function x(w) {
3473
- const g = w === "src" ? l.text : l.result;
3474
- r("loadTTS", { type: w, data: g });
3488
+ const m = w === "src" ? l.text : l.result;
3489
+ r("loadTTS", { type: w, data: m });
3475
3490
  }
3476
- function h(w, g = a.src, S = a.target) {
3491
+ function h(w, m = a.src, S = a.target) {
3477
3492
  w && (V(), t.value = w, i.setLoading("translation", !0), r("translate", {
3478
- src: g,
3493
+ src: m,
3479
3494
  target: S,
3480
3495
  text: w
3481
3496
  }));
@@ -3487,7 +3502,7 @@ const Q0 = {
3487
3502
  text: t.value
3488
3503
  });
3489
3504
  }
3490
- function m() {
3505
+ function g() {
3491
3506
  o.isAIExplain || i.setLoading("aiExplanation", !0), r("aiExplain", {
3492
3507
  src: a.src,
3493
3508
  target: a.target,
@@ -3498,7 +3513,7 @@ const Q0 = {
3498
3513
  const w = document.getElementById("input");
3499
3514
  w && w.getBoundingClientRect().top < 0 && w.scrollIntoView({ behavior: "smooth" });
3500
3515
  }
3501
- return (w, g) => {
3516
+ return (w, m) => {
3502
3517
  var S, M, _, F, E;
3503
3518
  return C(), y("div", Go, [
3504
3519
  D(cn),
@@ -3506,11 +3521,12 @@ const Q0 = {
3506
3521
  p("div", Yo, [
3507
3522
  D(no, {
3508
3523
  text: t.value,
3524
+ isTTS: e.isTTS,
3509
3525
  onChange: d,
3510
3526
  onClear: c,
3511
- onLoadTTS: g[0] || (g[0] = (L) => x("src")),
3527
+ onLoadTTS: m[0] || (m[0] = (L) => x("src")),
3512
3528
  class: "flex-grow flex flex-col"
3513
- }, null, 8, ["text"])
3529
+ }, null, 8, ["text", "isTTS"])
3514
3530
  ]),
3515
3531
  Qo,
3516
3532
  p("div", Xo, [
@@ -3519,41 +3535,42 @@ const Q0 = {
3519
3535
  isAITranslateFeatureEnabled: e.isAITranslateFeatureEnabled,
3520
3536
  isAITranslate: e.isAITranslate,
3521
3537
  isFavorite: e.isFavorite,
3522
- onCopy: g[1] || (g[1] = (L) => {
3538
+ isTTS: e.isTTS,
3539
+ onCopy: m[1] || (m[1] = (L) => {
3523
3540
  var A;
3524
- return w.$emit("copy", (A = T(l)) == null ? void 0 : A.result);
3541
+ return w.$emit("copy", (A = $(l)) == null ? void 0 : A.result);
3525
3542
  }),
3526
3543
  onAiTranslate: b,
3527
- onFavorite: g[2] || (g[2] = (L) => w.$emit("favorite")),
3528
- onLoadTTS: g[3] || (g[3] = (L) => x("target")),
3544
+ onFavorite: m[2] || (m[2] = (L) => w.$emit("favorite")),
3545
+ onLoadTTS: m[3] || (m[3] = (L) => x("target")),
3529
3546
  class: "flex-grow flex flex-col"
3530
- }, null, 8, ["isFavoriteFeatureEnabled", "isAITranslateFeatureEnabled", "isAITranslate", "isFavorite"])
3547
+ }, null, 8, ["isFavoriteFeatureEnabled", "isAITranslateFeatureEnabled", "isAITranslate", "isFavorite", "isTTS"])
3531
3548
  ])
3532
3549
  ]),
3533
3550
  e.translation ? (C(), y("div", Ko, [
3534
- ((S = T(l).result) == null ? void 0 : S.length) > e.aiExplainMinLength ? (C(), y("div", el, [
3551
+ ((S = $(l).result) == null ? void 0 : S.length) > e.aiExplainMinLength ? (C(), y("div", el, [
3535
3552
  D(jo, {
3536
3553
  isAIExplain: e.isAIExplain,
3537
3554
  explanation: e.explanation,
3538
- onAiExplain: m
3555
+ onAiExplain: g
3539
3556
  }, null, 8, ["isAIExplain", "explanation"])
3540
3557
  ])) : H("", !0),
3541
- (M = T(l).dictionary) != null && M.length ? (C(), y("div", tl, [
3558
+ (M = $(l).dictionary) != null && M.length ? (C(), y("div", tl, [
3542
3559
  p("div", nl, [
3543
3560
  D(po, { onTranslate: h })
3544
3561
  ])
3545
3562
  ])) : H("", !0),
3546
- (_ = T(l).definitions) != null && _.length ? (C(), y("div", ol, [
3563
+ (_ = $(l).definitions) != null && _.length ? (C(), y("div", ol, [
3547
3564
  p("div", ll, [
3548
3565
  D(xo)
3549
3566
  ])
3550
3567
  ])) : H("", !0),
3551
- (F = T(l).synonyms) != null && F.length ? (C(), y("div", sl, [
3568
+ (F = $(l).synonyms) != null && F.length ? (C(), y("div", sl, [
3552
3569
  p("div", il, [
3553
3570
  D(Oo, { onTranslate: h })
3554
3571
  ])
3555
3572
  ])) : H("", !0),
3556
- (E = T(l).examples) != null && E.length ? (C(), y("div", al, [
3573
+ (E = $(l).examples) != null && E.length ? (C(), y("div", al, [
3557
3574
  p("div", rl, [
3558
3575
  D(Eo)
3559
3576
  ])
@@ -3562,7 +3579,7 @@ const Q0 = {
3562
3579
  ]);
3563
3580
  };
3564
3581
  }
3565
- }, dl = /* @__PURE__ */ h2(cl, [["__scopeId", "data-v-443f76ab"]]), fl = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='none'%20viewBox='0%200%2024%2024'%20stroke='%233B5695'%3e%3cpath%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='2'%20d='M4%204v5h.582m15.356%202A8.001%208.001%200%20004.582%209m0%200H9m11%2011v-5h-.581m0%200a8.003%208.003%200%2001-15.357-2m15.357%202H15'%20/%3e%3c/svg%3e", vl = ["disabled"], pl = ["src"], hl = {
3582
+ }, dl = /* @__PURE__ */ h2(cl, [["__scopeId", "data-v-77944531"]]), fl = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='none'%20viewBox='0%200%2024%2024'%20stroke='%233B5695'%3e%3cpath%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='2'%20d='M4%204v5h.582m15.356%202A8.001%208.001%200%20004.582%209m0%200H9m11%2011v-5h-.581m0%200a8.003%208.003%200%2001-15.357-2m15.357%202H15'%20/%3e%3c/svg%3e", vl = ["disabled"], pl = ["src"], hl = {
3566
3583
  __name: "RetryBtn",
3567
3584
  props: {
3568
3585
  disabled: Boolean
@@ -3576,7 +3593,7 @@ const Q0 = {
3576
3593
  "aria-label": "Retry"
3577
3594
  }, [
3578
3595
  p("img", {
3579
- src: T(fl),
3596
+ src: $(fl),
3580
3597
  alt: "Retry",
3581
3598
  class: N(["h-5 w-5 text-primaryColor", { "opacity-50": e.disabled }])
3582
3599
  }, null, 10, pl)
@@ -3603,7 +3620,7 @@ const Q0 = {
3603
3620
  onClick: t[0] || (t[0] = (o) => n.$emit("toggle"))
3604
3621
  }, [
3605
3622
  p("img", {
3606
- src: e.isDiffMode ? T(gl) : T(ml),
3623
+ src: e.isDiffMode ? $(gl) : $(ml),
3607
3624
  alt: e.isDiffMode ? "Hide Differences" : "Show Differences",
3608
3625
  class: N(["w-4", [{ "opacity-100": !e.disabled }, { "opacity-50 transform ": e.disabled }]])
3609
3626
  }, null, 10, xl)
@@ -3722,7 +3739,7 @@ const Q0 = {
3722
3739
  onInput: a,
3723
3740
  onFocus: r,
3724
3741
  onKeydown: Ge(d0(u, ["ctrl", "prevent"]), ["enter"]),
3725
- placeholder: `Min ${T(T2).IMPROVE_INPUT_MIN_LENGTH} characters. ${T(f0) ? "" : "Ctrl+Enter to improve"}`
3742
+ placeholder: `Min ${$($2).IMPROVE_INPUT_MIN_LENGTH} characters. ${$(f0) ? "" : "Ctrl+Enter to improve"}`
3726
3743
  }, null, 40, Ll), [
3727
3744
  [
3728
3745
  t0,
@@ -3733,7 +3750,7 @@ const Q0 = {
3733
3750
  ])
3734
3751
  ]));
3735
3752
  }
3736
- }, $l = /* @__PURE__ */ h2(Sl, [["__scopeId", "data-v-0b6444b1"]]);
3753
+ }, Tl = /* @__PURE__ */ h2(Sl, [["__scopeId", "data-v-0b6444b1"]]);
3737
3754
  function a2() {
3738
3755
  }
3739
3756
  a2.prototype = {
@@ -3752,11 +3769,11 @@ a2.prototype = {
3752
3769
  var x = (o = l.timeout) !== null && o !== void 0 ? o : 1 / 0, h = Date.now() + x, b = [{
3753
3770
  oldPos: -1,
3754
3771
  lastComponent: void 0
3755
- }], m = this.extractCommon(b[0], t, n, 0, l);
3756
- if (b[0].oldPos + 1 >= u && m + 1 >= r)
3772
+ }], g = this.extractCommon(b[0], t, n, 0, l);
3773
+ if (b[0].oldPos + 1 >= u && g + 1 >= r)
3757
3774
  return i(X0(a, b[0].lastComponent, t, n, a.useLongestToken));
3758
3775
  var V = -1 / 0, w = 1 / 0;
3759
- function g() {
3776
+ function m() {
3760
3777
  for (var M = Math.max(V, -c); M <= Math.min(w, c); M += 2) {
3761
3778
  var _ = void 0, F = b[M - 1], E = b[M + 1];
3762
3779
  F && (b[M - 1] = void 0);
@@ -3770,9 +3787,9 @@ a2.prototype = {
3770
3787
  b[M] = void 0;
3771
3788
  continue;
3772
3789
  }
3773
- if (!f || L && F.oldPos < E.oldPos ? _ = a.addToPath(E, !0, !1, 0, l) : _ = a.addToPath(F, !1, !0, 1, l), m = a.extractCommon(_, t, n, M, l), _.oldPos + 1 >= u && m + 1 >= r)
3790
+ if (!f || L && F.oldPos < E.oldPos ? _ = a.addToPath(E, !0, !1, 0, l) : _ = a.addToPath(F, !1, !0, 1, l), g = a.extractCommon(_, t, n, M, l), _.oldPos + 1 >= u && g + 1 >= r)
3774
3791
  return i(X0(a, _.lastComponent, t, n, a.useLongestToken));
3775
- b[M] = _, _.oldPos + 1 >= u && (w = Math.min(w, M - 1)), m + 1 >= r && (V = Math.max(V, M + 1));
3792
+ b[M] = _, _.oldPos + 1 >= u && (w = Math.min(w, M - 1)), g + 1 >= r && (V = Math.max(V, M + 1));
3776
3793
  }
3777
3794
  c++;
3778
3795
  }
@@ -3781,12 +3798,12 @@ a2.prototype = {
3781
3798
  setTimeout(function() {
3782
3799
  if (c > d || Date.now() > h)
3783
3800
  return s();
3784
- g() || M();
3801
+ m() || M();
3785
3802
  }, 0);
3786
3803
  })();
3787
3804
  else
3788
3805
  for (; c <= d && Date.now() <= h; ) {
3789
- var S = g();
3806
+ var S = m();
3790
3807
  if (S)
3791
3808
  return S;
3792
3809
  }
@@ -3859,8 +3876,8 @@ function X0(e, n, t, o, l) {
3859
3876
  if (!d.added && l) {
3860
3877
  var x = t.slice(u, u + d.count);
3861
3878
  x = x.map(function(h, b) {
3862
- var m = o[c + b];
3863
- return m.length > h.length ? m : h;
3879
+ var g = o[c + b];
3880
+ return g.length > h.length ? g : h;
3864
3881
  }), d.value = e.join(x);
3865
3882
  } else
3866
3883
  d.value = e.join(t.slice(u, u + d.count));
@@ -3904,9 +3921,9 @@ function W2(e, n) {
3904
3921
  return b0(e, n, "");
3905
3922
  }
3906
3923
  function te(e, n) {
3907
- return n.slice(0, Tl(e, n));
3924
+ return n.slice(0, $l(e, n));
3908
3925
  }
3909
- function Tl(e, n) {
3926
+ function $l(e, n) {
3910
3927
  var t = 0;
3911
3928
  e.length > n.length && (t = e.length - n.length);
3912
3929
  var o = n.length;
@@ -3977,10 +3994,10 @@ function ne(e, n, t, o) {
3977
3994
  var b = ee(O2(c, h), x);
3978
3995
  n.value = W2(n.value, b), o.value = C0(o.value, c, b), e.value = b0(e.value, c, c.slice(0, c.length - b.length));
3979
3996
  } else if (o) {
3980
- var m = o.value.match(/^\s*/)[0], V = n.value.match(/\s*$/)[0], w = te(V, m);
3997
+ var g = o.value.match(/^\s*/)[0], V = n.value.match(/\s*$/)[0], w = te(V, g);
3981
3998
  n.value = W2(n.value, w);
3982
3999
  } else if (e) {
3983
- var g = e.value.match(/\s*$/)[0], S = n.value.match(/^\s*/)[0], M = te(g, S);
4000
+ var m = e.value.match(/\s*$/)[0], S = n.value.match(/^\s*/)[0], M = te(m, S);
3984
4001
  n.value = O2(n.value, M);
3985
4002
  }
3986
4003
  }
@@ -4088,7 +4105,7 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4088
4105
  },
4089
4106
  emits: ["copy", "change", "clear"],
4090
4107
  setup(e, { emit: n }) {
4091
- const t = e, o = x2(), l = $(() => o.isLoading("writing")), s = $(() => l.value ? "" : t.text), a = I(""), i = I(T2.DEFAULT_DIFF_MODE), { textarea: r } = l0({ input: s, styleProp: "minHeight" }), u = n;
4108
+ const t = e, o = x2(), l = T(() => o.isLoading("writing")), s = T(() => l.value ? "" : t.text), a = I(""), i = I($2.DEFAULT_DIFF_MODE), { textarea: r } = l0({ input: s, styleProp: "minHeight" }), u = n;
4092
4109
  function c() {
4093
4110
  !l.value && s.value && u("copy", s.value);
4094
4111
  }
@@ -4096,7 +4113,7 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4096
4113
  return Ol(h, b).map((V) => V.added ? `<span class="bg-addedBg inline leading-snug animate-addedText">${V.value}</span>` : V.removed ? `<span class="bg-removedBg inline leading-snug animate-removedText">${V.value}</span>` : V.value).join("");
4097
4114
  }
4098
4115
  function x() {
4099
- i.value = !i.value, T2.DEFAULT_DIFF_MODE = i.value;
4116
+ i.value = !i.value, $2.DEFAULT_DIFF_MODE = i.value;
4100
4117
  }
4101
4118
  return R(
4102
4119
  () => t.text,
@@ -4123,7 +4140,7 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4123
4140
  key: 0,
4124
4141
  ref_key: "textarea",
4125
4142
  ref: r,
4126
- "onUpdate:modelValue": b[0] || (b[0] = (m) => s.value = m),
4143
+ "onUpdate:modelValue": b[0] || (b[0] = (g) => s.value = g),
4127
4144
  class: "w-full outline-none px-1 pr-8 bg-transparent text-textCustom resize-none pb-3 overflow-x-hidden overflow-y-hidden font-sans text-base leading-normal",
4128
4145
  readonly: "",
4129
4146
  spellcheck: "false"
@@ -4179,7 +4196,7 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4179
4196
  },
4180
4197
  emits: ["update:modelValue", "action"],
4181
4198
  setup(e, { emit: n }) {
4182
- const t = e, o = n, l = I(!1), s = I(t.modelValue), a = I(null), i = $(() => t.options.find((h) => h.value === s.value) || t.options[0]);
4199
+ const t = e, o = n, l = I(!1), s = I(t.modelValue), a = I(null), i = T(() => t.options.find((h) => h.value === s.value) || t.options[0]);
4183
4200
  function r() {
4184
4201
  o("action");
4185
4202
  }
@@ -4254,27 +4271,27 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4254
4271
  ], 2),
4255
4272
  l.value ? (C(), y("div", Cs, [
4256
4273
  p("div", bs, [
4257
- (C(!0), y(j, null, X(e.options, (m) => (C(), y("a", {
4258
- key: m.value,
4259
- onClick: (V) => c(m),
4274
+ (C(!0), y(j, null, X(e.options, (g) => (C(), y("a", {
4275
+ key: g.value,
4276
+ onClick: (V) => c(g),
4260
4277
  href: "#",
4261
4278
  class: "block px-1 py-1 text-sm text-textCustom hover:bg-gray-100 hover:text-primaryColor",
4262
4279
  role: "menuitem"
4263
4280
  }, [
4264
4281
  p("div", ws, [
4265
4282
  p("img", {
4266
- src: d(m.icon),
4283
+ src: d(g.icon),
4267
4284
  alt: "",
4268
4285
  class: "w-4 h-4 mr-2"
4269
4286
  }, null, 8, ys),
4270
- F2(" " + J(m.label), 1)
4287
+ F2(" " + J(g.label), 1)
4271
4288
  ])
4272
4289
  ], 8, xs))), 128))
4273
4290
  ])
4274
4291
  ])) : H("", !0)
4275
4292
  ], 512));
4276
4293
  }
4277
- }, Es = /* @__PURE__ */ h2(_s, [["__scopeId", "data-v-9c9633b7"]]), Ls = { class: "w-full mt-1" }, Ss = { class: "flex flex-col lg:flex-row lg:items-stretch lg:space-x-4 lg:min-h-[50vh]" }, $s = { class: "lg:flex-grow lg:w-0 flex flex-col" }, Ts = { class: "flex flex-row lg:flex-col items-center justify-center place-content-center min-h-full" }, Is = {
4294
+ }, Es = /* @__PURE__ */ h2(_s, [["__scopeId", "data-v-9c9633b7"]]), Ls = { class: "w-full mt-1" }, Ss = { class: "flex flex-col lg:flex-row lg:items-stretch lg:space-x-4 lg:min-h-[50vh]" }, Ts = { class: "lg:flex-grow lg:w-0 flex flex-col" }, $s = { class: "flex flex-row lg:flex-col items-center justify-center place-content-center min-h-full" }, Is = {
4278
4295
  class: "flex items-center",
4279
4296
  style: { "max-width": "300px" }
4280
4297
  }, Os = { class: "lg:flex-grow lg:w-0 flex flex-col" }, Ms = {
@@ -4304,89 +4321,89 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4304
4321
  ];
4305
4322
  R(
4306
4323
  () => l.writing,
4307
- (m) => {
4308
- o.setLoading("writing", !1), m && (t.reset(), t.init(m));
4324
+ (g) => {
4325
+ o.setLoading("writing", !1), g && (t.reset(), t.init(g));
4309
4326
  },
4310
4327
  { immediate: !0 }
4311
4328
  ), R(
4312
4329
  () => l.opt,
4313
- (m) => {
4314
- m.src !== t.src && t.init({ ...t.$state, src: m.src });
4330
+ (g) => {
4331
+ g.src !== t.src && t.init({ ...t.$state, src: g.src });
4315
4332
  },
4316
4333
  { deep: !0 }
4317
4334
  );
4318
- function i(m) {
4319
- t.init({ ...t.$state, text: m });
4335
+ function i(g) {
4336
+ t.init({ ...t.$state, text: g });
4320
4337
  }
4321
4338
  function r() {
4322
4339
  t.reset();
4323
4340
  }
4324
- function u(m) {
4325
- t.init({ ...t.$state, result: m });
4341
+ function u(g) {
4342
+ t.init({ ...t.$state, result: g });
4326
4343
  }
4327
4344
  function c() {
4328
4345
  t.init({ ...t.$state, result: "", suggestions: [] });
4329
4346
  }
4330
- function d(m = null) {
4331
- t.text.length < T2.IMPROVE_INPUT_MIN_LENGTH || (o.setLoading("writing", !0), h(t.text, l.opt.type, m));
4347
+ function d(g = null) {
4348
+ t.text.length < $2.IMPROVE_INPUT_MIN_LENGTH || (o.setLoading("writing", !0), h(t.text, l.opt.type, g));
4332
4349
  }
4333
4350
  function x() {
4334
4351
  d("retry");
4335
4352
  }
4336
- function h(m, V = l.opt.type, w) {
4337
- m && (o.setLoading("writing", !0), s("write", {
4353
+ function h(g, V = l.opt.type, w) {
4354
+ g && (o.setLoading("writing", !0), s("write", {
4338
4355
  src: l.opt.src,
4339
- text: m,
4356
+ text: g,
4340
4357
  action: V,
4341
4358
  flag: w
4342
4359
  }));
4343
4360
  }
4344
- function b(m) {
4345
- o.setLoading("writing", !0), s("opt", { ...l.opt, type: m, text: t.text });
4361
+ function b(g) {
4362
+ o.setLoading("writing", !0), s("opt", { ...l.opt, type: g, text: t.text });
4346
4363
  }
4347
- return (m, V) => {
4348
- var w, g;
4364
+ return (g, V) => {
4365
+ var w, m;
4349
4366
  return C(), y("div", Ls, [
4350
4367
  p("div", Ss, [
4351
- p("div", $s, [
4352
- D($l, {
4368
+ p("div", Ts, [
4369
+ D(Tl, {
4353
4370
  class: "my-2 lg:my-0 w-full flex-grow lg:min-h-[50vh]",
4354
- text: T(t).text,
4371
+ text: $(t).text,
4355
4372
  onChange: i,
4356
4373
  onClear: r,
4357
4374
  onImprove: d
4358
4375
  }, null, 8, ["text"])
4359
4376
  ]),
4360
- p("div", Ts, [
4377
+ p("div", $s, [
4361
4378
  p("div", Is, [
4362
4379
  D(Es, {
4363
4380
  class: "w-full",
4364
4381
  modelValue: l.opt.type,
4365
4382
  options: a,
4366
- loading: T(o).isLoading("writing"),
4367
- isTextEmpty: T(t).text && ((w = T(t).text) == null ? void 0 : w.length) < T(T2).IMPROVE_INPUT_MIN_LENGTH,
4368
- hasResult: !!T(t).result,
4383
+ loading: $(o).isLoading("writing"),
4384
+ isTextEmpty: $(t).text && ((w = $(t).text) == null ? void 0 : w.length) < $($2).IMPROVE_INPUT_MIN_LENGTH,
4385
+ hasResult: !!$(t).result,
4369
4386
  "onUpdate:modelValue": b,
4370
4387
  onAction: d
4371
4388
  }, null, 8, ["modelValue", "loading", "isTextEmpty", "hasResult"])
4372
4389
  ]),
4373
4390
  D(hl, {
4374
4391
  class: "ml-2 lg:m-2",
4375
- disabled: ((g = T(t).text) == null ? void 0 : g.length) < 5 || !T(t).result,
4392
+ disabled: ((m = $(t).text) == null ? void 0 : m.length) < 5 || !$(t).result,
4376
4393
  onClick: x
4377
4394
  }, null, 8, ["disabled"])
4378
4395
  ]),
4379
4396
  p("div", Os, [
4380
4397
  D(Hl, {
4381
4398
  class: "my-2 lg:my-0 w-full flex-grow lg:min-h-[50vh]",
4382
- text: T(t).result,
4383
- originalText: T(t).text,
4399
+ text: $(t).result,
4400
+ originalText: $(t).text,
4384
4401
  type: l.opt.type,
4385
4402
  onChange: u,
4386
4403
  onClear: c,
4387
4404
  onCopy: V[0] || (V[0] = (S) => {
4388
4405
  var M;
4389
- return s("copy", (M = T(t)) == null ? void 0 : M.result);
4406
+ return s("copy", (M = $(t)) == null ? void 0 : M.result);
4390
4407
  })
4391
4408
  }, null, 8, ["text", "originalText", "type"])
4392
4409
  ])
@@ -4395,7 +4412,7 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4395
4412
  };
4396
4413
  }
4397
4414
  }, oe = N2("writing", () => {
4398
- const e = I(null), n = I(""), t = I(""), o = I([]), l = I(null), s = $2(), a = $(() => s.getLabel(e.value));
4415
+ const e = I(null), n = I(""), t = I(""), o = I([]), l = I(null), s = T2(), a = T(() => s.getLabel(e.value));
4399
4416
  function i(u) {
4400
4417
  e.value = u.src, n.value = u.text, t.value = u.result, o.value = u.suggestions, l.value = u.action;
4401
4418
  }
@@ -4412,7 +4429,7 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4412
4429
  init: i,
4413
4430
  reset: r
4414
4431
  };
4415
- }), Ze = (e) => (L0("data-v-552ad1d6"), e = e(), S0(), e), ks = { class: "h-screen flex flex-col bg-baseColor" }, Vs = { class: "flex-none py-2 pl-3 pr-2 shadow border" }, Fs = { class: "flex-none" }, As = { class: "flex w-full border-b border-gray-200 items-center" }, Bs = {
4432
+ }), Ze = (e) => (L0("data-v-e46db1a9"), e = e(), S0(), e), ks = { class: "h-screen flex flex-col bg-baseColor" }, Vs = { class: "flex-none py-2 pl-3 pr-2 shadow border" }, Fs = { class: "flex-none" }, As = { class: "flex w-full border-b border-gray-200 items-center" }, Bs = {
4416
4433
  key: 0,
4417
4434
  class: "text-xs text-gray-400 ml-1 italic"
4418
4435
  }, Hs = /* @__PURE__ */ Ze(() => /* @__PURE__ */ p("small", null, "(Ctrl+1)", -1)), Ds = [
@@ -4461,17 +4478,17 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4461
4478
  emits: ["nav", "translate", "write", "common"],
4462
4479
  setup(e, { emit: n }) {
4463
4480
  const t = N1();
4464
- v2(t), m0(t), $2(t), x2(t), oe(t);
4465
- const o = v2(), l = m0(), s = $2(), a = x2(), i = oe();
4481
+ v2(t), m0(t), T2(t), x2(t), oe(t);
4482
+ const o = v2(), l = m0(), s = T2(), a = x2(), i = oe();
4466
4483
  c2("translationStore", o), c2("ttsStore", l), c2("languageStore", s), c2("loaderStore", a), c2("writingStore", i);
4467
- const r = n, u = (w, g) => {
4468
- r("nav", { action: w, payload: g });
4469
- }, c = (w, g = {}) => {
4470
- r("translate", { action: w, payload: g });
4471
- }, d = (w, g = {}) => {
4472
- r("write", { action: w, payload: g });
4473
- }, x = (w, g = {}) => {
4474
- r("common", { action: w, payload: g });
4484
+ const r = n, u = (w, m) => {
4485
+ r("nav", { action: w, payload: m });
4486
+ }, c = (w, m = {}) => {
4487
+ r("translate", { action: w, payload: m });
4488
+ }, d = (w, m = {}) => {
4489
+ r("write", { action: w, payload: m });
4490
+ }, x = (w, m = {}) => {
4491
+ r("common", { action: w, payload: m });
4475
4492
  }, h = e, b = {
4476
4493
  activeTab: "translate",
4477
4494
  translateOpts: { src: "auto", target: "en" },
@@ -4486,8 +4503,9 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4486
4503
  isFavorite: !1,
4487
4504
  isAITranslate: !1,
4488
4505
  isAIExplain: !1,
4489
- aiExplainMinLength: 5
4490
- }, m = $(() => Object.assign({}, b, h.options)), V = (w) => {
4506
+ aiExplainMinLength: 5,
4507
+ isTTS: !0
4508
+ }, g = T(() => Object.assign({}, b, h.options)), V = (w) => {
4491
4509
  if (w.ctrlKey)
4492
4510
  switch (w.key) {
4493
4511
  case "1":
@@ -4502,14 +4520,14 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4502
4520
  window.addEventListener("keydown", V);
4503
4521
  }), R2(() => {
4504
4522
  window.removeEventListener("keydown", V);
4505
- }), (w, g) => (C(), y("div", ks, [
4523
+ }), (w, m) => (C(), y("div", ks, [
4506
4524
  p("div", Vs, [
4507
4525
  D(pt, {
4508
4526
  "header-settings": e.headerSettings,
4509
- onReader: g[0] || (g[0] = (S) => u("reader")),
4510
- onSettings: g[1] || (g[1] = (S) => u("settings")),
4511
- onFullScreen: g[2] || (g[2] = (S) => u("fullscreen")),
4512
- onAccount: g[3] || (g[3] = (S) => u("account"))
4527
+ onReader: m[0] || (m[0] = (S) => u("reader")),
4528
+ onSettings: m[1] || (m[1] = (S) => u("settings")),
4529
+ onFullScreen: m[2] || (m[2] = (S) => u("fullscreen")),
4530
+ onAccount: m[3] || (m[3] = (S) => u("account"))
4513
4531
  }, null, 8, ["header-settings"])
4514
4532
  ]),
4515
4533
  p("div", Fs, [
@@ -4517,62 +4535,63 @@ const Vl = { class: "bg-white relative z-10 border rounded" }, Fl = { class: "fl
4517
4535
  p("button", {
4518
4536
  class: N([
4519
4537
  "w-1/2 px-4 py-2 text-sm font-medium",
4520
- m.value.activeTab === "translate" ? "text-primaryColor border-b-2 border-primaryColor" : "text-textSecondary hover:text-primaryColor"
4538
+ g.value.activeTab === "translate" ? "text-primaryColor border-b-2 border-primaryColor" : "text-textSecondary hover:text-primaryColor"
4521
4539
  ]),
4522
- onClick: g[4] || (g[4] = (S) => u("activeTab", "translate"))
4540
+ onClick: m[4] || (m[4] = (S) => u("activeTab", "translate"))
4523
4541
  }, [
4524
4542
  F2(" Translate "),
4525
- T(f0) ? H("", !0) : (C(), y("span", Bs, Ds))
4543
+ $(f0) ? H("", !0) : (C(), y("span", Bs, Ds))
4526
4544
  ], 2),
4527
4545
  p("button", {
4528
4546
  class: N([
4529
4547
  "w-1/2 px-4 py-2 text-sm font-medium",
4530
- m.value.activeTab === "write" ? "text-primaryColor border-b-2 border-primaryColor" : "text-textSecondary hover:text-primaryColor"
4548
+ g.value.activeTab === "write" ? "text-primaryColor border-b-2 border-primaryColor" : "text-textSecondary hover:text-primaryColor"
4531
4549
  ]),
4532
- onClick: g[5] || (g[5] = (S) => u("activeTab", "write"))
4550
+ onClick: m[5] || (m[5] = (S) => u("activeTab", "write"))
4533
4551
  }, [
4534
4552
  F2(" Write "),
4535
- T(f0) ? H("", !0) : (C(), y("span", Rs, Ns))
4553
+ $(f0) ? H("", !0) : (C(), y("span", Rs, Ns))
4536
4554
  ], 2)
4537
4555
  ])
4538
4556
  ]),
4539
4557
  p("div", Zs, [
4540
4558
  p("div", js, [
4541
- m.value.activeTab === "translate" ? (C(), q(dl, {
4559
+ g.value.activeTab === "translate" ? (C(), q(dl, {
4542
4560
  key: 0,
4543
- opt: m.value.translateOpts,
4544
- languages: m.value.languages,
4561
+ opt: g.value.translateOpts,
4562
+ languages: g.value.languages,
4545
4563
  translation: e.data.translation,
4546
4564
  explanation: e.data.explanation,
4547
4565
  tts: e.data.tts,
4548
- isFavoriteFeatureEnabled: m.value.isFavoriteFeatureEnabled,
4549
- isAITranslateFeatureEnabled: m.value.isAITranslateFeatureEnabled,
4550
- isFavorite: m.value.isFavorite,
4551
- isAITranslate: m.value.isAITranslate,
4552
- isAIExplain: m.value.isAIExplain,
4553
- aiExplainMinLength: m.value.aiExplainMinLength,
4554
- onOpt: g[6] || (g[6] = (S) => c("updateOpts", S)),
4555
- onTranslate: g[7] || (g[7] = (S) => c("translate", S)),
4556
- onLoadTTS: g[8] || (g[8] = (S) => c("loadTTS", S)),
4557
- onFavorite: g[9] || (g[9] = (S) => c("favorite")),
4558
- onAiTranslate: g[10] || (g[10] = (S) => c("aiTranslate", S)),
4559
- onAiExplain: g[11] || (g[11] = (S) => c("aiExplain", S)),
4560
- onCopy: g[12] || (g[12] = (S) => x("copy", S))
4561
- }, null, 8, ["opt", "languages", "translation", "explanation", "tts", "isFavoriteFeatureEnabled", "isAITranslateFeatureEnabled", "isFavorite", "isAITranslate", "isAIExplain", "aiExplainMinLength"])) : H("", !0),
4562
- m.value.activeTab === "write" ? (C(), q(Ms, {
4566
+ isTTS: g.value.isTTS,
4567
+ isFavoriteFeatureEnabled: g.value.isFavoriteFeatureEnabled,
4568
+ isAITranslateFeatureEnabled: g.value.isAITranslateFeatureEnabled,
4569
+ isFavorite: g.value.isFavorite,
4570
+ isAITranslate: g.value.isAITranslate,
4571
+ isAIExplain: g.value.isAIExplain,
4572
+ aiExplainMinLength: g.value.aiExplainMinLength,
4573
+ onOpt: m[6] || (m[6] = (S) => c("updateOpts", S)),
4574
+ onTranslate: m[7] || (m[7] = (S) => c("translate", S)),
4575
+ onLoadTTS: m[8] || (m[8] = (S) => c("loadTTS", S)),
4576
+ onFavorite: m[9] || (m[9] = (S) => c("favorite")),
4577
+ onAiTranslate: m[10] || (m[10] = (S) => c("aiTranslate", S)),
4578
+ onAiExplain: m[11] || (m[11] = (S) => c("aiExplain", S)),
4579
+ onCopy: m[12] || (m[12] = (S) => x("copy", S))
4580
+ }, null, 8, ["opt", "languages", "translation", "explanation", "tts", "isTTS", "isFavoriteFeatureEnabled", "isAITranslateFeatureEnabled", "isFavorite", "isAITranslate", "isAIExplain", "aiExplainMinLength"])) : H("", !0),
4581
+ g.value.activeTab === "write" ? (C(), q(Ms, {
4563
4582
  key: 1,
4564
- opt: m.value.writeOpts,
4565
- languages: m.value.languages,
4583
+ opt: g.value.writeOpts,
4584
+ languages: g.value.languages,
4566
4585
  writing: e.data.writing,
4567
- onOpt: g[13] || (g[13] = (S) => d("updateOpts", S)),
4568
- onWrite: g[14] || (g[14] = (S) => d("write", S)),
4569
- onCopy: g[15] || (g[15] = (S) => x("copy", S))
4586
+ onOpt: m[13] || (m[13] = (S) => d("updateOpts", S)),
4587
+ onWrite: m[14] || (m[14] = (S) => d("write", S)),
4588
+ onCopy: m[15] || (m[15] = (S) => x("copy", S))
4570
4589
  }, null, 8, ["opt", "languages", "writing"])) : H("", !0)
4571
4590
  ])
4572
4591
  ])
4573
4592
  ]));
4574
4593
  }
4575
- }, qs = /* @__PURE__ */ h2(zs, [["__scopeId", "data-v-552ad1d6"]]);
4594
+ }, qs = /* @__PURE__ */ h2(zs, [["__scopeId", "data-v-e46db1a9"]]);
4576
4595
  export {
4577
4596
  qs as default
4578
4597
  };