@talkjs/react-components 0.0.21 → 0.0.22

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/default.js CHANGED
@@ -1,20 +1,20 @@
1
1
  "use client";
2
2
  import Wa from "htm";
3
- import fe, { useLayoutEffect as Ke, useEffect as f, useState as B, useCallback as Y, useRef as H, createElement as V, forwardRef as oe, createContext as qa, useContext as He, useMemo as G, useReducer as Ja, Fragment as Pn, useImperativeHandle as bn } from "react";
3
+ import fe, { useLayoutEffect as Ke, useEffect as v, useState as w, useCallback as B, useRef as y, createElement as V, forwardRef as ie, createContext as qa, useContext as ye, useMemo as z, useReducer as Ja, Fragment as Pn, useImperativeHandle as bn } from "react";
4
4
  import * as Za from "universal-base64";
5
5
  import { jsx as d, jsxs as te, Fragment as Me } from "react/jsx-runtime";
6
6
  import Kt from "onecolor";
7
7
  import Qa from "wavesurfer.js";
8
- import { Decoration as Un, DecorationSet as Hn, EditorView as er } from "prosemirror-view";
8
+ import { Decoration as Un, DecorationSet as yn, EditorView as er } from "prosemirror-view";
9
9
  import { Schema as tr } from "prosemirror-model";
10
- import { PluginKey as yn, Plugin as wn, TextSelection as Wt, EditorState as nr } from "prosemirror-state";
10
+ import { PluginKey as Hn, Plugin as wn, TextSelection as Wt, EditorState as nr } from "prosemirror-state";
11
11
  import { keymap as qt } from "prosemirror-keymap";
12
12
  import { history as ar, undo as rr, redo as ir } from "prosemirror-history";
13
13
  import { baseKeymap as Qe } from "prosemirror-commands";
14
14
  import or, { EmailMatch as sr, UrlMatch as Er } from "autolinker";
15
15
  import { ReplaceStep as cr } from "prosemirror-transform";
16
- import { observable as W, opaqueObject as Jt, batch as Fe, observe as Zt, configureLegendState as lr, internal as _r } from "@legendapp/state";
17
- import { useSession as We, useStore as j, useController as ye, useTheme as se, useEditorInternals as qe, useEmojiPicker as Ar, usePopover as ur, EmojiPickerContext as Bn, PopoverContext as Or, useChatboxCallbacks as Tr, EditorInternalsContext as Yn, PermissionContext as $n, StoreContext as xn, ThemeContext as jn, ControllerContext as Fn, SessionContext as Vn, ChatboxCallbacksContext as dr } from "./globalConstants.js";
16
+ import { observable as K, opaqueObject as Jt, batch as Fe, observe as Zt, configureLegendState as lr, internal as _r } from "@legendapp/state";
17
+ import { useSession as We, useStore as j, useController as He, useTheme as se, useEditorInternals as qe, useEmojiPicker as Ar, usePopover as ur, EmojiPickerContext as Bn, PopoverContext as Or, useChatboxCallbacks as Tr, EditorInternalsContext as Yn, PermissionContext as $n, StoreContext as xn, ThemeContext as jn, ControllerContext as Fn, SessionContext as Vn, ChatboxCallbacksContext as dr } from "./globalConstants.js";
18
18
  import { useObservable as Le, useSelector as x, useObserveEffect as Pe, For as gt } from "@legendapp/state/react";
19
19
  import { CSSTransition as Sr } from "react-transition-group";
20
20
  import { usePopper as Ir } from "react-popper";
@@ -79,15 +79,15 @@ function Wn() {
79
79
  var n = { array: e, bool: e, func: e, number: e, object: e, string: e, symbol: e, any: e, arrayOf: t, element: e, elementType: e, instanceOf: t, node: e, objectOf: t, oneOf: t, oneOfType: t, shape: t, exact: t, checkPropTypes: Kn, resetWarningCache: zn };
80
80
  n.PropTypes = n;
81
81
  })();
82
- var ve = Wn() ? Ke : f;
82
+ var ve = Wn() ? Ke : v;
83
83
  function qn() {
84
- var e = B(/* @__PURE__ */ Object.create(null))[1];
85
- return Y(function() {
84
+ var e = w(/* @__PURE__ */ Object.create(null))[1];
85
+ return B(function() {
86
86
  e(/* @__PURE__ */ Object.create(null));
87
87
  }, []);
88
88
  }
89
89
  var Jn, vr = function(e) {
90
- var t = e.children, n = e.type, a = n === void 0 ? "reach-portal" : n, r = H(null), i = H(null), o = qn();
90
+ var t = e.children, n = e.type, a = n === void 0 ? "reach-portal" : n, r = y(null), i = y(null), o = qn();
91
91
  return ve(function() {
92
92
  if (r.current) {
93
93
  var s = r.current.ownerDocument;
@@ -115,7 +115,7 @@ function xt(e) {
115
115
  function tn(e, t, n) {
116
116
  var a, r, i;
117
117
  typeof t == "boolean" ? a = t : (a = (i = t?.observe) == null || i, r = t?.onChange), xt(n) && (r = n);
118
- var o = B(e.current), s = o[0], E = o[1], c = H(!1), l = H(!1), _ = B(null), S = _[0], u = _[1], T = H(r);
118
+ var o = w(e.current), s = o[0], E = o[1], c = y(!1), l = y(!1), _ = w(null), S = _[0], u = _[1], T = y(r);
119
119
  return ve(function() {
120
120
  T.current = r, e.current !== s && E(e.current);
121
121
  }), ve(function() {
@@ -124,20 +124,20 @@ function tn(e, t, n) {
124
124
  if (a) {
125
125
  var A = s;
126
126
  if (l.current || (l.current = !0, A = e.current), A) {
127
- var I, D, R = (I = A, D = function(h) {
128
- T.current == null || T.current(h), u(h);
127
+ var I, h, L = (I = A, h = function(p) {
128
+ T.current == null || T.current(p), u(p);
129
129
  }, { observe: function() {
130
- var h = Se.size === 0;
131
- Se.has(I) ? Se.get(I).callbacks.push(D) : Se.set(I, { rect: void 0, hasRectChanged: !1, callbacks: [D] }), h && Mr();
130
+ var p = Se.size === 0;
131
+ Se.has(I) ? Se.get(I).callbacks.push(h) : Se.set(I, { rect: void 0, hasRectChanged: !1, callbacks: [h] }), p && Mr();
132
132
  }, unobserve: function() {
133
- var h = Se.get(I);
134
- if (h) {
135
- var L = h.callbacks.indexOf(D);
136
- L >= 0 && h.callbacks.splice(L, 1), h.callbacks.length || Se.delete(I), Se.size || cancelAnimationFrame(Jn);
133
+ var p = Se.get(I);
134
+ if (p) {
135
+ var D = p.callbacks.indexOf(h);
136
+ D >= 0 && p.callbacks.splice(D, 1), p.callbacks.length || Se.delete(I), Se.size || cancelAnimationFrame(Jn);
137
137
  }
138
138
  } });
139
- return R.observe(), function() {
140
- R.unobserve();
139
+ return L.observe(), function() {
140
+ L.unobserve();
141
141
  };
142
142
  }
143
143
  }
@@ -182,7 +182,7 @@ function br(e, t) {
182
182
  }
183
183
  function Je() {
184
184
  for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
185
- return Y(function(a) {
185
+ return B(function(a) {
186
186
  for (var r, i = Pr(t); !(r = i()).done; )
187
187
  br(r.value, a);
188
188
  }, t);
@@ -193,7 +193,7 @@ function vt(e, t) {
193
193
  t = t || {};
194
194
  var n, a, r, i = [], o = [], s = e.querySelectorAll(Ct);
195
195
  for (t.includeContainer && ft.call(e, Ct) && (s = Array.prototype.slice.apply(s)).unshift(e), n = 0; n < s.length; n++) Qn(a = s[n]) && ((r = ta(a)) === 0 ? i.push(a) : o.push({ documentOrder: n, tabIndex: r, node: a }));
196
- return o.sort(Hr).map(function(E) {
196
+ return o.sort(yr).map(function(E) {
197
197
  return E.node;
198
198
  }).concat(i);
199
199
  }
@@ -231,13 +231,13 @@ function ta(e) {
231
231
  return n.contentEditable === "true";
232
232
  }(e) ? 0 : e.tabIndex : t;
233
233
  }
234
- function Hr(e, t) {
234
+ function yr(e, t) {
235
235
  return e.tabIndex === t.tabIndex ? e.documentOrder - t.documentOrder : e.tabIndex - t.tabIndex;
236
236
  }
237
237
  function na(e) {
238
238
  return e.tagName === "INPUT";
239
239
  }
240
- const _e = fr(vt);
240
+ const le = fr(vt);
241
241
  function be() {
242
242
  return be = Object.assign || function(e) {
243
243
  for (var t = 1; t < arguments.length; t++) {
@@ -247,85 +247,85 @@ function be() {
247
247
  return e;
248
248
  }, be.apply(this, arguments);
249
249
  }
250
- var yr = ["as", "targetRef", "position", "unstable_observableRefs"], wr = oe(function(e, t) {
250
+ var Hr = ["as", "targetRef", "position", "unstable_observableRefs"], wr = ie(function(e, t) {
251
251
  return V(vr, null, V(Br, be({ ref: t }, e)));
252
- }), Br = oe(function(e, t) {
252
+ }), Br = ie(function(e, t) {
253
253
  var n = e.as, a = n === void 0 ? "div" : n, r = e.targetRef, i = e.position, o = i === void 0 ? $r : i, s = e.unstable_observableRefs, E = s === void 0 ? [] : s, c = function(T, A) {
254
254
  if (T == null) return {};
255
- var I, D, R = {}, h = Object.keys(T);
256
- for (D = 0; D < h.length; D++) I = h[D], A.indexOf(I) >= 0 || (R[I] = T[I]);
257
- return R;
258
- }(e, yr), l = H(null), _ = tn(l, { observe: !c.hidden }), S = tn(r, { observe: !c.hidden }), u = Je(l, t);
255
+ var I, h, L = {}, p = Object.keys(T);
256
+ for (h = 0; h < p.length; h++) I = p[h], A.indexOf(I) >= 0 || (L[I] = T[I]);
257
+ return L;
258
+ }(e, Hr), l = y(null), _ = tn(l, { observe: !c.hidden }), S = tn(r, { observe: !c.hidden }), u = Je(l, t);
259
259
  return function(T, A) {
260
260
  var I = Ve(T.current);
261
- function D(g) {
262
- g.key === "Tab" && A.current && _e(A.current).length === 0 || (g.key === "Tab" && g.shiftKey ? v(g) ? k(g) : U(g) ? C(g) : w(g) && z() : g.key === "Tab" && (h() ? L(g) : m() ? p(g) : P(g) && z()));
261
+ function h(C) {
262
+ C.key === "Tab" && A.current && le(A.current).length === 0 || (C.key === "Tab" && C.shiftKey ? f(C) ? M(C) : Y(C) ? U(C) : b(C) && X() : C.key === "Tab" && (p() ? D(C) : R() ? m(C) : g(C) && X()));
263
263
  }
264
- function R() {
265
- var g = _e(I), M = g && T.current ? g.indexOf(T.current) : -1, y = g && g[M + 1];
266
- return (!A.current || !A.current.contains(y || null)) && y;
264
+ function L() {
265
+ var C = le(I), k = C && T.current ? C.indexOf(T.current) : -1, G = C && C[k + 1];
266
+ return (!A.current || !A.current.contains(G || null)) && G;
267
267
  }
268
- function h() {
268
+ function p() {
269
269
  return !!T.current && T.current === I.activeElement;
270
270
  }
271
- function L(g) {
272
- var M = A.current && _e(A.current);
273
- M && M[0] && (g.preventDefault(), M[0].focus());
271
+ function D(C) {
272
+ var k = A.current && le(A.current);
273
+ k && k[0] && (C.preventDefault(), k[0].focus());
274
274
  }
275
- function m() {
275
+ function R() {
276
276
  if (A.current && A.current.contains(I.activeElement || null)) {
277
- var g = A.current && _e(A.current);
278
- return !!(g && g[g.length - 1] === I.activeElement);
277
+ var C = A.current && le(A.current);
278
+ return !!(C && C[C.length - 1] === I.activeElement);
279
279
  }
280
280
  return !1;
281
281
  }
282
- function p(g) {
283
- var M = R();
284
- M && (g.preventDefault(), M.focus());
282
+ function m(C) {
283
+ var k = L();
284
+ k && (C.preventDefault(), k.focus());
285
285
  }
286
- function v(g) {
287
- if (g.shiftKey) {
288
- var M = R();
289
- return g.target === M;
286
+ function f(C) {
287
+ if (C.shiftKey) {
288
+ var k = L();
289
+ return C.target === k;
290
290
  }
291
291
  }
292
- function k(g) {
293
- var M = A.current && _e(A.current), y = M && M[M.length - 1];
294
- y && (g.preventDefault(), y.focus());
292
+ function M(C) {
293
+ var k = A.current && le(A.current), G = k && k[k.length - 1];
294
+ G && (C.preventDefault(), G.focus());
295
295
  }
296
- function U(g) {
297
- var M = A.current && _e(A.current);
298
- return !!M && M.length !== 0 && g.target === M[0];
296
+ function Y(C) {
297
+ var k = A.current && le(A.current);
298
+ return !!k && k.length !== 0 && C.target === k[0];
299
299
  }
300
- function C(g) {
301
- var M;
302
- g.preventDefault(), (M = T.current) == null || M.focus();
300
+ function U(C) {
301
+ var k;
302
+ C.preventDefault(), (k = T.current) == null || k.focus();
303
303
  }
304
- function P(g) {
305
- var M = A.current ? _e(I).filter(function(y) {
306
- return !A.current.contains(y);
304
+ function g(C) {
305
+ var k = A.current ? le(I).filter(function(G) {
306
+ return !A.current.contains(G);
307
307
  }) : null;
308
- return !!M && g.target === M[M.length - 1];
308
+ return !!k && C.target === k[k.length - 1];
309
309
  }
310
- function w(g) {
311
- return g.target === _e(I)[0];
310
+ function b(C) {
311
+ return C.target === le(I)[0];
312
312
  }
313
- f(function() {
314
- return I.addEventListener("keydown", D), function() {
315
- I.removeEventListener("keydown", D);
313
+ v(function() {
314
+ return I.addEventListener("keydown", h), function() {
315
+ I.removeEventListener("keydown", h);
316
316
  };
317
317
  }, []);
318
- var X = [];
319
- function z() {
320
- var g = A.current && _e(A.current);
321
- g && (g.forEach(function(M) {
322
- X.push([M, M.tabIndex]), M.tabIndex = -1;
323
- }), I.addEventListener("focusin", ie));
318
+ var W = [];
319
+ function X() {
320
+ var C = A.current && le(A.current);
321
+ C && (C.forEach(function(k) {
322
+ W.push([k, k.tabIndex]), k.tabIndex = -1;
323
+ }), I.addEventListener("focusin", oe));
324
324
  }
325
- function ie() {
326
- I.removeEventListener("focusin", ie), X.forEach(function(g) {
327
- var M = g[0], y = g[1];
328
- M.tabIndex = y;
325
+ function oe() {
326
+ I.removeEventListener("focusin", oe), W.forEach(function(C) {
327
+ var k = C[0], G = C[1];
328
+ k.tabIndex = G;
329
329
  });
330
330
  }
331
331
  }(r, l), V(a, be({ "data-reach-popover": "", ref: u }, c, { style: be({ position: "absolute" }, Yr.apply(void 0, [o, S, _].concat(E)), c.style) }));
@@ -368,7 +368,7 @@ function Fr(e, t) {
368
368
  return t === void 0 && (t = {}), aa(0, Ie({ descendants: [], registerDescendant: rn, unregisterDescendant: rn }, t));
369
369
  }
370
370
  function Vr(e) {
371
- var t = e.context, n = e.children, a = e.items, r = e.set, i = Y(function(s) {
371
+ var t = e.context, n = e.children, a = e.items, r = e.set, i = B(function(s) {
372
372
  var E = s.element, c = s.index, l = function(_, S) {
373
373
  if (_ == null) return {};
374
374
  var u, T, A = {}, I = Object.keys(_);
@@ -394,14 +394,14 @@ function Vr(e) {
394
394
  return Ie({}, A, { index: I });
395
395
  });
396
396
  });
397
- }, []), o = Y(function(s) {
397
+ }, []), o = B(function(s) {
398
398
  s && r(function(E) {
399
399
  return E.filter(function(c) {
400
400
  return s !== c.element;
401
401
  });
402
402
  });
403
403
  }, []);
404
- return V(t.Provider, { value: G(function() {
404
+ return V(t.Provider, { value: z(function() {
405
405
  return { descendants: a, registerDescendant: i, unregisterDescendant: o };
406
406
  }, [a, i, o]) }, n);
407
407
  }
@@ -409,8 +409,8 @@ function rt(e) {
409
409
  return "which" in e ? e.which === 3 : "button" in e && e.button === 2;
410
410
  }
411
411
  function Nt(e) {
412
- var t = H(null);
413
- return f(function() {
412
+ var t = y(null);
413
+ return v(function() {
414
414
  t.current = e;
415
415
  }, [e]), t.current;
416
416
  }
@@ -431,207 +431,207 @@ function lt(e, t) {
431
431
  for (a = 0; a < i.length; a++) n = i[a], t.indexOf(n) >= 0 || (r[n] = e[n]);
432
432
  return r;
433
433
  }
434
- function Z() {
435
- return Z = Object.assign || function(e) {
434
+ function Q() {
435
+ return Q = Object.assign || function(e) {
436
436
  for (var t = 1; t < arguments.length; t++) {
437
437
  var n = arguments[t];
438
438
  for (var a in n) Object.prototype.hasOwnProperty.call(n, a) && (e[a] = n[a]);
439
439
  }
440
440
  return e;
441
- }, Z.apply(this, arguments);
441
+ }, Q.apply(this, arguments);
442
442
  }
443
443
  var Xr = ["onKeyDown", "onMouseDown", "id", "ref"], Gr = ["index", "isLink", "onClick", "onDragStart", "onMouseDown", "onMouseEnter", "onMouseLeave", "onMouseMove", "onMouseUp", "onSelect", "disabled", "onFocus", "valueText", "ref"], zr = ["id", "onKeyDown", "ref"], Kr = ["onBlur", "portal", "position", "ref"], ra = "CLEAR_SELECTION_INDEX", jt = "CLICK_MENU_ITEM", Xe = "CLOSE_MENU", Mt = "OPEN_MENU_AT_INDEX", ia = "OPEN_MENU_CLEARED", Pt = "SEARCH_FOR_ITEM", Ne = "SELECT_ITEM_AT_INDEX", oa = "SET_BUTTON_ID", _t = Fr(), Ft = aa(0, {}), Wr = { triggerId: null, isExpanded: !1, typeaheadQuery: "", selectionIndex: -1 }, qr = function(e) {
444
- var t = e.id, n = e.children, a = H(null), r = H(null), i = H(null), o = B([]), s = o[0], E = o[1], c = function(L) {
445
- var m = L || (It ? an() : null), p = B(m), v = p[0], k = p[1];
444
+ var t = e.id, n = e.children, a = y(null), r = y(null), i = y(null), o = w([]), s = o[0], E = o[1], c = function(D) {
445
+ var R = D || (It ? an() : null), m = w(R), f = m[0], M = m[1];
446
446
  return ve(function() {
447
- v === null && k(an());
448
- }, []), f(function() {
447
+ f === null && M(an());
448
+ }, []), v(function() {
449
449
  It === !1 && (It = !0);
450
- }, []), v != null ? String(v) : void 0;
451
- }(t), l = t || kt("menu", c), _ = kt("menu-button", l), S = Ja(Qr, Z({}, Wr, { triggerId: _ })), u = S[0], T = S[1], A = H(!1), I = H([]), D = H(!1), R = H({ x: 0, y: 0 }), h = { dispatch: T, dropdownId: l, dropdownRef: r, mouseDownStartPosRef: R, popoverRef: i, readyToSelect: D, selectCallbacks: I, state: u, triggerClickedRef: A, triggerRef: a };
452
- return f(function() {
450
+ }, []), f != null ? String(f) : void 0;
451
+ }(t), l = t || kt("menu", c), _ = kt("menu-button", l), S = Ja(Qr, Q({}, Wr, { triggerId: _ })), u = S[0], T = S[1], A = y(!1), I = y([]), h = y(!1), L = y({ x: 0, y: 0 }), p = { dispatch: T, dropdownId: l, dropdownRef: r, mouseDownStartPosRef: L, popoverRef: i, readyToSelect: h, selectCallbacks: I, state: u, triggerClickedRef: A, triggerRef: a };
452
+ return v(function() {
453
453
  u.isExpanded ? (window.__REACH_DISABLE_TOOLTIPS = !0, window.requestAnimationFrame(function() {
454
454
  st(r.current);
455
455
  })) : window.__REACH_DISABLE_TOOLTIPS = !1;
456
- }, [u.isExpanded]), V(Vr, { context: _t, items: s, set: E }, V(Ft.Provider, { value: h }, xt(n) ? n({ isExpanded: u.isExpanded, isOpen: u.isExpanded }) : n));
456
+ }, [u.isExpanded]), V(Vr, { context: _t, items: s, set: E }, V(Ft.Provider, { value: p }, xt(n) ? n({ isExpanded: u.isExpanded, isOpen: u.isExpanded }) : n));
457
457
  };
458
458
  function Jr(e) {
459
- var t = e.index, n = e.isLink, a = n !== void 0 && n, r = e.onClick, i = e.onDragStart, o = e.onMouseDown, s = e.onMouseEnter, E = e.onMouseLeave, c = e.onMouseMove, l = e.onMouseUp, _ = e.onSelect, S = e.disabled, u = e.onFocus, T = e.valueText, A = e.ref, I = lt(e, Gr), D = At(), R = D.dispatch, h = D.dropdownRef, L = D.mouseDownStartPosRef, m = D.readyToSelect, p = D.selectCallbacks, v = D.triggerRef, k = D.state, U = k.selectionIndex, C = k.isExpanded, P = H(null), w = B(T || ""), X = w[0], z = w[1], ie = Y(function(b) {
460
- !T && b != null && b.textContent && z(b.textContent);
461
- }, [T]), g = H(!1), M = function(b, ee) {
462
- var Ee = B(ee), me = Ee[0], ue = Ee[1];
463
- return [me, Y(function(Oe) {
464
- b.current = Oe, ue(Oe);
459
+ var t = e.index, n = e.isLink, a = n !== void 0 && n, r = e.onClick, i = e.onDragStart, o = e.onMouseDown, s = e.onMouseEnter, E = e.onMouseLeave, c = e.onMouseMove, l = e.onMouseUp, _ = e.onSelect, S = e.disabled, u = e.onFocus, T = e.valueText, A = e.ref, I = lt(e, Gr), h = At(), L = h.dispatch, p = h.dropdownRef, D = h.mouseDownStartPosRef, R = h.readyToSelect, m = h.selectCallbacks, f = h.triggerRef, M = h.state, Y = M.selectionIndex, U = M.isExpanded, g = y(null), b = w(T || ""), W = b[0], X = b[1], oe = B(function(P) {
460
+ !T && P != null && P.textContent && X(P.textContent);
461
+ }, [T]), C = y(!1), k = function(P, ee) {
462
+ var Ee = w(ee), me = Ee[0], ue = Ee[1];
463
+ return [me, B(function(Oe) {
464
+ P.current = Oe, ue(Oe);
465
465
  }, [])];
466
- }(P, null), y = M[0], K = M[1], Q = function(b, ee, Ee) {
467
- var me = qn(), ue = He(ee), Oe = ue.registerDescendant, Ye = ue.unregisterDescendant, pe = ue.descendants, Te = Ee ?? pe.findIndex(function(he) {
468
- return he.element === b.element;
466
+ }(g, null), G = k[0], H = k[1], Z = function(P, ee, Ee) {
467
+ var me = qn(), ue = ye(ee), Oe = ue.registerDescendant, Ye = ue.unregisterDescendant, pe = ue.descendants, Te = Ee ?? pe.findIndex(function(he) {
468
+ return he.element === P.element;
469
469
  });
470
470
  return ve(function() {
471
- return b.element || me(), Oe(Ie({}, b, { index: Te })), function() {
472
- Ye(b.element);
471
+ return P.element || me(), Oe(Ie({}, P, { index: Te })), function() {
472
+ Ye(P.element);
473
473
  };
474
- }, [b, me, Te, Oe, Ye].concat(Object.values(b))), Te;
475
- }(G(function() {
476
- return { element: y, key: X, disabled: S, isLink: a };
477
- }, [S, y, a, X]), _t, t), q = Q === U && !S, $ = Je(A, K, ie);
478
- function le() {
479
- st(v.current), _ && _(), R({ type: jt });
474
+ }, [P, me, Te, Oe, Ye].concat(Object.values(P))), Te;
475
+ }(z(function() {
476
+ return { element: G, key: W, disabled: S, isLink: a };
477
+ }, [S, G, a, W]), _t, t), q = Z === Y && !S, Ae = Je(A, H, oe);
478
+ function $() {
479
+ st(f.current), _ && _(), L({ type: jt });
480
480
  }
481
- return p.current[Q] = _, f(function() {
482
- if (C) {
483
- var b = window.setTimeout(function() {
484
- m.current = !0;
481
+ return m.current[Z] = _, v(function() {
482
+ if (U) {
483
+ var P = window.setTimeout(function() {
484
+ R.current = !0;
485
485
  }, 400);
486
486
  return function() {
487
- window.clearTimeout(b);
487
+ window.clearTimeout(P);
488
488
  };
489
489
  }
490
- m.current = !1;
491
- }, [C, m]), f(function() {
492
- var b = Ve(P.current);
493
- return b.addEventListener("mouseup", ee), function() {
494
- b.removeEventListener("mouseup", ee);
490
+ R.current = !1;
491
+ }, [U, R]), v(function() {
492
+ var P = Ve(g.current);
493
+ return P.addEventListener("mouseup", ee), function() {
494
+ P.removeEventListener("mouseup", ee);
495
495
  };
496
496
  function ee() {
497
- g.current = !1;
497
+ C.current = !1;
498
498
  }
499
- }, []), { data: { disabled: S }, props: Z({ id: sa(Q), tabIndex: -1 }, I, { ref: $, "data-disabled": S ? "" : void 0, "data-selected": q ? "" : void 0, "data-valuetext": X, onClick: ne(r, function(b) {
500
- rt(b.nativeEvent) || a && (S ? b.preventDefault() : le());
501
- }), onDragStart: ne(i, function(b) {
502
- a && b.preventDefault();
503
- }), onMouseDown: ne(o, function(b) {
504
- rt(b.nativeEvent) || (a ? g.current = !0 : b.preventDefault());
505
- }), onMouseEnter: ne(s, function(b) {
506
- var ee = Ve(h.current);
507
- q || Q == null || S || (h != null && h.current && h.current !== ee.activeElement && P.current !== ee.activeElement && h.current.focus(), R({ type: Ne, payload: { index: Q } }));
508
- }), onMouseLeave: ne(E, function(b) {
509
- R({ type: ra });
510
- }), onMouseMove: ne(c, function(b) {
511
- if (!m.current) {
512
- var ee = Math.abs(b.clientX - L.current.x), Ee = Math.abs(b.clientY - L.current.y);
513
- (ee > 8 || Ee > 8) && (m.current = !0);
499
+ }, []), { data: { disabled: S }, props: Q({ id: sa(Z), tabIndex: -1 }, I, { ref: Ae, "data-disabled": S ? "" : void 0, "data-selected": q ? "" : void 0, "data-valuetext": W, onClick: ne(r, function(P) {
500
+ rt(P.nativeEvent) || a && (S ? P.preventDefault() : $());
501
+ }), onDragStart: ne(i, function(P) {
502
+ a && P.preventDefault();
503
+ }), onMouseDown: ne(o, function(P) {
504
+ rt(P.nativeEvent) || (a ? C.current = !0 : P.preventDefault());
505
+ }), onMouseEnter: ne(s, function(P) {
506
+ var ee = Ve(p.current);
507
+ q || Z == null || S || (p != null && p.current && p.current !== ee.activeElement && g.current !== ee.activeElement && p.current.focus(), L({ type: Ne, payload: { index: Z } }));
508
+ }), onMouseLeave: ne(E, function(P) {
509
+ L({ type: ra });
510
+ }), onMouseMove: ne(c, function(P) {
511
+ if (!R.current) {
512
+ var ee = Math.abs(P.clientX - D.current.x), Ee = Math.abs(P.clientY - D.current.y);
513
+ (ee > 8 || Ee > 8) && (R.current = !0);
514
514
  }
515
- q || Q == null || S || R({ type: Ne, payload: { index: Q, dropdownRef: h } });
515
+ q || Z == null || S || L({ type: Ne, payload: { index: Z, dropdownRef: p } });
516
516
  }), onFocus: ne(u, function() {
517
- m.current = !0, q || Q == null || S || R({ type: Ne, payload: { index: Q } });
518
- }), onMouseUp: ne(l, function(b) {
519
- rt(b.nativeEvent) || (m.current ? a ? g.current ? g.current = !1 : P.current && P.current.click() : S || le() : m.current = !0);
517
+ R.current = !0, q || Z == null || S || L({ type: Ne, payload: { index: Z } });
518
+ }), onMouseUp: ne(l, function(P) {
519
+ rt(P.nativeEvent) || (R.current ? a ? C.current ? C.current = !1 : g.current && g.current.click() : S || $() : R.current = !0);
520
520
  }) }) };
521
521
  }
522
522
  function Zr(e) {
523
523
  e.id;
524
524
  var t = e.onKeyDown, n = e.ref, a = lt(e, zr), r = At(), i = r.dispatch, o = r.triggerRef, s = r.dropdownRef, E = r.selectCallbacks, c = r.dropdownId, l = r.state, _ = l.isExpanded, S = l.triggerId, u = l.selectionIndex, T = l.typeaheadQuery, A = Ea(), I = Je(s, n);
525
- f(function() {
526
- var m = function(v, k) {
527
- if (k === void 0 && (k = ""), !k) return null;
528
- var U = v.find(function(C) {
529
- var P, w, X;
530
- return !C.disabled && ((P = C.element) == null || (w = P.dataset) == null || (X = w.valuetext) == null ? void 0 : X.toLowerCase().startsWith(k));
525
+ v(function() {
526
+ var R = function(f, M) {
527
+ if (M === void 0 && (M = ""), !M) return null;
528
+ var Y = f.find(function(U) {
529
+ var g, b, W;
530
+ return !U.disabled && ((g = U.element) == null || (b = g.dataset) == null || (W = b.valuetext) == null ? void 0 : W.toLowerCase().startsWith(M));
531
531
  });
532
- return U ? v.indexOf(U) : null;
532
+ return Y ? f.indexOf(Y) : null;
533
533
  }(A, T);
534
- T && m != null && i({ type: Ne, payload: { index: m, dropdownRef: s } });
535
- var p = window.setTimeout(function() {
534
+ T && R != null && i({ type: Ne, payload: { index: R, dropdownRef: s } });
535
+ var m = window.setTimeout(function() {
536
536
  return T && i({ type: Pt, payload: "" });
537
537
  }, 1e3);
538
538
  return function() {
539
- return window.clearTimeout(p);
539
+ return window.clearTimeout(m);
540
540
  };
541
541
  }, [i, A, T, s]);
542
- var D = Nt(A.length), R = Nt(A[u]), h = Nt(u);
543
- f(function() {
544
- u > A.length - 1 ? i({ type: Ne, payload: { index: A.length - 1, dropdownRef: s } }) : D !== A.length && u > -1 && R && h === u && A[u] !== R && i({ type: Ne, payload: { index: A.findIndex(function(m) {
545
- return m.key === R?.key;
542
+ var h = Nt(A.length), L = Nt(A[u]), p = Nt(u);
543
+ v(function() {
544
+ u > A.length - 1 ? i({ type: Ne, payload: { index: A.length - 1, dropdownRef: s } }) : h !== A.length && u > -1 && L && p === u && A[u] !== L && i({ type: Ne, payload: { index: A.findIndex(function(R) {
545
+ return R.key === L?.key;
546
546
  }), dropdownRef: s } });
547
- }, [s, i, A, D, R, h, u]);
548
- var L = ne(function(m) {
549
- var p = m.key;
550
- if (_) switch (p) {
547
+ }, [s, i, A, h, L, p, u]);
548
+ var D = ne(function(R) {
549
+ var m = R.key;
550
+ if (_) switch (m) {
551
551
  case "Enter":
552
552
  case " ":
553
- var v = A.find(function(U) {
554
- return U.index === u;
553
+ var f = A.find(function(Y) {
554
+ return Y.index === u;
555
555
  });
556
- v && !v.disabled && (m.preventDefault(), v.isLink && v.element ? v.element.click() : (st(o.current), E.current[v.index] && E.current[v.index](), i({ type: jt })));
556
+ f && !f.disabled && (R.preventDefault(), f.isLink && f.element ? f.element.click() : (st(o.current), E.current[f.index] && E.current[f.index](), i({ type: jt })));
557
557
  break;
558
558
  case "Escape":
559
559
  st(o.current), i({ type: Xe });
560
560
  break;
561
561
  case "Tab":
562
- m.preventDefault();
562
+ R.preventDefault();
563
563
  break;
564
564
  default:
565
- if (typeof p == "string" && p.length === 1) {
566
- var k = T + p.toLowerCase();
567
- i({ type: Pt, payload: k });
565
+ if (typeof m == "string" && m.length === 1) {
566
+ var M = T + m.toLowerCase();
567
+ i({ type: Pt, payload: M });
568
568
  }
569
569
  }
570
- }, function(m, p) {
571
- var v = He(m).descendants, k = p.callback, U = p.currentIndex, C = p.filter, P = p.key, w = P === void 0 ? "index" : P, X = p.orientation, z = X === void 0 ? "vertical" : X, ie = p.rotate, g = ie === void 0 || ie, M = p.rtl, y = M !== void 0 && M;
572
- return function(K) {
573
- if (["ArrowDown", "ArrowUp", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Home", "End"].includes(K.key)) {
574
- var Q = U ?? -1, q = C ? v.filter(C) : v;
570
+ }, function(R, m) {
571
+ var f = ye(R).descendants, M = m.callback, Y = m.currentIndex, U = m.filter, g = m.key, b = g === void 0 ? "index" : g, W = m.orientation, X = W === void 0 ? "vertical" : W, oe = m.rotate, C = oe === void 0 || oe, k = m.rtl, G = k !== void 0 && k;
572
+ return function(H) {
573
+ if (["ArrowDown", "ArrowUp", "ArrowLeft", "ArrowRight", "PageUp", "PageDown", "Home", "End"].includes(H.key)) {
574
+ var Z = Y ?? -1, q = U ? f.filter(U) : f;
575
575
  if (q.length) {
576
- var $ = q.findIndex(function(Ka) {
577
- return Ka.index === U;
576
+ var Ae = q.findIndex(function(Ka) {
577
+ return Ka.index === Y;
578
578
  });
579
- switch (K.key) {
579
+ switch (H.key) {
580
580
  case "ArrowDown":
581
- if (z === "vertical" || z === "both") {
582
- K.preventDefault();
583
- var le = pe();
584
- k(w === "option" ? le : le[w]);
581
+ if (X === "vertical" || X === "both") {
582
+ H.preventDefault();
583
+ var $ = pe();
584
+ M(b === "option" ? $ : $[b]);
585
585
  }
586
586
  break;
587
587
  case "ArrowUp":
588
- if (z === "vertical" || z === "both") {
589
- K.preventDefault();
590
- var b = Te();
591
- k(w === "option" ? b : b[w]);
588
+ if (X === "vertical" || X === "both") {
589
+ H.preventDefault();
590
+ var P = Te();
591
+ M(b === "option" ? P : P[b]);
592
592
  }
593
593
  break;
594
594
  case "ArrowLeft":
595
- if (z === "horizontal" || z === "both") {
596
- K.preventDefault();
597
- var ee = (y ? pe : Te)();
598
- k(w === "option" ? ee : ee[w]);
595
+ if (X === "horizontal" || X === "both") {
596
+ H.preventDefault();
597
+ var ee = (G ? pe : Te)();
598
+ M(b === "option" ? ee : ee[b]);
599
599
  }
600
600
  break;
601
601
  case "ArrowRight":
602
- if (z === "horizontal" || z === "both") {
603
- K.preventDefault();
604
- var Ee = (y ? Te : pe)();
605
- k(w === "option" ? Ee : Ee[w]);
602
+ if (X === "horizontal" || X === "both") {
603
+ H.preventDefault();
604
+ var Ee = (G ? Te : pe)();
605
+ M(b === "option" ? Ee : Ee[b]);
606
606
  }
607
607
  break;
608
608
  case "PageUp":
609
- K.preventDefault();
610
- var me = (K.ctrlKey ? Te : he)();
611
- k(w === "option" ? me : me[w]);
609
+ H.preventDefault();
610
+ var me = (H.ctrlKey ? Te : he)();
611
+ M(b === "option" ? me : me[b]);
612
612
  break;
613
613
  case "Home":
614
- K.preventDefault();
614
+ H.preventDefault();
615
615
  var ue = he();
616
- k(w === "option" ? ue : ue[w]);
616
+ M(b === "option" ? ue : ue[b]);
617
617
  break;
618
618
  case "PageDown":
619
- K.preventDefault();
620
- var Oe = (K.ctrlKey ? pe : Ze)();
621
- k(w === "option" ? Oe : Oe[w]);
619
+ H.preventDefault();
620
+ var Oe = (H.ctrlKey ? pe : Ze)();
621
+ M(b === "option" ? Oe : Oe[b]);
622
622
  break;
623
623
  case "End":
624
- K.preventDefault();
624
+ H.preventDefault();
625
625
  var Ye = Ze();
626
- k(w === "option" ? Ye : Ye[w]);
626
+ M(b === "option" ? Ye : Ye[b]);
627
627
  }
628
628
  }
629
629
  }
630
630
  function pe() {
631
- return Q === Ze().index ? g ? he() : q[$] : q[($ + 1) % q.length];
631
+ return Z === Ze().index ? C ? he() : q[Ae] : q[(Ae + 1) % q.length];
632
632
  }
633
633
  function Te() {
634
- return Q === he().index ? g ? Ze() : q[$] : q[($ - 1 + q.length) % q.length];
634
+ return Z === he().index ? C ? Ze() : q[Ae] : q[(Ae - 1 + q.length) % q.length];
635
635
  }
636
636
  function he() {
637
637
  return q[0];
@@ -640,15 +640,15 @@ function Zr(e) {
640
640
  return q[q.length - 1];
641
641
  }
642
642
  };
643
- }(_t, { currentIndex: u, orientation: "vertical", rotate: !1, filter: function(m) {
644
- return !m.disabled;
645
- }, callback: function(m) {
646
- i({ type: Ne, payload: { index: m, dropdownRef: s } });
643
+ }(_t, { currentIndex: u, orientation: "vertical", rotate: !1, filter: function(R) {
644
+ return !R.disabled;
645
+ }, callback: function(R) {
646
+ i({ type: Ne, payload: { index: R, dropdownRef: s } });
647
647
  }, key: "index" }));
648
- return { data: { activeDescendant: sa(u) || void 0, triggerId: S }, props: Z({ tabIndex: -1 }, a, { ref: I, id: c, onKeyDown: ne(t, L) }) };
648
+ return { data: { activeDescendant: sa(u) || void 0, triggerId: S }, props: Q({ tabIndex: -1 }, a, { ref: I, id: c, onKeyDown: ne(t, D) }) };
649
649
  }
650
650
  function sa(e) {
651
- var t = He(Ft).dropdownId;
651
+ var t = ye(Ft).dropdownId;
652
652
  return e != null && e > -1 ? kt("option-" + e, t) : void 0;
653
653
  }
654
654
  function st(e) {
@@ -658,13 +658,13 @@ function Qr(e, t) {
658
658
  switch (t === void 0 && (t = {}), t.type) {
659
659
  case jt:
660
660
  case Xe:
661
- return Z({}, e, { isExpanded: !1, selectionIndex: -1 });
661
+ return Q({}, e, { isExpanded: !1, selectionIndex: -1 });
662
662
  case "OPEN_MENU_AT_FIRST_ITEM":
663
- return Z({}, e, { isExpanded: !0, selectionIndex: 0 });
663
+ return Q({}, e, { isExpanded: !0, selectionIndex: 0 });
664
664
  case Mt:
665
- return Z({}, e, { isExpanded: !0, selectionIndex: t.payload.index });
665
+ return Q({}, e, { isExpanded: !0, selectionIndex: t.payload.index });
666
666
  case ia:
667
- return Z({}, e, { isExpanded: !0, selectionIndex: -1 });
667
+ return Q({}, e, { isExpanded: !0, selectionIndex: -1 });
668
668
  case Ne:
669
669
  var n = t.payload.dropdownRef, a = n === void 0 ? { current: null } : n;
670
670
  if (t.payload.index >= 0 && t.payload.index !== e.selectionIndex) {
@@ -672,24 +672,24 @@ function Qr(e, t) {
672
672
  var r = Ve(a.current);
673
673
  a.current !== r?.activeElement && a.current.focus();
674
674
  }
675
- return Z({}, e, { selectionIndex: t.payload.max != null ? Math.min(Math.max(t.payload.index, 0), t.payload.max) : Math.max(t.payload.index, 0) });
675
+ return Q({}, e, { selectionIndex: t.payload.max != null ? Math.min(Math.max(t.payload.index, 0), t.payload.max) : Math.max(t.payload.index, 0) });
676
676
  }
677
677
  return e;
678
678
  case ra:
679
- return Z({}, e, { selectionIndex: -1 });
679
+ return Q({}, e, { selectionIndex: -1 });
680
680
  case oa:
681
- return Z({}, e, { triggerId: t.payload });
681
+ return Q({}, e, { triggerId: t.payload });
682
682
  case Pt:
683
- return t.payload !== void 0 ? Z({}, e, { typeaheadQuery: t.payload }) : e;
683
+ return t.payload !== void 0 ? Q({}, e, { typeaheadQuery: t.payload }) : e;
684
684
  default:
685
685
  return e;
686
686
  }
687
687
  }
688
688
  function At() {
689
- return He(Ft);
689
+ return ye(Ft);
690
690
  }
691
691
  function Ea() {
692
- return He(_t).descendants;
692
+ return ye(_t).descendants;
693
693
  }
694
694
  function re() {
695
695
  return re = Object.assign || function(e) {
@@ -706,8 +706,8 @@ function we(e, t) {
706
706
  for (a = 0; a < i.length; a++) n = i[a], t.indexOf(n) >= 0 || (r[n] = e[n]);
707
707
  return r;
708
708
  }
709
- var ei = ["as", "id", "children"], ti = ["as"], ni = ["as"], ai = ["as"], ri = ["as"], ii = ["as"], oi = oe(function(e, t) {
710
- var n = e.as, a = n === void 0 ? Pn : n, r = e.id, i = e.children, o = we(e, ei), s = G(function() {
709
+ var ei = ["as", "id", "children"], ti = ["as"], ni = ["as"], ai = ["as"], ri = ["as"], ii = ["as"], oi = ie(function(e, t) {
710
+ var n = e.as, a = n === void 0 ? Pn : n, r = e.id, i = e.children, o = we(e, ei), s = z(function() {
711
711
  try {
712
712
  return Rr(V(a, null));
713
713
  } catch {
@@ -715,62 +715,62 @@ var ei = ["as", "id", "children"], ti = ["as"], ni = ["as"], ai = ["as"], ri = [
715
715
  }
716
716
  }, [a]) ? {} : re({ ref: t, id: r, "data-reach-menu": "" }, o);
717
717
  return V(a, s, V(qr, { id: r, children: i }));
718
- }), si = oe(function(e, t) {
718
+ }), si = ie(function(e, t) {
719
719
  var n = e.as, a = n === void 0 ? "button" : n, r = function(c) {
720
- var l = c.onKeyDown, _ = c.onMouseDown, S = c.id, u = c.ref, T = lt(c, Xr), A = At(), I = A.dispatch, D = A.dropdownId, R = A.mouseDownStartPosRef, h = A.triggerClickedRef, L = A.triggerRef, m = A.state, p = m.triggerId, v = m.isExpanded, k = Je(L, u), U = Ea(), C = G(function() {
721
- return U.findIndex(function(P) {
722
- return !P.disabled;
720
+ var l = c.onKeyDown, _ = c.onMouseDown, S = c.id, u = c.ref, T = lt(c, Xr), A = At(), I = A.dispatch, h = A.dropdownId, L = A.mouseDownStartPosRef, p = A.triggerClickedRef, D = A.triggerRef, R = A.state, m = R.triggerId, f = R.isExpanded, M = Je(D, u), Y = Ea(), U = z(function() {
721
+ return Y.findIndex(function(g) {
722
+ return !g.disabled;
723
723
  });
724
- }, [U]);
725
- return f(function() {
726
- S != null && S !== p && I({ type: oa, payload: S });
727
- }, [p, I, S]), { data: { isExpanded: v, controls: D }, props: Z({}, T, { ref: k, id: p || void 0, onKeyDown: ne(l, function(P) {
728
- switch (P.key) {
724
+ }, [Y]);
725
+ return v(function() {
726
+ S != null && S !== m && I({ type: oa, payload: S });
727
+ }, [m, I, S]), { data: { isExpanded: f, controls: h }, props: Q({}, T, { ref: M, id: m || void 0, onKeyDown: ne(l, function(g) {
728
+ switch (g.key) {
729
729
  case "ArrowDown":
730
730
  case "ArrowUp":
731
- P.preventDefault(), I({ type: Mt, payload: { index: C } });
731
+ g.preventDefault(), I({ type: Mt, payload: { index: U } });
732
732
  break;
733
733
  case "Enter":
734
734
  case " ":
735
- I({ type: Mt, payload: { index: C } });
735
+ I({ type: Mt, payload: { index: U } });
736
736
  }
737
- }), onMouseDown: ne(_, function(P) {
738
- rt(P.nativeEvent) || (R.current = { x: P.clientX, y: P.clientY }, v || (h.current = !0), I(v ? { type: Xe } : { type: ia }));
737
+ }), onMouseDown: ne(_, function(g) {
738
+ rt(g.nativeEvent) || (L.current = { x: g.clientX, y: g.clientY }, f || (p.current = !0), I(f ? { type: Xe } : { type: ia }));
739
739
  }), type: "button" }) };
740
740
  }(re({}, we(e, ti), { ref: t })), i = r.data, o = i.isExpanded, s = i.controls, E = r.props;
741
741
  return V(a, re({ "aria-expanded": !!o || void 0, "aria-haspopup": !0, "aria-controls": s }, E, { "data-reach-menu-button": "" }));
742
- }), Ei = oe(function(e, t) {
742
+ }), Ei = ie(function(e, t) {
743
743
  var n = e.as, a = n === void 0 ? "div" : n, r = Jr(re({}, we(e, ni), { ref: t })), i = r.data.disabled, o = r.props;
744
744
  return V(a, re({ role: "menuitem" }, o, { "aria-disabled": i || void 0, "data-reach-menu-item": "" }));
745
- }), ci = oe(function(e, t) {
745
+ }), ci = ie(function(e, t) {
746
746
  var n = e.as, a = n === void 0 ? "div" : n, r = we(e, ai);
747
747
  return V(Ei, re({}, r, { ref: t, as: a }));
748
- }), li = oe(function(e, t) {
748
+ }), li = ie(function(e, t) {
749
749
  var n = e.as, a = n === void 0 ? "div" : n, r = Zr(re({}, we(e, ri), { ref: t })), i = r.data, o = i.activeDescendant, s = i.triggerId, E = r.props;
750
750
  return V(a, re({ "aria-activedescendant": o, "aria-labelledby": s || void 0, role: "menu" }, E, { "data-reach-menu-items": "" }));
751
- }), _i = oe(function(e, t) {
751
+ }), _i = ie(function(e, t) {
752
752
  var n = e.as, a = n === void 0 ? "div" : n, r = function(_) {
753
- var S = _.onBlur, u = _.portal, T = u === void 0 || u, A = _.position, I = _.ref, D = lt(_, Kr), R = At(), h = R.triggerRef, L = R.triggerClickedRef, m = R.dispatch, p = R.dropdownRef, v = R.popoverRef, k = R.state.isExpanded, U = Je(v, I);
754
- return f(function() {
755
- if (k) {
756
- var C = Ve(v.current);
757
- return C.addEventListener("mousedown", P), function() {
758
- C.removeEventListener("mousedown", P);
753
+ var S = _.onBlur, u = _.portal, T = u === void 0 || u, A = _.position, I = _.ref, h = lt(_, Kr), L = At(), p = L.triggerRef, D = L.triggerClickedRef, R = L.dispatch, m = L.dropdownRef, f = L.popoverRef, M = L.state.isExpanded, Y = Je(f, I);
754
+ return v(function() {
755
+ if (M) {
756
+ var U = Ve(f.current);
757
+ return U.addEventListener("mousedown", g), function() {
758
+ U.removeEventListener("mousedown", g);
759
759
  };
760
760
  }
761
- function P(w) {
762
- var X, z;
763
- L.current ? L.current = !1 : (X = v.current, z = w.target, X && X.contains(z) || m({ type: Xe }));
761
+ function g(b) {
762
+ var W, X;
763
+ D.current ? D.current = !1 : (W = f.current, X = b.target, W && W.contains(X) || R({ type: Xe }));
764
764
  }
765
- }, [L, h, m, p, v, k]), { data: { portal: T, position: A, targetRef: h, isExpanded: k }, props: Z({ ref: U, hidden: !k, onBlur: ne(S, function(C) {
766
- C.currentTarget.contains(C.relatedTarget) || m({ type: Xe });
767
- }) }, D) };
765
+ }, [D, p, R, m, f, M]), { data: { portal: T, position: A, targetRef: p, isExpanded: M }, props: Q({ ref: Y, hidden: !M, onBlur: ne(S, function(U) {
766
+ U.currentTarget.contains(U.relatedTarget) || R({ type: Xe });
767
+ }) }, h) };
768
768
  }(re({}, we(e, ii), { ref: t })), i = r.data, o = i.portal, s = i.targetRef, E = i.position, c = r.props, l = { "data-reach-menu-popover": "" };
769
769
  return o ? V(wr, re({}, c, l, { as: a, targetRef: s, position: E })) : V(a, re({}, c, l));
770
770
  });
771
771
  const Ai = Symbol("no_render");
772
772
  function ae(e) {
773
- const t = Le(!1), n = H({ _value: typeof e == "function" ? e() : e.peek(), get value() {
773
+ const t = Le(!1), n = y({ _value: typeof e == "function" ? e() : e.peek(), get value() {
774
774
  return t.set(!0), n.current._value;
775
775
  }, set value(a) {
776
776
  n.current._value = a;
@@ -782,8 +782,8 @@ function ae(e) {
782
782
  }), n.current;
783
783
  }
784
784
  function Be() {
785
- const e = We(), t = j(), n = ye(), a = se(), r = ae(t.app$.appMetadata), i = ae(t.currentUser$), o = ae(t.state$.currentConversation), s = ae(t.t$), E = ae(t.device$), c = ae(t.themeCustom$), l = ae(() => t.state$.typing.child(t.state$.extCurrentConversationId.get()).get()), _ = ae(() => t.state$.participants.child(t.state$.extCurrentConversationId.get()).get());
786
- return G(() => ({ session: e, store: t, chatbox: n, theme: a, get app() {
785
+ const e = We(), t = j(), n = He(), a = se(), r = ae(t.app$.appMetadata), i = ae(t.currentUser$), o = ae(t.state$.currentConversation), s = ae(t.t$), E = ae(t.device$), c = ae(t.themeCustom$), l = ae(() => t.state$.typing.child(t.state$.extCurrentConversationId.get()).get()), _ = ae(() => t.state$.participants.child(t.state$.extCurrentConversationId.get()).get());
786
+ return z(() => ({ session: e, store: t, chatbox: n, theme: a, get app() {
787
787
  return r.value;
788
788
  }, get currentUser() {
789
789
  return i.value;
@@ -802,8 +802,8 @@ function Be() {
802
802
  } }), [r, n, o, i, E, t, s, a, c, l, _, e]);
803
803
  }
804
804
  function ca() {
805
- const e = We(), t = j(), n = se(), a = ye(), r = ae(t.app$.appMetadata), i = ae(t.currentUser$), o = ae(t.t$), s = ae(t.device$), E = ae(t.themeCustom$);
806
- return G(() => ({ session: e, store: t, theme: n, conversationList: a, get app() {
805
+ const e = We(), t = j(), n = se(), a = He(), r = ae(t.app$.appMetadata), i = ae(t.currentUser$), o = ae(t.t$), s = ae(t.device$), E = ae(t.themeCustom$);
806
+ return z(() => ({ session: e, store: t, theme: n, conversationList: a, get app() {
807
807
  return r.value;
808
808
  }, get currentUser() {
809
809
  return i.value;
@@ -844,7 +844,7 @@ class ut {
844
844
  return this._handlers.add(t), () => this._handlers.delete(t);
845
845
  }
846
846
  }
847
- const bt = new ut(), Re = new ut(), O = { code: "en-US", name: "English (US)", translation: { YESTERDAY: "Yesterday", TODAY: "Today", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "just now", LOCATION: "Location", CANCEL: "Cancel", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Browser notifications", DESKTOP_NOTIFICATIONS_ERROR: "Can't enable browser notifications because your browser actively blocks them. Try looking in the settings or using a different browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notification`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "If you keep your browser tab open, you'll see this pop up when someone talks to you.", SEND_BUTTON_TEXT: "Send", ENTRYBOX_TEXT_LIMIT: "Only 10,000 characters are allowed.", ENTRYBOX_PLACEHOLDER: "Say something...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "This conversation is no longer active.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "You can read, but not send messages.", MESSAGELIST_LOADING_OLDER: "Loading older messages...", MESSAGELIST_SHOW_OLDER: "Show older messages", MESSAGELIST_NEW_MARKER: "New", MESSAGE_SENT_VIA_EMAIL: "This message was sent via email", YOU_MARKER: "you", UPLOAD_IN_PROGRESS: "Uploading...", UPLOAD_SEND_FILE: "Send file", UPLOAD_SHARE_LOCATION: "Share location", UPLOAD_ERROR: "Unfortunately, something went wrong uploading. The file might be unsupported or too large.", SHARE_LOCATION_ERROR: "Cannot share location: ", LOADING: "Loading...", HUB_EMPTY: "Your chat history will show up here", HUB_SHOW_EARLIER: "Show earlier chats", INBOX_NO_CHATS_TITLE: "No chats yet!", INBOX_NO_CHATS_BODY: "Once you've had one or more conversations, they will show up here.", ENABLE_TRANSLATION: "Translate this conversation to English", DISABLE_TRANSLATION: "Show original", SEARCH_PLACEHOLDER_TEXT: "Search...", SEARCH_SEARCHING: "Searching...", SEARCH_NO_RESULTS: "No results found", SEARCH_NO_MORE_RESULTS: "No more results", CHAT_NOT_FOUND: "Chat not found", DELETE_MESSAGE: "Delete message", DELETION_EXPLANATION: "If you delete this message, it will disappear for everybody.", EDIT_MESSAGE: "Edit message", SAVE: "Save", EDITED_INDICATOR: "edited", REPLY_TO_MESSAGE: "Reply", REPLY_TO_ARIA_LABEL: (e, t) => `Replying to ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Exit reply mode", ADD_REACTION: "Add reaction", AUTH_EXPIRED_OVERLAY_TITLE: "Your chat session has expired", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Refresh the page to continue", VOICE_MESSAGE: "Voice message", LEAVE_CONVERSATION: "Leave conversation", MARK_CONVERSATION_AS_UNREAD: "Mark as unread", STATUS_INDICATOR_ONLINE: "Active", STATUS_INDICATOR_OFFLINE: "Away", CONTACT_INFORMATION_HIDDEN: "hidden information" } }, ui = { code: "ar", name: "Arabic", translation: { YESTERDAY: "الأمس", TODAY: "اليوم", DAYS: "يوم", HOURS: "ساعة", MINUTES: "دقيقة", JUST_NOW: "فقط الآن", LOCATION: "الموقع", CANCEL: "إلغاء", INBOX: "علبة الوارد", DESKTOP_NOTIFICATIONS: "إشعارات المتصفح", DESKTOP_NOTIFICATIONS_ERROR: "لا يمكن تمكين إشعارات المتصفح لأن متصفحك يمنعها بشكل نشط. جرّب البحث في الإعدادات أو استخدام متصفح آخر.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `إعلام ${e} التجريبي`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "إذا أبقيت علامة تبويب المتصفح مفتوحة ، فسترى هذا ينبثق عندما يتحدث شخص معك.", SEND_BUTTON_TEXT: "إرسال", ENTRYBOX_TEXT_LIMIT: "يُسمح فقط بـ 10.000 حرف.", ENTRYBOX_PLACEHOLDER: "قل شيئًا ...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "هذه المحادثة لم تعد نشطة.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "يمكنك القراءة ، لكن لا يمكنك إرسال الرسائل.", MESSAGELIST_LOADING_OLDER: "جارٍ تحميل الرسائل القديمة ...", MESSAGELIST_SHOW_OLDER: "عرض الرسائل الأقدم", MESSAGELIST_NEW_MARKER: "جديد", MESSAGE_SENT_VIA_EMAIL: "تم إرسال هذه الرسالة عبر البريد الإلكتروني", YOU_MARKER: "أنت", UPLOAD_IN_PROGRESS: "جارٍ التحميل ...", UPLOAD_SEND_FILE: "إرسال ملف", UPLOAD_SHARE_LOCATION: "مشاركة الموقع", UPLOAD_ERROR: "حدث خطأ ما في تحميل شيء. ربما يكون الملف غير متوافق أو كبير جدًا.", SHARE_LOCATION_ERROR: "لا يمكن مشاركة الموقع:", LOADING: "جارٍ التحميل ...", HUB_EMPTY: "سوف يظهر سجل الدردشات هنا", HUB_SHOW_EARLIER: "إظهار الدردشات السابقة", INBOX_NO_CHATS_TITLE: "لا توجد دردشات بعد!", INBOX_NO_CHATS_BODY: "بمجرد أن يكون لديك واحد أو أكثر من المحادثات ، سوف تظهر هنا.", ENABLE_TRANSLATION: "ترجم هذه المحادثة إلى العربية", DISABLE_TRANSLATION: "إظهار الأصلي", SEARCH_PLACEHOLDER_TEXT: "...بحث", SEARCH_SEARCHING: "...يتم الآن البحث", SEARCH_NO_RESULTS: "لم يتم العثور على نتائج", SEARCH_NO_MORE_RESULTS: "لا يوجد المزيد من النتائج", CHAT_NOT_FOUND: "لم يتم العثور على الدردشة", DELETE_MESSAGE: "احذف الرسالة", DELETION_EXPLANATION: "إذا قمت بحذف هذه الرسالة، فهي ستختفي للجميع.", EDIT_MESSAGE: "تعديل الرسالة", SAVE: "حفظ", EDITED_INDICATOR: "معدّلة", REPLY_TO_MESSAGE: "رد", ADD_REACTION: "أضف تفاعلاً", AUTH_EXPIRED_OVERLAY_TITLE: "انتهت جلسة الدردشة المخصصة لك", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "يُرجى إعادة تحميل الصفحة للمتابعة", VOICE_MESSAGE: "رسالة صوتية", CONTACT_INFORMATION_HIDDEN: "المعلومات المخفية", LEAVE_CONVERSATION: "الخروج من المحادثة", MARK_CONVERSATION_AS_UNREAD: "وضع علامة غير مقروءة", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Oi = { code: "bg-BG", name: "Bulgarian", translation: { YESTERDAY: "Вчера", TODAY: "Днес", DAYS: "Ден", HOURS: "Час", MINUTES: "m", JUST_NOW: "Току-що", LOCATION: "местоположението", CANCEL: "Откажи", INBOX: "Кутия", DESKTOP_NOTIFICATIONS: "Известия на браузъра", DESKTOP_NOTIFICATIONS_ERROR: "Не можете да активирате известията на браузъра, защото браузърът ви ги блокира активно. Опитайте да погледнете в настройките или да използвате друг браузър.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} демо известие`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ако държите раздела на браузъра си отворен, ще видите този изскачащ прозорец, когато някой говори с вас.", SEND_BUTTON_TEXT: "Изпрати", ENTRYBOX_TEXT_LIMIT: "Разрешени са само до 10.000 знака.", ENTRYBOX_PLACEHOLDER: "Кажете нещо...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Този ​​разговор вече не е активен.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Можете да четете, но не и да изпращате съобщения.", MESSAGELIST_LOADING_OLDER: "Зареждане на по-стари съобщения...", MESSAGELIST_SHOW_OLDER: "Показване на по-стари съобщения", MESSAGELIST_NEW_MARKER: "Нови", MESSAGE_SENT_VIA_EMAIL: "Това съобщение беше изпратено по имейл", YOU_MARKER: "Вие", UPLOAD_IN_PROGRESS: "Качване...", UPLOAD_SEND_FILE: "Изпращане на файл", UPLOAD_SHARE_LOCATION: "Споделяне на местоположението", UPLOAD_ERROR: "За съжаление нещо се обърка при качването. Файлът може да не се поддържа или е твърде голям.", SHARE_LOCATION_ERROR: "Не може да се сподели местоположението: ", LOADING: "Зареждане...", HUB_EMPTY: "Историята на вашите разговори ще се покаже тук", HUB_SHOW_EARLIER: "Показване на по-ранни чатове", INBOX_NO_CHATS_TITLE: "Все още нямате разговори!", INBOX_NO_CHATS_BODY: "След като проведете един или повече разговори, те ще се покажат тук.", ENABLE_TRANSLATION: "Преведете този разговор на български", DISABLE_TRANSLATION: "Показване на оригинал", SEARCH_PLACEHOLDER_TEXT: "Търсене...", SEARCH_SEARCHING: "Търсене...", SEARCH_NO_RESULTS: "Няма намерени резултати", SEARCH_NO_MORE_RESULTS: "Няма повече резултати", CHAT_NOT_FOUND: "Чатът не е намерен", DELETE_MESSAGE: "Изтриване на съобщение", DELETION_EXPLANATION: "Ако изтриете това съобщение, то ще изчезне за всички.", EDIT_MESSAGE: "Редактиране на съобщението", SAVE: "Запиши", EDITED_INDICATOR: "редактирано", REPLY_TO_MESSAGE: "Отговори", ADD_REACTION: "Добави реакция", AUTH_EXPIRED_OVERLAY_TITLE: "Вашата чат сесия е изтекла", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Обновете страницата, за да продължите", VOICE_MESSAGE: "Гласово съобщение", CONTACT_INFORMATION_HIDDEN: "Скрита информация", LEAVE_CONVERSATION: "Напускане на разговора", MARK_CONVERSATION_AS_UNREAD: "Маркирай като непрочетено", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ti = { code: "bs-BA", name: "Bosnian", translation: { YESTERDAY: "Jučer", TODAY: "Danas", DAYS: "d", HOURS: "s", MINUTES: "m", JUST_NOW: "Upravo sad", LOCATION: "Lokacija", CANCEL: "Otkaži", INBOX: "Pretinac", DESKTOP_NOTIFICATIONS: "Obavijesti preglednika", DESKTOP_NOTIFICATIONS_ERROR: "Notifikacije preglednika se ne mogu omogućiti jer ih vaš preglednik aktivno blokira. Pokušajte pregledati postavke ili koristiti drugi preglednik.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikacija`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ako karticu preglednika ostavite otvorenu, pojavit će se ovaj pop-up kada netko razgovara s vama.", SEND_BUTTON_TEXT: "Pošalji", ENTRYBOX_TEXT_LIMIT: "Dozvoljeno je samo 10.000 znakova.", ENTRYBOX_PLACEHOLDER: "Reci nešto...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ovaj razgovor više nije aktivan.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Možeš čitati, ali ne i slati poruke.", MESSAGELIST_LOADING_OLDER: "Učitavam starije poruke...", MESSAGELIST_SHOW_OLDER: "Prikaži starije poruke", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Ova poruka je poslana e-poštom", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Učitavam...", UPLOAD_SEND_FILE: "Pošalji datoteku", UPLOAD_SHARE_LOCATION: "Podijeli lokaciju", UPLOAD_ERROR: "Nažalost, nešto je pošlo krivo. Datoteka možda nije podržana ili je prevelika.", SHARE_LOCATION_ERROR: "Nije moguće podijeliti lokaciju: ", LOADING: "Učitavam...", HUB_EMPTY: "Ovdje će se prikazati vaša povijest razgovora", HUB_SHOW_EARLIER: "Prikaži ranije razgovore", INBOX_NO_CHATS_TITLE: "Nema razgovora!", INBOX_NO_CHATS_BODY: "Nakon što vodite jedan ili više razgovora, oni će se pojaviti ovdje.", ENABLE_TRANSLATION: "Prevedi ovaj razgovor na bosanski jezik", DISABLE_TRANSLATION: "Prikaži original", SEARCH_PLACEHOLDER_TEXT: "Pretraži...", SEARCH_SEARCHING: "Pretraživanje...", SEARCH_NO_RESULTS: "Nema rezultata", SEARCH_NO_MORE_RESULTS: "Nema više rezultata", CHAT_NOT_FOUND: "Ćaskanje nije pronađeno", DELETE_MESSAGE: "Obriši poruku", DELETION_EXPLANATION: "Ako izbrišete ovu poruku, ona će nestati za sve.", EDIT_MESSAGE: "Uredi poruku", SAVE: "Sačuvati", EDITED_INDICATOR: "uređeno", REPLY_TO_MESSAGE: "Odgovorite", ADD_REACTION: "Dodajte reakciju", AUTH_EXPIRED_OVERLAY_TITLE: "Vaša chat sesija je istekla", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Osvježite stranicu da nastavite", VOICE_MESSAGE: "Glasovna poruka", CONTACT_INFORMATION_HIDDEN: "Skrivene informacije", LEAVE_CONVERSATION: "Napusti razgovor", MARK_CONVERSATION_AS_UNREAD: "Označi kao nepročitano", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, di = { code: "ca-ES", name: "Catalan (ES)", translation: { YESTERDAY: "Ahir", TODAY: "Avui", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "ara mateix", LOCATION: "Ubicació", CANCEL: "Cancel·lar", INBOX: "Safata d'entrada", DESKTOP_NOTIFICATIONS: "Notificacions d'escriptori", DESKTOP_NOTIFICATIONS_ERROR: "No es poden habilitar les notificacions del navegador perquè el teu navegador les bloqueja activament. Prova de buscar a la configuració o utilitza un altre navegador.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Notificació de demostració de ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Si mantens la pestanya del navegador oberta, veuràs aquesta notificació quan algú et parli.", SEND_BUTTON_TEXT: "Enviar", ENTRYBOX_TEXT_LIMIT: "Només es permeten 10.000 caràcters.", ENTRYBOX_PLACEHOLDER: "Digues alguna cosa...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Aquesta conversa ja no està activa.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Pots llegir, però no enviar missatges.", MESSAGELIST_LOADING_OLDER: "Carregant missatges antics...", MESSAGELIST_SHOW_OLDER: "Mostrar missatges més antics", MESSAGELIST_NEW_MARKER: "Nou", MESSAGE_SENT_VIA_EMAIL: "Aquest missatge s'ha enviat per correu electrònic", YOU_MARKER: "tu", UPLOAD_IN_PROGRESS: "S'està pujant...", UPLOAD_SEND_FILE: "Enviar arxiu", UPLOAD_SHARE_LOCATION: "Compartir ubicació", UPLOAD_ERROR: "Desafortunadament, alguna cosa ha anat malament en pujar. L'arxiu pot ser no compatible o massa gran.", SHARE_LOCATION_ERROR: "No es pot compartir la ubicació: ", LOADING: "Carregant...", HUB_EMPTY: "El teu historial de xat apareixerà aquí", HUB_SHOW_EARLIER: "Mostra xats anteriors", INBOX_NO_CHATS_TITLE: "Encara no hi ha xats!", INBOX_NO_CHATS_BODY: "Un cop hagis tingut una o més converses, apareixeran aquí.", ENABLE_TRANSLATION: "Traduir aquesta conversa al català", DISABLE_TRANSLATION: "Mostrar original", SEARCH_PLACEHOLDER_TEXT: "Cerca...", SEARCH_SEARCHING: "Buscant...", SEARCH_NO_RESULTS: "No s'han trobat resultats", SEARCH_NO_MORE_RESULTS: "No hi ha més resultats", CHAT_NOT_FOUND: "Xat no trobat", DELETE_MESSAGE: "Esborrar missatge", DELETION_EXPLANATION: "Si esborres aquest missatge, desapareixerà per a tothom.", EDIT_MESSAGE: "Editar missatge", SAVE: "Desar", EDITED_INDICATOR: "editat", REPLY_TO_MESSAGE: "Respondre", REPLY_TO_ARIA_LABEL: (e, t) => `Responent a ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Sortir del mode de resposta", ADD_REACTION: "Afegir reacció", VOICE_MESSAGE: "Missatge de veu", LEAVE_CONVERSATION: "Abandonar la conversa", MARK_CONVERSATION_AS_UNREAD: "marcar com no llegit", STATUS_INDICATOR_ONLINE: "Actiu", STATUS_INDICATOR_OFFLINE: "Absent", CONTACT_INFORMATION_HIDDEN: "informació oculta", AUTH_EXPIRED_OVERLAY_TITLE: "La teva sessió de xat ha caducat", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Actualitza la pàgina per continuar" } }, Si = { code: "cs-CZ", name: "Czech", translation: { YESTERDAY: "Včera", TODAY: "Dnes", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "právě teď", LOCATION: "Lokace", CANCEL: "Zrušit", INBOX: "Doručené", DESKTOP_NOTIFICATIONS: "Oznámení v prohlížeči", DESKTOP_NOTIFICATIONS_ERROR: "Nelze povolit notifikace prohlížeče, protože váš prohlížeč je aktivně blokuje. Zkuste se podívat na nastavení nebo zkuste použít jiný prohlížeč.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikace`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Pokud necháte kartu prohlížeče otevřenou, uvidíte tento popup jakmile s vámi bude někdo mluvit.", SEND_BUTTON_TEXT: "Odeslat", ENTRYBOX_TEXT_LIMIT: "Je povoleno Maximálně 10.000 znaků.", ENTRYBOX_PLACEHOLDER: "Napište něco...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Tato konverzace již není aktivní.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Můžete číst, ale nemůžete posílat zprávy.", MESSAGELIST_LOADING_OLDER: "Nahrávám starší zprávy...", MESSAGELIST_SHOW_OLDER: "Zobrazit starší zprávy", MESSAGELIST_NEW_MARKER: "Nové", MESSAGE_SENT_VIA_EMAIL: "Tato zpráva byla odeslána přes mail.", YOU_MARKER: "vy", UPLOAD_IN_PROGRESS: "Nahrávám...", UPLOAD_SEND_FILE: "Poslat soubor", UPLOAD_SHARE_LOCATION: "Sdílet pozici", UPLOAD_ERROR: "Nepodařilo se nahrát soubor. Ten je buď nepodporován a/nebo příliš velký.", SHARE_LOCATION_ERROR: "Není možné sdílet pozici: ", LOADING: "Nahrávám...", HUB_EMPTY: "Vaše historie se zde zobrazí", HUB_SHOW_EARLIER: "Zobrazit dřívější konverzace", INBOX_NO_CHATS_TITLE: "Zatím zde nejsou žádné konverzace!", INBOX_NO_CHATS_BODY: "Jakmile budete mít jednu nebo více konverzací, objeví se zde.", ENABLE_TRANSLATION: "Přeložit tuto konverzaci do češtiny", DISABLE_TRANSLATION: "Zobrazit původní", SEARCH_PLACEHOLDER_TEXT: "Hledat...", SEARCH_SEARCHING: "Hledání...", SEARCH_NO_RESULTS: "Nenašly se žádné výsledky", SEARCH_NO_MORE_RESULTS: "Žádné další výsledky", CHAT_NOT_FOUND: "Chat nenalezen", DELETE_MESSAGE: "Smazat zprávu", DELETION_EXPLANATION: "Pokud tuto zprávu smažete, zmizí pro všechny.", EDIT_MESSAGE: "Upravit zprávu", SAVE: "Uložit", EDITED_INDICATOR: "upraveno", REPLY_TO_MESSAGE: "Odpovědět", ADD_REACTION: "Reagovat", AUTH_EXPIRED_OVERLAY_TITLE: "Váš chat byl kvůli nečinnosti odpojen", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Pro pokračování obnovte stránku", VOICE_MESSAGE: "Hlasová zpráva", CONTACT_INFORMATION_HIDDEN: "Skrytá informace", LEAVE_CONVERSATION: "Opustit konverzaci", MARK_CONVERSATION_AS_UNREAD: "Označit jako nepřečtené", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ii = { code: "da-DK", name: "Danish", translation: { YESTERDAY: "I går", TODAY: "I dag", DAYS: "d", HOURS: "t", MINUTES: "m", JUST_NOW: "lige nu", LOCATION: "Placering", CANCEL: "Annuller", INBOX: "Indbakke", DESKTOP_NOTIFICATIONS: "Browsermeddelelser", DESKTOP_NOTIFICATIONS_ERROR: "Kan ikke aktivere Browsermeddelelser, fordi din browser aktivt blokerer dem. Prøv at kigge i indstillingerne eller benyt en anden browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demomeddelelse`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Hvis du holder dit browser-faneblad åben, vil du se det her komme op, når nogen taler til dig.", SEND_BUTTON_TEXT: "Send", ENTRYBOX_TEXT_LIMIT: "Kun 10.000 tegn er tilladt.", ENTRYBOX_PLACEHOLDER: "Sig noget...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Denne samtale er ikke længere aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Du kan læse, men ikke sende beskeder.", MESSAGELIST_LOADING_OLDER: "Indlæser ældre beskeder...", MESSAGELIST_SHOW_OLDER: "Vis ældre beskeder", MESSAGELIST_NEW_MARKER: "Ny", MESSAGE_SENT_VIA_EMAIL: "Denne besked blev sendt via e-mail", YOU_MARKER: "dig", UPLOAD_IN_PROGRESS: "Overfører...", UPLOAD_SEND_FILE: "Send fil", UPLOAD_SHARE_LOCATION: "Del placering", UPLOAD_ERROR: "Der er sket noget forkert ved upload. Filen kan ikke understøttes eller filen er for stor.", SHARE_LOCATION_ERROR: "Kan ikke dele placering: ", LOADING: "Indlæser...", HUB_EMPTY: "Dine samtaler vises her", HUB_SHOW_EARLIER: "Vis tidligere chats", INBOX_NO_CHATS_TITLE: "Ingen chats endnu!", INBOX_NO_CHATS_BODY: "Når du har haft en eller flere samtaler, vises de her.", ENABLE_TRANSLATION: "Oversæt denne konversation til dansk", DISABLE_TRANSLATION: "Vis den oprindelige", SEARCH_PLACEHOLDER_TEXT: "Søg...", SEARCH_SEARCHING: "Søger...", SEARCH_NO_RESULTS: "Ingen resultater fundet", SEARCH_NO_MORE_RESULTS: "Ikke flere resultater", CHAT_NOT_FOUND: "Chat ikke fundet", DELETE_MESSAGE: "Slet besked", DELETION_EXPLANATION: "Hvis du sletter denne besked, vil ingen kunne se den.", EDIT_MESSAGE: "Rediger besked", SAVE: "Gem", EDITED_INDICATOR: "redigeret", REPLY_TO_MESSAGE: "Svar", ADD_REACTION: "Tilføj reaktion", AUTH_EXPIRED_OVERLAY_TITLE: "Din chatsession er udløbet", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Opdater siden for at fortsætte", VOICE_MESSAGE: "Talebesked", CONTACT_INFORMATION_HIDDEN: "Skjulte oplysninger", LEAVE_CONVERSATION: "Forlad samtale", MARK_CONVERSATION_AS_UNREAD: "Marker som ulæst", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ni = { code: "de-DE", name: "German", translation: { YESTERDAY: "Gestern", TODAY: "Heute", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "gerade jetzt", LOCATION: "Standort", CANCEL: "Abbrechen", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Browser-Benachrichtigungen", DESKTOP_NOTIFICATIONS_ERROR: "Browser-Benachrichtigungen können nicht aktiviert werden, da Ihr Browser sie aktiv blockiert. Versuchen Sie, in den Einstellungen nachzuschlagen oder einen anderen Browser zu verwenden.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} Demo-Benachrichtigung`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Wenn Sie Ihre Browser-Registerkarte geöffnet lassen, wird dies angezeigt, wenn jemand mit Ihnen spricht.", SEND_BUTTON_TEXT: "Senden", ENTRYBOX_TEXT_LIMIT: "Nur 10.000 Zeichen sind erlaubt.", ENTRYBOX_PLACEHOLDER: "Sag etwas...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Diese Konversation ist nicht mehr aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Sie können Nachrichten lesen, aber nicht senden.", MESSAGELIST_LOADING_OLDER: "Ältere Nachrichten werden geladen...", MESSAGELIST_SHOW_OLDER: "Zeige ältere Nachrichten", MESSAGELIST_NEW_MARKER: "Neu", MESSAGE_SENT_VIA_EMAIL: "Diese Nachricht wurde per E-Mail gesendet", YOU_MARKER: "du", UPLOAD_IN_PROGRESS: "Hochladen...", UPLOAD_SEND_FILE: "Datei senden", UPLOAD_SHARE_LOCATION: "Standort teilen", UPLOAD_ERROR: "Beim Hochladen ist ein Fehler aufgetreten. Die Datei ist möglicherweise nicht unterstützt oder zu groß.", SHARE_LOCATION_ERROR: "Standort kann nicht freigegeben werden: ", LOADING: "Laden...", HUB_EMPTY: "Ihr Chat-Verlauf wird hier angezeigt", HUB_SHOW_EARLIER: "Zeige frühere Chats", INBOX_NO_CHATS_TITLE: "Noch keine Chats!", INBOX_NO_CHATS_BODY: "Sobald Sie eine oder mehrere Unterhaltungen geführt haben, werden sie hier angezeigt.", ENABLE_TRANSLATION: "Dieses Gespräch auf Deutsch übersetzen", DISABLE_TRANSLATION: "Originaltext anzeigen", SEARCH_PLACEHOLDER_TEXT: "Suche...", SEARCH_SEARCHING: "Suchen...", SEARCH_NO_RESULTS: "Keine Suchergebnisse gefunden", SEARCH_NO_MORE_RESULTS: "Keine weiteren Suchergebnisse", CHAT_NOT_FOUND: "Chat nicht gefunden", DELETE_MESSAGE: "Nachricht löschen", DELETION_EXPLANATION: "Wenn Sie diese Nachricht löschen, wird sie für alle verschwinden.", EDIT_MESSAGE: "Nachricht bearbeiten", SAVE: "Speichern", EDITED_INDICATOR: "bearbeitet", REPLY_TO_MESSAGE: "Antworten", ADD_REACTION: "Reaktion hinzufügen", AUTH_EXPIRED_OVERLAY_TITLE: "Ihre Chatsitzung ist abgelaufen", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Laden Sie zum Fortfahren die Seite neu", VOICE_MESSAGE: "Sprachnachricht", CONTACT_INFORMATION_HIDDEN: "Geschützte Angaben", LEAVE_CONVERSATION: "Unterhaltung verlassen", MARK_CONVERSATION_AS_UNREAD: "als ungelesen markieren", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ri = { code: "el-GR", name: "Greek (Greece)", translation: { YESTERDAY: "Χθές", TODAY: "Σήμερα", DAYS: "Ημέρες", HOURS: "'Ωρες", MINUTES: "Λεπτά", JUST_NOW: "Μόλις τώρα", LOCATION: "Τοποθεσία", CANCEL: "Ακύρωση", INBOX: "Εισερχόμενα", DESKTOP_NOTIFICATIONS: "Ειδοποιήσεις περιηγητή", DESKTOP_NOTIFICATIONS_ERROR: "Δεν είναι δυνατή η ενεργοποίηση των ειδοποιήσεων του προγράμματος περιήγησης, επειδή το πρόγραμμα περιήγησης τις αποκλείει ενεργά. Δοκιμάστε να τσεκάρετε τις ρυθμίσεις ή να χρησιμοποιήσετε διαφορετικό πρόγραμμα περιήγησης.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} Δοκιμαστική επίδειξη`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Αν διατηρήσετε ανοιχτή τη σελίδα του προγράμματος περιήγησης, θα δείτε αυτό το pop up (παράθυρο) όταν κάποιος σας μιλάει.", SEND_BUTTON_TEXT: "Αποστολή", ENTRYBOX_TEXT_LIMIT: "Επιτρέπονται μόνο 10.000 χαρακτήρες.", ENTRYBOX_PLACEHOLDER: "Πείτε κάτι...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Αυτή η συζήτηση δεν είναι πλέον ενεργή.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Μπορείτε να διαβάσετε αλλά δεν μπορείτε να στείλετε μηνύματα.", MESSAGELIST_LOADING_OLDER: "Φόρτωση παλαιοτέρων μηνυμάτων...", MESSAGELIST_SHOW_OLDER: "Εμφάνιση παλαιότερων μηνυμάτων", MESSAGELIST_NEW_MARKER: "Νέο", MESSAGE_SENT_VIA_EMAIL: "Αυτό το μήνυμα εστάλη μέσω ηλεκτρονικού ταχυδρομείου", YOU_MARKER: "Εσείς", UPLOAD_IN_PROGRESS: "Ανέβασμα...", UPLOAD_SEND_FILE: "Αποστολή αρχείου", UPLOAD_SHARE_LOCATION: "Κοινή χρήση τοποθεσίας", UPLOAD_ERROR: "Κάτι πήγε στραβά κατά τη φόρτωση. Το αρχείο ενδέχεται να μην υποστηρίζεται ή να είναι υπερβολικά μεγάλο.", SHARE_LOCATION_ERROR: "Δεν είναι δυνατή η χρήση κοινής τοποθεσίας: ", LOADING: "Φόρτωση...", HUB_EMPTY: "Το ιστορικό των συνομιλιών σας θα εμφανιστεί εδώ", HUB_SHOW_EARLIER: "Εμφάνιση προηγούμενων συνομιλιών", INBOX_NO_CHATS_TITLE: "Δεν υπάρχουν ακόμα συζητήσεις!", INBOX_NO_CHATS_BODY: "Μόλις έχετε μία ή περισσότερες συνομιλίες, θα εμφανιστούν εδώ.", ENABLE_TRANSLATION: "Μετάφραση αυτής της συνομιλίας στα ελληνικά", DISABLE_TRANSLATION: "Προβολή πρωτοτύπου", SEARCH_PLACEHOLDER_TEXT: "Αναζήτηση...", SEARCH_SEARCHING: "Αναζήτηση...", SEARCH_NO_RESULTS: "Δεν βρέθηκαν αποτελέσματα", SEARCH_NO_MORE_RESULTS: "Δεν υπάρχουν περισσότερα αποτελέσματα", CHAT_NOT_FOUND: "Η συνομιλία δεν βρέθηκε", DELETE_MESSAGE: "Διαγραφή μηνύματος", DELETION_EXPLANATION: "Εάν διαγράψετε αυτό το μήνυμα, θα εξαφανιστεί για όλους.", EDIT_MESSAGE: "Επεξεργασία μηνύματος", SAVE: "Αποθήκευση", EDITED_INDICATOR: "επεξεργασμένο", REPLY_TO_MESSAGE: "Απάντηση", ADD_REACTION: "Προσθήκη αντίδρασης", AUTH_EXPIRED_OVERLAY_TITLE: "Η συνεδρία της συνομιλίας σας έχει λήξει", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Ανανεώστε τη σελίδα για να συνεχίσετε", VOICE_MESSAGE: "Ηχητικό μήνυμα", CONTACT_INFORMATION_HIDDEN: "Κρυμμένες πληροφορίες", LEAVE_CONVERSATION: "Αποσυρθείτε από τη συζήτηση", MARK_CONVERSATION_AS_UNREAD: "Επισήμανση ως μη αναγνωσμένα", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Li = { code: "es-ES", name: "Spanish", translation: { YESTERDAY: "Ayer", TODAY: "Hoy", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "justo ahora", LOCATION: "Ubicación", CANCEL: "Cancelar", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Notificaciones del navigator", DESKTOP_NOTIFICATIONS_ERROR: "No se logró habilitar las notificaciones del navigador, comprueba que tu navegador no las esté bloqueando o intenta con otro navegador.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} notificación de prueba`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Si dejas esta pestaña abierta, verás este pop up cuando alguien te hable.", SEND_BUTTON_TEXT: "Enviar", ENTRYBOX_TEXT_LIMIT: "Sólo 10.000 caracteres permitidos.", ENTRYBOX_PLACEHOLDER: "Escribe algo...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Esta conversación ya no está activa.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Puedes leer pero no enviar mensajes.", MESSAGELIST_LOADING_OLDER: "Cargando mensajes pasados...", MESSAGELIST_SHOW_OLDER: "Ver mensajes pasados", MESSAGELIST_NEW_MARKER: "Nuevo", MESSAGE_SENT_VIA_EMAIL: "Este mensaje ha sido enviado vía email", YOU_MARKER: "tú", UPLOAD_IN_PROGRESS: "Subir...", UPLOAD_SEND_FILE: "Enviar archivo", UPLOAD_SHARE_LOCATION: "Compartir ubicación", UPLOAD_ERROR: "Ocurrió un problema subiendo el archivo. Puede que el archivo esté en un formato no soportado o que sea demasiado grande.", SHARE_LOCATION_ERROR: "No se logró compartir la ubicación: ", LOADING: "Cargando...", HUB_EMPTY: "Tu historial de conversaciones se mostrará aquí", HUB_SHOW_EARLIER: "Ver conversaciones pasadas", INBOX_NO_CHATS_TITLE: "¡Aún sin conversaciones!", INBOX_NO_CHATS_BODY: "Una vez que tengas una o más conversaciones, se mostrarán aquí.", ENABLE_TRANSLATION: "Traducir esta conversación al español", DISABLE_TRANSLATION: "Mostrar la conversación original", SEARCH_PLACEHOLDER_TEXT: "Buscar...", SEARCH_SEARCHING: "Buscando...", SEARCH_NO_RESULTS: "No se encontraron resultados", SEARCH_NO_MORE_RESULTS: "No hay más resultados", CHAT_NOT_FOUND: "Chat no encontrado", DELETE_MESSAGE: "Eliminar mensaje", DELETION_EXPLANATION: "Este mensaje desaparecerá para todos si lo borras.", EDIT_MESSAGE: "Editar mensaje", SAVE: "Guardar", EDITED_INDICATOR: "editado", REPLY_TO_MESSAGE: "Responder", ADD_REACTION: "Añadir reacción", AUTH_EXPIRED_OVERLAY_TITLE: "Su sesión de chat ha expirado", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Actualice la página para continuar", VOICE_MESSAGE: "Mensaje de voz", CONTACT_INFORMATION_HIDDEN: "Información oculta", LEAVE_CONVERSATION: "Abandonar conversación", MARK_CONVERSATION_AS_UNREAD: "Marcar como no leída", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, mi = { code: "et-EE", name: "Estonian", translation: { YESTERDAY: "Eile", TODAY: "Täna", DAYS: "p", HOURS: "t", MINUTES: "m", JUST_NOW: "Just nüüd", LOCATION: "Asukoht", CANCEL: "Katkesta", INBOX: "Postkast", DESKTOP_NOTIFICATIONS: "Veebibrauseri teated", DESKTOP_NOTIFICATIONS_ERROR: "Töölaua teatisi ei saa lubada, kuna Teie brauser blokeerib need aktiivselt. Proovige muuta seadeid või kasutada mõnda muud brauserit.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo teavitus`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Kui hoiate oma brauseri vahekaardi lahti ja näete seda hüpikakent, siis keegi soovib Teiega rääkida.", SEND_BUTTON_TEXT: "Saada", ENTRYBOX_TEXT_LIMIT: "Ainult kuni 10.000 tähemärki on lubatud.", ENTRYBOX_PLACEHOLDER: "Kirjuta midagi...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "See vestlus ei ole enam aktiivne.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Sa saad lugeda teateid, aga mitte kirjutada.", MESSAGELIST_LOADING_OLDER: "Laen vanemaid teateid...", MESSAGELIST_SHOW_OLDER: "Näita vanemaid teateid", MESSAGELIST_NEW_MARKER: "Uus", MESSAGE_SENT_VIA_EMAIL: "See teade on saadetud e-postiga", YOU_MARKER: "Sina", UPLOAD_IN_PROGRESS: "Laen...", UPLOAD_SEND_FILE: "Saada fail", UPLOAD_SHARE_LOCATION: "Jaga faili asukohta", UPLOAD_ERROR: "Nüüd läks midagi nihu, seoses faili ülesse laadimisega. Tundmatu fail või liiga suur.", SHARE_LOCATION_ERROR: "Ei suuda jagada faili asukohta: ", LOADING: "Laen...", HUB_EMPTY: "Siin on Sinu vestluste ajalugu", HUB_SHOW_EARLIER: "Näita vanemaid vestlusi", INBOX_NO_CHATS_TITLE: "Pole ühtegi vestlust!", INBOX_NO_CHATS_BODY: "Kui Sul tekib üks või rohkem vestlust, siis on need kuvatakse siin.", ENABLE_TRANSLATION: "Tõlgi see vestlus eesti keelde", DISABLE_TRANSLATION: "Näita algteksti", SEARCH_PLACEHOLDER_TEXT: "Otsi...", SEARCH_SEARCHING: "Otsin...", SEARCH_NO_RESULTS: "Otsingu tulemused puuduvad", SEARCH_NO_MORE_RESULTS: "Rohkem tulemusi ei ole ", CHAT_NOT_FOUND: "Vestlust ei leitud", DELETE_MESSAGE: "Kustuta sõnum", DELETION_EXPLANATION: "Kui kustutate selle sõnumi, kaob see kõigi jaoks.", EDIT_MESSAGE: "Redigeeri sõnumit", SAVE: "Salvesta", EDITED_INDICATOR: "muudetud", REPLY_TO_MESSAGE: "Vasta", ADD_REACTION: "Lisa reaktsioon", AUTH_EXPIRED_OVERLAY_TITLE: "Teie vestlussessioon on lõppenud", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Jätkamiseks värskendage lehte", VOICE_MESSAGE: "Häälsõnum", CONTACT_INFORMATION_HIDDEN: "Varjatud informatsioon", LEAVE_CONVERSATION: "Lahku vestlusest", MARK_CONVERSATION_AS_UNREAD: "Märgi mitteloetuks", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, pi = { code: "fa", name: "Persian (Farsi)", translation: { YESTERDAY: "دیروز", TODAY: "امروز", DAYS: "روز", HOURS: "ساعت", MINUTES: "دقیقه", JUST_NOW: "هم اکنون", LOCATION: "مکان", CANCEL: "لغو", INBOX: "صندوق", DESKTOP_NOTIFICATIONS: "اطلاعیه‌های مرورگر", DESKTOP_NOTIFICATIONS_ERROR: "خطا در فعال سازی اعلان های مرورگر، مرورگر شما آنها را مسدود می کند سعی کنید تنظیمات مرورگر را تغییر دهید یا از یک مرورگر دیگر استفاده کنید.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `نوتیفیکیشن دمو ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "اگر صفحه ی مرورگر را باز نگهدارید این را موقعه ای که کسی با شما صحبت کند خواهید دید", SEND_BUTTON_TEXT: "بفرست", ENTRYBOX_TEXT_LIMIT: "فقط ۱۰،۰۰۰ حروف مجاز می باشد.", ENTRYBOX_PLACEHOLDER: "...چیزی بنویسید", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: ".این مکالمه دیگر فعال نمی باشد", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "شما می توانید بخوانید اما نمی توانید پیام بفرستید", MESSAGELIST_LOADING_OLDER: "...در حال بارگذاری پیام های قدیمی تر", MESSAGELIST_SHOW_OLDER: "نشان دادن پیام های قدیمی", MESSAGELIST_NEW_MARKER: "جدید", MESSAGE_SENT_VIA_EMAIL: "پیام توسط ایمل ارسال شد", YOU_MARKER: "شما", UPLOAD_IN_PROGRESS: "...در حال بارگذاری", UPLOAD_SEND_FILE: "فرستادن پوشه", UPLOAD_SHARE_LOCATION: "اشتراک گذاری مکان", UPLOAD_ERROR: "متاسفانه بارگذاری با مشکل روبه رو شد. ممکن است فایل حجیم باشد یا ساپورت نشده باشد.", SHARE_LOCATION_ERROR: "خطا در اشتراک گذاری مکان: ", LOADING: "...بارگذاری", HUB_EMPTY: "تاریخچه گفتگو اینجا نمایان می شود", HUB_SHOW_EARLIER: "دیدن گفتگو های قبلی", INBOX_NO_CHATS_TITLE: "هنوز گفتگویی وجود ندارد", INBOX_NO_CHATS_BODY: "بعد از داشتن یک مکالمه یا بیشتر، آنها اینجا نمایان می شوند.", ENABLE_TRANSLATION: "این مکالمه را به فارسی ترجمه کن", DISABLE_TRANSLATION: "زبان اصلی را نشان بده", SEARCH_PLACEHOLDER_TEXT: "...جستجو", SEARCH_SEARCHING: "...در حال جستجو", SEARCH_NO_RESULTS: "نتیجه ای یافت نشد", SEARCH_NO_MORE_RESULTS: "نتیجه بیشتری وجود ندارد", CHAT_NOT_FOUND: "مکالمه پیدا نشد", DELETE_MESSAGE: "حذف پیام ", DELETION_EXPLANATION: "اگر این پیام را حذف کنید، برای همه ناپدید می شود.", EDIT_MESSAGE: "ویرایش پیام", SAVE: "ذخیره", EDITED_INDICATOR: "ویرایش‌شده", REPLY_TO_MESSAGE: "پاسخ دادن", ADD_REACTION: "واکنش را اضافه کنید", AUTH_EXPIRED_OVERLAY_TITLE: "جلسه چت شما منقضی شده است", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "برای ادامه صفحه را بازخوانی کنید", VOICE_MESSAGE: "پیام صوتی", CONTACT_INFORMATION_HIDDEN: "اطلاعات پنهان", LEAVE_CONVERSATION: "خروج از گفتگو", MARK_CONVERSATION_AS_UNREAD: "به عنوان خوانده نشده علامت گذاری کن", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, hi = { code: "fi-FI", name: "Finnish", translation: { YESTERDAY: "Eilen", TODAY: "Tänään", DAYS: "p", HOURS: "t", MINUTES: "m", JUST_NOW: "juuri nyt", LOCATION: "Sijainti", CANCEL: "Peruuta", INBOX: "Saapuneet", DESKTOP_NOTIFICATIONS: "Selaimen ilmoitukset", DESKTOP_NOTIFICATIONS_ERROR: "Työpöydän ilmoituksia ei voitu kytkeä päälle, koska selaimesi estää ne aktiivisesti. Koeta tutkia sen asetuksia tai vaihda selainta.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo ilmoitus`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Jos pidät tämän sivun auki, näet vastaavan ilmoituksen kun joku puhuu sinulle.", SEND_BUTTON_TEXT: "Lähetä", ENTRYBOX_TEXT_LIMIT: "Maksimissaan 10000 merkkiä.", ENTRYBOX_PLACEHOLDER: "Sano jotain...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Tämä keskustelu ei ole enää aktiivinen.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Voit lukea, mutta et lähettää viestejä.", MESSAGELIST_LOADING_OLDER: "Ladataan vanhoja viestejä..", MESSAGELIST_SHOW_OLDER: "Näytä vanhat viestit", MESSAGELIST_NEW_MARKER: "Uusi", MESSAGE_SENT_VIA_EMAIL: "Tämä viesti on lähetetty sähköpostin välityksellä", YOU_MARKER: "sinä", UPLOAD_IN_PROGRESS: "Ladataan...", UPLOAD_SEND_FILE: "Lähetä tiedosto", UPLOAD_SHARE_LOCATION: "Jaa sijainti", UPLOAD_ERROR: "Valitettavasti jokin meni vikaan. Tiedostotyyppiä ei ehkä tueta tai se saattaa olla liian suuri.", SHARE_LOCATION_ERROR: "Sijaintia ei pystytty jakamaan: ", LOADING: "Ladataan...", HUB_EMPTY: "Keskusteluhistoriasi näkyy tässä", HUB_SHOW_EARLIER: "Näytä aiemmat keskustelut", INBOX_NO_CHATS_TITLE: "Ei keskusteluja, vielä!", INBOX_NO_CHATS_BODY: "Kun olet käynyt yhden tai useamman keskustelun, ne näkyvät täällä.", ENABLE_TRANSLATION: "Käännä keskustelu kielelle suomi", DISABLE_TRANSLATION: "Näytä alkuperäinen", SEARCH_PLACEHOLDER_TEXT: "Etsi...", SEARCH_SEARCHING: "Etsiminen...", SEARCH_NO_RESULTS: "Tuloksia ei löytynyt", SEARCH_NO_MORE_RESULTS: "Ei enempää tuloksia", CHAT_NOT_FOUND: "Keskustelua ei löytynyt", DELETE_MESSAGE: "Poista viesti", DELETION_EXPLANATION: "Jos poistat tämän viestin, se häviää kaikilta.", EDIT_MESSAGE: "Muokkaa viestiä", SAVE: "Tallenna", EDITED_INDICATOR: "muokattu", REPLY_TO_MESSAGE: "Vastaa", ADD_REACTION: "Lisää reaktio", AUTH_EXPIRED_OVERLAY_TITLE: "Istuntosi on vanhentunut", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Päivitä sivu jatkaaksesi", VOICE_MESSAGE: "Ääniviesti", CONTACT_INFORMATION_HIDDEN: "Piilotetut tiedot", LEAVE_CONVERSATION: "Poistu keskustelusta", MARK_CONVERSATION_AS_UNREAD: "Merkitse lukemattomaksi", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Di = { code: "fr-FR", name: "French", translation: { YESTERDAY: "Hier", TODAY: "Aujourd'hui", DAYS: "j", HOURS: "h", MINUTES: "m", JUST_NOW: "maintenant", LOCATION: "Emplacement", CANCEL: "Annuler", INBOX: "Boîte de réception", DESKTOP_NOTIFICATIONS: "Notifications du navigateur", DESKTOP_NOTIFICATIONS_ERROR: "Impossible d'activer les notifications du navigateur car votre navigateur les bloque. Essayez de changer ses paramètres ou de changer de navigateur.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Notification de démonstration ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Si vous maintenez l'onglet ouvert dans votre navigateur vous verrez apparaître une alerte lorsque quelqu'un vous parlera.", SEND_BUTTON_TEXT: "Envoyer", ENTRYBOX_TEXT_LIMIT: "Seuls 10.000 caractères sont autorisés.", ENTRYBOX_PLACEHOLDER: "Ecrivez quelque chose...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Cette conversation n'est plus active.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Vous pouvez lire, mais pas envoyer de messages.", MESSAGELIST_LOADING_OLDER: "Chargement des anciens messages ...", MESSAGELIST_SHOW_OLDER: "Afficher les anciens messages", MESSAGELIST_NEW_MARKER: "Nouveau", MESSAGE_SENT_VIA_EMAIL: "Ce message a été envoyé par e-mail", YOU_MARKER: "vous", UPLOAD_IN_PROGRESS: "Envoi en cours...", UPLOAD_SEND_FILE: "Envoyer un fichier", UPLOAD_SHARE_LOCATION: "Partager mon emplacement", UPLOAD_ERROR: "Un problème est survenu lors de l'envoi: le fichier est peut-être non pris en charge ou trop volumineux.", SHARE_LOCATION_ERROR: "Impossible de partager votre emplacement: ", LOADING: "Chargement en cours...", HUB_EMPTY: "Votre historique de discussion apparaîtra ici", HUB_SHOW_EARLIER: "Afficher les conversations précédentes", INBOX_NO_CHATS_TITLE: "Aucune conversation pour l'instant!", INBOX_NO_CHATS_BODY: "Une fois que vous aurez eu une ou plusieurs conversations, elles apparaîtront ici.", ENABLE_TRANSLATION: "Traduire cette conversation en français", DISABLE_TRANSLATION: "Remontrer la conversation originale", SEARCH_PLACEHOLDER_TEXT: "Rechercher...", SEARCH_SEARCHING: "Recherche...", SEARCH_NO_RESULTS: "Aucun résultat trouvé", SEARCH_NO_MORE_RESULTS: "Il n’y a plus de résultats", CHAT_NOT_FOUND: "Conversation introuvable", DELETE_MESSAGE: "Supprimer le message", DELETION_EXPLANATION: "Si vous supprimez ce message, il disparaîtra pour tout le monde.", EDIT_MESSAGE: "Modifier le message", SAVE: "Enregistrer", EDITED_INDICATOR: "modifié", REPLY_TO_MESSAGE: "Répondre", ADD_REACTION: "Ajouter une réaction", AUTH_EXPIRED_OVERLAY_TITLE: "Votre session de chat a expiré", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Actualisez la page pour continuer", VOICE_MESSAGE: "Message vocal", CONTACT_INFORMATION_HIDDEN: "Informations masquées", LEAVE_CONVERSATION: "Quitter la conversation", MARK_CONVERSATION_AS_UNREAD: "Marquer comme non lu", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, gi = { code: "he-IL", name: "Hebrew", translation: { YESTERDAY: "אתמול", TODAY: "היום", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "עכשיו", LOCATION: "מיקום", CANCEL: "בטל", INBOX: "דואר נכנס", DESKTOP_NOTIFICATIONS: "התראות דפדפן", DESKTOP_NOTIFICATIONS_ERROR: "לא ניתן להפעיל התראות במרועה דפדפן מכיוון שהדפדפן שלך חוסם אותן באופן פעיל. נסה להסתכל בהגדרות או להשתמש בדפדפן אחר.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} הודעה על הדגמה`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "אם אתה שומר על כרטיסיית הדפדפן שלך פתוחה, תראה את זה צץ כשמישהו ידבר איתך.", SEND_BUTTON_TEXT: "שלח", ENTRYBOX_TEXT_LIMIT: "רק 10.000 תווים", ENTRYBOX_PLACEHOLDER: "תגיד משהו...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "שיחה זו אינה פעילה עוד.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "אתה יכול לקרוא, אך לא לשלוח הודעות.", MESSAGELIST_LOADING_OLDER: "טוען הודעות ישנות...", MESSAGELIST_SHOW_OLDER: "הצג הודעות ישנות", MESSAGELIST_NEW_MARKER: "חדש", MESSAGE_SENT_VIA_EMAIL: "הודעה זאת נשלחה דרך אימייל", YOU_MARKER: "אתה", UPLOAD_IN_PROGRESS: "מעלה ...", UPLOAD_SEND_FILE: "שלח קובץ", UPLOAD_SHARE_LOCATION: "שתף מיקום", UPLOAD_ERROR: "לרוע המזל משהו השתבש בהעלאה. ייתכן שהקובץ אינו נתמך או גדול מדי.", SHARE_LOCATION_ERROR: "לא ניתן לשתף מיקום: ", LOADING: "טוען...", HUB_EMPTY: "היסטוריית הצ'אט שלך תופיע כאן", HUB_SHOW_EARLIER: "הצג צ'אטים קודמים", INBOX_NO_CHATS_TITLE: "אין עדיין צ'אטים!", INBOX_NO_CHATS_BODY: "לאחר שניהלת שיחה אחת או יותר, הם יופיעו כאן.", ENABLE_TRANSLATION: "תרגם שיחה זו לעברית", DISABLE_TRANSLATION: "הצג מקור", SEARCH_PLACEHOLDER_TEXT: "...חפש", SEARCH_SEARCHING: "...מחפש", SEARCH_NO_RESULTS: "לא נמצאו תוצאות", SEARCH_NO_MORE_RESULTS: "אין תוצאות נוספות", CHAT_NOT_FOUND: "הצ'אט לא נמצא", DELETE_MESSAGE: "מחיקת הודעה", DELETION_EXPLANATION: "אם תמחק הודעה זו, היא תיעלם עבור כולם.", EDIT_MESSAGE: "עריכת הודעה", SAVE: "שמור", EDITED_INDICATOR: "ערוך", REPLY_TO_MESSAGE: "השב", ADD_REACTION: "הוספת תגובה", AUTH_EXPIRED_OVERLAY_TITLE: "הפעלת הצ׳אט שלכם פגה", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "רעננו את העמוד כדי להמשיך", VOICE_MESSAGE: "הודעה קולית", CONTACT_INFORMATION_HIDDEN: "מידע מוסתר", LEAVE_CONVERSATION: "צא מהשיחה", MARK_CONVERSATION_AS_UNREAD: "סמן כלא נקרא", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ci = { code: "hi-IN", name: "Hindi (IN)", translation: { YESTERDAY: "कल", TODAY: "आज", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "अभी", LOCATION: "जगह", CANCEL: "रद्द करें", INBOX: "इनबॉक्स", DESKTOP_NOTIFICATIONS: "ब्राउज़र सूचनाएं", DESKTOP_NOTIFICATIONS_ERROR: "ब्राउज़र सूचनाएं सक्षम नहीं कर सकता क्योंकि आपका ब्राउज़र सक्रिय रूप से उन्हें ब्लॉक करता है। सेटिंग्स में देखने या एक अलग ब्राउज़र का उपयोग करने का प्रयास करें।", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} डेमो अधिसूचना`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "यदि आप अपना ब्राउज़र टैब खुला रखते हैं, तो यह पॉप अप आपको तब दिखाई देगा जब कोई आपसे बात करेगा।", SEND_BUTTON_TEXT: "भेजें", ENTRYBOX_TEXT_LIMIT: "केवल 10,000 वर्णों की अनुमति है।", ENTRYBOX_PLACEHOLDER: "कुछ कहिए...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "यह चैट अब सक्रिय नहीं है।", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "आप पढ़ सकते हैं, लेकिन संदेश नहीं भेज सकते।", MESSAGELIST_LOADING_OLDER: "पुराने संदेश लोड हो रहे हैं ...", MESSAGELIST_SHOW_OLDER: "पुराने संदेश दिखाएं", MESSAGELIST_NEW_MARKER: "नया", MESSAGE_SENT_VIA_EMAIL: "यह संदेश ईमेल के माध्यम से भेजा गया था", YOU_MARKER: "आप", UPLOAD_IN_PROGRESS: "अपलोड हो रहा है...", UPLOAD_SEND_FILE: "फाइल भेजें", UPLOAD_SHARE_LOCATION: "जगह शेयर करें", UPLOAD_ERROR: "दुर्भाग्य से, अपलोड करते समय कुछ गलत हो गया। फ़ाइल असमर्थित या बहुत बड़ी हो सकती है।", SHARE_LOCATION_ERROR: "जगह शेयर नहीं हो पाया: ", LOADING: "लोड हो रहा है...", HUB_EMPTY: "आपका चैट इतिहास यहां दिखाई देगा", HUB_SHOW_EARLIER: "पहले की चैट दिखाओ", INBOX_NO_CHATS_TITLE: "अभी तक कोई चैट नहीं!", INBOX_NO_CHATS_BODY: "एक बार जब आप एक या अधिक चैट कर लेते हैं, तो वे यहां दिखाई देंगे।", ENABLE_TRANSLATION: "इस बातचीत का हिंदी में अनुवाद कीजिए", DISABLE_TRANSLATION: "मूल दिखाएँ", SEARCH_PLACEHOLDER_TEXT: "खोजें...", SEARCH_SEARCHING: "खोज जारी है...", SEARCH_NO_RESULTS: "कोई परिणाम नहीं मिला", SEARCH_NO_MORE_RESULTS: "और कोई परिणाम नहीं", CHAT_NOT_FOUND: "चैट नहीं मिली", DELETE_MESSAGE: "संदेश डिलीट करें", DELETION_EXPLANATION: "यदि आप इस संदेश को हटाते हैं, तो यह सभी के लिए गायब हो जाएगा.", EDIT_MESSAGE: "संदेश में बदलाव करें", SAVE: "सहेजें", EDITED_INDICATOR: "संपादित किया गया", REPLY_TO_MESSAGE: "जवाब दीजिए ।", ADD_REACTION: "प्रतिक्रिया जोड़ें", AUTH_EXPIRED_OVERLAY_TITLE: "आपका चैट सेशन समाप्त हो चुका है", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "आगे बढ़ने के लिए रिफ्रेश करें", VOICE_MESSAGE: "वॉयस मैसेज", CONTACT_INFORMATION_HIDDEN: "छुपी हुई जानकारी", LEAVE_CONVERSATION: "बातचीत को ख़त्म करें", MARK_CONVERSATION_AS_UNREAD: "अपठित के रूप में चिह्नित करें", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, fi = { code: "hr-HR", name: "Croatian", translation: { YESTERDAY: "Jučer", TODAY: "Danas", DAYS: "d", HOURS: "s", MINUTES: "m", JUST_NOW: "Upravo sad", LOCATION: "Lokacija", CANCEL: "Otkaži", INBOX: "Pretinac", DESKTOP_NOTIFICATIONS: "Obavijesti preglednika", DESKTOP_NOTIFICATIONS_ERROR: "Notifikacije preglednika nisu omogućene jer ih vaš preglednik aktivno blokira. Pokušajte pogledati postavke ili koristiti neki drugi preglednik.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikacija`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ako karticu preglednika ostavite otvorenu, pojavit će se ovaj pop-up kada netko razgovara s vama.", SEND_BUTTON_TEXT: "Pošalji", ENTRYBOX_TEXT_LIMIT: "Dozvoljeno je samo 10.000 znakova.", ENTRYBOX_PLACEHOLDER: "Reci nešto...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ovaj razgovor više nije aktivan.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Možeš čitati, ali ne i slati poruke.", MESSAGELIST_LOADING_OLDER: "Učitavam starije poruke...", MESSAGELIST_SHOW_OLDER: "Prikaži starije poruke", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Ova poruka je poslana e-poštom", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Učitavam...", UPLOAD_SEND_FILE: "Pošalji datoteku", UPLOAD_SHARE_LOCATION: "Podijeli lokaciju", UPLOAD_ERROR: "Nažalost, nešto je pošlo krivo. Datoteka možda nije podržana ili je prevelika.", SHARE_LOCATION_ERROR: "Nije moguće podijeliti lokaciju: ", LOADING: "Učitavam...", HUB_EMPTY: "Ovdje će se prikazati vaša povijest razgovora", HUB_SHOW_EARLIER: "Prikaži ranije razgovore", INBOX_NO_CHATS_TITLE: "Nema razgovora!", INBOX_NO_CHATS_BODY: "Nakon što vodite jedan ili više razgovora, oni će se pojaviti ovdje.", ENABLE_TRANSLATION: "Prevedi ovaj razgovor na hrvatski jezik", DISABLE_TRANSLATION: "Prikaži original", SEARCH_PLACEHOLDER_TEXT: "Pretraži...", SEARCH_SEARCHING: "Pretraživanje...", SEARCH_NO_RESULTS: "Nema rezultata", SEARCH_NO_MORE_RESULTS: "Nema više rezultata", CHAT_NOT_FOUND: "Razgovor nije pronađen", DELETE_MESSAGE: "Obriši poruku", DELETION_EXPLANATION: "Ako izbrišete ovu poruku, nestat će za sve.", EDIT_MESSAGE: "Uredi poruku", SAVE: "Spremi", EDITED_INDICATOR: "uređivao", REPLY_TO_MESSAGE: "Odgovorite", ADD_REACTION: "Dodajte reakciju", AUTH_EXPIRED_OVERLAY_TITLE: "Vaša sesija razgovora je istekla", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Osvježite stranicu za nastavak", VOICE_MESSAGE: "Glasovna poruka", CONTACT_INFORMATION_HIDDEN: "Skrivene informacije", LEAVE_CONVERSATION: "Napustiti razgovor", MARK_CONVERSATION_AS_UNREAD: "Označi kao nepročitano", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, vi = { code: "hu-HU", name: "Hungarian", translation: { YESTERDAY: "Tegnap", TODAY: "Ma", DAYS: "n", HOURS: "ó", MINUTES: "p", JUST_NOW: "éppen most", LOCATION: "Helyszín", CANCEL: "Visszavonás", INBOX: "Postaláda", DESKTOP_NOTIFICATIONS: "Böngésző értesítések", DESKTOP_NOTIFICATIONS_ERROR: "Azért nem tudja bekapcsolni a böngésző értesítések funkciót, mert böngészője aktívan blokkolja azt. Tekintse meg a beállításokat vagy használjon másik böngészőt.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo értesítés`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ha nyitva hagyja böngészőjét, felugró ablak fog megjelenni, ha valaki beszélni szeretne Önnel.", SEND_BUTTON_TEXT: "Küldés", ENTRYBOX_TEXT_LIMIT: "Mindőssze 10.000 karakter megengedett.", ENTRYBOX_PLACEHOLDER: "Mondjon valamit...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ez a beszélgetés már nem aktív.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Elolvashatja az üzeneteket, de nem küldhet újat.", MESSAGELIST_LOADING_OLDER: "Korábbi üzenetek betöltése...", MESSAGELIST_SHOW_OLDER: "Korábbi üzenetek megjelenítése", MESSAGELIST_NEW_MARKER: "Új", MESSAGE_SENT_VIA_EMAIL: "Ez az üzenet e-mailben került elküldésre", YOU_MARKER: "Ön", UPLOAD_IN_PROGRESS: "Feltöltés...", UPLOAD_SEND_FILE: "Fájl küldése", UPLOAD_SHARE_LOCATION: "Helyszín megosztása", UPLOAD_ERROR: "Sajnos hiba történt a feltöltés során. A fájl nem támogatott vagy túl nagy.", SHARE_LOCATION_ERROR: "Helyszín megosztása nem lehetséges: ", LOADING: "Betöltés...", HUB_EMPTY: "A beszélgetések előzményei itt láthatók", HUB_SHOW_EARLIER: "Korábbi beszélgetések megjelenítése", INBOX_NO_CHATS_TITLE: "Még nincs megjeleníthető beszélgetés!", INBOX_NO_CHATS_BODY: "Amint egy vagy több beszélgetéssel rendelkezik, azok itt fognak megjelenni.", ENABLE_TRANSLATION: "A beszélgetés lefordítása erre a nyelvre: magyar", DISABLE_TRANSLATION: "Eredeti megjelenítése", SEARCH_PLACEHOLDER_TEXT: "Keresés...", SEARCH_SEARCHING: "Keresés...", SEARCH_NO_RESULTS: "Nincs találat", SEARCH_NO_MORE_RESULTS: "Nincs több találat", CHAT_NOT_FOUND: "A csevegés nem található", DELETE_MESSAGE: "Üzenet törlése", DELETION_EXPLANATION: "Ha törlöd ezt az üzenetet, az mindenki számára eltűnik.", EDIT_MESSAGE: "Üzenet szerkesztése", SAVE: "Mentés", EDITED_INDICATOR: "szerkesztve", REPLY_TO_MESSAGE: "Válaszadás", ADD_REACTION: "Reagálás erre", AUTH_EXPIRED_OVERLAY_TITLE: "Chat munkamenete lejárt", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Folytatáshoz frissítse az oldalt", VOICE_MESSAGE: "Hangüzenet", CONTACT_INFORMATION_HIDDEN: "Rejtett információ", LEAVE_CONVERSATION: "Kilépés a beszélgetésből", MARK_CONVERSATION_AS_UNREAD: "Megjelölés olvasatlanként", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, ki = { code: "id-ID", name: "Bahasa Indonesia", translation: { YESTERDAY: "Kemarin", TODAY: "Hari ini", DAYS: "h", HOURS: "j", MINUTES: "m", JUST_NOW: "sekarang", LOCATION: "Lokasi", CANCEL: "Batal", INBOX: "Kotak Masuk", DESKTOP_NOTIFICATIONS: "Notifikasi peramban", DESKTOP_NOTIFICATIONS_ERROR: "Tidak dapat mengaktifkan pemberitahuan browser karena browser Anda secara aktif memblokir mereka. Coba cari di pengaturan atau menggunakan browser yang berbeda.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `pemberitahuan demo ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Jika Anda membiarkan tab browser tetap terbuka, Anda akan melihat ini muncul ketika seseorang berbicara kepada Anda.", SEND_BUTTON_TEXT: "Kirim", ENTRYBOX_TEXT_LIMIT: "Hanya 10.000 karakter yang diizinkan.", ENTRYBOX_PLACEHOLDER: "Katakan sesuatu...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Percakapan ini tidak lagi aktif.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Anda dapat membaca, tetapi tidak mengirim pesan.", MESSAGELIST_LOADING_OLDER: "Memuat pesan lama...", MESSAGELIST_SHOW_OLDER: "Tampilkan pesan yang lebih lama", MESSAGELIST_NEW_MARKER: "Baru", MESSAGE_SENT_VIA_EMAIL: "Pesan ini dikirim melalui email", YOU_MARKER: "Anda", UPLOAD_IN_PROGRESS: "Mengunggah...", UPLOAD_SEND_FILE: "Kirim mengajukan", UPLOAD_SHARE_LOCATION: "Bagikan lokasi", UPLOAD_ERROR: "Ada yang salah diunggah. File mungkin tidak didukung atau terlalu besar.", SHARE_LOCATION_ERROR: "Tidak dapat membagikan lokasi: ", LOADING: "Memuat...", HUB_EMPTY: "Riwayat obrolan Anda akan muncul di sini", HUB_SHOW_EARLIER: "Tampilkan obrolan sebelumnya", INBOX_NO_CHATS_TITLE: "Belum ada obrolan!", INBOX_NO_CHATS_BODY: "Setelah Anda melakukan satu atau lebih percakapan, mereka akan muncul di sini.", ENABLE_TRANSLATION: "Terjemahkan percakapan ini ke Indonesia", DISABLE_TRANSLATION: "Perlihatkan asli", SEARCH_PLACEHOLDER_TEXT: "Cari...", SEARCH_SEARCHING: "Mencari...", SEARCH_NO_RESULTS: "Tidak ditemukan hasil", SEARCH_NO_MORE_RESULTS: "Tidak ada hasil lainnya", CHAT_NOT_FOUND: "Obrolan tidak ditemukan", DELETE_MESSAGE: "Hapus pesan", DELETION_EXPLANATION: "Jika pesan ini Anda hapus, pesan ini akan tidak terlihat bagi siapa pun.", EDIT_MESSAGE: "Sunting pesan", SAVE: "Mentés", EDITED_INDICATOR: "diedit", REPLY_TO_MESSAGE: "Balas", ADD_REACTION: "Tambah reaksi", AUTH_EXPIRED_OVERLAY_TITLE: "Sesi obrolan Anda sudah lewat batas waktu", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Muat ulang halaman untuk melanjutkan", VOICE_MESSAGE: "Pesan suara", CONTACT_INFORMATION_HIDDEN: "Informasi tersembunyi", LEAVE_CONVERSATION: "Tinggalkan percakapan", MARK_CONVERSATION_AS_UNREAD: "Tandai sebagai Belum dibaca", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Mi = { code: "is-IS", name: "Íslenska", translation: { YESTERDAY: "Í gær", TODAY: "Í dag", DAYS: "dagar", HOURS: "klst.", MINUTES: "mín.", JUST_NOW: "núna", LOCATION: "Staðsetning", CANCEL: "Hætta við", INBOX: "Pósthólf", DESKTOP_NOTIFICATIONS: "Tilkynningar í vafra", DESKTOP_NOTIFICATIONS_ERROR: "Ekki er hægt að birta tilkynningar í vafra vegna þess að vafrinn sem þú notar hindrar það. Reyndu að leita að stillingum eða að nota annan vafra.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} prufutilkynning`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ef flipinn í vafranum er opinn muntu sjá þessa tilkynningu birtast þegar einhver sendir þér skilaboð.", SEND_BUTTON_TEXT: "Senda", ENTRYBOX_TEXT_LIMIT: "Aðeins 10.000 stafir komast fyrir.", ENTRYBOX_PLACEHOLDER: "Segðu eitthvað...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Þessar samræður eru ekki lengar virkar.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Þú getur lesið, en ekki sent skilaboð.", MESSAGELIST_LOADING_OLDER: "Sæki eldri skilaboð...", MESSAGELIST_SHOW_OLDER: "Sýna eldri skilaboð", MESSAGELIST_NEW_MARKER: "Ný", MESSAGE_SENT_VIA_EMAIL: "Þessi skilaboð voru send með tölvupósti", YOU_MARKER: "þú", UPLOAD_IN_PROGRESS: "Hleð upp...", UPLOAD_SEND_FILE: "Senda skrá", UPLOAD_SHARE_LOCATION: "Deila staðsetningu", UPLOAD_ERROR: "Því miður fór eitthvað úrskeiðis við að hlaða upp. Skráin gæti verið af rangri tegund eð of stór.", SHARE_LOCATION_ERROR: "Ekki er hægt að deila staðsetningu: ", LOADING: "Hleð...", HUB_EMPTY: "Fyrri samtöl munu birtast hér", HUB_SHOW_EARLIER: "Sýna fyrri samtöl", INBOX_NO_CHATS_TITLE: "Engin samtöl enn!", INBOX_NO_CHATS_BODY: "Þegar þú hefur átt eitt eða fleiri samtöl, munu þau birtast hér.", ENABLE_TRANSLATION: "Þýða þetta samtal á ensku", DISABLE_TRANSLATION: "Sýna upprunalegt", SEARCH_PLACEHOLDER_TEXT: "Leita...", SEARCH_SEARCHING: "Leita...", SEARCH_NO_RESULTS: "Ekkert fannst", SEARCH_NO_MORE_RESULTS: "Engar fleiri niðurstöður", CHAT_NOT_FOUND: "Samtal fannst ekki", DELETE_MESSAGE: "Eyða skilaboðum", DELETION_EXPLANATION: "Ef þú eyðir þessum skilaboðum munu þau hverfa hjá öllum.", EDIT_MESSAGE: "Breyta skilaboðum", SAVE: "Vista", EDITED_INDICATOR: "breytt", REPLY_TO_MESSAGE: "Svara", REPLY_TO_ARIA_LABEL: (e, t) => `Svara ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Fara úr svari", ADD_REACTION: "Setja inn viðbrögð", AUTH_EXPIRED_OVERLAY_TITLE: "Spjallið hefur runnið út", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Endurnýjaðu síðuna til að halda áfram", VOICE_MESSAGE: "Raddskilaboð", LEAVE_CONVERSATION: "Skilja eftir skilaboð", MARK_CONVERSATION_AS_UNREAD: "Merkja sem ólesið", STATUS_INDICATOR_ONLINE: "Virk", STATUS_INDICATOR_OFFLINE: "Ekki við", CONTACT_INFORMATION_HIDDEN: "faldar upplýsingar" } }, Pi = { code: "it-IT", name: "Italian", translation: { YESTERDAY: "Ieri", TODAY: "Oggi", DAYS: "g", HOURS: "o", MINUTES: "m", JUST_NOW: "adesso", LOCATION: "Posizione", CANCEL: "Annulla", INBOX: "Posta in arrivo", DESKTOP_NOTIFICATIONS: "Notifiche browser", DESKTOP_NOTIFICATIONS_ERROR: "Impossibile abilitare le notifiche browser perché il browser le blocca attivamente. Prova a cercare le impostazioni o utilizzare un browser diverso.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notification`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Se si mantiene aperta la scheda del browser, questo verrà visualizzato quando qualcuno ti parla.", SEND_BUTTON_TEXT: "Invia", ENTRYBOX_TEXT_LIMIT: "Sono consentiti solo 10.000 caratteri.", ENTRYBOX_PLACEHOLDER: "Dì qualcosa...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Questa conversazione non è più attiva.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Puoi leggere, ma non inviare messaggi.", MESSAGELIST_LOADING_OLDER: "Caricamento dei messaggi precedenti...", MESSAGELIST_SHOW_OLDER: "Mostra messaggi precedenti", MESSAGELIST_NEW_MARKER: "Nuovo", MESSAGE_SENT_VIA_EMAIL: "Questo messaggio è stato inviato via email", YOU_MARKER: "tu", UPLOAD_IN_PROGRESS: "Caricamento in corso...", UPLOAD_SEND_FILE: "Invia file", UPLOAD_SHARE_LOCATION: "Condividi posizione", UPLOAD_ERROR: "Qualcosa è andato storto durante il caricamento. Il file potrebbe non essere supportato o troppo grande.", SHARE_LOCATION_ERROR: "Impossibile condividere la posizione: ", LOADING: "Caricamento in corso...", HUB_EMPTY: "La cronologia della tua chat verrà mostrata qui", HUB_SHOW_EARLIER: "Mostra chat precedenti", INBOX_NO_CHATS_TITLE: "Non ci sono ancora chat!", INBOX_NO_CHATS_BODY: "Una volta che hai avuto una o più conversazioni, verranno visualizzate qui.", ENABLE_TRANSLATION: "Traduci questa conversazione in italiano", DISABLE_TRANSLATION: "Mostra l'originale", SEARCH_PLACEHOLDER_TEXT: "Cerca...", SEARCH_SEARCHING: "Cercando...", SEARCH_NO_RESULTS: "Nessun risultato trovato", SEARCH_NO_MORE_RESULTS: "Non ci sono più risultati", CHAT_NOT_FOUND: "Chat non trovata", DELETE_MESSAGE: "Elimina messaggio", DELETION_EXPLANATION: "Se elimini il messaggio, questo scomparirà per tutti.", EDIT_MESSAGE: "Modifica messaggio", SAVE: "Salva", EDITED_INDICATOR: "modificato", REPLY_TO_MESSAGE: "Rispondi", ADD_REACTION: "Aggiungi reazione", AUTH_EXPIRED_OVERLAY_TITLE: "La sessione di chat è scaduta", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Aggiorna la pagina per continuare", VOICE_MESSAGE: "Messaggio vocale", CONTACT_INFORMATION_HIDDEN: "Informazioni nascoste", LEAVE_CONVERSATION: "Abbandona la conversazione", MARK_CONVERSATION_AS_UNREAD: "Segna come non letto", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, bi = { code: "ja-JP", name: "Japanese", translation: { YESTERDAY: "昨日", TODAY: "今日", DAYS: "日前", HOURS: "時間前", MINUTES: "分前", JUST_NOW: "たった今", LOCATION: "場所", CANCEL: "キャンセル", INBOX: "受信箱", DESKTOP_NOTIFICATIONS: "ブラウザの通知", DESKTOP_NOTIFICATIONS_ERROR: "ブラウザの通知はブロックされているため、ブラウザの通知を有効にできません。設定を確認するか、別のブラウザを使用してください。", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} デモ通知`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "ブラウザのタブを開いたままにしておくと、誰かがあなたに話しかけたときにこのポップアップが表示されます。", SEND_BUTTON_TEXT: "送信", ENTRYBOX_TEXT_LIMIT: "許可されているのは10.000文字までです。", ENTRYBOX_PLACEHOLDER: "メッセージを入力してください", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "この会話はもうアクティブではありません。", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "あなたは読むことはできますが、メッセージを送ることはできません。", MESSAGELIST_LOADING_OLDER: "古いメッセージを読み込んでいます...", MESSAGELIST_SHOW_OLDER: "古いメッセージを表示", MESSAGELIST_NEW_MARKER: "新着", MESSAGE_SENT_VIA_EMAIL: "このメッセージはメールで送信されました", YOU_MARKER: "あなたは", UPLOAD_IN_PROGRESS: "アップロード中...", UPLOAD_SEND_FILE: "ファイル送信", UPLOAD_SHARE_LOCATION: "共有場所", UPLOAD_ERROR: "アップロード中に問題が発生しました。ファイルがサポートされていないか、大きすぎる可能性があります。", SHARE_LOCATION_ERROR: "場所を共有できません: ", LOADING: "読み込み中...", HUB_EMPTY: "あなたのチャット履歴がここに表示されます", HUB_SHOW_EARLIER: "以前のチャットを表示", INBOX_NO_CHATS_TITLE: "まだチャットがありません!", INBOX_NO_CHATS_BODY: "会話が1つ以上あると、ここに表示されます", ENABLE_TRANSLATION: "この会話を日本語に翻訳する", DISABLE_TRANSLATION: "オリジナルを表示", SEARCH_PLACEHOLDER_TEXT: "検索...", SEARCH_SEARCHING: "検索中...", SEARCH_NO_RESULTS: "結果が見つかりません", SEARCH_NO_MORE_RESULTS: "これ以上結果はありません", CHAT_NOT_FOUND: "チャットが見つかりませんでした", DELETE_MESSAGE: "メッセージを削除する", DELETION_EXPLANATION: "このメッセージを削除すると、全ての人に表示されなくなります。", EDIT_MESSAGE: "メッセージを編集する", SAVE: "上書き保存", EDITED_INDICATOR: "編集", REPLY_TO_MESSAGE: "返信する", ADD_REACTION: "リアクションを追加", AUTH_EXPIRED_OVERLAY_TITLE: "チャットセッションの有効期限が切れました", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "続けるにはページを更新してください", VOICE_MESSAGE: "ボイスメッセージ", CONTACT_INFORMATION_HIDDEN: "機密情報", LEAVE_CONVERSATION: "会話をやめる", MARK_CONVERSATION_AS_UNREAD: "未読としてマーク", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ui = { code: "ka-GE", name: "Georgian", translation: { YESTERDAY: "გუშინ", TODAY: "დღეს", DAYS: "დღ", HOURS: "სთ", MINUTES: "წთ", JUST_NOW: "ახლა", LOCATION: "ადგილმდებარეობა", CANCEL: "გაუქმება", INBOX: "მიღებული შეტყობინება", DESKTOP_NOTIFICATIONS: "ბრაუზერის შეტყობინებები", DESKTOP_NOTIFICATIONS_ERROR: "შეუძლებელია ბრაუზერის შეტკობინებების ჩართვა. ეს ბრაუზერი ბლოკავს მათ. სცადე ცვლილება ოპციებიდან ან გამოიყენე სხვა ბრაუზერი.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} შეტყობინებების დემო ვერსია`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "თუ დატოვებ ბრაუზერის ფანჯარას გახსნილს, როცა ვიღაც მოგწერს საუბარი ამოვარდება დესკტოპზე.", SEND_BUTTON_TEXT: "გაგზავნა", ENTRYBOX_TEXT_LIMIT: "დაშვებულია მხოლოდ 10.000 სიმბოლო.", ENTRYBOX_PLACEHOLDER: "დაწერე რაღაც...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "ეს დიალოგი აღარ არის ხელმისაწვდომი.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "შეგიძლია წაიკითხო, მაგრამ ვერ გააგზავნი შეტყობინებას.", MESSAGELIST_LOADING_OLDER: "იტვირთება ძველი შეტყობინებები...", MESSAGELIST_SHOW_OLDER: "ძველი შეტყობინებების ჩვენება", MESSAGELIST_NEW_MARKER: "ახალი", MESSAGE_SENT_VIA_EMAIL: "ეს შეტყობინება გამოგზავნილია იმეილით", YOU_MARKER: "you", UPLOAD_IN_PROGRESS: "იტვირთება...", UPLOAD_SEND_FILE: "ფაილის გაგზავნა", UPLOAD_SHARE_LOCATION: "ადგილმდებარეობის გაზიარება", UPLOAD_ERROR: "პრობლემაა ატვირთვისას. ფაილის შესაძლოა არის არათავსებადი ან ძალიან დიდი.", SHARE_LOCATION_ERROR: "შეუძლებელია ადგილმდებარეობის გაზიარება: ", LOADING: "იტვირთება...", HUB_EMPTY: "საუბრების ისტორია გამოჩნდება აქ", HUB_SHOW_EARLIER: "წინა საუბრების ნახვა", INBOX_NO_CHATS_TITLE: "ჯერ-ჯერობით არ არის საუბრები!", INBOX_NO_CHATS_BODY: "უკვე დასრულებული საუბარები გამოჩნდება აქ", ENABLE_TRANSLATION: "თარგმნეთ ეს საუბარი ინგლისურად", DISABLE_TRANSLATION: "ორიგინალის ჩვენება", SEARCH_PLACEHOLDER_TEXT: "ძიება...", SEARCH_SEARCHING: "მიმდინარეობს ძიება...", SEARCH_NO_RESULTS: "შედეგები ვერ ქართველი", SEARCH_NO_MORE_RESULTS: "სხვა შედეგი ვერ მოიძებნა", CHAT_NOT_FOUND: "ჩატი ვერ მოიძებნა", DELETE_MESSAGE: "შეტყობინების წაშლა ", DELETION_EXPLANATION: "თუ ამ შეტყობინებას წაშლით, ის ყველასთვის გაქრება.", EDIT_MESSAGE: "შეტყობინების რედაქტირება", SAVE: "შენახვა", EDITED_INDICATOR: "რედაქტირებულია", REPLY_TO_MESSAGE: "პასუხის გაცემა", ADD_REACTION: "დაამატეთ რეაქცია", AUTH_EXPIRED_OVERLAY_TITLE: "თქვენი ჩეთის სესიის ვადა ამოიწურა", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "განაახლეთ გვერდი გასაგრძელებლად", VOICE_MESSAGE: "ხმოვანი შეტყობინება", CONTACT_INFORMATION_HIDDEN: "ფარული ინფორმაცია", LEAVE_CONVERSATION: "საუბრის დატოვება", MARK_CONVERSATION_AS_UNREAD: "წაუკითხავად მონიშვნა", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Hi = { code: "ko-KR", name: "Korean (South Korea)", translation: { YESTERDAY: "어제", TODAY: "오늘", DAYS: "일 전", HOURS: "시간 전", MINUTES: "분 전", JUST_NOW: "방금", LOCATION: "위치", CANCEL: "취소", INBOX: "대화 목록", DESKTOP_NOTIFICATIONS: "브라우저 알림", DESKTOP_NOTIFICATIONS_ERROR: "브라우저 알림을 표시할 수 없습니다. 브라우저 설정을 확인하거나 다른 브라우저를 사용해주세요.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} 데모 알림`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "브라우저 탭을 열어 둔 상태에서 누군가 대화 할 때 이 팝업이 표시됩니다.", SEND_BUTTON_TEXT: "전송", ENTRYBOX_TEXT_LIMIT: "최대 10,000자까지 입력할 수 있습니다.", ENTRYBOX_PLACEHOLDER: "메세지를 입력하세요...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "채팅이 종료되었습니다.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "읽기만 가능하며 메시지를 보낼 수 없습니다.", MESSAGELIST_LOADING_OLDER: "이전 메시지 로드 중...", MESSAGELIST_SHOW_OLDER: "이전 메시지 표시", MESSAGELIST_NEW_MARKER: "새 메시지", MESSAGE_SENT_VIA_EMAIL: "이 메시지는 이메일을 통해 전송되었습니다.", YOU_MARKER: "나", UPLOAD_IN_PROGRESS: "업로드 중...", UPLOAD_SEND_FILE: "파일 전송", UPLOAD_SHARE_LOCATION: "위치 공유", UPLOAD_ERROR: "업로드가 실패했습니다. 파일이 지원되지 않거나 너무 클 수 있습니다.", SHARE_LOCATION_ERROR: "위치를 공유 할 수 없습니다: ", LOADING: "로드 중...", HUB_EMPTY: "채팅 기록이 여기에 표시됩니다", HUB_SHOW_EARLIER: "이전 채팅보기", INBOX_NO_CHATS_TITLE: "아직 채팅이 없습니다!", INBOX_NO_CHATS_BODY: "대화가 하나 이상 있으면 여기에 표시됩니다.", ENABLE_TRANSLATION: "이 대화를 한국어로 번역", DISABLE_TRANSLATION: "원본 표시", SEARCH_PLACEHOLDER_TEXT: "검색...", SEARCH_SEARCHING: "검색 중...", SEARCH_NO_RESULTS: "검색 결과 없음", SEARCH_NO_MORE_RESULTS: "추가 검색 결과 없음", CHAT_NOT_FOUND: "대화를 찾지 못했습니다", DELETE_MESSAGE: "메시지 삭제", DELETION_EXPLANATION: "이 메시지를 삭제하면 모든 사람이 볼 수 없게 됩니다.", EDIT_MESSAGE: "메시지 편집하기", SAVE: "저장", EDITED_INDICATOR: "편집", REPLY_TO_MESSAGE: "회신", ADD_REACTION: "반응 추가", AUTH_EXPIRED_OVERLAY_TITLE: "채팅 세션이 만료되었습니다", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "계속하려면 페이지를 새로고침하세요", VOICE_MESSAGE: "음성 메시지", CONTACT_INFORMATION_HIDDEN: "숨겨진 정보", LEAVE_CONVERSATION: "대화 떠나기", MARK_CONVERSATION_AS_UNREAD: "읽지 않은 상태로 표시", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, yi = { code: "nb-NO", name: "Norwegian (Bokmål)", translation: { YESTERDAY: "I går", TODAY: "I dag", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "Nå", LOCATION: "Plassering", CANCEL: "Avbryt", INBOX: "Innboks", DESKTOP_NOTIFICATIONS: "Nettleservarsler", DESKTOP_NOTIFICATIONS_ERROR: "Kan ikke aktivere Nettleservarsler fordi nettleseren din aktivt blokkerer dem. Prøv å se i innstillingene eller bruke en annen nettleser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo varslinger`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Hvis du holder nettleservinduet åpent, vil du se dette varsel når noen snakker til deg.", SEND_BUTTON_TEXT: "Send", ENTRYBOX_TEXT_LIMIT: "Kun 10.000 tegn er tillatt.", ENTRYBOX_PLACEHOLDER: "Si noe...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Denne samtale er ikke lengre aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Du kan lese, men ikke sende meldinger.", MESSAGELIST_LOADING_OLDER: "Laster eldre meldinger...", MESSAGELIST_SHOW_OLDER: "Vis eldre meldinger", MESSAGELIST_NEW_MARKER: "Ny", MESSAGE_SENT_VIA_EMAIL: "Denne meldingen er sendt via e-post", YOU_MARKER: "deg", UPLOAD_IN_PROGRESS: "Laster opp...", UPLOAD_SEND_FILE: "Send fil", UPLOAD_SHARE_LOCATION: "Del din plassering", UPLOAD_ERROR: "Noe gikk galt i uplastingen. Det kan være filen ikke støttes eller for stor.", SHARE_LOCATION_ERROR: "Kan ikke dele plasseringen: ", LOADING: "Laster...", HUB_EMPTY: "Din chats historikk vil vises her", HUB_SHOW_EARLIER: "Vis tidligere chats", INBOX_NO_CHATS_TITLE: "Ingen chats enda!", INBOX_NO_CHATS_BODY: "Så snart du får en eller flere samtaler, vil de vises her.", ENABLE_TRANSLATION: "Oversett denne samtalen til norsk", DISABLE_TRANSLATION: "Vis original", SEARCH_PLACEHOLDER_TEXT: "Søk...", SEARCH_SEARCHING: "Søker...", SEARCH_NO_RESULTS: "Finner ingen resultater", SEARCH_NO_MORE_RESULTS: "Ingen flere resultater", CHAT_NOT_FOUND: "Chat ikke funnet", DELETE_MESSAGE: "Slett melding", DELETION_EXPLANATION: "Hvis du sletter denne meldingen, forsvinner den for alle.", EDIT_MESSAGE: "Rediger melding", SAVE: "Lagre", EDITED_INDICATOR: "redigert", REPLY_TO_MESSAGE: "Svar", ADD_REACTION: "Legg til reaksjon", AUTH_EXPIRED_OVERLAY_TITLE: "Chatøkten er utløpt", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Oppdater siden for å fortsette", VOICE_MESSAGE: "Lydmelding", CONTACT_INFORMATION_HIDDEN: "Skjult informasjon", LEAVE_CONVERSATION: "Forlat samtalen", MARK_CONVERSATION_AS_UNREAD: "Merk som ulest", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, wi = { code: "nl-NL", name: "Dutch", translation: { YESTERDAY: "Gisteren", TODAY: "Vandaag", DAYS: "d", HOURS: "u", MINUTES: "m", JUST_NOW: "zojuist", LOCATION: "Locatie", CANCEL: "Annuleren", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Browsermeldingen", DESKTOP_NOTIFICATIONS_ERROR: "Browsermeldingen kunnen niet geactiveerd worden omdat de browser het blokkeert. Check de instellingen van je browser of probeer een andere browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notificatie`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Als je je browser open houdt, zie je deze popup als iemand tegen je praat.", SEND_BUTTON_TEXT: "Verzenden", ENTRYBOX_TEXT_LIMIT: "Maximaal 10.000 tekens toegestaan.", ENTRYBOX_PLACEHOLDER: "Typ een bericht...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Dit gesprek is niet actief meer.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Je kunt geen berichten sturen.", MESSAGELIST_LOADING_OLDER: "Eerdere berichten laden...", MESSAGELIST_SHOW_OLDER: "Laad eerdere berichten", MESSAGELIST_NEW_MARKER: "Nieuw", MESSAGE_SENT_VIA_EMAIL: "Dit bericht is verstuurd via e-mail", YOU_MARKER: "jij", UPLOAD_IN_PROGRESS: "Uploaden...", UPLOAD_SEND_FILE: "Verzend bestand", UPLOAD_SHARE_LOCATION: "Deel locatie", UPLOAD_ERROR: "Er ging iets mis. Het bestand wordt niet ondersteund of is te groot.", SHARE_LOCATION_ERROR: "Locatie delen mislukt: ", LOADING: "Bezig met laden...", HUB_EMPTY: "Berichtengeschiedenis wordt hier weergegeven", HUB_SHOW_EARLIER: "Laat eerdere berichten zien", INBOX_NO_CHATS_TITLE: "Nog geen chats!", INBOX_NO_CHATS_BODY: "Zodra je een of meerdere conversaties hebt gehad, worden deze hier weergegeven.", ENABLE_TRANSLATION: "Vertaal dit gesprek naar het Nederlands", DISABLE_TRANSLATION: "Toon oorspronkelijk gesprek", SEARCH_PLACEHOLDER_TEXT: "Zoek...", SEARCH_SEARCHING: "Zoeken...", SEARCH_NO_RESULTS: "Geen resultaten gevonden", SEARCH_NO_MORE_RESULTS: "Niet meer resultaten", CHAT_NOT_FOUND: "Chat niet gevonden", DELETE_MESSAGE: "Bericht verwijderen", DELETION_EXPLANATION: "Als je dit bericht verwijdert, zal het voor iedereen verdwijnen.", EDIT_MESSAGE: "Bericht bewerken", SAVE: "Opslaan", EDITED_INDICATOR: "bewerkt", REPLY_TO_MESSAGE: "Beantwoorden", ADD_REACTION: "Reactie toevoegen", AUTH_EXPIRED_OVERLAY_TITLE: "Je chatsessie is verlopen", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Ververs de pagina om door te gaan", VOICE_MESSAGE: "Spraakbericht", CONTACT_INFORMATION_HIDDEN: "verborgen informatie", LEAVE_CONVERSATION: "Gesprek verlaten", MARK_CONVERSATION_AS_UNREAD: "Markeren als ongelezen", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Bi = { code: "pl-PL", name: "Polish", translation: { YESTERDAY: "Wczoraj", TODAY: "Dzisiaj", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "teraz", LOCATION: "Lokalizacja", CANCEL: "Anuluj", INBOX: "Skrzynka odbiorcza", DESKTOP_NOTIFICATIONS: "Powiadomienia", DESKTOP_NOTIFICATIONS_ERROR: "Nie można aktywować powiadomień, ponieważ twoja przeglądarka je blokuje. Proszę zmienić ustawienie lub spróbować innej przeglądarki.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} przykładowe powiadomienie`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Jeśli zostawisz tę kartę otwartą, zobaczysz takie powiadomienie, gdy ktoś napisze do Ciebie.", SEND_BUTTON_TEXT: "Wyślij", ENTRYBOX_TEXT_LIMIT: "Nie można wysyłać więcej niż 10000 znaków.", ENTRYBOX_PLACEHOLDER: "Napisz coś...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ten czat nie jest aktywny.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Możesz czytać wiadomości, ale nie możesz ich wysyłać.", MESSAGELIST_LOADING_OLDER: "Wczytuję starsze wiadomości...", MESSAGELIST_SHOW_OLDER: "Zobacz starsze wiadomości", MESSAGELIST_NEW_MARKER: "Nowe", MESSAGE_SENT_VIA_EMAIL: "Ta wiadomość została wysłana przez email.", YOU_MARKER: "ty", UPLOAD_IN_PROGRESS: "Przesyłanie...", UPLOAD_SEND_FILE: "Prześlij plik", UPLOAD_SHARE_LOCATION: "Udostępnij lokalizację", UPLOAD_ERROR: "Coś poszło nie tak. Plik może być zbyt duży lub jest nieobsługiwany.", SHARE_LOCATION_ERROR: "Nie da się udostępnić lokalizacji: ", LOADING: "Ładowanie...", HUB_EMPTY: "Twoje czaty pojawią się tutaj", HUB_SHOW_EARLIER: "Zobacz starsze czaty", INBOX_NO_CHATS_TITLE: "Brak czatów!", INBOX_NO_CHATS_BODY: "Rozpoczęte konwersacje pojawią się tutaj.", ENABLE_TRANSLATION: "Przetłumacz tę konwersację na język polski", DISABLE_TRANSLATION: "Pokaż oryginał", SEARCH_PLACEHOLDER_TEXT: "Wyszukaj...", SEARCH_SEARCHING: "Wyszukiwanie...", SEARCH_NO_RESULTS: "Nie znaleziono wyników", SEARCH_NO_MORE_RESULTS: "Nie ma innych wyników", CHAT_NOT_FOUND: "Nie znaleziono konwersacji", DELETE_MESSAGE: "Usuń wiadomość", DELETION_EXPLANATION: "Jeśli usuniesz tę wiadomość, przestanie być widoczna dla wszystkich.", EDIT_MESSAGE: "Edytuj wiadomość", SAVE: "Zapisz", EDITED_INDICATOR: "edytowano", REPLY_TO_MESSAGE: "Odpowiedz", ADD_REACTION: "Dodaj reakcję", AUTH_EXPIRED_OVERLAY_TITLE: "Twoja sesja wygasła", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Odśwież stronę, aby kontynuować", VOICE_MESSAGE: "Wiadomość głosowa", CONTACT_INFORMATION_HIDDEN: "Ukryte informacje", LEAVE_CONVERSATION: "Opuść konwersację", MARK_CONVERSATION_AS_UNREAD: "Oznacz jako nieprzeczytane", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Yi = { code: "pt-BR", name: "Portuguese (Brazil)", translation: { YESTERDAY: "Ontem", TODAY: "Hoje", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "agora mesmo", LOCATION: "Localização", CANCEL: "Cancelar", INBOX: "Caixa de entrada", DESKTOP_NOTIFICATIONS: "Notificações do navegador", DESKTOP_NOTIFICATIONS_ERROR: "Não é possível ativar as notificações da navegador porque seu navegador as bloqueia. Tente procurar nas configurações ou usar um navegador diferente.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} notificação de demonstração`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Se você mantiver a guia do navegador aberta, verá essa mensagem quando alguém falar com você.", SEND_BUTTON_TEXT: "Enviar", ENTRYBOX_TEXT_LIMIT: "Apenas 10.000 caracteres são permitidos.", ENTRYBOX_PLACEHOLDER: "Diga algo...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Esta conversa não está mais ativa.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Você pode ler, mas não enviar mensagens.", MESSAGELIST_LOADING_OLDER: "Carregando mensagens antigas...", MESSAGELIST_SHOW_OLDER: "Mostrar mensagens mais antigas", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Esta mensagem foi enviada via email.", YOU_MARKER: "Você", UPLOAD_IN_PROGRESS: "Carregando...", UPLOAD_SEND_FILE: "Enviar arquivo", UPLOAD_SHARE_LOCATION: "Compartilhar localização", UPLOAD_ERROR: "Algo deu errado ao fazer o upload. O arquivo pode não ter suporte ou ser muito grande.", SHARE_LOCATION_ERROR: "Não é possível compartilhar o local: ", LOADING: "Carregando...", HUB_EMPTY: "Seu histórico de conversas será exibido aqui", HUB_SHOW_EARLIER: "Mostrar conversas anteriores", INBOX_NO_CHATS_TITLE: "Ainda não há chats!", INBOX_NO_CHATS_BODY: "Depois de ter uma ou mais conversas, elas serão exibidas aqui.", ENABLE_TRANSLATION: "Traduzir esta conversa para português", DISABLE_TRANSLATION: "Ver a conversa não traduzida", SEARCH_PLACEHOLDER_TEXT: "Busca...", SEARCH_SEARCHING: "Consultando...", SEARCH_NO_RESULTS: "Resultados nao encontrados", SEARCH_NO_MORE_RESULTS: "Não há mais resultados", CHAT_NOT_FOUND: "Conversa não encontrada", DELETE_MESSAGE: "Excluir mensagem", DELETION_EXPLANATION: "Se você excluir esta mensagem, ela desaparecerá para todos.", EDIT_MESSAGE: "Editar mensagem", SAVE: "Salvar", EDITED_INDICATOR: "editada", REPLY_TO_MESSAGE: "Responder", ADD_REACTION: "Adicionar reação", AUTH_EXPIRED_OVERLAY_TITLE: "Sua sessão de chat expirou", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Atualize a página para continuar", VOICE_MESSAGE: "Mensagem de voz", LEAVE_CONVERSATION: "Sair da conversa", MARK_CONVERSATION_AS_UNREAD: "Marcar como não lida", CONTACT_INFORMATION_HIDDEN: "Informação oculta", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, $i = { code: "ro-RO", name: "Romanian (Romania)", translation: { YESTERDAY: "Ieri", TODAY: "Astăzi", DAYS: "z", HOURS: "o", MINUTES: "m", JUST_NOW: "chiar acum", LOCATION: "Locație", CANCEL: "Anulare", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Notificări browser", DESKTOP_NOTIFICATIONS_ERROR: "Nu se pot activa notificări browser deoarece browserul dvs. le blochează în mod activ. Încercați să căutați în setări sau utilizând un alt browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Notificare de debit ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Dacă țineți fișa browserului deschis, veți vedea acest pop-up atunci când cineva vorbește cu dvs.", SEND_BUTTON_TEXT: "Trimiteți", ENTRYBOX_TEXT_LIMIT: "Sunt permise numai 10.000 de caractere.", ENTRYBOX_PLACEHOLDER: "Spune ceva...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Această conversație nu mai este activă.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Puteți citi, dar nu puteți trimite mesaje.", MESSAGELIST_LOADING_OLDER: "Încărcarea mesajelor mai vechi...", MESSAGELIST_SHOW_OLDER: "Afișați mesaje mai vechi", MESSAGELIST_NEW_MARKER: "Nou", MESSAGE_SENT_VIA_EMAIL: "Acest mesaj a fost trimis prin e-mail", YOU_MARKER: "voi", UPLOAD_IN_PROGRESS: "Încărcarea...", UPLOAD_SEND_FILE: "Trimiteți fișierul", UPLOAD_SHARE_LOCATION: "Distribuiți locația", UPLOAD_ERROR: "Sa încărcat ceva în mod greșit. Fișierul ar putea fi neacceptat sau prea mare.", SHARE_LOCATION_ERROR: "Nu se poate partaja locația: ", LOADING: "Încărcare...", HUB_EMPTY: "Istoricul chat-ului dvs. va apărea aici", HUB_SHOW_EARLIER: "Afișați discuțiile anterioare", INBOX_NO_CHATS_TITLE: "Încă nu vorbești!", INBOX_NO_CHATS_BODY: "După ce ați avut una sau mai multe conversații, acestea vor apărea aici.", ENABLE_TRANSLATION: "Traduceți această conversație în română", DISABLE_TRANSLATION: "Arată originalul", SEARCH_PLACEHOLDER_TEXT: "Căutare...", SEARCH_SEARCHING: "Se caută...", SEARCH_NO_RESULTS: "Nu s-au găsit rezultate", SEARCH_NO_MORE_RESULTS: "Nu mai există rezultate", CHAT_NOT_FOUND: "Conversația nu a fost găsită", DELETE_MESSAGE: "Șterge mesajul", DELETION_EXPLANATION: "Dacă ștergi acest mesaj, acesta va dispărea pentru toată lumea.", EDIT_MESSAGE: "Redactează mesajul", SAVE: "Salvare", EDITED_INDICATOR: "editat", REPLY_TO_MESSAGE: "Răspundeți", ADD_REACTION: "Adaugă o reacție", AUTH_EXPIRED_OVERLAY_TITLE: "Sesiunea dumneavoastră de chat a expirat", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Reîmprospătați pagina pentru a continua", VOICE_MESSAGE: "Mesaj vocal", CONTACT_INFORMATION_HIDDEN: "Informații ascunse", LEAVE_CONVERSATION: "Părăsește conversația", MARK_CONVERSATION_AS_UNREAD: "Marcheaza ca necitit", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, xi = { code: "ru-RU", name: "Russian", translation: { YESTERDAY: "Вчера", TODAY: "Сегодня", DAYS: "д", HOURS: "ч", MINUTES: "м", JUST_NOW: "только что", LOCATION: "Местоположение", CANCEL: "Отмена", INBOX: "Входящие", DESKTOP_NOTIFICATIONS: "Оповещения", DESKTOP_NOTIFICATIONS_ERROR: "Невозможно включить оповещения, потому что ваш браузер активно блокирует их. Проверьте ваши настройки или попробуйте другой браузер.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} демо-оповещение`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Если вкладка вашего браузера открыта, вы увидите всплывающее окошко оповещения когда кто-то отправит вам сообщение.", SEND_BUTTON_TEXT: "Отправить", ENTRYBOX_TEXT_LIMIT: "Разрешено использовать только 10 тысяч символов.", ENTRYBOX_PLACEHOLDER: "Напишите что-нибудь...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Этот разговор больше неактивен.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Вы можете читать, но не отправлять сообщения.", MESSAGELIST_LOADING_OLDER: "Загрузка старых сообщения...", MESSAGELIST_SHOW_OLDER: "Показать старые сообщения", MESSAGELIST_NEW_MARKER: "Новые", MESSAGE_SENT_VIA_EMAIL: "Это сообщение было отправлено по электронной почте", YOU_MARKER: "вы", UPLOAD_IN_PROGRESS: "Загрузка...", UPLOAD_SEND_FILE: "Отправить файл", UPLOAD_SHARE_LOCATION: "Поделиться местоположением", UPLOAD_ERROR: "Что-то пошло не так: такой файл не поддерживается или он слишком большой.", SHARE_LOCATION_ERROR: "Не удается поделиться местоположением: ", LOADING: "Загрузка...", HUB_EMPTY: "Здесь появится ваша история чата", HUB_SHOW_EARLIER: "Показать предыдущие чаты", INBOX_NO_CHATS_TITLE: "Пока нет чатов!", INBOX_NO_CHATS_BODY: "Как только у вас будет один или несколько разговоров, они появятся здесь.", ENABLE_TRANSLATION: "Переведите этот разговор на русский", DISABLE_TRANSLATION: "Show source", SEARCH_PLACEHOLDER_TEXT: "поиск...", SEARCH_SEARCHING: "Поиск...", SEARCH_NO_RESULTS: "Результаты не найдены", SEARCH_NO_MORE_RESULTS: "Больше результатов нет", CHAT_NOT_FOUND: "Чат не найден", DELETE_MESSAGE: "Удалить сообщение", DELETION_EXPLANATION: "Если вы удалите это сообщение, оно исчезнет для всех.", EDIT_MESSAGE: "Изменить сообщение", SAVE: "сохранить", EDITED_INDICATOR: "изменено", REPLY_TO_MESSAGE: "Ответить", ADD_REACTION: "Добавить реакцию", AUTH_EXPIRED_OVERLAY_TITLE: "Срок действия вашего сеанса чата истек", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Обновите страницу, чтобы продолжить", VOICE_MESSAGE: "Голосовое сообщение", CONTACT_INFORMATION_HIDDEN: "Информация скрыта", LEAVE_CONVERSATION: "Выйти из беседы", MARK_CONVERSATION_AS_UNREAD: "Отметить как непрочитанное", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, ji = { code: "sq-AL", name: "Albanian", translation: { YESTERDAY: "Dje", TODAY: "Sot", DAYS: "d", HOURS: "o", MINUTES: "m", JUST_NOW: "Tani", LOCATION: "Pozicion", CANCEL: "Anulo", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Njoftimet e shfletuesit", DESKTOP_NOTIFICATIONS_ERROR: "Nuk mund të aktivizohen njoftimet në shfletues sepse shfletuesi juaj i bllokon ato në mënyrë aktive. Provoni të shikoni cilësimet ose përdorni një shfletues të ndryshëm.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} njoftime në desktop`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Lënia e skedës së shfletuesit tuaj të hapur do të pop-up kur dikush flet me ju.", SEND_BUTTON_TEXT: "Dërgo", ENTRYBOX_TEXT_LIMIT: "Lejohen vetëm 10,000 karaktere", ENTRYBOX_PLACEHOLDER: "Thuaj diçka...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Kjo bisedë nuk është më aktive.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Mund të lexoni por jo të dërgoni mesazhe.", MESSAGELIST_LOADING_OLDER: "Duke ngarkuar mesazhe më të vjetra...", MESSAGELIST_SHOW_OLDER: "Trego mesazhe më të vjetra", MESSAGELIST_NEW_MARKER: "E ri", MESSAGE_SENT_VIA_EMAIL: "Ky mesazh u dërgua si email", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Ngarkim...", UPLOAD_SEND_FILE: "Dërgo datotekën", UPLOAD_SHARE_LOCATION: "Ndani lokacionin", UPLOAD_ERROR: "Na vjen keq, diçka nuk shkoi si duhet. Dosja mund të mos ket mbështetje ose mund të jetë shumë e madhe.", SHARE_LOCATION_ERROR: "Nuk mund të ndahet lokacioni: ", LOADING: "Ngarkim...", HUB_EMPTY: "Këtu do të paraqitet/ shfaqet historia e bisedës tuaj", HUB_SHOW_EARLIER: "Shfaqi bisedat e mëparshme", INBOX_NO_CHATS_TITLE: "Nuk ka biseda!", INBOX_NO_CHATS_BODY: "Pasi të keni një ose më shumë biseda, ato do të paraqiten/shfaqen këtu.", ENABLE_TRANSLATION: "Përkthejeni këtë bisedë në shqiptare", DISABLE_TRANSLATION: "Shikoni origjinalin", SEARCH_PLACEHOLDER_TEXT: "Kërko...", SEARCH_SEARCHING: "Kërko...", SEARCH_NO_RESULTS: "Nuk ka rezultate", SEARCH_NO_MORE_RESULTS: "Nuk ka më rezultate", CHAT_NOT_FOUND: "Biseda nuk u gjet", DELETE_MESSAGE: "Fshi mesazhin", DELETION_EXPLANATION: "Nëse e fshini këtë mesazh, ai do të zhduket për të gjithë.", EDIT_MESSAGE: "Redakto mesazhin", SAVE: "Ruaj", EDITED_INDICATOR: "redaktuar", REPLY_TO_MESSAGE: "Përgjigj", ADD_REACTION: "Shtoni reagimin", AUTH_EXPIRED_OVERLAY_TITLE: "Sesioni juaj i bisedës ka skaduar", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Rifresko faqen për të vazhduar", VOICE_MESSAGE: "Mesazh zanor", CONTACT_INFORMATION_HIDDEN: "informacione të fshehura", LEAVE_CONVERSATION: "Largohu nga bashkëbisedimi", MARK_CONVERSATION_AS_UNREAD: "Shëno si të palexuar", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Fi = { code: "sr-SP", name: "Serbian", translation: { YESTERDAY: "Juče", TODAY: "Danas", DAYS: "d", HOURS: "s", MINUTES: "m", JUST_NOW: "Upravo sad", LOCATION: "Lokacija", CANCEL: "Otkaži", INBOX: "Pretinac", DESKTOP_NOTIFICATIONS: "Browser Notifikacija", DESKTOP_NOTIFICATIONS_ERROR: "Browser notifikacije nisu omogućene jer ih vaš pregledač aktivno blokira. Pokušajte pogledati postavke ili koristiti neki drugi pregledač.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikacija`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ako karticu pregledača ostavite otvorenu, pojaviće se ovaj pop-up kada neko razgovara s vama.", SEND_BUTTON_TEXT: "Pošalji", ENTRYBOX_TEXT_LIMIT: "Dozvoljeno je samo 10.000 znakova.", ENTRYBOX_PLACEHOLDER: "Kaži nešto...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ovaj razgovor više nije aktivan.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Možete da čitate, ali ne i da šaljete poruke.", MESSAGELIST_LOADING_OLDER: "Učitavam starije poruke...", MESSAGELIST_SHOW_OLDER: "Prikaži starije poruke", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Ova poruka je poslana imejlom", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Učitavam...", UPLOAD_SEND_FILE: "Pošalji datoteku", UPLOAD_SHARE_LOCATION: "Podeli lokaciju", UPLOAD_ERROR: "Nažalost, nešto je pošlo krivo. Datoteka možda nije podržana ili je prevelika.", SHARE_LOCATION_ERROR: "Nije moguće podeliti lokaciju: ", LOADING: "Učitavam...", HUB_EMPTY: "Ovde će biti prikazana istorija razgovora", HUB_SHOW_EARLIER: "Prikaži ranije razgovore", INBOX_NO_CHATS_TITLE: "Nema razgovora!", INBOX_NO_CHATS_BODY: "Nakon što vodite jedan ili više razgovora, oni će se pojaviti ovde.", ENABLE_TRANSLATION: "Prevedi ovaj razgovor na srpski jezik", DISABLE_TRANSLATION: "Prikaži original", SEARCH_PLACEHOLDER_TEXT: "Pretraži...", SEARCH_SEARCHING: "Pretraživanje...", SEARCH_NO_RESULTS: "Nema rezultata", SEARCH_NO_MORE_RESULTS: "Nema više rezultata", CHAT_NOT_FOUND: "Ćaskanje nije pronađeno", DELETE_MESSAGE: "Izbriši poruku", DELETION_EXPLANATION: "Ako obrišete ovu poruku, ona neće biti vidljiva ni za koga.", EDIT_MESSAGE: "Ispravi poruku", SAVE: "Sačuvaj", EDITED_INDICATOR: "ispravljeno", REPLY_TO_MESSAGE: "Odgovorite", ADD_REACTION: "Dodaj reakciju", AUTH_EXPIRED_OVERLAY_TITLE: "Vaša sesija ćaskanja je istekla", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Osvežite stranicu da biste nastavili", VOICE_MESSAGE: "Glasovna poruka", CONTACT_INFORMATION_HIDDEN: "Sakrivene informacije", LEAVE_CONVERSATION: "Napusti razgovor", MARK_CONVERSATION_AS_UNREAD: "Označi kao nepročitanu", REPLY_TO_ARIA_LABEL: (e, t) => `Odgovarate korisniku ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Izađi iz moda pisanja odgovora", STATUS_INDICATOR_ONLINE: "Aktivan", STATUS_INDICATOR_OFFLINE: "Neaktivan" } }, Vi = { code: "sv-SE", name: "Swedish (Sweden)", translation: { YESTERDAY: "Igår", TODAY: "Idag", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "just nu", LOCATION: "Plats", CANCEL: "Avbryt", INBOX: "Inkorg", DESKTOP_NOTIFICATIONS: "Webbläsarnotiser", DESKTOP_NOTIFICATIONS_ERROR: "Kan inte aktivera webbläsarnotiser eftersom din webbläsare aktivt blockerar dem. Se över inställningarna eller använd en annan webbläsare.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demonotis`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Om du har fliken i webbläsaren öppen så kommer den här notisen visas när någon pratar med dig.", SEND_BUTTON_TEXT: "Skicka", ENTRYBOX_TEXT_LIMIT: "Max 10 000 tecken är tillåtet.", ENTRYBOX_PLACEHOLDER: "Skriv ett meddelande...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Den här konversationen är inte längre aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Du kan läsa men inte skicka meddelanden.", MESSAGELIST_LOADING_OLDER: "Läser in tidigare meddelanden...", MESSAGELIST_SHOW_OLDER: "Visa tidigare meddelanden", MESSAGELIST_NEW_MARKER: "Nytt", MESSAGE_SENT_VIA_EMAIL: "Detta meddelande skickades via e-post", YOU_MARKER: "du", UPLOAD_IN_PROGRESS: "Laddar upp...", UPLOAD_SEND_FILE: "Skicka fil", UPLOAD_SHARE_LOCATION: "Dela plats", UPLOAD_ERROR: "Något gick fel vid uppladdningen. Filen kan vara av en typ som inte stöds eller är för stor.", SHARE_LOCATION_ERROR: "Kan inte dela plats: ", LOADING: "Laddar...", HUB_EMPTY: "Din chatthistorik kommer att visas här", HUB_SHOW_EARLIER: "Visa tidigare chattar", INBOX_NO_CHATS_TITLE: "Inga chattar ännu!", INBOX_NO_CHATS_BODY: "När du har haft en eller flera konversationer kommer de att visas här.", ENABLE_TRANSLATION: "Översätt den här konversationen till svenska", DISABLE_TRANSLATION: "Visa original", SEARCH_PLACEHOLDER_TEXT: "Sök...", SEARCH_SEARCHING: "Söker...", SEARCH_NO_RESULTS: "Inga resultat hittades", SEARCH_NO_MORE_RESULTS: "Inga fler resultat", CHAT_NOT_FOUND: "Chatten hittades inte", DELETE_MESSAGE: "Radera meddelandet", DELETION_EXPLANATION: "Om du raderar det här meddelandet försvinner det för alla.", EDIT_MESSAGE: "Redigera meddelandet", SAVE: "Spara", EDITED_INDICATOR: "redigerad", REPLY_TO_MESSAGE: "Svara", ADD_REACTION: "Lägg till reaktion", AUTH_EXPIRED_OVERLAY_TITLE: "Din chatsession har gått ut", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Uppdatera sidan för att fortsätta", VOICE_MESSAGE: "Röstmeddelande", CONTACT_INFORMATION_HIDDEN: "Dold information", LEAVE_CONVERSATION: "Lämna konversationen", MARK_CONVERSATION_AS_UNREAD: "Markera som oläst", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Xi = { code: "tr-TR", name: "Turkish", translation: { YESTERDAY: "Dün", TODAY: "Bugün", DAYS: "g", HOURS: "s", MINUTES: "d", JUST_NOW: "az önce", LOCATION: "Konum", CANCEL: "İptal", INBOX: "Gelen Kutusu", SEND_BUTTON_TEXT: "Gönder", ENTRYBOX_TEXT_LIMIT: "En fazla 10.000 karaktere izin veriliyor.", ENTRYBOX_PLACEHOLDER: "Bir şeyler söyle...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Bu konuşma artık aktif değil.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Mesajları okuyabilirsiniz ancak mesaj gönderemezsiniz.", MESSAGELIST_LOADING_OLDER: "Eski mesajlar yükleniyor...", MESSAGELIST_SHOW_OLDER: "Eski mesajları göster", MESSAGELIST_NEW_MARKER: "Yeni", DESKTOP_NOTIFICATIONS: "Tarayıcı bildirimleri", DESKTOP_NOTIFICATIONS_ERROR: "Tarayıcınız aktif olarak engellediğinden tarayıcı bildirimlerini etkinleştiremiyoruz. Ayarları kontrol etmeyi veya farklı bir tarayıcı kullanmayı deneyebilirsiniz.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} test bildirimi`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Eğer tarayıcınızın penceresini açık tutarsanız biri mesaj yazdığında bu bildirimi göreceksiniz.", MESSAGE_SENT_VIA_EMAIL: "Bu mesaj e-posta ile gönderilmiştir.", YOU_MARKER: "siz", UPLOAD_IN_PROGRESS: "Yükleniyor...", UPLOAD_SEND_FILE: "Dosya gönder", UPLOAD_SHARE_LOCATION: "Konum paylaş", UPLOAD_ERROR: "Yükleme sırasında bir şeyler yanlış gitti. Dosya desteklenmiyor veya izin verilenden büyük olabilir.", SHARE_LOCATION_ERROR: "Konum paylaşılamadı: ", LOADING: "Yükleniyor...", HUB_EMPTY: "Konuşma geçmişiniz burada görünecek", HUB_SHOW_EARLIER: "Önceki konuşmaları göster", INBOX_NO_CHATS_TITLE: "Henüz konuşma yok!", INBOX_NO_CHATS_BODY: "Bir veya daha fazla konuşma başlattığınız konuşmalar burada belirecek.", ENABLE_TRANSLATION: "Bu konuşmayı Türkçe'ye çevir", DISABLE_TRANSLATION: "Orijinali göster", SEARCH_PLACEHOLDER_TEXT: "Ara...", SEARCH_SEARCHING: "Arıyor...", SEARCH_NO_RESULTS: "Sonuç bulunamadı", SEARCH_NO_MORE_RESULTS: "Başka sonuç bulunamadı.", CHAT_NOT_FOUND: "Sohbet bulunamadı", DELETE_MESSAGE: "Mesajı sil", DELETION_EXPLANATION: "Bu mesajı silerseniz herkes için görünmez olacaktır.", EDIT_MESSAGE: "Mesajı düzenle", SAVE: "Kaydet", EDITED_INDICATOR: "düzenlenmiş", REPLY_TO_MESSAGE: "Yanıtla", ADD_REACTION: "Tepki ekle", AUTH_EXPIRED_OVERLAY_TITLE: "Sohbet oturumunuz sona erdi", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Devam etmek için sayfayı yenileyin", VOICE_MESSAGE: "Sesli mesaj", CONTACT_INFORMATION_HIDDEN: "Gizli bilgi", LEAVE_CONVERSATION: "Konuşmadan ayrıl", MARK_CONVERSATION_AS_UNREAD: "Okunmamış olarak işaretle", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Gi = { code: "uk-UA", name: "Ukrainian (Ukraine)", translation: { YESTERDAY: "Вчора", TODAY: "Сьогодні", DAYS: "d", HOURS: "h", MINUTES: "м", JUST_NOW: "просто зараз", LOCATION: "Місцезнаходження", CANCEL: "Скасувати", INBOX: "Вхідні", DESKTOP_NOTIFICATIONS: "Сповіщення в браузері", DESKTOP_NOTIFICATIONS_ERROR: "Неможливо ввімкнути сповіщення в браузері, оскільки ваш веб-переглядач активно їх блокує. Спробуйте переглянути налаштування або використовувати інший браузер.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Демо-повідомлення про ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Якщо ви відкриєте вкладку веб-переглядача відкритою, ви побачите це спливаюче вікно, коли хтось спілкується з вами.", SEND_BUTTON_TEXT: "Надіслати", ENTRYBOX_TEXT_LIMIT: "Дозволено лише 10 000 символів.", ENTRYBOX_PLACEHOLDER: "Скажи щось...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ця розмова більше не активна.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Ви можете читати, але не надсилати повідомлення.", MESSAGELIST_LOADING_OLDER: "Завантаження старих повідомлень...", MESSAGELIST_SHOW_OLDER: "Показати старіші повідомлення", MESSAGELIST_NEW_MARKER: "Нові", MESSAGE_SENT_VIA_EMAIL: "Це повідомлення надіслано електронною поштою", YOU_MARKER: "ти", UPLOAD_IN_PROGRESS: "Завантаження...", UPLOAD_SEND_FILE: "Надіслати файл", UPLOAD_SHARE_LOCATION: "Поділитися місцезнаходженням", UPLOAD_ERROR: "На жаль, під час завантаження щось не вдалось. Файл може бути непідтримуваним або занадто великим.", SHARE_LOCATION_ERROR: "Неможливо поділити місцезнаходження: ", LOADING: "Завантаження...", HUB_EMPTY: "Тут відобразиться ваша історія чатів", HUB_SHOW_EARLIER: "Показати попередні чати", INBOX_NO_CHATS_TITLE: "Чатів ще немає!", INBOX_NO_CHATS_BODY: "Після того, як ви проведете одну чи кілька бесід, вони з’являться тут.", ENABLE_TRANSLATION: "Перекласти цю розмову англійською", DISABLE_TRANSLATION: "Показати оригінал", SEARCH_PLACEHOLDER_TEXT: "Пошук...", SEARCH_SEARCHING: "Пошук...", SEARCH_NO_RESULTS: "Не знайдено результатів", SEARCH_NO_MORE_RESULTS: "Більше немає результатів", CHAT_NOT_FOUND: "Чат не знайдено", DELETE_MESSAGE: "Видалити повідомлення", DELETION_EXPLANATION: "Якщо ви видалите це повідомлення, воно зникне для всіх.", EDIT_MESSAGE: "Редагувати повідомлення", SAVE: "Зберегти", EDITED_INDICATOR: "відредаговано", REPLY_TO_MESSAGE: "Відповісти", ADD_REACTION: "Додати реакцію", AUTH_EXPIRED_OVERLAY_TITLE: "Ваша сесія в чаті закінчилась", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Оновіть сторінку, щоб продовжити", VOICE_MESSAGE: "Голосове повідомлення", CONTACT_INFORMATION_HIDDEN: "Прихована інформація", LEAVE_CONVERSATION: "Залишити розмову", MARK_CONVERSATION_AS_UNREAD: "Відзначити як непрочитане", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, zi = { code: "vi-VN", name: "Vietnamese", translation: { YESTERDAY: "Hôm qua", TODAY: "Hôm nay", DAYS: "ngày", HOURS: "giờ", MINUTES: "phút", JUST_NOW: "vừa xong", LOCATION: "Địa điểm", CANCEL: "Hủy", INBOX: "Hộp thư đến", DESKTOP_NOTIFICATIONS: "Thông báo trình duyệt", DESKTOP_NOTIFICATIONS_ERROR: "Không thể bật thông báo trên trình duyệt vì trình duyệt của bạn đang tắt chức năng này. Hãy thử tìm trong cài đặt trình duyệt hoặc sử dụng một trình duyệt khác.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} thông báo thử nghiệm`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Nếu bạn giữ tab trình duyệt của bạn mở, bạn sẽ thấy cửa sổ bật lên khi ai đó nói chuyện với bạn.", SEND_BUTTON_TEXT: "Gửi", ENTRYBOX_TEXT_LIMIT: "Tối đa 10.000 ký tự.", ENTRYBOX_PLACEHOLDER: "Nói gì đó...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Cuộc hội thoại này không còn hoạt động.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Bạn có thể đọc, nhưng không thể gửi tin nhắn.", MESSAGELIST_LOADING_OLDER: "Đang tải tin nhắn cũ...", MESSAGELIST_SHOW_OLDER: "Hiển thị tin nhắn trước đó", MESSAGELIST_NEW_MARKER: "Mới", MESSAGE_SENT_VIA_EMAIL: "Tin nhắn này đã được gửi qua email", YOU_MARKER: "bạn", UPLOAD_IN_PROGRESS: "Đang tải lên...", UPLOAD_SEND_FILE: "Gửi tệp", UPLOAD_SHARE_LOCATION: "Chia sẻ vị trí", UPLOAD_ERROR: "Thật không may, quá trình tải lên không thành công. Tệp không được hỗ trợ hoặc quá lớn.", SHARE_LOCATION_ERROR: "Không thể chia sẻ vị trí: ", LOADING: "Đang tải...", HUB_EMPTY: "Lịch sử trò chuyện của bạn sẽ hiển thị ở đây", HUB_SHOW_EARLIER: "Hiển thị các cuộc trò chuyện trước đó", INBOX_NO_CHATS_TITLE: "Chưa có cuộc trò chuyện nào!", INBOX_NO_CHATS_BODY: "Khi bạn đã có một hoặc nhiều cuộc trò chuyện, chúng sẽ hiển thị ở đây.", ENABLE_TRANSLATION: "Dịch cuộc hội thoại sang Tiếng Việt", DISABLE_TRANSLATION: "Hiển thị nội dung gốc", SEARCH_PLACEHOLDER_TEXT: "TÌm kiếm...", SEARCH_SEARCHING: "Đang tìm kiếm...", SEARCH_NO_RESULTS: "Không tìm thấy kết quả nào", SEARCH_NO_MORE_RESULTS: "Không có kết quả nào khác", CHAT_NOT_FOUND: "Không tìm thấy cuộc trò chuyện", DELETE_MESSAGE: "Xóa tin nhắn", DELETION_EXPLANATION: "Nếu bạn xóa tin nhắn này, tất cả mọi người sẽ không còn thấy nó.", EDIT_MESSAGE: "Chỉnh sửa tin nhắn", SAVE: "lưu", EDITED_INDICATOR: "đã chỉnh sửa", REPLY_TO_MESSAGE: "đáp lại", ADD_REACTION: "Thêm biểu tượng cảm xúc", AUTH_EXPIRED_OVERLAY_TITLE: "Phiên trò chuyện của bạn đã hết hạn", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Hãy làm mới trang để tiếp tục", VOICE_MESSAGE: "Tin nhắn thoại", CONTACT_INFORMATION_HIDDEN: "Thông tin ẩn", LEAVE_CONVERSATION: "Thoát khỏi cuộc trò chuyện", MARK_CONVERSATION_AS_UNREAD: "Đánh dấu là chưa đọc", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ki = { code: "zh-CN", name: "Chinese (Simplified)", translation: { YESTERDAY: "昨天", TODAY: "今天", DAYS: "天", HOURS: "小时", MINUTES: "分钟", JUST_NOW: "刚才", LOCATION: "地点", CANCEL: "取消", INBOX: "收件箱", DESKTOP_NOTIFICATIONS: "浏览器通知", DESKTOP_NOTIFICATIONS_ERROR: "因浏览器设置为阻止,所以无法激活浏览器提醒。请去设置里查看或者尝试其他的浏览器。", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} 演示提醒`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "只要保持浏览器开着,如果有人和你对话,将会自动弹出对话窗口。", SEND_BUTTON_TEXT: "发送", ENTRYBOX_TEXT_LIMIT: "不超过10,000个字符。", ENTRYBOX_PLACEHOLDER: "写点什么吧……", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "该对话已结束。", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "你只能阅读信息,不能发送信息。", MESSAGELIST_LOADING_OLDER: "载入之前的信息……", MESSAGELIST_SHOW_OLDER: "显示之前的信息", MESSAGELIST_NEW_MARKER: "新消息", MESSAGE_SENT_VIA_EMAIL: "该信息已通过邮件发送。", YOU_MARKER: "你", UPLOAD_IN_PROGRESS: "上传中……", UPLOAD_SEND_FILE: "发送文件", UPLOAD_SHARE_LOCATION: "分享地址", UPLOAD_ERROR: "上传出错。文件格式不支持或者太大。", SHARE_LOCATION_ERROR: "无法分享地址: ", LOADING: "正在载入……", HUB_EMPTY: "你的聊天记录将在此显示。", HUB_SHOW_EARLIER: "显示之前的聊天记录。", INBOX_NO_CHATS_TITLE: "暂无任何聊天记录!", INBOX_NO_CHATS_BODY: "如果你有一个或多个对话窗口进行中,将显示在这里。", ENABLE_TRANSLATION: "翻译至简体中文", DISABLE_TRANSLATION: "查看原文", SEARCH_PLACEHOLDER_TEXT: "搜索...", SEARCH_SEARCHING: "正在搜索...", SEARCH_NO_RESULTS: "未找到结果", SEARCH_NO_MORE_RESULTS: "无更多结果", CHAT_NOT_FOUND: "未找到“聊天”", DELETE_MESSAGE: "删除消息", DELETION_EXPLANATION: "如果您删除此消息,那么所有人都将无法再看到它。", EDIT_MESSAGE: "编辑消息", SAVE: "保存", EDITED_INDICATOR: "本消息有改动", REPLY_TO_MESSAGE: "回复", ADD_REACTION: "添加反应", AUTH_EXPIRED_OVERLAY_TITLE: "您的聊天会话已过期", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "刷新页面以继续", VOICE_MESSAGE: "语音消息", CONTACT_INFORMATION_HIDDEN: "隐藏信息", LEAVE_CONVERSATION: "离开对话", MARK_CONVERSATION_AS_UNREAD: "标记为未读", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Wi = { code: "zh-TW", name: "Chinese (Traditional)", translation: { YESTERDAY: "昨天", TODAY: "昨天", DAYS: "天", HOURS: "小時", MINUTES: "分", JUST_NOW: "現在", LOCATION: "地點", CANCEL: "取消", INBOX: "收件箱", DESKTOP_NOTIFICATIONS: "瀏覽器通知", DESKTOP_NOTIFICATIONS_ERROR: "無法啟用瀏覽器通知,因為您的瀏覽器主動阻止它們。 嘗試查看設置或使用其他瀏覽器。", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} 演示通知`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "如果您持續打開瀏覽器標籤頁,當有人與您通話時,您會看到此彈出窗口。", SEND_BUTTON_TEXT: "發送", ENTRYBOX_TEXT_LIMIT: "只允許10.000個字符。", ENTRYBOX_PLACEHOLDER: "說些什麼...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "此對話不再有效。", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "您可以閱讀,但不能發送消息。", MESSAGELIST_LOADING_OLDER: "加載舊訊息...", MESSAGELIST_SHOW_OLDER: "顯示較舊的訊息", MESSAGELIST_NEW_MARKER: "新的", MESSAGE_SENT_VIA_EMAIL: "此訊息是通過電郵發送的", YOU_MARKER: "您", UPLOAD_IN_PROGRESS: "上傳中...", UPLOAD_SEND_FILE: "發送文件", UPLOAD_SHARE_LOCATION: "共享位置", UPLOAD_ERROR: "不幸的是,上傳出了問題。 該文件可能不受支持或太大。", SHARE_LOCATION_ERROR: "無法分享位置:", LOADING: "載入中...", HUB_EMPTY: "您的聊天記錄將顯示在此處", HUB_SHOW_EARLIER: "顯示早先的聊天記錄", INBOX_NO_CHATS_TITLE: "還沒聊天!", INBOX_NO_CHATS_BODY: "一旦您進行了一次或多次對話,他們就會顯示在此處。", ENABLE_TRANSLATION: "翻譯此對話至繁體中文", DISABLE_TRANSLATION: "顯示原文", SEARCH_PLACEHOLDER_TEXT: "搜尋...", SEARCH_SEARCHING: "正在搜尋...", SEARCH_NO_RESULTS: "找不到任何結果", SEARCH_NO_MORE_RESULTS: "沒有其他結果", CHAT_NOT_FOUND: "查無對話", DELETE_MESSAGE: "刪除訊息", DELETION_EXPLANATION: "您如果刪除這條訊息,所有人都將看不到它。", EDIT_MESSAGE: "編輯訊息", SAVE: "儲存", EDITED_INDICATOR: "已編輯", REPLY_TO_MESSAGE: "回覆", ADD_REACTION: "加入表情回應", AUTH_EXPIRED_OVERLAY_TITLE: "您的會話過程已過期", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "請刷新頁面以繼續", VOICE_MESSAGE: "語音訊息", CONTACT_INFORMATION_HIDDEN: "隱藏訊息", LEAVE_CONVERSATION: "離開對話", MARK_CONVERSATION_AS_UNREAD: "標記為未讀", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, on = { ar: ui, bg: Oi, bs: Ti, ca: di, cs: Si, da: Ii, de: Ni, el: Ri, en: O, es: Li, et: mi, fa: pi, fi: hi, fr: Di, he: gi, hi: Ci, hr: fi, hu: vi, id: ki, is: Mi, it: Pi, ja: bi, ka: Ui, ko: Hi, nb: yi, nl: wi, pl: Bi, pt: Yi, ro: $i, ru: xi, sq: ji, sr: Fi, sv: Vi, tr: Xi, uk: Gi, vi: zi, zh: Ki, zhTw: Wi };
847
+ const bt = new ut(), Re = new ut(), O = { code: "en-US", name: "English (US)", translation: { YESTERDAY: "Yesterday", TODAY: "Today", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "just now", LOCATION: "Location", CANCEL: "Cancel", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Browser notifications", DESKTOP_NOTIFICATIONS_ERROR: "Can't enable browser notifications because your browser actively blocks them. Try looking in the settings or using a different browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notification`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "If you keep your browser tab open, you'll see this pop up when someone talks to you.", SEND_BUTTON_TEXT: "Send", ENTRYBOX_TEXT_LIMIT: "Only 10,000 characters are allowed.", ENTRYBOX_PLACEHOLDER: "Say something...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "This conversation is no longer active.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "You can read, but not send messages.", MESSAGELIST_LOADING_OLDER: "Loading older messages...", MESSAGELIST_SHOW_OLDER: "Show older messages", MESSAGELIST_NEW_MARKER: "New", MESSAGE_SENT_VIA_EMAIL: "This message was sent via email", YOU_MARKER: "you", UPLOAD_IN_PROGRESS: "Uploading...", UPLOAD_SEND_FILE: "Send file", UPLOAD_SHARE_LOCATION: "Share location", UPLOAD_ERROR: "Unfortunately, something went wrong uploading. The file might be unsupported or too large.", SHARE_LOCATION_ERROR: "Cannot share location: ", LOADING: "Loading...", HUB_EMPTY: "Your chat history will show up here", HUB_SHOW_EARLIER: "Show earlier chats", INBOX_NO_CHATS_TITLE: "No chats yet!", INBOX_NO_CHATS_BODY: "Once you've had one or more conversations, they will show up here.", ENABLE_TRANSLATION: "Translate this conversation to English", DISABLE_TRANSLATION: "Show original", SEARCH_PLACEHOLDER_TEXT: "Search...", SEARCH_SEARCHING: "Searching...", SEARCH_NO_RESULTS: "No results found", SEARCH_NO_MORE_RESULTS: "No more results", CHAT_NOT_FOUND: "Chat not found", DELETE_MESSAGE: "Delete message", DELETION_EXPLANATION: "If you delete this message, it will disappear for everybody.", EDIT_MESSAGE: "Edit message", SAVE: "Save", EDITED_INDICATOR: "edited", REPLY_TO_MESSAGE: "Reply", REPLY_TO_ARIA_LABEL: (e, t) => `Replying to ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Exit reply mode", ADD_REACTION: "Add reaction", AUTH_EXPIRED_OVERLAY_TITLE: "Your chat session has expired", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Refresh the page to continue", VOICE_MESSAGE: "Voice message", LEAVE_CONVERSATION: "Leave conversation", MARK_CONVERSATION_AS_UNREAD: "Mark as unread", STATUS_INDICATOR_ONLINE: "Active", STATUS_INDICATOR_OFFLINE: "Away", CONTACT_INFORMATION_HIDDEN: "hidden information" } }, ui = { code: "ar", name: "Arabic", translation: { YESTERDAY: "الأمس", TODAY: "اليوم", DAYS: "يوم", HOURS: "ساعة", MINUTES: "دقيقة", JUST_NOW: "فقط الآن", LOCATION: "الموقع", CANCEL: "إلغاء", INBOX: "علبة الوارد", DESKTOP_NOTIFICATIONS: "إشعارات المتصفح", DESKTOP_NOTIFICATIONS_ERROR: "لا يمكن تمكين إشعارات المتصفح لأن متصفحك يمنعها بشكل نشط. جرّب البحث في الإعدادات أو استخدام متصفح آخر.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `إعلام ${e} التجريبي`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "إذا أبقيت علامة تبويب المتصفح مفتوحة ، فسترى هذا ينبثق عندما يتحدث شخص معك.", SEND_BUTTON_TEXT: "إرسال", ENTRYBOX_TEXT_LIMIT: "يُسمح فقط بـ 10.000 حرف.", ENTRYBOX_PLACEHOLDER: "قل شيئًا ...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "هذه المحادثة لم تعد نشطة.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "يمكنك القراءة ، لكن لا يمكنك إرسال الرسائل.", MESSAGELIST_LOADING_OLDER: "جارٍ تحميل الرسائل القديمة ...", MESSAGELIST_SHOW_OLDER: "عرض الرسائل الأقدم", MESSAGELIST_NEW_MARKER: "جديد", MESSAGE_SENT_VIA_EMAIL: "تم إرسال هذه الرسالة عبر البريد الإلكتروني", YOU_MARKER: "أنت", UPLOAD_IN_PROGRESS: "جارٍ التحميل ...", UPLOAD_SEND_FILE: "إرسال ملف", UPLOAD_SHARE_LOCATION: "مشاركة الموقع", UPLOAD_ERROR: "حدث خطأ ما في تحميل شيء. ربما يكون الملف غير متوافق أو كبير جدًا.", SHARE_LOCATION_ERROR: "لا يمكن مشاركة الموقع:", LOADING: "جارٍ التحميل ...", HUB_EMPTY: "سوف يظهر سجل الدردشات هنا", HUB_SHOW_EARLIER: "إظهار الدردشات السابقة", INBOX_NO_CHATS_TITLE: "لا توجد دردشات بعد!", INBOX_NO_CHATS_BODY: "بمجرد أن يكون لديك واحد أو أكثر من المحادثات ، سوف تظهر هنا.", ENABLE_TRANSLATION: "ترجم هذه المحادثة إلى العربية", DISABLE_TRANSLATION: "إظهار الأصلي", SEARCH_PLACEHOLDER_TEXT: "...بحث", SEARCH_SEARCHING: "...يتم الآن البحث", SEARCH_NO_RESULTS: "لم يتم العثور على نتائج", SEARCH_NO_MORE_RESULTS: "لا يوجد المزيد من النتائج", CHAT_NOT_FOUND: "لم يتم العثور على الدردشة", DELETE_MESSAGE: "احذف الرسالة", DELETION_EXPLANATION: "إذا قمت بحذف هذه الرسالة، فهي ستختفي للجميع.", EDIT_MESSAGE: "تعديل الرسالة", SAVE: "حفظ", EDITED_INDICATOR: "معدّلة", REPLY_TO_MESSAGE: "رد", ADD_REACTION: "أضف تفاعلاً", AUTH_EXPIRED_OVERLAY_TITLE: "انتهت جلسة الدردشة المخصصة لك", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "يُرجى إعادة تحميل الصفحة للمتابعة", VOICE_MESSAGE: "رسالة صوتية", CONTACT_INFORMATION_HIDDEN: "المعلومات المخفية", LEAVE_CONVERSATION: "الخروج من المحادثة", MARK_CONVERSATION_AS_UNREAD: "وضع علامة غير مقروءة", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Oi = { code: "bg-BG", name: "Bulgarian", translation: { YESTERDAY: "Вчера", TODAY: "Днес", DAYS: "Ден", HOURS: "Час", MINUTES: "m", JUST_NOW: "Току-що", LOCATION: "местоположението", CANCEL: "Откажи", INBOX: "Кутия", DESKTOP_NOTIFICATIONS: "Известия на браузъра", DESKTOP_NOTIFICATIONS_ERROR: "Не можете да активирате известията на браузъра, защото браузърът ви ги блокира активно. Опитайте да погледнете в настройките или да използвате друг браузър.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} демо известие`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ако държите раздела на браузъра си отворен, ще видите този изскачащ прозорец, когато някой говори с вас.", SEND_BUTTON_TEXT: "Изпрати", ENTRYBOX_TEXT_LIMIT: "Разрешени са само до 10.000 знака.", ENTRYBOX_PLACEHOLDER: "Кажете нещо...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Този ​​разговор вече не е активен.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Можете да четете, но не и да изпращате съобщения.", MESSAGELIST_LOADING_OLDER: "Зареждане на по-стари съобщения...", MESSAGELIST_SHOW_OLDER: "Показване на по-стари съобщения", MESSAGELIST_NEW_MARKER: "Нови", MESSAGE_SENT_VIA_EMAIL: "Това съобщение беше изпратено по имейл", YOU_MARKER: "Вие", UPLOAD_IN_PROGRESS: "Качване...", UPLOAD_SEND_FILE: "Изпращане на файл", UPLOAD_SHARE_LOCATION: "Споделяне на местоположението", UPLOAD_ERROR: "За съжаление нещо се обърка при качването. Файлът може да не се поддържа или е твърде голям.", SHARE_LOCATION_ERROR: "Не може да се сподели местоположението: ", LOADING: "Зареждане...", HUB_EMPTY: "Историята на вашите разговори ще се покаже тук", HUB_SHOW_EARLIER: "Показване на по-ранни чатове", INBOX_NO_CHATS_TITLE: "Все още нямате разговори!", INBOX_NO_CHATS_BODY: "След като проведете един или повече разговори, те ще се покажат тук.", ENABLE_TRANSLATION: "Преведете този разговор на български", DISABLE_TRANSLATION: "Показване на оригинал", SEARCH_PLACEHOLDER_TEXT: "Търсене...", SEARCH_SEARCHING: "Търсене...", SEARCH_NO_RESULTS: "Няма намерени резултати", SEARCH_NO_MORE_RESULTS: "Няма повече резултати", CHAT_NOT_FOUND: "Чатът не е намерен", DELETE_MESSAGE: "Изтриване на съобщение", DELETION_EXPLANATION: "Ако изтриете това съобщение, то ще изчезне за всички.", EDIT_MESSAGE: "Редактиране на съобщението", SAVE: "Запиши", EDITED_INDICATOR: "редактирано", REPLY_TO_MESSAGE: "Отговори", ADD_REACTION: "Добави реакция", AUTH_EXPIRED_OVERLAY_TITLE: "Вашата чат сесия е изтекла", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Обновете страницата, за да продължите", VOICE_MESSAGE: "Гласово съобщение", CONTACT_INFORMATION_HIDDEN: "Скрита информация", LEAVE_CONVERSATION: "Напускане на разговора", MARK_CONVERSATION_AS_UNREAD: "Маркирай като непрочетено", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ti = { code: "bs-BA", name: "Bosnian", translation: { YESTERDAY: "Jučer", TODAY: "Danas", DAYS: "d", HOURS: "s", MINUTES: "m", JUST_NOW: "Upravo sad", LOCATION: "Lokacija", CANCEL: "Otkaži", INBOX: "Pretinac", DESKTOP_NOTIFICATIONS: "Obavijesti preglednika", DESKTOP_NOTIFICATIONS_ERROR: "Notifikacije preglednika se ne mogu omogućiti jer ih vaš preglednik aktivno blokira. Pokušajte pregledati postavke ili koristiti drugi preglednik.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikacija`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ako karticu preglednika ostavite otvorenu, pojavit će se ovaj pop-up kada netko razgovara s vama.", SEND_BUTTON_TEXT: "Pošalji", ENTRYBOX_TEXT_LIMIT: "Dozvoljeno je samo 10.000 znakova.", ENTRYBOX_PLACEHOLDER: "Reci nešto...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ovaj razgovor više nije aktivan.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Možeš čitati, ali ne i slati poruke.", MESSAGELIST_LOADING_OLDER: "Učitavam starije poruke...", MESSAGELIST_SHOW_OLDER: "Prikaži starije poruke", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Ova poruka je poslana e-poštom", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Učitavam...", UPLOAD_SEND_FILE: "Pošalji datoteku", UPLOAD_SHARE_LOCATION: "Podijeli lokaciju", UPLOAD_ERROR: "Nažalost, nešto je pošlo krivo. Datoteka možda nije podržana ili je prevelika.", SHARE_LOCATION_ERROR: "Nije moguće podijeliti lokaciju: ", LOADING: "Učitavam...", HUB_EMPTY: "Ovdje će se prikazati vaša povijest razgovora", HUB_SHOW_EARLIER: "Prikaži ranije razgovore", INBOX_NO_CHATS_TITLE: "Nema razgovora!", INBOX_NO_CHATS_BODY: "Nakon što vodite jedan ili više razgovora, oni će se pojaviti ovdje.", ENABLE_TRANSLATION: "Prevedi ovaj razgovor na bosanski jezik", DISABLE_TRANSLATION: "Prikaži original", SEARCH_PLACEHOLDER_TEXT: "Pretraži...", SEARCH_SEARCHING: "Pretraživanje...", SEARCH_NO_RESULTS: "Nema rezultata", SEARCH_NO_MORE_RESULTS: "Nema više rezultata", CHAT_NOT_FOUND: "Ćaskanje nije pronađeno", DELETE_MESSAGE: "Obriši poruku", DELETION_EXPLANATION: "Ako izbrišete ovu poruku, ona će nestati za sve.", EDIT_MESSAGE: "Uredi poruku", SAVE: "Sačuvati", EDITED_INDICATOR: "uređeno", REPLY_TO_MESSAGE: "Odgovorite", ADD_REACTION: "Dodajte reakciju", AUTH_EXPIRED_OVERLAY_TITLE: "Vaša chat sesija je istekla", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Osvježite stranicu da nastavite", VOICE_MESSAGE: "Glasovna poruka", CONTACT_INFORMATION_HIDDEN: "Skrivene informacije", LEAVE_CONVERSATION: "Napusti razgovor", MARK_CONVERSATION_AS_UNREAD: "Označi kao nepročitano", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, di = { code: "ca-ES", name: "Catalan (ES)", translation: { YESTERDAY: "Ahir", TODAY: "Avui", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "ara mateix", LOCATION: "Ubicació", CANCEL: "Cancel·lar", INBOX: "Safata d'entrada", DESKTOP_NOTIFICATIONS: "Notificacions d'escriptori", DESKTOP_NOTIFICATIONS_ERROR: "No es poden habilitar les notificacions del navegador perquè el teu navegador les bloqueja activament. Prova de buscar a la configuració o utilitza un altre navegador.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Notificació de demostració de ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Si mantens la pestanya del navegador oberta, veuràs aquesta notificació quan algú et parli.", SEND_BUTTON_TEXT: "Enviar", ENTRYBOX_TEXT_LIMIT: "Només es permeten 10.000 caràcters.", ENTRYBOX_PLACEHOLDER: "Digues alguna cosa...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Aquesta conversa ja no està activa.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Pots llegir, però no enviar missatges.", MESSAGELIST_LOADING_OLDER: "Carregant missatges antics...", MESSAGELIST_SHOW_OLDER: "Mostrar missatges més antics", MESSAGELIST_NEW_MARKER: "Nou", MESSAGE_SENT_VIA_EMAIL: "Aquest missatge s'ha enviat per correu electrònic", YOU_MARKER: "tu", UPLOAD_IN_PROGRESS: "S'està pujant...", UPLOAD_SEND_FILE: "Enviar arxiu", UPLOAD_SHARE_LOCATION: "Compartir ubicació", UPLOAD_ERROR: "Desafortunadament, alguna cosa ha anat malament en pujar. L'arxiu pot ser no compatible o massa gran.", SHARE_LOCATION_ERROR: "No es pot compartir la ubicació: ", LOADING: "Carregant...", HUB_EMPTY: "El teu historial de xat apareixerà aquí", HUB_SHOW_EARLIER: "Mostra xats anteriors", INBOX_NO_CHATS_TITLE: "Encara no hi ha xats!", INBOX_NO_CHATS_BODY: "Un cop hagis tingut una o més converses, apareixeran aquí.", ENABLE_TRANSLATION: "Traduir aquesta conversa al català", DISABLE_TRANSLATION: "Mostrar original", SEARCH_PLACEHOLDER_TEXT: "Cerca...", SEARCH_SEARCHING: "Buscant...", SEARCH_NO_RESULTS: "No s'han trobat resultats", SEARCH_NO_MORE_RESULTS: "No hi ha més resultats", CHAT_NOT_FOUND: "Xat no trobat", DELETE_MESSAGE: "Esborrar missatge", DELETION_EXPLANATION: "Si esborres aquest missatge, desapareixerà per a tothom.", EDIT_MESSAGE: "Editar missatge", SAVE: "Desar", EDITED_INDICATOR: "editat", REPLY_TO_MESSAGE: "Respondre", REPLY_TO_ARIA_LABEL: (e, t) => `Responent a ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Sortir del mode de resposta", ADD_REACTION: "Afegir reacció", VOICE_MESSAGE: "Missatge de veu", LEAVE_CONVERSATION: "Abandonar la conversa", MARK_CONVERSATION_AS_UNREAD: "marcar com no llegit", STATUS_INDICATOR_ONLINE: "Actiu", STATUS_INDICATOR_OFFLINE: "Absent", CONTACT_INFORMATION_HIDDEN: "informació oculta", AUTH_EXPIRED_OVERLAY_TITLE: "La teva sessió de xat ha caducat", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Actualitza la pàgina per continuar" } }, Si = { code: "cs-CZ", name: "Czech", translation: { YESTERDAY: "Včera", TODAY: "Dnes", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "právě teď", LOCATION: "Lokace", CANCEL: "Zrušit", INBOX: "Doručené", DESKTOP_NOTIFICATIONS: "Oznámení v prohlížeči", DESKTOP_NOTIFICATIONS_ERROR: "Nelze povolit notifikace prohlížeče, protože váš prohlížeč je aktivně blokuje. Zkuste se podívat na nastavení nebo zkuste použít jiný prohlížeč.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikace`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Pokud necháte kartu prohlížeče otevřenou, uvidíte tento popup jakmile s vámi bude někdo mluvit.", SEND_BUTTON_TEXT: "Odeslat", ENTRYBOX_TEXT_LIMIT: "Je povoleno Maximálně 10.000 znaků.", ENTRYBOX_PLACEHOLDER: "Napište něco...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Tato konverzace již není aktivní.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Můžete číst, ale nemůžete posílat zprávy.", MESSAGELIST_LOADING_OLDER: "Nahrávám starší zprávy...", MESSAGELIST_SHOW_OLDER: "Zobrazit starší zprávy", MESSAGELIST_NEW_MARKER: "Nové", MESSAGE_SENT_VIA_EMAIL: "Tato zpráva byla odeslána přes mail.", YOU_MARKER: "vy", UPLOAD_IN_PROGRESS: "Nahrávám...", UPLOAD_SEND_FILE: "Poslat soubor", UPLOAD_SHARE_LOCATION: "Sdílet pozici", UPLOAD_ERROR: "Nepodařilo se nahrát soubor. Ten je buď nepodporován a/nebo příliš velký.", SHARE_LOCATION_ERROR: "Není možné sdílet pozici: ", LOADING: "Nahrávám...", HUB_EMPTY: "Vaše historie se zde zobrazí", HUB_SHOW_EARLIER: "Zobrazit dřívější konverzace", INBOX_NO_CHATS_TITLE: "Zatím zde nejsou žádné konverzace!", INBOX_NO_CHATS_BODY: "Jakmile budete mít jednu nebo více konverzací, objeví se zde.", ENABLE_TRANSLATION: "Přeložit tuto konverzaci do češtiny", DISABLE_TRANSLATION: "Zobrazit původní", SEARCH_PLACEHOLDER_TEXT: "Hledat...", SEARCH_SEARCHING: "Hledání...", SEARCH_NO_RESULTS: "Nenašly se žádné výsledky", SEARCH_NO_MORE_RESULTS: "Žádné další výsledky", CHAT_NOT_FOUND: "Chat nenalezen", DELETE_MESSAGE: "Smazat zprávu", DELETION_EXPLANATION: "Pokud tuto zprávu smažete, zmizí pro všechny.", EDIT_MESSAGE: "Upravit zprávu", SAVE: "Uložit", EDITED_INDICATOR: "upraveno", REPLY_TO_MESSAGE: "Odpovědět", ADD_REACTION: "Reagovat", AUTH_EXPIRED_OVERLAY_TITLE: "Váš chat byl kvůli nečinnosti odpojen", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Pro pokračování obnovte stránku", VOICE_MESSAGE: "Hlasová zpráva", CONTACT_INFORMATION_HIDDEN: "Skrytá informace", LEAVE_CONVERSATION: "Opustit konverzaci", MARK_CONVERSATION_AS_UNREAD: "Označit jako nepřečtené", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ii = { code: "da-DK", name: "Danish", translation: { YESTERDAY: "I går", TODAY: "I dag", DAYS: "d", HOURS: "t", MINUTES: "m", JUST_NOW: "lige nu", LOCATION: "Placering", CANCEL: "Annuller", INBOX: "Indbakke", DESKTOP_NOTIFICATIONS: "Browsermeddelelser", DESKTOP_NOTIFICATIONS_ERROR: "Kan ikke aktivere Browsermeddelelser, fordi din browser aktivt blokerer dem. Prøv at kigge i indstillingerne eller benyt en anden browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demomeddelelse`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Hvis du holder dit browser-faneblad åben, vil du se det her komme op, når nogen taler til dig.", SEND_BUTTON_TEXT: "Send", ENTRYBOX_TEXT_LIMIT: "Kun 10.000 tegn er tilladt.", ENTRYBOX_PLACEHOLDER: "Sig noget...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Denne samtale er ikke længere aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Du kan læse, men ikke sende beskeder.", MESSAGELIST_LOADING_OLDER: "Indlæser ældre beskeder...", MESSAGELIST_SHOW_OLDER: "Vis ældre beskeder", MESSAGELIST_NEW_MARKER: "Ny", MESSAGE_SENT_VIA_EMAIL: "Denne besked blev sendt via e-mail", YOU_MARKER: "dig", UPLOAD_IN_PROGRESS: "Overfører...", UPLOAD_SEND_FILE: "Send fil", UPLOAD_SHARE_LOCATION: "Del placering", UPLOAD_ERROR: "Der er sket noget forkert ved upload. Filen kan ikke understøttes eller filen er for stor.", SHARE_LOCATION_ERROR: "Kan ikke dele placering: ", LOADING: "Indlæser...", HUB_EMPTY: "Dine samtaler vises her", HUB_SHOW_EARLIER: "Vis tidligere chats", INBOX_NO_CHATS_TITLE: "Ingen chats endnu!", INBOX_NO_CHATS_BODY: "Når du har haft en eller flere samtaler, vises de her.", ENABLE_TRANSLATION: "Oversæt denne konversation til dansk", DISABLE_TRANSLATION: "Vis den oprindelige", SEARCH_PLACEHOLDER_TEXT: "Søg...", SEARCH_SEARCHING: "Søger...", SEARCH_NO_RESULTS: "Ingen resultater fundet", SEARCH_NO_MORE_RESULTS: "Ikke flere resultater", CHAT_NOT_FOUND: "Chat ikke fundet", DELETE_MESSAGE: "Slet besked", DELETION_EXPLANATION: "Hvis du sletter denne besked, vil ingen kunne se den.", EDIT_MESSAGE: "Rediger besked", SAVE: "Gem", EDITED_INDICATOR: "redigeret", REPLY_TO_MESSAGE: "Svar", ADD_REACTION: "Tilføj reaktion", AUTH_EXPIRED_OVERLAY_TITLE: "Din chatsession er udløbet", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Opdater siden for at fortsætte", VOICE_MESSAGE: "Talebesked", CONTACT_INFORMATION_HIDDEN: "Skjulte oplysninger", LEAVE_CONVERSATION: "Forlad samtale", MARK_CONVERSATION_AS_UNREAD: "Marker som ulæst", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ni = { code: "de-DE", name: "German", translation: { YESTERDAY: "Gestern", TODAY: "Heute", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "gerade jetzt", LOCATION: "Standort", CANCEL: "Abbrechen", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Browser-Benachrichtigungen", DESKTOP_NOTIFICATIONS_ERROR: "Browser-Benachrichtigungen können nicht aktiviert werden, da Ihr Browser sie aktiv blockiert. Versuchen Sie, in den Einstellungen nachzuschlagen oder einen anderen Browser zu verwenden.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} Demo-Benachrichtigung`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Wenn Sie Ihre Browser-Registerkarte geöffnet lassen, wird dies angezeigt, wenn jemand mit Ihnen spricht.", SEND_BUTTON_TEXT: "Senden", ENTRYBOX_TEXT_LIMIT: "Nur 10.000 Zeichen sind erlaubt.", ENTRYBOX_PLACEHOLDER: "Sag etwas...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Diese Konversation ist nicht mehr aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Sie können Nachrichten lesen, aber nicht senden.", MESSAGELIST_LOADING_OLDER: "Ältere Nachrichten werden geladen...", MESSAGELIST_SHOW_OLDER: "Zeige ältere Nachrichten", MESSAGELIST_NEW_MARKER: "Neu", MESSAGE_SENT_VIA_EMAIL: "Diese Nachricht wurde per E-Mail gesendet", YOU_MARKER: "du", UPLOAD_IN_PROGRESS: "Hochladen...", UPLOAD_SEND_FILE: "Datei senden", UPLOAD_SHARE_LOCATION: "Standort teilen", UPLOAD_ERROR: "Beim Hochladen ist ein Fehler aufgetreten. Die Datei ist möglicherweise nicht unterstützt oder zu groß.", SHARE_LOCATION_ERROR: "Standort kann nicht freigegeben werden: ", LOADING: "Laden...", HUB_EMPTY: "Ihr Chat-Verlauf wird hier angezeigt", HUB_SHOW_EARLIER: "Zeige frühere Chats", INBOX_NO_CHATS_TITLE: "Noch keine Chats!", INBOX_NO_CHATS_BODY: "Sobald Sie eine oder mehrere Unterhaltungen geführt haben, werden sie hier angezeigt.", ENABLE_TRANSLATION: "Dieses Gespräch auf Deutsch übersetzen", DISABLE_TRANSLATION: "Originaltext anzeigen", SEARCH_PLACEHOLDER_TEXT: "Suche...", SEARCH_SEARCHING: "Suchen...", SEARCH_NO_RESULTS: "Keine Suchergebnisse gefunden", SEARCH_NO_MORE_RESULTS: "Keine weiteren Suchergebnisse", CHAT_NOT_FOUND: "Chat nicht gefunden", DELETE_MESSAGE: "Nachricht löschen", DELETION_EXPLANATION: "Wenn Sie diese Nachricht löschen, wird sie für alle verschwinden.", EDIT_MESSAGE: "Nachricht bearbeiten", SAVE: "Speichern", EDITED_INDICATOR: "bearbeitet", REPLY_TO_MESSAGE: "Antworten", ADD_REACTION: "Reaktion hinzufügen", AUTH_EXPIRED_OVERLAY_TITLE: "Ihre Chatsitzung ist abgelaufen", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Laden Sie zum Fortfahren die Seite neu", VOICE_MESSAGE: "Sprachnachricht", CONTACT_INFORMATION_HIDDEN: "Geschützte Angaben", LEAVE_CONVERSATION: "Unterhaltung verlassen", MARK_CONVERSATION_AS_UNREAD: "als ungelesen markieren", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ri = { code: "el-GR", name: "Greek (Greece)", translation: { YESTERDAY: "Χθές", TODAY: "Σήμερα", DAYS: "Ημέρες", HOURS: "'Ωρες", MINUTES: "Λεπτά", JUST_NOW: "Μόλις τώρα", LOCATION: "Τοποθεσία", CANCEL: "Ακύρωση", INBOX: "Εισερχόμενα", DESKTOP_NOTIFICATIONS: "Ειδοποιήσεις περιηγητή", DESKTOP_NOTIFICATIONS_ERROR: "Δεν είναι δυνατή η ενεργοποίηση των ειδοποιήσεων του προγράμματος περιήγησης, επειδή το πρόγραμμα περιήγησης τις αποκλείει ενεργά. Δοκιμάστε να τσεκάρετε τις ρυθμίσεις ή να χρησιμοποιήσετε διαφορετικό πρόγραμμα περιήγησης.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} Δοκιμαστική επίδειξη`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Αν διατηρήσετε ανοιχτή τη σελίδα του προγράμματος περιήγησης, θα δείτε αυτό το pop up (παράθυρο) όταν κάποιος σας μιλάει.", SEND_BUTTON_TEXT: "Αποστολή", ENTRYBOX_TEXT_LIMIT: "Επιτρέπονται μόνο 10.000 χαρακτήρες.", ENTRYBOX_PLACEHOLDER: "Πείτε κάτι...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Αυτή η συζήτηση δεν είναι πλέον ενεργή.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Μπορείτε να διαβάσετε αλλά δεν μπορείτε να στείλετε μηνύματα.", MESSAGELIST_LOADING_OLDER: "Φόρτωση παλαιοτέρων μηνυμάτων...", MESSAGELIST_SHOW_OLDER: "Εμφάνιση παλαιότερων μηνυμάτων", MESSAGELIST_NEW_MARKER: "Νέο", MESSAGE_SENT_VIA_EMAIL: "Αυτό το μήνυμα εστάλη μέσω ηλεκτρονικού ταχυδρομείου", YOU_MARKER: "Εσείς", UPLOAD_IN_PROGRESS: "Ανέβασμα...", UPLOAD_SEND_FILE: "Αποστολή αρχείου", UPLOAD_SHARE_LOCATION: "Κοινή χρήση τοποθεσίας", UPLOAD_ERROR: "Κάτι πήγε στραβά κατά τη φόρτωση. Το αρχείο ενδέχεται να μην υποστηρίζεται ή να είναι υπερβολικά μεγάλο.", SHARE_LOCATION_ERROR: "Δεν είναι δυνατή η χρήση κοινής τοποθεσίας: ", LOADING: "Φόρτωση...", HUB_EMPTY: "Το ιστορικό των συνομιλιών σας θα εμφανιστεί εδώ", HUB_SHOW_EARLIER: "Εμφάνιση προηγούμενων συνομιλιών", INBOX_NO_CHATS_TITLE: "Δεν υπάρχουν ακόμα συζητήσεις!", INBOX_NO_CHATS_BODY: "Μόλις έχετε μία ή περισσότερες συνομιλίες, θα εμφανιστούν εδώ.", ENABLE_TRANSLATION: "Μετάφραση αυτής της συνομιλίας στα ελληνικά", DISABLE_TRANSLATION: "Προβολή πρωτοτύπου", SEARCH_PLACEHOLDER_TEXT: "Αναζήτηση...", SEARCH_SEARCHING: "Αναζήτηση...", SEARCH_NO_RESULTS: "Δεν βρέθηκαν αποτελέσματα", SEARCH_NO_MORE_RESULTS: "Δεν υπάρχουν περισσότερα αποτελέσματα", CHAT_NOT_FOUND: "Η συνομιλία δεν βρέθηκε", DELETE_MESSAGE: "Διαγραφή μηνύματος", DELETION_EXPLANATION: "Εάν διαγράψετε αυτό το μήνυμα, θα εξαφανιστεί για όλους.", EDIT_MESSAGE: "Επεξεργασία μηνύματος", SAVE: "Αποθήκευση", EDITED_INDICATOR: "επεξεργασμένο", REPLY_TO_MESSAGE: "Απάντηση", ADD_REACTION: "Προσθήκη αντίδρασης", AUTH_EXPIRED_OVERLAY_TITLE: "Η συνεδρία της συνομιλίας σας έχει λήξει", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Ανανεώστε τη σελίδα για να συνεχίσετε", VOICE_MESSAGE: "Ηχητικό μήνυμα", CONTACT_INFORMATION_HIDDEN: "Κρυμμένες πληροφορίες", LEAVE_CONVERSATION: "Αποσυρθείτε από τη συζήτηση", MARK_CONVERSATION_AS_UNREAD: "Επισήμανση ως μη αναγνωσμένα", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Li = { code: "es-ES", name: "Spanish", translation: { YESTERDAY: "Ayer", TODAY: "Hoy", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "justo ahora", LOCATION: "Ubicación", CANCEL: "Cancelar", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Notificaciones del navigator", DESKTOP_NOTIFICATIONS_ERROR: "No se logró habilitar las notificaciones del navigador, comprueba que tu navegador no las esté bloqueando o intenta con otro navegador.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} notificación de prueba`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Si dejas esta pestaña abierta, verás este pop up cuando alguien te hable.", SEND_BUTTON_TEXT: "Enviar", ENTRYBOX_TEXT_LIMIT: "Sólo 10.000 caracteres permitidos.", ENTRYBOX_PLACEHOLDER: "Escribe algo...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Esta conversación ya no está activa.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Puedes leer pero no enviar mensajes.", MESSAGELIST_LOADING_OLDER: "Cargando mensajes pasados...", MESSAGELIST_SHOW_OLDER: "Ver mensajes pasados", MESSAGELIST_NEW_MARKER: "Nuevo", MESSAGE_SENT_VIA_EMAIL: "Este mensaje ha sido enviado vía email", YOU_MARKER: "tú", UPLOAD_IN_PROGRESS: "Subir...", UPLOAD_SEND_FILE: "Enviar archivo", UPLOAD_SHARE_LOCATION: "Compartir ubicación", UPLOAD_ERROR: "Ocurrió un problema subiendo el archivo. Puede que el archivo esté en un formato no soportado o que sea demasiado grande.", SHARE_LOCATION_ERROR: "No se logró compartir la ubicación: ", LOADING: "Cargando...", HUB_EMPTY: "Tu historial de conversaciones se mostrará aquí", HUB_SHOW_EARLIER: "Ver conversaciones pasadas", INBOX_NO_CHATS_TITLE: "¡Aún sin conversaciones!", INBOX_NO_CHATS_BODY: "Una vez que tengas una o más conversaciones, se mostrarán aquí.", ENABLE_TRANSLATION: "Traducir esta conversación al español", DISABLE_TRANSLATION: "Mostrar la conversación original", SEARCH_PLACEHOLDER_TEXT: "Buscar...", SEARCH_SEARCHING: "Buscando...", SEARCH_NO_RESULTS: "No se encontraron resultados", SEARCH_NO_MORE_RESULTS: "No hay más resultados", CHAT_NOT_FOUND: "Chat no encontrado", DELETE_MESSAGE: "Eliminar mensaje", DELETION_EXPLANATION: "Este mensaje desaparecerá para todos si lo borras.", EDIT_MESSAGE: "Editar mensaje", SAVE: "Guardar", EDITED_INDICATOR: "editado", REPLY_TO_MESSAGE: "Responder", ADD_REACTION: "Añadir reacción", AUTH_EXPIRED_OVERLAY_TITLE: "Su sesión de chat ha expirado", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Actualice la página para continuar", VOICE_MESSAGE: "Mensaje de voz", CONTACT_INFORMATION_HIDDEN: "Información oculta", LEAVE_CONVERSATION: "Abandonar conversación", MARK_CONVERSATION_AS_UNREAD: "Marcar como no leída", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, mi = { code: "et-EE", name: "Estonian", translation: { YESTERDAY: "Eile", TODAY: "Täna", DAYS: "p", HOURS: "t", MINUTES: "m", JUST_NOW: "Just nüüd", LOCATION: "Asukoht", CANCEL: "Katkesta", INBOX: "Postkast", DESKTOP_NOTIFICATIONS: "Veebibrauseri teated", DESKTOP_NOTIFICATIONS_ERROR: "Töölaua teatisi ei saa lubada, kuna Teie brauser blokeerib need aktiivselt. Proovige muuta seadeid või kasutada mõnda muud brauserit.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo teavitus`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Kui hoiate oma brauseri vahekaardi lahti ja näete seda hüpikakent, siis keegi soovib Teiega rääkida.", SEND_BUTTON_TEXT: "Saada", ENTRYBOX_TEXT_LIMIT: "Ainult kuni 10.000 tähemärki on lubatud.", ENTRYBOX_PLACEHOLDER: "Kirjuta midagi...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "See vestlus ei ole enam aktiivne.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Sa saad lugeda teateid, aga mitte kirjutada.", MESSAGELIST_LOADING_OLDER: "Laen vanemaid teateid...", MESSAGELIST_SHOW_OLDER: "Näita vanemaid teateid", MESSAGELIST_NEW_MARKER: "Uus", MESSAGE_SENT_VIA_EMAIL: "See teade on saadetud e-postiga", YOU_MARKER: "Sina", UPLOAD_IN_PROGRESS: "Laen...", UPLOAD_SEND_FILE: "Saada fail", UPLOAD_SHARE_LOCATION: "Jaga faili asukohta", UPLOAD_ERROR: "Nüüd läks midagi nihu, seoses faili ülesse laadimisega. Tundmatu fail või liiga suur.", SHARE_LOCATION_ERROR: "Ei suuda jagada faili asukohta: ", LOADING: "Laen...", HUB_EMPTY: "Siin on Sinu vestluste ajalugu", HUB_SHOW_EARLIER: "Näita vanemaid vestlusi", INBOX_NO_CHATS_TITLE: "Pole ühtegi vestlust!", INBOX_NO_CHATS_BODY: "Kui Sul tekib üks või rohkem vestlust, siis on need kuvatakse siin.", ENABLE_TRANSLATION: "Tõlgi see vestlus eesti keelde", DISABLE_TRANSLATION: "Näita algteksti", SEARCH_PLACEHOLDER_TEXT: "Otsi...", SEARCH_SEARCHING: "Otsin...", SEARCH_NO_RESULTS: "Otsingu tulemused puuduvad", SEARCH_NO_MORE_RESULTS: "Rohkem tulemusi ei ole ", CHAT_NOT_FOUND: "Vestlust ei leitud", DELETE_MESSAGE: "Kustuta sõnum", DELETION_EXPLANATION: "Kui kustutate selle sõnumi, kaob see kõigi jaoks.", EDIT_MESSAGE: "Redigeeri sõnumit", SAVE: "Salvesta", EDITED_INDICATOR: "muudetud", REPLY_TO_MESSAGE: "Vasta", ADD_REACTION: "Lisa reaktsioon", AUTH_EXPIRED_OVERLAY_TITLE: "Teie vestlussessioon on lõppenud", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Jätkamiseks värskendage lehte", VOICE_MESSAGE: "Häälsõnum", CONTACT_INFORMATION_HIDDEN: "Varjatud informatsioon", LEAVE_CONVERSATION: "Lahku vestlusest", MARK_CONVERSATION_AS_UNREAD: "Märgi mitteloetuks", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, pi = { code: "fa", name: "Persian (Farsi)", translation: { YESTERDAY: "دیروز", TODAY: "امروز", DAYS: "روز", HOURS: "ساعت", MINUTES: "دقیقه", JUST_NOW: "هم اکنون", LOCATION: "مکان", CANCEL: "لغو", INBOX: "صندوق", DESKTOP_NOTIFICATIONS: "اطلاعیه‌های مرورگر", DESKTOP_NOTIFICATIONS_ERROR: "خطا در فعال سازی اعلان های مرورگر، مرورگر شما آنها را مسدود می کند سعی کنید تنظیمات مرورگر را تغییر دهید یا از یک مرورگر دیگر استفاده کنید.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `نوتیفیکیشن دمو ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "اگر صفحه ی مرورگر را باز نگهدارید این را موقعه ای که کسی با شما صحبت کند خواهید دید", SEND_BUTTON_TEXT: "بفرست", ENTRYBOX_TEXT_LIMIT: "فقط ۱۰،۰۰۰ حروف مجاز می باشد.", ENTRYBOX_PLACEHOLDER: "...چیزی بنویسید", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: ".این مکالمه دیگر فعال نمی باشد", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "شما می توانید بخوانید اما نمی توانید پیام بفرستید", MESSAGELIST_LOADING_OLDER: "...در حال بارگذاری پیام های قدیمی تر", MESSAGELIST_SHOW_OLDER: "نشان دادن پیام های قدیمی", MESSAGELIST_NEW_MARKER: "جدید", MESSAGE_SENT_VIA_EMAIL: "پیام توسط ایمل ارسال شد", YOU_MARKER: "شما", UPLOAD_IN_PROGRESS: "...در حال بارگذاری", UPLOAD_SEND_FILE: "فرستادن پوشه", UPLOAD_SHARE_LOCATION: "اشتراک گذاری مکان", UPLOAD_ERROR: "متاسفانه بارگذاری با مشکل روبه رو شد. ممکن است فایل حجیم باشد یا ساپورت نشده باشد.", SHARE_LOCATION_ERROR: "خطا در اشتراک گذاری مکان: ", LOADING: "...بارگذاری", HUB_EMPTY: "تاریخچه گفتگو اینجا نمایان می شود", HUB_SHOW_EARLIER: "دیدن گفتگو های قبلی", INBOX_NO_CHATS_TITLE: "هنوز گفتگویی وجود ندارد", INBOX_NO_CHATS_BODY: "بعد از داشتن یک مکالمه یا بیشتر، آنها اینجا نمایان می شوند.", ENABLE_TRANSLATION: "این مکالمه را به فارسی ترجمه کن", DISABLE_TRANSLATION: "زبان اصلی را نشان بده", SEARCH_PLACEHOLDER_TEXT: "...جستجو", SEARCH_SEARCHING: "...در حال جستجو", SEARCH_NO_RESULTS: "نتیجه ای یافت نشد", SEARCH_NO_MORE_RESULTS: "نتیجه بیشتری وجود ندارد", CHAT_NOT_FOUND: "مکالمه پیدا نشد", DELETE_MESSAGE: "حذف پیام ", DELETION_EXPLANATION: "اگر این پیام را حذف کنید، برای همه ناپدید می شود.", EDIT_MESSAGE: "ویرایش پیام", SAVE: "ذخیره", EDITED_INDICATOR: "ویرایش‌شده", REPLY_TO_MESSAGE: "پاسخ دادن", ADD_REACTION: "واکنش را اضافه کنید", AUTH_EXPIRED_OVERLAY_TITLE: "جلسه چت شما منقضی شده است", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "برای ادامه صفحه را بازخوانی کنید", VOICE_MESSAGE: "پیام صوتی", CONTACT_INFORMATION_HIDDEN: "اطلاعات پنهان", LEAVE_CONVERSATION: "خروج از گفتگو", MARK_CONVERSATION_AS_UNREAD: "به عنوان خوانده نشده علامت گذاری کن", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, hi = { code: "fi-FI", name: "Finnish", translation: { YESTERDAY: "Eilen", TODAY: "Tänään", DAYS: "p", HOURS: "t", MINUTES: "m", JUST_NOW: "juuri nyt", LOCATION: "Sijainti", CANCEL: "Peruuta", INBOX: "Saapuneet", DESKTOP_NOTIFICATIONS: "Selaimen ilmoitukset", DESKTOP_NOTIFICATIONS_ERROR: "Työpöydän ilmoituksia ei voitu kytkeä päälle, koska selaimesi estää ne aktiivisesti. Koeta tutkia sen asetuksia tai vaihda selainta.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo ilmoitus`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Jos pidät tämän sivun auki, näet vastaavan ilmoituksen kun joku puhuu sinulle.", SEND_BUTTON_TEXT: "Lähetä", ENTRYBOX_TEXT_LIMIT: "Maksimissaan 10000 merkkiä.", ENTRYBOX_PLACEHOLDER: "Sano jotain...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Tämä keskustelu ei ole enää aktiivinen.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Voit lukea, mutta et lähettää viestejä.", MESSAGELIST_LOADING_OLDER: "Ladataan vanhoja viestejä..", MESSAGELIST_SHOW_OLDER: "Näytä vanhat viestit", MESSAGELIST_NEW_MARKER: "Uusi", MESSAGE_SENT_VIA_EMAIL: "Tämä viesti on lähetetty sähköpostin välityksellä", YOU_MARKER: "sinä", UPLOAD_IN_PROGRESS: "Ladataan...", UPLOAD_SEND_FILE: "Lähetä tiedosto", UPLOAD_SHARE_LOCATION: "Jaa sijainti", UPLOAD_ERROR: "Valitettavasti jokin meni vikaan. Tiedostotyyppiä ei ehkä tueta tai se saattaa olla liian suuri.", SHARE_LOCATION_ERROR: "Sijaintia ei pystytty jakamaan: ", LOADING: "Ladataan...", HUB_EMPTY: "Keskusteluhistoriasi näkyy tässä", HUB_SHOW_EARLIER: "Näytä aiemmat keskustelut", INBOX_NO_CHATS_TITLE: "Ei keskusteluja, vielä!", INBOX_NO_CHATS_BODY: "Kun olet käynyt yhden tai useamman keskustelun, ne näkyvät täällä.", ENABLE_TRANSLATION: "Käännä keskustelu kielelle suomi", DISABLE_TRANSLATION: "Näytä alkuperäinen", SEARCH_PLACEHOLDER_TEXT: "Etsi...", SEARCH_SEARCHING: "Etsiminen...", SEARCH_NO_RESULTS: "Tuloksia ei löytynyt", SEARCH_NO_MORE_RESULTS: "Ei enempää tuloksia", CHAT_NOT_FOUND: "Keskustelua ei löytynyt", DELETE_MESSAGE: "Poista viesti", DELETION_EXPLANATION: "Jos poistat tämän viestin, se häviää kaikilta.", EDIT_MESSAGE: "Muokkaa viestiä", SAVE: "Tallenna", EDITED_INDICATOR: "muokattu", REPLY_TO_MESSAGE: "Vastaa", ADD_REACTION: "Lisää reaktio", AUTH_EXPIRED_OVERLAY_TITLE: "Istuntosi on vanhentunut", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Päivitä sivu jatkaaksesi", VOICE_MESSAGE: "Ääniviesti", CONTACT_INFORMATION_HIDDEN: "Piilotetut tiedot", LEAVE_CONVERSATION: "Poistu keskustelusta", MARK_CONVERSATION_AS_UNREAD: "Merkitse lukemattomaksi", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Di = { code: "fr-FR", name: "French", translation: { YESTERDAY: "Hier", TODAY: "Aujourd'hui", DAYS: "j", HOURS: "h", MINUTES: "m", JUST_NOW: "maintenant", LOCATION: "Emplacement", CANCEL: "Annuler", INBOX: "Boîte de réception", DESKTOP_NOTIFICATIONS: "Notifications du navigateur", DESKTOP_NOTIFICATIONS_ERROR: "Impossible d'activer les notifications du navigateur car votre navigateur les bloque. Essayez de changer ses paramètres ou de changer de navigateur.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Notification de démonstration ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Si vous maintenez l'onglet ouvert dans votre navigateur vous verrez apparaître une alerte lorsque quelqu'un vous parlera.", SEND_BUTTON_TEXT: "Envoyer", ENTRYBOX_TEXT_LIMIT: "Seuls 10.000 caractères sont autorisés.", ENTRYBOX_PLACEHOLDER: "Ecrivez quelque chose...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Cette conversation n'est plus active.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Vous pouvez lire, mais pas envoyer de messages.", MESSAGELIST_LOADING_OLDER: "Chargement des anciens messages ...", MESSAGELIST_SHOW_OLDER: "Afficher les anciens messages", MESSAGELIST_NEW_MARKER: "Nouveau", MESSAGE_SENT_VIA_EMAIL: "Ce message a été envoyé par e-mail", YOU_MARKER: "vous", UPLOAD_IN_PROGRESS: "Envoi en cours...", UPLOAD_SEND_FILE: "Envoyer un fichier", UPLOAD_SHARE_LOCATION: "Partager mon emplacement", UPLOAD_ERROR: "Un problème est survenu lors de l'envoi: le fichier est peut-être non pris en charge ou trop volumineux.", SHARE_LOCATION_ERROR: "Impossible de partager votre emplacement: ", LOADING: "Chargement en cours...", HUB_EMPTY: "Votre historique de discussion apparaîtra ici", HUB_SHOW_EARLIER: "Afficher les conversations précédentes", INBOX_NO_CHATS_TITLE: "Aucune conversation pour l'instant!", INBOX_NO_CHATS_BODY: "Une fois que vous aurez eu une ou plusieurs conversations, elles apparaîtront ici.", ENABLE_TRANSLATION: "Traduire cette conversation en français", DISABLE_TRANSLATION: "Remontrer la conversation originale", SEARCH_PLACEHOLDER_TEXT: "Rechercher...", SEARCH_SEARCHING: "Recherche...", SEARCH_NO_RESULTS: "Aucun résultat trouvé", SEARCH_NO_MORE_RESULTS: "Il n’y a plus de résultats", CHAT_NOT_FOUND: "Conversation introuvable", DELETE_MESSAGE: "Supprimer le message", DELETION_EXPLANATION: "Si vous supprimez ce message, il disparaîtra pour tout le monde.", EDIT_MESSAGE: "Modifier le message", SAVE: "Enregistrer", EDITED_INDICATOR: "modifié", REPLY_TO_MESSAGE: "Répondre", ADD_REACTION: "Ajouter une réaction", AUTH_EXPIRED_OVERLAY_TITLE: "Votre session de chat a expiré", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Actualisez la page pour continuer", VOICE_MESSAGE: "Message vocal", CONTACT_INFORMATION_HIDDEN: "Informations masquées", LEAVE_CONVERSATION: "Quitter la conversation", MARK_CONVERSATION_AS_UNREAD: "Marquer comme non lu", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, gi = { code: "he-IL", name: "Hebrew", translation: { YESTERDAY: "אתמול", TODAY: "היום", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "עכשיו", LOCATION: "מיקום", CANCEL: "בטל", INBOX: "דואר נכנס", DESKTOP_NOTIFICATIONS: "התראות דפדפן", DESKTOP_NOTIFICATIONS_ERROR: "לא ניתן להפעיל התראות במרועה דפדפן מכיוון שהדפדפן שלך חוסם אותן באופן פעיל. נסה להסתכל בהגדרות או להשתמש בדפדפן אחר.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} הודעה על הדגמה`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "אם אתה שומר על כרטיסיית הדפדפן שלך פתוחה, תראה את זה צץ כשמישהו ידבר איתך.", SEND_BUTTON_TEXT: "שלח", ENTRYBOX_TEXT_LIMIT: "רק 10.000 תווים", ENTRYBOX_PLACEHOLDER: "תגיד משהו...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "שיחה זו אינה פעילה עוד.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "אתה יכול לקרוא, אך לא לשלוח הודעות.", MESSAGELIST_LOADING_OLDER: "טוען הודעות ישנות...", MESSAGELIST_SHOW_OLDER: "הצג הודעות ישנות", MESSAGELIST_NEW_MARKER: "חדש", MESSAGE_SENT_VIA_EMAIL: "הודעה זאת נשלחה דרך אימייל", YOU_MARKER: "אתה", UPLOAD_IN_PROGRESS: "מעלה ...", UPLOAD_SEND_FILE: "שלח קובץ", UPLOAD_SHARE_LOCATION: "שתף מיקום", UPLOAD_ERROR: "לרוע המזל משהו השתבש בהעלאה. ייתכן שהקובץ אינו נתמך או גדול מדי.", SHARE_LOCATION_ERROR: "לא ניתן לשתף מיקום: ", LOADING: "טוען...", HUB_EMPTY: "היסטוריית הצ'אט שלך תופיע כאן", HUB_SHOW_EARLIER: "הצג צ'אטים קודמים", INBOX_NO_CHATS_TITLE: "אין עדיין צ'אטים!", INBOX_NO_CHATS_BODY: "לאחר שניהלת שיחה אחת או יותר, הם יופיעו כאן.", ENABLE_TRANSLATION: "תרגם שיחה זו לעברית", DISABLE_TRANSLATION: "הצג מקור", SEARCH_PLACEHOLDER_TEXT: "...חפש", SEARCH_SEARCHING: "...מחפש", SEARCH_NO_RESULTS: "לא נמצאו תוצאות", SEARCH_NO_MORE_RESULTS: "אין תוצאות נוספות", CHAT_NOT_FOUND: "הצ'אט לא נמצא", DELETE_MESSAGE: "מחיקת הודעה", DELETION_EXPLANATION: "אם תמחק הודעה זו, היא תיעלם עבור כולם.", EDIT_MESSAGE: "עריכת הודעה", SAVE: "שמור", EDITED_INDICATOR: "ערוך", REPLY_TO_MESSAGE: "השב", ADD_REACTION: "הוספת תגובה", AUTH_EXPIRED_OVERLAY_TITLE: "הפעלת הצ׳אט שלכם פגה", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "רעננו את העמוד כדי להמשיך", VOICE_MESSAGE: "הודעה קולית", CONTACT_INFORMATION_HIDDEN: "מידע מוסתר", LEAVE_CONVERSATION: "צא מהשיחה", MARK_CONVERSATION_AS_UNREAD: "סמן כלא נקרא", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ci = { code: "hi-IN", name: "Hindi (IN)", translation: { YESTERDAY: "कल", TODAY: "आज", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "अभी", LOCATION: "जगह", CANCEL: "रद्द करें", INBOX: "इनबॉक्स", DESKTOP_NOTIFICATIONS: "ब्राउज़र सूचनाएं", DESKTOP_NOTIFICATIONS_ERROR: "ब्राउज़र सूचनाएं सक्षम नहीं कर सकता क्योंकि आपका ब्राउज़र सक्रिय रूप से उन्हें ब्लॉक करता है। सेटिंग्स में देखने या एक अलग ब्राउज़र का उपयोग करने का प्रयास करें।", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} डेमो अधिसूचना`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "यदि आप अपना ब्राउज़र टैब खुला रखते हैं, तो यह पॉप अप आपको तब दिखाई देगा जब कोई आपसे बात करेगा।", SEND_BUTTON_TEXT: "भेजें", ENTRYBOX_TEXT_LIMIT: "केवल 10,000 वर्णों की अनुमति है।", ENTRYBOX_PLACEHOLDER: "कुछ कहिए...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "यह चैट अब सक्रिय नहीं है।", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "आप पढ़ सकते हैं, लेकिन संदेश नहीं भेज सकते।", MESSAGELIST_LOADING_OLDER: "पुराने संदेश लोड हो रहे हैं ...", MESSAGELIST_SHOW_OLDER: "पुराने संदेश दिखाएं", MESSAGELIST_NEW_MARKER: "नया", MESSAGE_SENT_VIA_EMAIL: "यह संदेश ईमेल के माध्यम से भेजा गया था", YOU_MARKER: "आप", UPLOAD_IN_PROGRESS: "अपलोड हो रहा है...", UPLOAD_SEND_FILE: "फाइल भेजें", UPLOAD_SHARE_LOCATION: "जगह शेयर करें", UPLOAD_ERROR: "दुर्भाग्य से, अपलोड करते समय कुछ गलत हो गया। फ़ाइल असमर्थित या बहुत बड़ी हो सकती है।", SHARE_LOCATION_ERROR: "जगह शेयर नहीं हो पाया: ", LOADING: "लोड हो रहा है...", HUB_EMPTY: "आपका चैट इतिहास यहां दिखाई देगा", HUB_SHOW_EARLIER: "पहले की चैट दिखाओ", INBOX_NO_CHATS_TITLE: "अभी तक कोई चैट नहीं!", INBOX_NO_CHATS_BODY: "एक बार जब आप एक या अधिक चैट कर लेते हैं, तो वे यहां दिखाई देंगे।", ENABLE_TRANSLATION: "इस बातचीत का हिंदी में अनुवाद कीजिए", DISABLE_TRANSLATION: "मूल दिखाएँ", SEARCH_PLACEHOLDER_TEXT: "खोजें...", SEARCH_SEARCHING: "खोज जारी है...", SEARCH_NO_RESULTS: "कोई परिणाम नहीं मिला", SEARCH_NO_MORE_RESULTS: "और कोई परिणाम नहीं", CHAT_NOT_FOUND: "चैट नहीं मिली", DELETE_MESSAGE: "संदेश डिलीट करें", DELETION_EXPLANATION: "यदि आप इस संदेश को हटाते हैं, तो यह सभी के लिए गायब हो जाएगा.", EDIT_MESSAGE: "संदेश में बदलाव करें", SAVE: "सहेजें", EDITED_INDICATOR: "संपादित किया गया", REPLY_TO_MESSAGE: "जवाब दीजिए ।", ADD_REACTION: "प्रतिक्रिया जोड़ें", AUTH_EXPIRED_OVERLAY_TITLE: "आपका चैट सेशन समाप्त हो चुका है", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "आगे बढ़ने के लिए रिफ्रेश करें", VOICE_MESSAGE: "वॉयस मैसेज", CONTACT_INFORMATION_HIDDEN: "छुपी हुई जानकारी", LEAVE_CONVERSATION: "बातचीत को ख़त्म करें", MARK_CONVERSATION_AS_UNREAD: "अपठित के रूप में चिह्नित करें", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, fi = { code: "hr-HR", name: "Croatian", translation: { YESTERDAY: "Jučer", TODAY: "Danas", DAYS: "d", HOURS: "s", MINUTES: "m", JUST_NOW: "Upravo sad", LOCATION: "Lokacija", CANCEL: "Otkaži", INBOX: "Pretinac", DESKTOP_NOTIFICATIONS: "Obavijesti preglednika", DESKTOP_NOTIFICATIONS_ERROR: "Notifikacije preglednika nisu omogućene jer ih vaš preglednik aktivno blokira. Pokušajte pogledati postavke ili koristiti neki drugi preglednik.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikacija`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ako karticu preglednika ostavite otvorenu, pojavit će se ovaj pop-up kada netko razgovara s vama.", SEND_BUTTON_TEXT: "Pošalji", ENTRYBOX_TEXT_LIMIT: "Dozvoljeno je samo 10.000 znakova.", ENTRYBOX_PLACEHOLDER: "Reci nešto...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ovaj razgovor više nije aktivan.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Možeš čitati, ali ne i slati poruke.", MESSAGELIST_LOADING_OLDER: "Učitavam starije poruke...", MESSAGELIST_SHOW_OLDER: "Prikaži starije poruke", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Ova poruka je poslana e-poštom", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Učitavam...", UPLOAD_SEND_FILE: "Pošalji datoteku", UPLOAD_SHARE_LOCATION: "Podijeli lokaciju", UPLOAD_ERROR: "Nažalost, nešto je pošlo krivo. Datoteka možda nije podržana ili je prevelika.", SHARE_LOCATION_ERROR: "Nije moguće podijeliti lokaciju: ", LOADING: "Učitavam...", HUB_EMPTY: "Ovdje će se prikazati vaša povijest razgovora", HUB_SHOW_EARLIER: "Prikaži ranije razgovore", INBOX_NO_CHATS_TITLE: "Nema razgovora!", INBOX_NO_CHATS_BODY: "Nakon što vodite jedan ili više razgovora, oni će se pojaviti ovdje.", ENABLE_TRANSLATION: "Prevedi ovaj razgovor na hrvatski jezik", DISABLE_TRANSLATION: "Prikaži original", SEARCH_PLACEHOLDER_TEXT: "Pretraži...", SEARCH_SEARCHING: "Pretraživanje...", SEARCH_NO_RESULTS: "Nema rezultata", SEARCH_NO_MORE_RESULTS: "Nema više rezultata", CHAT_NOT_FOUND: "Razgovor nije pronađen", DELETE_MESSAGE: "Obriši poruku", DELETION_EXPLANATION: "Ako izbrišete ovu poruku, nestat će za sve.", EDIT_MESSAGE: "Uredi poruku", SAVE: "Spremi", EDITED_INDICATOR: "uređivao", REPLY_TO_MESSAGE: "Odgovorite", ADD_REACTION: "Dodajte reakciju", AUTH_EXPIRED_OVERLAY_TITLE: "Vaša sesija razgovora je istekla", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Osvježite stranicu za nastavak", VOICE_MESSAGE: "Glasovna poruka", CONTACT_INFORMATION_HIDDEN: "Skrivene informacije", LEAVE_CONVERSATION: "Napustiti razgovor", MARK_CONVERSATION_AS_UNREAD: "Označi kao nepročitano", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, vi = { code: "hu-HU", name: "Hungarian", translation: { YESTERDAY: "Tegnap", TODAY: "Ma", DAYS: "n", HOURS: "ó", MINUTES: "p", JUST_NOW: "éppen most", LOCATION: "Helyszín", CANCEL: "Visszavonás", INBOX: "Postaláda", DESKTOP_NOTIFICATIONS: "Böngésző értesítések", DESKTOP_NOTIFICATIONS_ERROR: "Azért nem tudja bekapcsolni a böngésző értesítések funkciót, mert böngészője aktívan blokkolja azt. Tekintse meg a beállításokat vagy használjon másik böngészőt.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo értesítés`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ha nyitva hagyja böngészőjét, felugró ablak fog megjelenni, ha valaki beszélni szeretne Önnel.", SEND_BUTTON_TEXT: "Küldés", ENTRYBOX_TEXT_LIMIT: "Mindőssze 10.000 karakter megengedett.", ENTRYBOX_PLACEHOLDER: "Mondjon valamit...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ez a beszélgetés már nem aktív.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Elolvashatja az üzeneteket, de nem küldhet újat.", MESSAGELIST_LOADING_OLDER: "Korábbi üzenetek betöltése...", MESSAGELIST_SHOW_OLDER: "Korábbi üzenetek megjelenítése", MESSAGELIST_NEW_MARKER: "Új", MESSAGE_SENT_VIA_EMAIL: "Ez az üzenet e-mailben került elküldésre", YOU_MARKER: "Ön", UPLOAD_IN_PROGRESS: "Feltöltés...", UPLOAD_SEND_FILE: "Fájl küldése", UPLOAD_SHARE_LOCATION: "Helyszín megosztása", UPLOAD_ERROR: "Sajnos hiba történt a feltöltés során. A fájl nem támogatott vagy túl nagy.", SHARE_LOCATION_ERROR: "Helyszín megosztása nem lehetséges: ", LOADING: "Betöltés...", HUB_EMPTY: "A beszélgetések előzményei itt láthatók", HUB_SHOW_EARLIER: "Korábbi beszélgetések megjelenítése", INBOX_NO_CHATS_TITLE: "Még nincs megjeleníthető beszélgetés!", INBOX_NO_CHATS_BODY: "Amint egy vagy több beszélgetéssel rendelkezik, azok itt fognak megjelenni.", ENABLE_TRANSLATION: "A beszélgetés lefordítása erre a nyelvre: magyar", DISABLE_TRANSLATION: "Eredeti megjelenítése", SEARCH_PLACEHOLDER_TEXT: "Keresés...", SEARCH_SEARCHING: "Keresés...", SEARCH_NO_RESULTS: "Nincs találat", SEARCH_NO_MORE_RESULTS: "Nincs több találat", CHAT_NOT_FOUND: "A csevegés nem található", DELETE_MESSAGE: "Üzenet törlése", DELETION_EXPLANATION: "Ha törlöd ezt az üzenetet, az mindenki számára eltűnik.", EDIT_MESSAGE: "Üzenet szerkesztése", SAVE: "Mentés", EDITED_INDICATOR: "szerkesztve", REPLY_TO_MESSAGE: "Válaszadás", ADD_REACTION: "Reagálás erre", AUTH_EXPIRED_OVERLAY_TITLE: "Chat munkamenete lejárt", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Folytatáshoz frissítse az oldalt", VOICE_MESSAGE: "Hangüzenet", CONTACT_INFORMATION_HIDDEN: "Rejtett információ", LEAVE_CONVERSATION: "Kilépés a beszélgetésből", MARK_CONVERSATION_AS_UNREAD: "Megjelölés olvasatlanként", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, ki = { code: "id-ID", name: "Bahasa Indonesia", translation: { YESTERDAY: "Kemarin", TODAY: "Hari ini", DAYS: "h", HOURS: "j", MINUTES: "m", JUST_NOW: "sekarang", LOCATION: "Lokasi", CANCEL: "Batal", INBOX: "Kotak Masuk", DESKTOP_NOTIFICATIONS: "Notifikasi peramban", DESKTOP_NOTIFICATIONS_ERROR: "Tidak dapat mengaktifkan pemberitahuan browser karena browser Anda secara aktif memblokir mereka. Coba cari di pengaturan atau menggunakan browser yang berbeda.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `pemberitahuan demo ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Jika Anda membiarkan tab browser tetap terbuka, Anda akan melihat ini muncul ketika seseorang berbicara kepada Anda.", SEND_BUTTON_TEXT: "Kirim", ENTRYBOX_TEXT_LIMIT: "Hanya 10.000 karakter yang diizinkan.", ENTRYBOX_PLACEHOLDER: "Katakan sesuatu...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Percakapan ini tidak lagi aktif.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Anda dapat membaca, tetapi tidak mengirim pesan.", MESSAGELIST_LOADING_OLDER: "Memuat pesan lama...", MESSAGELIST_SHOW_OLDER: "Tampilkan pesan yang lebih lama", MESSAGELIST_NEW_MARKER: "Baru", MESSAGE_SENT_VIA_EMAIL: "Pesan ini dikirim melalui email", YOU_MARKER: "Anda", UPLOAD_IN_PROGRESS: "Mengunggah...", UPLOAD_SEND_FILE: "Kirim mengajukan", UPLOAD_SHARE_LOCATION: "Bagikan lokasi", UPLOAD_ERROR: "Ada yang salah diunggah. File mungkin tidak didukung atau terlalu besar.", SHARE_LOCATION_ERROR: "Tidak dapat membagikan lokasi: ", LOADING: "Memuat...", HUB_EMPTY: "Riwayat obrolan Anda akan muncul di sini", HUB_SHOW_EARLIER: "Tampilkan obrolan sebelumnya", INBOX_NO_CHATS_TITLE: "Belum ada obrolan!", INBOX_NO_CHATS_BODY: "Setelah Anda melakukan satu atau lebih percakapan, mereka akan muncul di sini.", ENABLE_TRANSLATION: "Terjemahkan percakapan ini ke Indonesia", DISABLE_TRANSLATION: "Perlihatkan asli", SEARCH_PLACEHOLDER_TEXT: "Cari...", SEARCH_SEARCHING: "Mencari...", SEARCH_NO_RESULTS: "Tidak ditemukan hasil", SEARCH_NO_MORE_RESULTS: "Tidak ada hasil lainnya", CHAT_NOT_FOUND: "Obrolan tidak ditemukan", DELETE_MESSAGE: "Hapus pesan", DELETION_EXPLANATION: "Jika pesan ini Anda hapus, pesan ini akan tidak terlihat bagi siapa pun.", EDIT_MESSAGE: "Sunting pesan", SAVE: "Mentés", EDITED_INDICATOR: "diedit", REPLY_TO_MESSAGE: "Balas", ADD_REACTION: "Tambah reaksi", AUTH_EXPIRED_OVERLAY_TITLE: "Sesi obrolan Anda sudah lewat batas waktu", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Muat ulang halaman untuk melanjutkan", VOICE_MESSAGE: "Pesan suara", CONTACT_INFORMATION_HIDDEN: "Informasi tersembunyi", LEAVE_CONVERSATION: "Tinggalkan percakapan", MARK_CONVERSATION_AS_UNREAD: "Tandai sebagai Belum dibaca", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Mi = { code: "is-IS", name: "Íslenska", translation: { YESTERDAY: "Í gær", TODAY: "Í dag", DAYS: "dagar", HOURS: "klst.", MINUTES: "mín.", JUST_NOW: "núna", LOCATION: "Staðsetning", CANCEL: "Hætta við", INBOX: "Pósthólf", DESKTOP_NOTIFICATIONS: "Tilkynningar í vafra", DESKTOP_NOTIFICATIONS_ERROR: "Ekki er hægt að birta tilkynningar í vafra vegna þess að vafrinn sem þú notar hindrar það. Reyndu að leita að stillingum eða að nota annan vafra.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} prufutilkynning`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ef flipinn í vafranum er opinn muntu sjá þessa tilkynningu birtast þegar einhver sendir þér skilaboð.", SEND_BUTTON_TEXT: "Senda", ENTRYBOX_TEXT_LIMIT: "Aðeins 10.000 stafir komast fyrir.", ENTRYBOX_PLACEHOLDER: "Segðu eitthvað...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Þessar samræður eru ekki lengar virkar.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Þú getur lesið, en ekki sent skilaboð.", MESSAGELIST_LOADING_OLDER: "Sæki eldri skilaboð...", MESSAGELIST_SHOW_OLDER: "Sýna eldri skilaboð", MESSAGELIST_NEW_MARKER: "Ný", MESSAGE_SENT_VIA_EMAIL: "Þessi skilaboð voru send með tölvupósti", YOU_MARKER: "þú", UPLOAD_IN_PROGRESS: "Hleð upp...", UPLOAD_SEND_FILE: "Senda skrá", UPLOAD_SHARE_LOCATION: "Deila staðsetningu", UPLOAD_ERROR: "Því miður fór eitthvað úrskeiðis við að hlaða upp. Skráin gæti verið af rangri tegund eð of stór.", SHARE_LOCATION_ERROR: "Ekki er hægt að deila staðsetningu: ", LOADING: "Hleð...", HUB_EMPTY: "Fyrri samtöl munu birtast hér", HUB_SHOW_EARLIER: "Sýna fyrri samtöl", INBOX_NO_CHATS_TITLE: "Engin samtöl enn!", INBOX_NO_CHATS_BODY: "Þegar þú hefur átt eitt eða fleiri samtöl, munu þau birtast hér.", ENABLE_TRANSLATION: "Þýða þetta samtal á ensku", DISABLE_TRANSLATION: "Sýna upprunalegt", SEARCH_PLACEHOLDER_TEXT: "Leita...", SEARCH_SEARCHING: "Leita...", SEARCH_NO_RESULTS: "Ekkert fannst", SEARCH_NO_MORE_RESULTS: "Engar fleiri niðurstöður", CHAT_NOT_FOUND: "Samtal fannst ekki", DELETE_MESSAGE: "Eyða skilaboðum", DELETION_EXPLANATION: "Ef þú eyðir þessum skilaboðum munu þau hverfa hjá öllum.", EDIT_MESSAGE: "Breyta skilaboðum", SAVE: "Vista", EDITED_INDICATOR: "breytt", REPLY_TO_MESSAGE: "Svara", REPLY_TO_ARIA_LABEL: (e, t) => `Svara ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Fara úr svari", ADD_REACTION: "Setja inn viðbrögð", AUTH_EXPIRED_OVERLAY_TITLE: "Spjallið hefur runnið út", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Endurnýjaðu síðuna til að halda áfram", VOICE_MESSAGE: "Raddskilaboð", LEAVE_CONVERSATION: "Skilja eftir skilaboð", MARK_CONVERSATION_AS_UNREAD: "Merkja sem ólesið", STATUS_INDICATOR_ONLINE: "Virk", STATUS_INDICATOR_OFFLINE: "Ekki við", CONTACT_INFORMATION_HIDDEN: "faldar upplýsingar" } }, Pi = { code: "it-IT", name: "Italian", translation: { YESTERDAY: "Ieri", TODAY: "Oggi", DAYS: "g", HOURS: "o", MINUTES: "m", JUST_NOW: "adesso", LOCATION: "Posizione", CANCEL: "Annulla", INBOX: "Posta in arrivo", DESKTOP_NOTIFICATIONS: "Notifiche browser", DESKTOP_NOTIFICATIONS_ERROR: "Impossibile abilitare le notifiche browser perché il browser le blocca attivamente. Prova a cercare le impostazioni o utilizzare un browser diverso.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notification`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Se si mantiene aperta la scheda del browser, questo verrà visualizzato quando qualcuno ti parla.", SEND_BUTTON_TEXT: "Invia", ENTRYBOX_TEXT_LIMIT: "Sono consentiti solo 10.000 caratteri.", ENTRYBOX_PLACEHOLDER: "Dì qualcosa...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Questa conversazione non è più attiva.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Puoi leggere, ma non inviare messaggi.", MESSAGELIST_LOADING_OLDER: "Caricamento dei messaggi precedenti...", MESSAGELIST_SHOW_OLDER: "Mostra messaggi precedenti", MESSAGELIST_NEW_MARKER: "Nuovo", MESSAGE_SENT_VIA_EMAIL: "Questo messaggio è stato inviato via email", YOU_MARKER: "tu", UPLOAD_IN_PROGRESS: "Caricamento in corso...", UPLOAD_SEND_FILE: "Invia file", UPLOAD_SHARE_LOCATION: "Condividi posizione", UPLOAD_ERROR: "Qualcosa è andato storto durante il caricamento. Il file potrebbe non essere supportato o troppo grande.", SHARE_LOCATION_ERROR: "Impossibile condividere la posizione: ", LOADING: "Caricamento in corso...", HUB_EMPTY: "La cronologia della tua chat verrà mostrata qui", HUB_SHOW_EARLIER: "Mostra chat precedenti", INBOX_NO_CHATS_TITLE: "Non ci sono ancora chat!", INBOX_NO_CHATS_BODY: "Una volta che hai avuto una o più conversazioni, verranno visualizzate qui.", ENABLE_TRANSLATION: "Traduci questa conversazione in italiano", DISABLE_TRANSLATION: "Mostra l'originale", SEARCH_PLACEHOLDER_TEXT: "Cerca...", SEARCH_SEARCHING: "Cercando...", SEARCH_NO_RESULTS: "Nessun risultato trovato", SEARCH_NO_MORE_RESULTS: "Non ci sono più risultati", CHAT_NOT_FOUND: "Chat non trovata", DELETE_MESSAGE: "Elimina messaggio", DELETION_EXPLANATION: "Se elimini il messaggio, questo scomparirà per tutti.", EDIT_MESSAGE: "Modifica messaggio", SAVE: "Salva", EDITED_INDICATOR: "modificato", REPLY_TO_MESSAGE: "Rispondi", ADD_REACTION: "Aggiungi reazione", AUTH_EXPIRED_OVERLAY_TITLE: "La sessione di chat è scaduta", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Aggiorna la pagina per continuare", VOICE_MESSAGE: "Messaggio vocale", CONTACT_INFORMATION_HIDDEN: "Informazioni nascoste", LEAVE_CONVERSATION: "Abbandona la conversazione", MARK_CONVERSATION_AS_UNREAD: "Segna come non letto", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, bi = { code: "ja-JP", name: "Japanese", translation: { YESTERDAY: "昨日", TODAY: "今日", DAYS: "日前", HOURS: "時間前", MINUTES: "分前", JUST_NOW: "たった今", LOCATION: "場所", CANCEL: "キャンセル", INBOX: "受信箱", DESKTOP_NOTIFICATIONS: "ブラウザの通知", DESKTOP_NOTIFICATIONS_ERROR: "ブラウザの通知はブロックされているため、ブラウザの通知を有効にできません。設定を確認するか、別のブラウザを使用してください。", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} デモ通知`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "ブラウザのタブを開いたままにしておくと、誰かがあなたに話しかけたときにこのポップアップが表示されます。", SEND_BUTTON_TEXT: "送信", ENTRYBOX_TEXT_LIMIT: "許可されているのは10.000文字までです。", ENTRYBOX_PLACEHOLDER: "メッセージを入力してください", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "この会話はもうアクティブではありません。", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "あなたは読むことはできますが、メッセージを送ることはできません。", MESSAGELIST_LOADING_OLDER: "古いメッセージを読み込んでいます...", MESSAGELIST_SHOW_OLDER: "古いメッセージを表示", MESSAGELIST_NEW_MARKER: "新着", MESSAGE_SENT_VIA_EMAIL: "このメッセージはメールで送信されました", YOU_MARKER: "あなたは", UPLOAD_IN_PROGRESS: "アップロード中...", UPLOAD_SEND_FILE: "ファイル送信", UPLOAD_SHARE_LOCATION: "共有場所", UPLOAD_ERROR: "アップロード中に問題が発生しました。ファイルがサポートされていないか、大きすぎる可能性があります。", SHARE_LOCATION_ERROR: "場所を共有できません: ", LOADING: "読み込み中...", HUB_EMPTY: "あなたのチャット履歴がここに表示されます", HUB_SHOW_EARLIER: "以前のチャットを表示", INBOX_NO_CHATS_TITLE: "まだチャットがありません!", INBOX_NO_CHATS_BODY: "会話が1つ以上あると、ここに表示されます", ENABLE_TRANSLATION: "この会話を日本語に翻訳する", DISABLE_TRANSLATION: "オリジナルを表示", SEARCH_PLACEHOLDER_TEXT: "検索...", SEARCH_SEARCHING: "検索中...", SEARCH_NO_RESULTS: "結果が見つかりません", SEARCH_NO_MORE_RESULTS: "これ以上結果はありません", CHAT_NOT_FOUND: "チャットが見つかりませんでした", DELETE_MESSAGE: "メッセージを削除する", DELETION_EXPLANATION: "このメッセージを削除すると、全ての人に表示されなくなります。", EDIT_MESSAGE: "メッセージを編集する", SAVE: "上書き保存", EDITED_INDICATOR: "編集", REPLY_TO_MESSAGE: "返信する", ADD_REACTION: "リアクションを追加", AUTH_EXPIRED_OVERLAY_TITLE: "チャットセッションの有効期限が切れました", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "続けるにはページを更新してください", VOICE_MESSAGE: "ボイスメッセージ", CONTACT_INFORMATION_HIDDEN: "機密情報", LEAVE_CONVERSATION: "会話をやめる", MARK_CONVERSATION_AS_UNREAD: "未読としてマーク", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ui = { code: "ka-GE", name: "Georgian", translation: { YESTERDAY: "გუშინ", TODAY: "დღეს", DAYS: "დღ", HOURS: "სთ", MINUTES: "წთ", JUST_NOW: "ახლა", LOCATION: "ადგილმდებარეობა", CANCEL: "გაუქმება", INBOX: "მიღებული შეტყობინება", DESKTOP_NOTIFICATIONS: "ბრაუზერის შეტყობინებები", DESKTOP_NOTIFICATIONS_ERROR: "შეუძლებელია ბრაუზერის შეტკობინებების ჩართვა. ეს ბრაუზერი ბლოკავს მათ. სცადე ცვლილება ოპციებიდან ან გამოიყენე სხვა ბრაუზერი.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} შეტყობინებების დემო ვერსია`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "თუ დატოვებ ბრაუზერის ფანჯარას გახსნილს, როცა ვიღაც მოგწერს საუბარი ამოვარდება დესკტოპზე.", SEND_BUTTON_TEXT: "გაგზავნა", ENTRYBOX_TEXT_LIMIT: "დაშვებულია მხოლოდ 10.000 სიმბოლო.", ENTRYBOX_PLACEHOLDER: "დაწერე რაღაც...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "ეს დიალოგი აღარ არის ხელმისაწვდომი.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "შეგიძლია წაიკითხო, მაგრამ ვერ გააგზავნი შეტყობინებას.", MESSAGELIST_LOADING_OLDER: "იტვირთება ძველი შეტყობინებები...", MESSAGELIST_SHOW_OLDER: "ძველი შეტყობინებების ჩვენება", MESSAGELIST_NEW_MARKER: "ახალი", MESSAGE_SENT_VIA_EMAIL: "ეს შეტყობინება გამოგზავნილია იმეილით", YOU_MARKER: "you", UPLOAD_IN_PROGRESS: "იტვირთება...", UPLOAD_SEND_FILE: "ფაილის გაგზავნა", UPLOAD_SHARE_LOCATION: "ადგილმდებარეობის გაზიარება", UPLOAD_ERROR: "პრობლემაა ატვირთვისას. ფაილის შესაძლოა არის არათავსებადი ან ძალიან დიდი.", SHARE_LOCATION_ERROR: "შეუძლებელია ადგილმდებარეობის გაზიარება: ", LOADING: "იტვირთება...", HUB_EMPTY: "საუბრების ისტორია გამოჩნდება აქ", HUB_SHOW_EARLIER: "წინა საუბრების ნახვა", INBOX_NO_CHATS_TITLE: "ჯერ-ჯერობით არ არის საუბრები!", INBOX_NO_CHATS_BODY: "უკვე დასრულებული საუბარები გამოჩნდება აქ", ENABLE_TRANSLATION: "თარგმნეთ ეს საუბარი ინგლისურად", DISABLE_TRANSLATION: "ორიგინალის ჩვენება", SEARCH_PLACEHOLDER_TEXT: "ძიება...", SEARCH_SEARCHING: "მიმდინარეობს ძიება...", SEARCH_NO_RESULTS: "შედეგები ვერ ქართველი", SEARCH_NO_MORE_RESULTS: "სხვა შედეგი ვერ მოიძებნა", CHAT_NOT_FOUND: "ჩატი ვერ მოიძებნა", DELETE_MESSAGE: "შეტყობინების წაშლა ", DELETION_EXPLANATION: "თუ ამ შეტყობინებას წაშლით, ის ყველასთვის გაქრება.", EDIT_MESSAGE: "შეტყობინების რედაქტირება", SAVE: "შენახვა", EDITED_INDICATOR: "რედაქტირებულია", REPLY_TO_MESSAGE: "პასუხის გაცემა", ADD_REACTION: "დაამატეთ რეაქცია", AUTH_EXPIRED_OVERLAY_TITLE: "თქვენი ჩეთის სესიის ვადა ამოიწურა", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "განაახლეთ გვერდი გასაგრძელებლად", VOICE_MESSAGE: "ხმოვანი შეტყობინება", CONTACT_INFORMATION_HIDDEN: "ფარული ინფორმაცია", LEAVE_CONVERSATION: "საუბრის დატოვება", MARK_CONVERSATION_AS_UNREAD: "წაუკითხავად მონიშვნა", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, yi = { code: "ko-KR", name: "Korean (South Korea)", translation: { YESTERDAY: "어제", TODAY: "오늘", DAYS: "일 전", HOURS: "시간 전", MINUTES: "분 전", JUST_NOW: "방금", LOCATION: "위치", CANCEL: "취소", INBOX: "대화 목록", DESKTOP_NOTIFICATIONS: "브라우저 알림", DESKTOP_NOTIFICATIONS_ERROR: "브라우저 알림을 표시할 수 없습니다. 브라우저 설정을 확인하거나 다른 브라우저를 사용해주세요.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} 데모 알림`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "브라우저 탭을 열어 둔 상태에서 누군가 대화 할 때 이 팝업이 표시됩니다.", SEND_BUTTON_TEXT: "전송", ENTRYBOX_TEXT_LIMIT: "최대 10,000자까지 입력할 수 있습니다.", ENTRYBOX_PLACEHOLDER: "메세지를 입력하세요...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "채팅이 종료되었습니다.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "읽기만 가능하며 메시지를 보낼 수 없습니다.", MESSAGELIST_LOADING_OLDER: "이전 메시지 로드 중...", MESSAGELIST_SHOW_OLDER: "이전 메시지 표시", MESSAGELIST_NEW_MARKER: "새 메시지", MESSAGE_SENT_VIA_EMAIL: "이 메시지는 이메일을 통해 전송되었습니다.", YOU_MARKER: "나", UPLOAD_IN_PROGRESS: "업로드 중...", UPLOAD_SEND_FILE: "파일 전송", UPLOAD_SHARE_LOCATION: "위치 공유", UPLOAD_ERROR: "업로드가 실패했습니다. 파일이 지원되지 않거나 너무 클 수 있습니다.", SHARE_LOCATION_ERROR: "위치를 공유 할 수 없습니다: ", LOADING: "로드 중...", HUB_EMPTY: "채팅 기록이 여기에 표시됩니다", HUB_SHOW_EARLIER: "이전 채팅보기", INBOX_NO_CHATS_TITLE: "아직 채팅이 없습니다!", INBOX_NO_CHATS_BODY: "대화가 하나 이상 있으면 여기에 표시됩니다.", ENABLE_TRANSLATION: "이 대화를 한국어로 번역", DISABLE_TRANSLATION: "원본 표시", SEARCH_PLACEHOLDER_TEXT: "검색...", SEARCH_SEARCHING: "검색 중...", SEARCH_NO_RESULTS: "검색 결과 없음", SEARCH_NO_MORE_RESULTS: "추가 검색 결과 없음", CHAT_NOT_FOUND: "대화를 찾지 못했습니다", DELETE_MESSAGE: "메시지 삭제", DELETION_EXPLANATION: "이 메시지를 삭제하면 모든 사람이 볼 수 없게 됩니다.", EDIT_MESSAGE: "메시지 편집하기", SAVE: "저장", EDITED_INDICATOR: "편집", REPLY_TO_MESSAGE: "회신", ADD_REACTION: "반응 추가", AUTH_EXPIRED_OVERLAY_TITLE: "채팅 세션이 만료되었습니다", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "계속하려면 페이지를 새로고침하세요", VOICE_MESSAGE: "음성 메시지", CONTACT_INFORMATION_HIDDEN: "숨겨진 정보", LEAVE_CONVERSATION: "대화 떠나기", MARK_CONVERSATION_AS_UNREAD: "읽지 않은 상태로 표시", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Hi = { code: "nb-NO", name: "Norwegian (Bokmål)", translation: { YESTERDAY: "I går", TODAY: "I dag", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "Nå", LOCATION: "Plassering", CANCEL: "Avbryt", INBOX: "Innboks", DESKTOP_NOTIFICATIONS: "Nettleservarsler", DESKTOP_NOTIFICATIONS_ERROR: "Kan ikke aktivere Nettleservarsler fordi nettleseren din aktivt blokkerer dem. Prøv å se i innstillingene eller bruke en annen nettleser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo varslinger`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Hvis du holder nettleservinduet åpent, vil du se dette varsel når noen snakker til deg.", SEND_BUTTON_TEXT: "Send", ENTRYBOX_TEXT_LIMIT: "Kun 10.000 tegn er tillatt.", ENTRYBOX_PLACEHOLDER: "Si noe...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Denne samtale er ikke lengre aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Du kan lese, men ikke sende meldinger.", MESSAGELIST_LOADING_OLDER: "Laster eldre meldinger...", MESSAGELIST_SHOW_OLDER: "Vis eldre meldinger", MESSAGELIST_NEW_MARKER: "Ny", MESSAGE_SENT_VIA_EMAIL: "Denne meldingen er sendt via e-post", YOU_MARKER: "deg", UPLOAD_IN_PROGRESS: "Laster opp...", UPLOAD_SEND_FILE: "Send fil", UPLOAD_SHARE_LOCATION: "Del din plassering", UPLOAD_ERROR: "Noe gikk galt i uplastingen. Det kan være filen ikke støttes eller for stor.", SHARE_LOCATION_ERROR: "Kan ikke dele plasseringen: ", LOADING: "Laster...", HUB_EMPTY: "Din chats historikk vil vises her", HUB_SHOW_EARLIER: "Vis tidligere chats", INBOX_NO_CHATS_TITLE: "Ingen chats enda!", INBOX_NO_CHATS_BODY: "Så snart du får en eller flere samtaler, vil de vises her.", ENABLE_TRANSLATION: "Oversett denne samtalen til norsk", DISABLE_TRANSLATION: "Vis original", SEARCH_PLACEHOLDER_TEXT: "Søk...", SEARCH_SEARCHING: "Søker...", SEARCH_NO_RESULTS: "Finner ingen resultater", SEARCH_NO_MORE_RESULTS: "Ingen flere resultater", CHAT_NOT_FOUND: "Chat ikke funnet", DELETE_MESSAGE: "Slett melding", DELETION_EXPLANATION: "Hvis du sletter denne meldingen, forsvinner den for alle.", EDIT_MESSAGE: "Rediger melding", SAVE: "Lagre", EDITED_INDICATOR: "redigert", REPLY_TO_MESSAGE: "Svar", ADD_REACTION: "Legg til reaksjon", AUTH_EXPIRED_OVERLAY_TITLE: "Chatøkten er utløpt", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Oppdater siden for å fortsette", VOICE_MESSAGE: "Lydmelding", CONTACT_INFORMATION_HIDDEN: "Skjult informasjon", LEAVE_CONVERSATION: "Forlat samtalen", MARK_CONVERSATION_AS_UNREAD: "Merk som ulest", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, wi = { code: "nl-NL", name: "Dutch", translation: { YESTERDAY: "Gisteren", TODAY: "Vandaag", DAYS: "d", HOURS: "u", MINUTES: "m", JUST_NOW: "zojuist", LOCATION: "Locatie", CANCEL: "Annuleren", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Browsermeldingen", DESKTOP_NOTIFICATIONS_ERROR: "Browsermeldingen kunnen niet geactiveerd worden omdat de browser het blokkeert. Check de instellingen van je browser of probeer een andere browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notificatie`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Als je je browser open houdt, zie je deze popup als iemand tegen je praat.", SEND_BUTTON_TEXT: "Verzenden", ENTRYBOX_TEXT_LIMIT: "Maximaal 10.000 tekens toegestaan.", ENTRYBOX_PLACEHOLDER: "Typ een bericht...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Dit gesprek is niet actief meer.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Je kunt geen berichten sturen.", MESSAGELIST_LOADING_OLDER: "Eerdere berichten laden...", MESSAGELIST_SHOW_OLDER: "Laad eerdere berichten", MESSAGELIST_NEW_MARKER: "Nieuw", MESSAGE_SENT_VIA_EMAIL: "Dit bericht is verstuurd via e-mail", YOU_MARKER: "jij", UPLOAD_IN_PROGRESS: "Uploaden...", UPLOAD_SEND_FILE: "Verzend bestand", UPLOAD_SHARE_LOCATION: "Deel locatie", UPLOAD_ERROR: "Er ging iets mis. Het bestand wordt niet ondersteund of is te groot.", SHARE_LOCATION_ERROR: "Locatie delen mislukt: ", LOADING: "Bezig met laden...", HUB_EMPTY: "Berichtengeschiedenis wordt hier weergegeven", HUB_SHOW_EARLIER: "Laat eerdere berichten zien", INBOX_NO_CHATS_TITLE: "Nog geen chats!", INBOX_NO_CHATS_BODY: "Zodra je een of meerdere conversaties hebt gehad, worden deze hier weergegeven.", ENABLE_TRANSLATION: "Vertaal dit gesprek naar het Nederlands", DISABLE_TRANSLATION: "Toon oorspronkelijk gesprek", SEARCH_PLACEHOLDER_TEXT: "Zoek...", SEARCH_SEARCHING: "Zoeken...", SEARCH_NO_RESULTS: "Geen resultaten gevonden", SEARCH_NO_MORE_RESULTS: "Niet meer resultaten", CHAT_NOT_FOUND: "Chat niet gevonden", DELETE_MESSAGE: "Bericht verwijderen", DELETION_EXPLANATION: "Als je dit bericht verwijdert, zal het voor iedereen verdwijnen.", EDIT_MESSAGE: "Bericht bewerken", SAVE: "Opslaan", EDITED_INDICATOR: "bewerkt", REPLY_TO_MESSAGE: "Beantwoorden", ADD_REACTION: "Reactie toevoegen", AUTH_EXPIRED_OVERLAY_TITLE: "Je chatsessie is verlopen", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Ververs de pagina om door te gaan", VOICE_MESSAGE: "Spraakbericht", CONTACT_INFORMATION_HIDDEN: "verborgen informatie", LEAVE_CONVERSATION: "Gesprek verlaten", MARK_CONVERSATION_AS_UNREAD: "Markeren als ongelezen", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Bi = { code: "pl-PL", name: "Polish", translation: { YESTERDAY: "Wczoraj", TODAY: "Dzisiaj", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "teraz", LOCATION: "Lokalizacja", CANCEL: "Anuluj", INBOX: "Skrzynka odbiorcza", DESKTOP_NOTIFICATIONS: "Powiadomienia", DESKTOP_NOTIFICATIONS_ERROR: "Nie można aktywować powiadomień, ponieważ twoja przeglądarka je blokuje. Proszę zmienić ustawienie lub spróbować innej przeglądarki.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} przykładowe powiadomienie`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Jeśli zostawisz tę kartę otwartą, zobaczysz takie powiadomienie, gdy ktoś napisze do Ciebie.", SEND_BUTTON_TEXT: "Wyślij", ENTRYBOX_TEXT_LIMIT: "Nie można wysyłać więcej niż 10000 znaków.", ENTRYBOX_PLACEHOLDER: "Napisz coś...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ten czat nie jest aktywny.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Możesz czytać wiadomości, ale nie możesz ich wysyłać.", MESSAGELIST_LOADING_OLDER: "Wczytuję starsze wiadomości...", MESSAGELIST_SHOW_OLDER: "Zobacz starsze wiadomości", MESSAGELIST_NEW_MARKER: "Nowe", MESSAGE_SENT_VIA_EMAIL: "Ta wiadomość została wysłana przez email.", YOU_MARKER: "ty", UPLOAD_IN_PROGRESS: "Przesyłanie...", UPLOAD_SEND_FILE: "Prześlij plik", UPLOAD_SHARE_LOCATION: "Udostępnij lokalizację", UPLOAD_ERROR: "Coś poszło nie tak. Plik może być zbyt duży lub jest nieobsługiwany.", SHARE_LOCATION_ERROR: "Nie da się udostępnić lokalizacji: ", LOADING: "Ładowanie...", HUB_EMPTY: "Twoje czaty pojawią się tutaj", HUB_SHOW_EARLIER: "Zobacz starsze czaty", INBOX_NO_CHATS_TITLE: "Brak czatów!", INBOX_NO_CHATS_BODY: "Rozpoczęte konwersacje pojawią się tutaj.", ENABLE_TRANSLATION: "Przetłumacz tę konwersację na język polski", DISABLE_TRANSLATION: "Pokaż oryginał", SEARCH_PLACEHOLDER_TEXT: "Wyszukaj...", SEARCH_SEARCHING: "Wyszukiwanie...", SEARCH_NO_RESULTS: "Nie znaleziono wyników", SEARCH_NO_MORE_RESULTS: "Nie ma innych wyników", CHAT_NOT_FOUND: "Nie znaleziono konwersacji", DELETE_MESSAGE: "Usuń wiadomość", DELETION_EXPLANATION: "Jeśli usuniesz tę wiadomość, przestanie być widoczna dla wszystkich.", EDIT_MESSAGE: "Edytuj wiadomość", SAVE: "Zapisz", EDITED_INDICATOR: "edytowano", REPLY_TO_MESSAGE: "Odpowiedz", ADD_REACTION: "Dodaj reakcję", AUTH_EXPIRED_OVERLAY_TITLE: "Twoja sesja wygasła", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Odśwież stronę, aby kontynuować", VOICE_MESSAGE: "Wiadomość głosowa", CONTACT_INFORMATION_HIDDEN: "Ukryte informacje", LEAVE_CONVERSATION: "Opuść konwersację", MARK_CONVERSATION_AS_UNREAD: "Oznacz jako nieprzeczytane", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Yi = { code: "pt-BR", name: "Portuguese (Brazil)", translation: { YESTERDAY: "Ontem", TODAY: "Hoje", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "agora mesmo", LOCATION: "Localização", CANCEL: "Cancelar", INBOX: "Caixa de entrada", DESKTOP_NOTIFICATIONS: "Notificações do navegador", DESKTOP_NOTIFICATIONS_ERROR: "Não é possível ativar as notificações da navegador porque seu navegador as bloqueia. Tente procurar nas configurações ou usar um navegador diferente.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} notificação de demonstração`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Se você mantiver a guia do navegador aberta, verá essa mensagem quando alguém falar com você.", SEND_BUTTON_TEXT: "Enviar", ENTRYBOX_TEXT_LIMIT: "Apenas 10.000 caracteres são permitidos.", ENTRYBOX_PLACEHOLDER: "Diga algo...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Esta conversa não está mais ativa.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Você pode ler, mas não enviar mensagens.", MESSAGELIST_LOADING_OLDER: "Carregando mensagens antigas...", MESSAGELIST_SHOW_OLDER: "Mostrar mensagens mais antigas", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Esta mensagem foi enviada via email.", YOU_MARKER: "Você", UPLOAD_IN_PROGRESS: "Carregando...", UPLOAD_SEND_FILE: "Enviar arquivo", UPLOAD_SHARE_LOCATION: "Compartilhar localização", UPLOAD_ERROR: "Algo deu errado ao fazer o upload. O arquivo pode não ter suporte ou ser muito grande.", SHARE_LOCATION_ERROR: "Não é possível compartilhar o local: ", LOADING: "Carregando...", HUB_EMPTY: "Seu histórico de conversas será exibido aqui", HUB_SHOW_EARLIER: "Mostrar conversas anteriores", INBOX_NO_CHATS_TITLE: "Ainda não há chats!", INBOX_NO_CHATS_BODY: "Depois de ter uma ou mais conversas, elas serão exibidas aqui.", ENABLE_TRANSLATION: "Traduzir esta conversa para português", DISABLE_TRANSLATION: "Ver a conversa não traduzida", SEARCH_PLACEHOLDER_TEXT: "Busca...", SEARCH_SEARCHING: "Consultando...", SEARCH_NO_RESULTS: "Resultados nao encontrados", SEARCH_NO_MORE_RESULTS: "Não há mais resultados", CHAT_NOT_FOUND: "Conversa não encontrada", DELETE_MESSAGE: "Excluir mensagem", DELETION_EXPLANATION: "Se você excluir esta mensagem, ela desaparecerá para todos.", EDIT_MESSAGE: "Editar mensagem", SAVE: "Salvar", EDITED_INDICATOR: "editada", REPLY_TO_MESSAGE: "Responder", ADD_REACTION: "Adicionar reação", AUTH_EXPIRED_OVERLAY_TITLE: "Sua sessão de chat expirou", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Atualize a página para continuar", VOICE_MESSAGE: "Mensagem de voz", LEAVE_CONVERSATION: "Sair da conversa", MARK_CONVERSATION_AS_UNREAD: "Marcar como não lida", CONTACT_INFORMATION_HIDDEN: "Informação oculta", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, $i = { code: "ro-RO", name: "Romanian (Romania)", translation: { YESTERDAY: "Ieri", TODAY: "Astăzi", DAYS: "z", HOURS: "o", MINUTES: "m", JUST_NOW: "chiar acum", LOCATION: "Locație", CANCEL: "Anulare", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Notificări browser", DESKTOP_NOTIFICATIONS_ERROR: "Nu se pot activa notificări browser deoarece browserul dvs. le blochează în mod activ. Încercați să căutați în setări sau utilizând un alt browser.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Notificare de debit ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Dacă țineți fișa browserului deschis, veți vedea acest pop-up atunci când cineva vorbește cu dvs.", SEND_BUTTON_TEXT: "Trimiteți", ENTRYBOX_TEXT_LIMIT: "Sunt permise numai 10.000 de caractere.", ENTRYBOX_PLACEHOLDER: "Spune ceva...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Această conversație nu mai este activă.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Puteți citi, dar nu puteți trimite mesaje.", MESSAGELIST_LOADING_OLDER: "Încărcarea mesajelor mai vechi...", MESSAGELIST_SHOW_OLDER: "Afișați mesaje mai vechi", MESSAGELIST_NEW_MARKER: "Nou", MESSAGE_SENT_VIA_EMAIL: "Acest mesaj a fost trimis prin e-mail", YOU_MARKER: "voi", UPLOAD_IN_PROGRESS: "Încărcarea...", UPLOAD_SEND_FILE: "Trimiteți fișierul", UPLOAD_SHARE_LOCATION: "Distribuiți locația", UPLOAD_ERROR: "Sa încărcat ceva în mod greșit. Fișierul ar putea fi neacceptat sau prea mare.", SHARE_LOCATION_ERROR: "Nu se poate partaja locația: ", LOADING: "Încărcare...", HUB_EMPTY: "Istoricul chat-ului dvs. va apărea aici", HUB_SHOW_EARLIER: "Afișați discuțiile anterioare", INBOX_NO_CHATS_TITLE: "Încă nu vorbești!", INBOX_NO_CHATS_BODY: "După ce ați avut una sau mai multe conversații, acestea vor apărea aici.", ENABLE_TRANSLATION: "Traduceți această conversație în română", DISABLE_TRANSLATION: "Arată originalul", SEARCH_PLACEHOLDER_TEXT: "Căutare...", SEARCH_SEARCHING: "Se caută...", SEARCH_NO_RESULTS: "Nu s-au găsit rezultate", SEARCH_NO_MORE_RESULTS: "Nu mai există rezultate", CHAT_NOT_FOUND: "Conversația nu a fost găsită", DELETE_MESSAGE: "Șterge mesajul", DELETION_EXPLANATION: "Dacă ștergi acest mesaj, acesta va dispărea pentru toată lumea.", EDIT_MESSAGE: "Redactează mesajul", SAVE: "Salvare", EDITED_INDICATOR: "editat", REPLY_TO_MESSAGE: "Răspundeți", ADD_REACTION: "Adaugă o reacție", AUTH_EXPIRED_OVERLAY_TITLE: "Sesiunea dumneavoastră de chat a expirat", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Reîmprospătați pagina pentru a continua", VOICE_MESSAGE: "Mesaj vocal", CONTACT_INFORMATION_HIDDEN: "Informații ascunse", LEAVE_CONVERSATION: "Părăsește conversația", MARK_CONVERSATION_AS_UNREAD: "Marcheaza ca necitit", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, xi = { code: "ru-RU", name: "Russian", translation: { YESTERDAY: "Вчера", TODAY: "Сегодня", DAYS: "д", HOURS: "ч", MINUTES: "м", JUST_NOW: "только что", LOCATION: "Местоположение", CANCEL: "Отмена", INBOX: "Входящие", DESKTOP_NOTIFICATIONS: "Оповещения", DESKTOP_NOTIFICATIONS_ERROR: "Невозможно включить оповещения, потому что ваш браузер активно блокирует их. Проверьте ваши настройки или попробуйте другой браузер.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} демо-оповещение`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Если вкладка вашего браузера открыта, вы увидите всплывающее окошко оповещения когда кто-то отправит вам сообщение.", SEND_BUTTON_TEXT: "Отправить", ENTRYBOX_TEXT_LIMIT: "Разрешено использовать только 10 тысяч символов.", ENTRYBOX_PLACEHOLDER: "Напишите что-нибудь...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Этот разговор больше неактивен.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Вы можете читать, но не отправлять сообщения.", MESSAGELIST_LOADING_OLDER: "Загрузка старых сообщения...", MESSAGELIST_SHOW_OLDER: "Показать старые сообщения", MESSAGELIST_NEW_MARKER: "Новые", MESSAGE_SENT_VIA_EMAIL: "Это сообщение было отправлено по электронной почте", YOU_MARKER: "вы", UPLOAD_IN_PROGRESS: "Загрузка...", UPLOAD_SEND_FILE: "Отправить файл", UPLOAD_SHARE_LOCATION: "Поделиться местоположением", UPLOAD_ERROR: "Что-то пошло не так: такой файл не поддерживается или он слишком большой.", SHARE_LOCATION_ERROR: "Не удается поделиться местоположением: ", LOADING: "Загрузка...", HUB_EMPTY: "Здесь появится ваша история чата", HUB_SHOW_EARLIER: "Показать предыдущие чаты", INBOX_NO_CHATS_TITLE: "Пока нет чатов!", INBOX_NO_CHATS_BODY: "Как только у вас будет один или несколько разговоров, они появятся здесь.", ENABLE_TRANSLATION: "Переведите этот разговор на русский", DISABLE_TRANSLATION: "Show source", SEARCH_PLACEHOLDER_TEXT: "поиск...", SEARCH_SEARCHING: "Поиск...", SEARCH_NO_RESULTS: "Результаты не найдены", SEARCH_NO_MORE_RESULTS: "Больше результатов нет", CHAT_NOT_FOUND: "Чат не найден", DELETE_MESSAGE: "Удалить сообщение", DELETION_EXPLANATION: "Если вы удалите это сообщение, оно исчезнет для всех.", EDIT_MESSAGE: "Изменить сообщение", SAVE: "сохранить", EDITED_INDICATOR: "изменено", REPLY_TO_MESSAGE: "Ответить", ADD_REACTION: "Добавить реакцию", AUTH_EXPIRED_OVERLAY_TITLE: "Срок действия вашего сеанса чата истек", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Обновите страницу, чтобы продолжить", VOICE_MESSAGE: "Голосовое сообщение", CONTACT_INFORMATION_HIDDEN: "Информация скрыта", LEAVE_CONVERSATION: "Выйти из беседы", MARK_CONVERSATION_AS_UNREAD: "Отметить как непрочитанное", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, ji = { code: "sq-AL", name: "Albanian", translation: { YESTERDAY: "Dje", TODAY: "Sot", DAYS: "d", HOURS: "o", MINUTES: "m", JUST_NOW: "Tani", LOCATION: "Pozicion", CANCEL: "Anulo", INBOX: "Inbox", DESKTOP_NOTIFICATIONS: "Njoftimet e shfletuesit", DESKTOP_NOTIFICATIONS_ERROR: "Nuk mund të aktivizohen njoftimet në shfletues sepse shfletuesi juaj i bllokon ato në mënyrë aktive. Provoni të shikoni cilësimet ose përdorni një shfletues të ndryshëm.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} njoftime në desktop`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Lënia e skedës së shfletuesit tuaj të hapur do të pop-up kur dikush flet me ju.", SEND_BUTTON_TEXT: "Dërgo", ENTRYBOX_TEXT_LIMIT: "Lejohen vetëm 10,000 karaktere", ENTRYBOX_PLACEHOLDER: "Thuaj diçka...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Kjo bisedë nuk është më aktive.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Mund të lexoni por jo të dërgoni mesazhe.", MESSAGELIST_LOADING_OLDER: "Duke ngarkuar mesazhe më të vjetra...", MESSAGELIST_SHOW_OLDER: "Trego mesazhe më të vjetra", MESSAGELIST_NEW_MARKER: "E ri", MESSAGE_SENT_VIA_EMAIL: "Ky mesazh u dërgua si email", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Ngarkim...", UPLOAD_SEND_FILE: "Dërgo datotekën", UPLOAD_SHARE_LOCATION: "Ndani lokacionin", UPLOAD_ERROR: "Na vjen keq, diçka nuk shkoi si duhet. Dosja mund të mos ket mbështetje ose mund të jetë shumë e madhe.", SHARE_LOCATION_ERROR: "Nuk mund të ndahet lokacioni: ", LOADING: "Ngarkim...", HUB_EMPTY: "Këtu do të paraqitet/ shfaqet historia e bisedës tuaj", HUB_SHOW_EARLIER: "Shfaqi bisedat e mëparshme", INBOX_NO_CHATS_TITLE: "Nuk ka biseda!", INBOX_NO_CHATS_BODY: "Pasi të keni një ose më shumë biseda, ato do të paraqiten/shfaqen këtu.", ENABLE_TRANSLATION: "Përkthejeni këtë bisedë në shqiptare", DISABLE_TRANSLATION: "Shikoni origjinalin", SEARCH_PLACEHOLDER_TEXT: "Kërko...", SEARCH_SEARCHING: "Kërko...", SEARCH_NO_RESULTS: "Nuk ka rezultate", SEARCH_NO_MORE_RESULTS: "Nuk ka më rezultate", CHAT_NOT_FOUND: "Biseda nuk u gjet", DELETE_MESSAGE: "Fshi mesazhin", DELETION_EXPLANATION: "Nëse e fshini këtë mesazh, ai do të zhduket për të gjithë.", EDIT_MESSAGE: "Redakto mesazhin", SAVE: "Ruaj", EDITED_INDICATOR: "redaktuar", REPLY_TO_MESSAGE: "Përgjigj", ADD_REACTION: "Shtoni reagimin", AUTH_EXPIRED_OVERLAY_TITLE: "Sesioni juaj i bisedës ka skaduar", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Rifresko faqen për të vazhduar", VOICE_MESSAGE: "Mesazh zanor", CONTACT_INFORMATION_HIDDEN: "informacione të fshehura", LEAVE_CONVERSATION: "Largohu nga bashkëbisedimi", MARK_CONVERSATION_AS_UNREAD: "Shëno si të palexuar", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Fi = { code: "sr-SP", name: "Serbian", translation: { YESTERDAY: "Juče", TODAY: "Danas", DAYS: "d", HOURS: "s", MINUTES: "m", JUST_NOW: "Upravo sad", LOCATION: "Lokacija", CANCEL: "Otkaži", INBOX: "Pretinac", DESKTOP_NOTIFICATIONS: "Browser Notifikacija", DESKTOP_NOTIFICATIONS_ERROR: "Browser notifikacije nisu omogućene jer ih vaš pregledač aktivno blokira. Pokušajte pogledati postavke ili koristiti neki drugi pregledač.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demo notifikacija`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Ako karticu pregledača ostavite otvorenu, pojaviće se ovaj pop-up kada neko razgovara s vama.", SEND_BUTTON_TEXT: "Pošalji", ENTRYBOX_TEXT_LIMIT: "Dozvoljeno je samo 10.000 znakova.", ENTRYBOX_PLACEHOLDER: "Kaži nešto...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ovaj razgovor više nije aktivan.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Možete da čitate, ali ne i da šaljete poruke.", MESSAGELIST_LOADING_OLDER: "Učitavam starije poruke...", MESSAGELIST_SHOW_OLDER: "Prikaži starije poruke", MESSAGELIST_NEW_MARKER: "Novo", MESSAGE_SENT_VIA_EMAIL: "Ova poruka je poslana imejlom", YOU_MARKER: "ti", UPLOAD_IN_PROGRESS: "Učitavam...", UPLOAD_SEND_FILE: "Pošalji datoteku", UPLOAD_SHARE_LOCATION: "Podeli lokaciju", UPLOAD_ERROR: "Nažalost, nešto je pošlo krivo. Datoteka možda nije podržana ili je prevelika.", SHARE_LOCATION_ERROR: "Nije moguće podeliti lokaciju: ", LOADING: "Učitavam...", HUB_EMPTY: "Ovde će biti prikazana istorija razgovora", HUB_SHOW_EARLIER: "Prikaži ranije razgovore", INBOX_NO_CHATS_TITLE: "Nema razgovora!", INBOX_NO_CHATS_BODY: "Nakon što vodite jedan ili više razgovora, oni će se pojaviti ovde.", ENABLE_TRANSLATION: "Prevedi ovaj razgovor na srpski jezik", DISABLE_TRANSLATION: "Prikaži original", SEARCH_PLACEHOLDER_TEXT: "Pretraži...", SEARCH_SEARCHING: "Pretraživanje...", SEARCH_NO_RESULTS: "Nema rezultata", SEARCH_NO_MORE_RESULTS: "Nema više rezultata", CHAT_NOT_FOUND: "Ćaskanje nije pronađeno", DELETE_MESSAGE: "Izbriši poruku", DELETION_EXPLANATION: "Ako obrišete ovu poruku, ona neće biti vidljiva ni za koga.", EDIT_MESSAGE: "Ispravi poruku", SAVE: "Sačuvaj", EDITED_INDICATOR: "ispravljeno", REPLY_TO_MESSAGE: "Odgovorite", ADD_REACTION: "Dodaj reakciju", AUTH_EXPIRED_OVERLAY_TITLE: "Vaša sesija ćaskanja je istekla", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Osvežite stranicu da biste nastavili", VOICE_MESSAGE: "Glasovna poruka", CONTACT_INFORMATION_HIDDEN: "Sakrivene informacije", LEAVE_CONVERSATION: "Napusti razgovor", MARK_CONVERSATION_AS_UNREAD: "Označi kao nepročitanu", REPLY_TO_ARIA_LABEL: (e, t) => `Odgovarate korisniku ${e}: ${t}`, REPLY_MODE_LEAVE_ARIA_LABEL: "Izađi iz moda pisanja odgovora", STATUS_INDICATOR_ONLINE: "Aktivan", STATUS_INDICATOR_OFFLINE: "Neaktivan" } }, Vi = { code: "sv-SE", name: "Swedish (Sweden)", translation: { YESTERDAY: "Igår", TODAY: "Idag", DAYS: "d", HOURS: "h", MINUTES: "m", JUST_NOW: "just nu", LOCATION: "Plats", CANCEL: "Avbryt", INBOX: "Inkorg", DESKTOP_NOTIFICATIONS: "Webbläsarnotiser", DESKTOP_NOTIFICATIONS_ERROR: "Kan inte aktivera webbläsarnotiser eftersom din webbläsare aktivt blockerar dem. Se över inställningarna eller använd en annan webbläsare.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} demonotis`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Om du har fliken i webbläsaren öppen så kommer den här notisen visas när någon pratar med dig.", SEND_BUTTON_TEXT: "Skicka", ENTRYBOX_TEXT_LIMIT: "Max 10 000 tecken är tillåtet.", ENTRYBOX_PLACEHOLDER: "Skriv ett meddelande...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Den här konversationen är inte längre aktiv.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Du kan läsa men inte skicka meddelanden.", MESSAGELIST_LOADING_OLDER: "Läser in tidigare meddelanden...", MESSAGELIST_SHOW_OLDER: "Visa tidigare meddelanden", MESSAGELIST_NEW_MARKER: "Nytt", MESSAGE_SENT_VIA_EMAIL: "Detta meddelande skickades via e-post", YOU_MARKER: "du", UPLOAD_IN_PROGRESS: "Laddar upp...", UPLOAD_SEND_FILE: "Skicka fil", UPLOAD_SHARE_LOCATION: "Dela plats", UPLOAD_ERROR: "Något gick fel vid uppladdningen. Filen kan vara av en typ som inte stöds eller är för stor.", SHARE_LOCATION_ERROR: "Kan inte dela plats: ", LOADING: "Laddar...", HUB_EMPTY: "Din chatthistorik kommer att visas här", HUB_SHOW_EARLIER: "Visa tidigare chattar", INBOX_NO_CHATS_TITLE: "Inga chattar ännu!", INBOX_NO_CHATS_BODY: "När du har haft en eller flera konversationer kommer de att visas här.", ENABLE_TRANSLATION: "Översätt den här konversationen till svenska", DISABLE_TRANSLATION: "Visa original", SEARCH_PLACEHOLDER_TEXT: "Sök...", SEARCH_SEARCHING: "Söker...", SEARCH_NO_RESULTS: "Inga resultat hittades", SEARCH_NO_MORE_RESULTS: "Inga fler resultat", CHAT_NOT_FOUND: "Chatten hittades inte", DELETE_MESSAGE: "Radera meddelandet", DELETION_EXPLANATION: "Om du raderar det här meddelandet försvinner det för alla.", EDIT_MESSAGE: "Redigera meddelandet", SAVE: "Spara", EDITED_INDICATOR: "redigerad", REPLY_TO_MESSAGE: "Svara", ADD_REACTION: "Lägg till reaktion", AUTH_EXPIRED_OVERLAY_TITLE: "Din chatsession har gått ut", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Uppdatera sidan för att fortsätta", VOICE_MESSAGE: "Röstmeddelande", CONTACT_INFORMATION_HIDDEN: "Dold information", LEAVE_CONVERSATION: "Lämna konversationen", MARK_CONVERSATION_AS_UNREAD: "Markera som oläst", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Xi = { code: "tr-TR", name: "Turkish", translation: { YESTERDAY: "Dün", TODAY: "Bugün", DAYS: "g", HOURS: "s", MINUTES: "d", JUST_NOW: "az önce", LOCATION: "Konum", CANCEL: "İptal", INBOX: "Gelen Kutusu", SEND_BUTTON_TEXT: "Gönder", ENTRYBOX_TEXT_LIMIT: "En fazla 10.000 karaktere izin veriliyor.", ENTRYBOX_PLACEHOLDER: "Bir şeyler söyle...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Bu konuşma artık aktif değil.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Mesajları okuyabilirsiniz ancak mesaj gönderemezsiniz.", MESSAGELIST_LOADING_OLDER: "Eski mesajlar yükleniyor...", MESSAGELIST_SHOW_OLDER: "Eski mesajları göster", MESSAGELIST_NEW_MARKER: "Yeni", DESKTOP_NOTIFICATIONS: "Tarayıcı bildirimleri", DESKTOP_NOTIFICATIONS_ERROR: "Tarayıcınız aktif olarak engellediğinden tarayıcı bildirimlerini etkinleştiremiyoruz. Ayarları kontrol etmeyi veya farklı bir tarayıcı kullanmayı deneyebilirsiniz.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} test bildirimi`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Eğer tarayıcınızın penceresini açık tutarsanız biri mesaj yazdığında bu bildirimi göreceksiniz.", MESSAGE_SENT_VIA_EMAIL: "Bu mesaj e-posta ile gönderilmiştir.", YOU_MARKER: "siz", UPLOAD_IN_PROGRESS: "Yükleniyor...", UPLOAD_SEND_FILE: "Dosya gönder", UPLOAD_SHARE_LOCATION: "Konum paylaş", UPLOAD_ERROR: "Yükleme sırasında bir şeyler yanlış gitti. Dosya desteklenmiyor veya izin verilenden büyük olabilir.", SHARE_LOCATION_ERROR: "Konum paylaşılamadı: ", LOADING: "Yükleniyor...", HUB_EMPTY: "Konuşma geçmişiniz burada görünecek", HUB_SHOW_EARLIER: "Önceki konuşmaları göster", INBOX_NO_CHATS_TITLE: "Henüz konuşma yok!", INBOX_NO_CHATS_BODY: "Bir veya daha fazla konuşma başlattığınız konuşmalar burada belirecek.", ENABLE_TRANSLATION: "Bu konuşmayı Türkçe'ye çevir", DISABLE_TRANSLATION: "Orijinali göster", SEARCH_PLACEHOLDER_TEXT: "Ara...", SEARCH_SEARCHING: "Arıyor...", SEARCH_NO_RESULTS: "Sonuç bulunamadı", SEARCH_NO_MORE_RESULTS: "Başka sonuç bulunamadı.", CHAT_NOT_FOUND: "Sohbet bulunamadı", DELETE_MESSAGE: "Mesajı sil", DELETION_EXPLANATION: "Bu mesajı silerseniz herkes için görünmez olacaktır.", EDIT_MESSAGE: "Mesajı düzenle", SAVE: "Kaydet", EDITED_INDICATOR: "düzenlenmiş", REPLY_TO_MESSAGE: "Yanıtla", ADD_REACTION: "Tepki ekle", AUTH_EXPIRED_OVERLAY_TITLE: "Sohbet oturumunuz sona erdi", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Devam etmek için sayfayı yenileyin", VOICE_MESSAGE: "Sesli mesaj", CONTACT_INFORMATION_HIDDEN: "Gizli bilgi", LEAVE_CONVERSATION: "Konuşmadan ayrıl", MARK_CONVERSATION_AS_UNREAD: "Okunmamış olarak işaretle", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Gi = { code: "uk-UA", name: "Ukrainian (Ukraine)", translation: { YESTERDAY: "Вчора", TODAY: "Сьогодні", DAYS: "d", HOURS: "h", MINUTES: "м", JUST_NOW: "просто зараз", LOCATION: "Місцезнаходження", CANCEL: "Скасувати", INBOX: "Вхідні", DESKTOP_NOTIFICATIONS: "Сповіщення в браузері", DESKTOP_NOTIFICATIONS_ERROR: "Неможливо ввімкнути сповіщення в браузері, оскільки ваш веб-переглядач активно їх блокує. Спробуйте переглянути налаштування або використовувати інший браузер.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `Демо-повідомлення про ${e}`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Якщо ви відкриєте вкладку веб-переглядача відкритою, ви побачите це спливаюче вікно, коли хтось спілкується з вами.", SEND_BUTTON_TEXT: "Надіслати", ENTRYBOX_TEXT_LIMIT: "Дозволено лише 10 000 символів.", ENTRYBOX_PLACEHOLDER: "Скажи щось...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Ця розмова більше не активна.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Ви можете читати, але не надсилати повідомлення.", MESSAGELIST_LOADING_OLDER: "Завантаження старих повідомлень...", MESSAGELIST_SHOW_OLDER: "Показати старіші повідомлення", MESSAGELIST_NEW_MARKER: "Нові", MESSAGE_SENT_VIA_EMAIL: "Це повідомлення надіслано електронною поштою", YOU_MARKER: "ти", UPLOAD_IN_PROGRESS: "Завантаження...", UPLOAD_SEND_FILE: "Надіслати файл", UPLOAD_SHARE_LOCATION: "Поділитися місцезнаходженням", UPLOAD_ERROR: "На жаль, під час завантаження щось не вдалось. Файл може бути непідтримуваним або занадто великим.", SHARE_LOCATION_ERROR: "Неможливо поділити місцезнаходження: ", LOADING: "Завантаження...", HUB_EMPTY: "Тут відобразиться ваша історія чатів", HUB_SHOW_EARLIER: "Показати попередні чати", INBOX_NO_CHATS_TITLE: "Чатів ще немає!", INBOX_NO_CHATS_BODY: "Після того, як ви проведете одну чи кілька бесід, вони з’являться тут.", ENABLE_TRANSLATION: "Перекласти цю розмову англійською", DISABLE_TRANSLATION: "Показати оригінал", SEARCH_PLACEHOLDER_TEXT: "Пошук...", SEARCH_SEARCHING: "Пошук...", SEARCH_NO_RESULTS: "Не знайдено результатів", SEARCH_NO_MORE_RESULTS: "Більше немає результатів", CHAT_NOT_FOUND: "Чат не знайдено", DELETE_MESSAGE: "Видалити повідомлення", DELETION_EXPLANATION: "Якщо ви видалите це повідомлення, воно зникне для всіх.", EDIT_MESSAGE: "Редагувати повідомлення", SAVE: "Зберегти", EDITED_INDICATOR: "відредаговано", REPLY_TO_MESSAGE: "Відповісти", ADD_REACTION: "Додати реакцію", AUTH_EXPIRED_OVERLAY_TITLE: "Ваша сесія в чаті закінчилась", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Оновіть сторінку, щоб продовжити", VOICE_MESSAGE: "Голосове повідомлення", CONTACT_INFORMATION_HIDDEN: "Прихована інформація", LEAVE_CONVERSATION: "Залишити розмову", MARK_CONVERSATION_AS_UNREAD: "Відзначити як непрочитане", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, zi = { code: "vi-VN", name: "Vietnamese", translation: { YESTERDAY: "Hôm qua", TODAY: "Hôm nay", DAYS: "ngày", HOURS: "giờ", MINUTES: "phút", JUST_NOW: "vừa xong", LOCATION: "Địa điểm", CANCEL: "Hủy", INBOX: "Hộp thư đến", DESKTOP_NOTIFICATIONS: "Thông báo trình duyệt", DESKTOP_NOTIFICATIONS_ERROR: "Không thể bật thông báo trên trình duyệt vì trình duyệt của bạn đang tắt chức năng này. Hãy thử tìm trong cài đặt trình duyệt hoặc sử dụng một trình duyệt khác.", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} thông báo thử nghiệm`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "Nếu bạn giữ tab trình duyệt của bạn mở, bạn sẽ thấy cửa sổ bật lên khi ai đó nói chuyện với bạn.", SEND_BUTTON_TEXT: "Gửi", ENTRYBOX_TEXT_LIMIT: "Tối đa 10.000 ký tự.", ENTRYBOX_PLACEHOLDER: "Nói gì đó...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "Cuộc hội thoại này không còn hoạt động.", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "Bạn có thể đọc, nhưng không thể gửi tin nhắn.", MESSAGELIST_LOADING_OLDER: "Đang tải tin nhắn cũ...", MESSAGELIST_SHOW_OLDER: "Hiển thị tin nhắn trước đó", MESSAGELIST_NEW_MARKER: "Mới", MESSAGE_SENT_VIA_EMAIL: "Tin nhắn này đã được gửi qua email", YOU_MARKER: "bạn", UPLOAD_IN_PROGRESS: "Đang tải lên...", UPLOAD_SEND_FILE: "Gửi tệp", UPLOAD_SHARE_LOCATION: "Chia sẻ vị trí", UPLOAD_ERROR: "Thật không may, quá trình tải lên không thành công. Tệp không được hỗ trợ hoặc quá lớn.", SHARE_LOCATION_ERROR: "Không thể chia sẻ vị trí: ", LOADING: "Đang tải...", HUB_EMPTY: "Lịch sử trò chuyện của bạn sẽ hiển thị ở đây", HUB_SHOW_EARLIER: "Hiển thị các cuộc trò chuyện trước đó", INBOX_NO_CHATS_TITLE: "Chưa có cuộc trò chuyện nào!", INBOX_NO_CHATS_BODY: "Khi bạn đã có một hoặc nhiều cuộc trò chuyện, chúng sẽ hiển thị ở đây.", ENABLE_TRANSLATION: "Dịch cuộc hội thoại sang Tiếng Việt", DISABLE_TRANSLATION: "Hiển thị nội dung gốc", SEARCH_PLACEHOLDER_TEXT: "TÌm kiếm...", SEARCH_SEARCHING: "Đang tìm kiếm...", SEARCH_NO_RESULTS: "Không tìm thấy kết quả nào", SEARCH_NO_MORE_RESULTS: "Không có kết quả nào khác", CHAT_NOT_FOUND: "Không tìm thấy cuộc trò chuyện", DELETE_MESSAGE: "Xóa tin nhắn", DELETION_EXPLANATION: "Nếu bạn xóa tin nhắn này, tất cả mọi người sẽ không còn thấy nó.", EDIT_MESSAGE: "Chỉnh sửa tin nhắn", SAVE: "lưu", EDITED_INDICATOR: "đã chỉnh sửa", REPLY_TO_MESSAGE: "đáp lại", ADD_REACTION: "Thêm biểu tượng cảm xúc", AUTH_EXPIRED_OVERLAY_TITLE: "Phiên trò chuyện của bạn đã hết hạn", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "Hãy làm mới trang để tiếp tục", VOICE_MESSAGE: "Tin nhắn thoại", CONTACT_INFORMATION_HIDDEN: "Thông tin ẩn", LEAVE_CONVERSATION: "Thoát khỏi cuộc trò chuyện", MARK_CONVERSATION_AS_UNREAD: "Đánh dấu là chưa đọc", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Ki = { code: "zh-CN", name: "Chinese (Simplified)", translation: { YESTERDAY: "昨天", TODAY: "今天", DAYS: "天", HOURS: "小时", MINUTES: "分钟", JUST_NOW: "刚才", LOCATION: "地点", CANCEL: "取消", INBOX: "收件箱", DESKTOP_NOTIFICATIONS: "浏览器通知", DESKTOP_NOTIFICATIONS_ERROR: "因浏览器设置为阻止,所以无法激活浏览器提醒。请去设置里查看或者尝试其他的浏览器。", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} 演示提醒`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "只要保持浏览器开着,如果有人和你对话,将会自动弹出对话窗口。", SEND_BUTTON_TEXT: "发送", ENTRYBOX_TEXT_LIMIT: "不超过10,000个字符。", ENTRYBOX_PLACEHOLDER: "写点什么吧……", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "该对话已结束。", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "你只能阅读信息,不能发送信息。", MESSAGELIST_LOADING_OLDER: "载入之前的信息……", MESSAGELIST_SHOW_OLDER: "显示之前的信息", MESSAGELIST_NEW_MARKER: "新消息", MESSAGE_SENT_VIA_EMAIL: "该信息已通过邮件发送。", YOU_MARKER: "你", UPLOAD_IN_PROGRESS: "上传中……", UPLOAD_SEND_FILE: "发送文件", UPLOAD_SHARE_LOCATION: "分享地址", UPLOAD_ERROR: "上传出错。文件格式不支持或者太大。", SHARE_LOCATION_ERROR: "无法分享地址: ", LOADING: "正在载入……", HUB_EMPTY: "你的聊天记录将在此显示。", HUB_SHOW_EARLIER: "显示之前的聊天记录。", INBOX_NO_CHATS_TITLE: "暂无任何聊天记录!", INBOX_NO_CHATS_BODY: "如果你有一个或多个对话窗口进行中,将显示在这里。", ENABLE_TRANSLATION: "翻译至简体中文", DISABLE_TRANSLATION: "查看原文", SEARCH_PLACEHOLDER_TEXT: "搜索...", SEARCH_SEARCHING: "正在搜索...", SEARCH_NO_RESULTS: "未找到结果", SEARCH_NO_MORE_RESULTS: "无更多结果", CHAT_NOT_FOUND: "未找到“聊天”", DELETE_MESSAGE: "删除消息", DELETION_EXPLANATION: "如果您删除此消息,那么所有人都将无法再看到它。", EDIT_MESSAGE: "编辑消息", SAVE: "保存", EDITED_INDICATOR: "本消息有改动", REPLY_TO_MESSAGE: "回复", ADD_REACTION: "添加反应", AUTH_EXPIRED_OVERLAY_TITLE: "您的聊天会话已过期", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "刷新页面以继续", VOICE_MESSAGE: "语音消息", CONTACT_INFORMATION_HIDDEN: "隐藏信息", LEAVE_CONVERSATION: "离开对话", MARK_CONVERSATION_AS_UNREAD: "标记为未读", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, Wi = { code: "zh-TW", name: "Chinese (Traditional)", translation: { YESTERDAY: "昨天", TODAY: "昨天", DAYS: "天", HOURS: "小時", MINUTES: "分", JUST_NOW: "現在", LOCATION: "地點", CANCEL: "取消", INBOX: "收件箱", DESKTOP_NOTIFICATIONS: "瀏覽器通知", DESKTOP_NOTIFICATIONS_ERROR: "無法啟用瀏覽器通知,因為您的瀏覽器主動阻止它們。 嘗試查看設置或使用其他瀏覽器。", DESKTOP_NOTIFICATIONS_DEMO_TITLE: (e) => `${e} 演示通知`, DESKTOP_NOTIFICATIONS_DEMO_BODY: "如果您持續打開瀏覽器標籤頁,當有人與您通話時,您會看到此彈出窗口。", SEND_BUTTON_TEXT: "發送", ENTRYBOX_TEXT_LIMIT: "只允許10.000個字符。", ENTRYBOX_PLACEHOLDER: "說些什麼...", ENTRYBOX_PLACEHOLDER_CHAT_CLOSED: "此對話不再有效。", ENTRYBOX_PLACEHOLDER_CHAT_READONLY: "您可以閱讀,但不能發送消息。", MESSAGELIST_LOADING_OLDER: "加載舊訊息...", MESSAGELIST_SHOW_OLDER: "顯示較舊的訊息", MESSAGELIST_NEW_MARKER: "新的", MESSAGE_SENT_VIA_EMAIL: "此訊息是通過電郵發送的", YOU_MARKER: "您", UPLOAD_IN_PROGRESS: "上傳中...", UPLOAD_SEND_FILE: "發送文件", UPLOAD_SHARE_LOCATION: "共享位置", UPLOAD_ERROR: "不幸的是,上傳出了問題。 該文件可能不受支持或太大。", SHARE_LOCATION_ERROR: "無法分享位置:", LOADING: "載入中...", HUB_EMPTY: "您的聊天記錄將顯示在此處", HUB_SHOW_EARLIER: "顯示早先的聊天記錄", INBOX_NO_CHATS_TITLE: "還沒聊天!", INBOX_NO_CHATS_BODY: "一旦您進行了一次或多次對話,他們就會顯示在此處。", ENABLE_TRANSLATION: "翻譯此對話至繁體中文", DISABLE_TRANSLATION: "顯示原文", SEARCH_PLACEHOLDER_TEXT: "搜尋...", SEARCH_SEARCHING: "正在搜尋...", SEARCH_NO_RESULTS: "找不到任何結果", SEARCH_NO_MORE_RESULTS: "沒有其他結果", CHAT_NOT_FOUND: "查無對話", DELETE_MESSAGE: "刪除訊息", DELETION_EXPLANATION: "您如果刪除這條訊息,所有人都將看不到它。", EDIT_MESSAGE: "編輯訊息", SAVE: "儲存", EDITED_INDICATOR: "已編輯", REPLY_TO_MESSAGE: "回覆", ADD_REACTION: "加入表情回應", AUTH_EXPIRED_OVERLAY_TITLE: "您的會話過程已過期", AUTH_EXPIRED_OVERLAY_DESCRIPTION: "請刷新頁面以繼續", VOICE_MESSAGE: "語音訊息", CONTACT_INFORMATION_HIDDEN: "隱藏訊息", LEAVE_CONVERSATION: "離開對話", MARK_CONVERSATION_AS_UNREAD: "標記為未讀", REPLY_TO_ARIA_LABEL: O.translation.REPLY_TO_ARIA_LABEL, REPLY_MODE_LEAVE_ARIA_LABEL: O.translation.REPLY_MODE_LEAVE_ARIA_LABEL, STATUS_INDICATOR_ONLINE: O.translation.STATUS_INDICATOR_ONLINE, STATUS_INDICATOR_OFFLINE: O.translation.STATUS_INDICATOR_OFFLINE } }, on = { ar: ui, bg: Oi, bs: Ti, ca: di, cs: Si, da: Ii, de: Ni, el: Ri, en: O, es: Li, et: mi, fa: pi, fi: hi, fr: Di, he: gi, hi: Ci, hr: fi, hu: vi, id: ki, is: Mi, it: Pi, ja: bi, ka: Ui, ko: yi, nb: Hi, nl: wi, pl: Bi, pt: Yi, ro: $i, ru: xi, sq: ji, sr: Fi, sv: Vi, tr: Xi, uk: Gi, vi: zi, zh: Ki, zhTw: Wi };
848
848
  function la(e) {
849
849
  const t = e.replace(/_/g, "-").toLowerCase(), n = on[t];
850
850
  if (n) return { ...n.translation, locale: t };
@@ -894,7 +894,7 @@ const Oa = function() {
894
894
  }();
895
895
  class Ta {
896
896
  constructor() {
897
- this.currentUser$ = W(null), this.app$ = W(null), this.appId$ = W(null), this.extUserId$ = W(null), this.authTokenState$ = W("idle"), this.themeCustom$ = W(Jt({ value: void 0 })), this.device$ = W({ supportsEmojiPicker: !!Oa, isMobile: typeof window < "u" && /Mobi/i.test(window.navigator.userAgent) }), this.errors$ = W({ unknownConversation: !1, unknownUser: !1, wrongAppId: !1, serverError: !1 }), this.t$ = W(() => {
897
+ this.currentUser$ = K(null), this.app$ = K(null), this.appId$ = K(null), this.extUserId$ = K(null), this.authTokenState$ = K("idle"), this.themeCustom$ = K(Jt({ value: void 0 })), this.device$ = K({ supportsEmojiPicker: !!Oa, isMobile: typeof window < "u" && /Mobi/i.test(window.navigator.userAgent) }), this.errors$ = K({ unknownConversation: !1, unknownUser: !1, wrongAppId: !1, serverError: !1 }), this.t$ = K(() => {
898
898
  const t = this.extUserId$.get(), n = this.app$.appMetadata.defaultLocale.get(), a = this.currentUser$.locale.get();
899
899
  return la((t && a) ?? n ?? "en-US");
900
900
  });
@@ -950,7 +950,7 @@ class Ta {
950
950
  const Ji = { canReplyToMessage: !1, canEditMessage: !1, canDeleteMessage: !1, canAddReaction: !1 };
951
951
  class da extends Ta {
952
952
  constructor() {
953
- super(), this.messageSubscription = null, this.readyForNewMessagesPromise = Promise.resolve(), this.participantSubscription = null, this.onlineSubscriptions = {}, this.state$ = W({ extCurrentConversationId: null, editor: { isEmpty: !0, isTyping: !1, atTextLimit: !1, characterCount: 0, showEmojiPicker: !1, suggestEmojiQuery: void 0, suggestMentionQuery: void 0 }, referencedMessageId: null, editingMessageId: null, currentConversation: null, visibility: { isInView: !1, tabFocused: !0 }, messages: {}, participants: {}, typing: {}, isUserConnected: {}, ephemeralMessages: {}, ephemeralMessageIdMapping: {}, localFileBlobUrls: {}, userPermissions: () => {
953
+ super(), this.messageSubscription = null, this.readyForNewMessagesPromise = Promise.resolve(), this.participantSubscription = null, this.onlineSubscriptions = {}, this.state$ = K({ extCurrentConversationId: null, editor: { isEmpty: !0, isTyping: !1, atTextLimit: !1, characterCount: 0, showEmojiPicker: !1, suggestEmojiQuery: void 0, suggestMentionQuery: void 0 }, referencedMessageId: null, editingMessageId: null, currentConversation: null, visibility: { isInView: !1, tabFocused: !0 }, messages: {}, participants: {}, typing: {}, isUserConnected: {}, ephemeralMessages: {}, ephemeralMessageIdMapping: {}, localFileBlobUrls: {}, userPermissions: () => {
954
954
  const t = this.app$.role.general.get(), n = this.app$.role.permissions.get();
955
955
  return F.defined(t), F.defined(n), { showTypingIndicator: t.showTypingIndicators, canShareFile: t.enableFileTransfers, canShareLocation: t.enableLocation, canMention: t.enableMentions, showOnlineStatus: t.enablePresence !== !1, canSendVoiceMessage: t.enableVoiceRecording, canLeaveConversation: n.conversations.leave === "all", canMarkConversationAsUnread: n.conversations.markAsUnread === "all" };
956
956
  }, messagePermissions: () => {
@@ -958,13 +958,13 @@ class da extends Ta {
958
958
  F.defined(t);
959
959
  const n = this.state$.userPermissions.get(), a = { ...Ji, ...n }, r = { canReplyToMessage: de(t.messages.reply, !0), canEditMessage: de(t.messages.edit, !0), canDeleteMessage: de(t.messages.delete, !0), canAddReaction: de(t.messages.emojiReactions, !0), ...n }, i = { ...r, canEditMessage: !1 }, o = { canReplyToMessage: de(t.messages.reply, !1), canEditMessage: de(t.messages.edit, !1), canDeleteMessage: de(t.messages.delete, !1), canAddReaction: de(t.messages.emojiReactions, !1), ...n };
960
960
  return { system: a, own: r, ownWithoutEditing: i, other: o, otherWithoutEditing: { ...o, canEditMessage: !1 } };
961
- } }), this.locale$ = W(() => {
961
+ } }), this.locale$ = K(() => {
962
962
  const t = this.extUserId$.get(), n = this.app$.appMetadata.defaultLocale.get(), a = this.currentUser$.locale.get();
963
963
  return (t && a) ?? n ?? "en-US";
964
- }), this.t$ = W(() => la(this.locale$.get())), this.referencedMessage$ = W(() => {
964
+ }), this.t$ = K(() => la(this.locale$.get())), this.referencedMessage$ = K(() => {
965
965
  const t = this.state$.extCurrentConversationId.get(), n = this.state$.referencedMessageId.get();
966
966
  return t && n ? this.state$.messages.child(t).lookup.child(n).get() : null;
967
- }), this.chatItems$ = W(() => {
967
+ }), this.chatItems$ = K(() => {
968
968
  const t = this.state$.extCurrentConversationId.get();
969
969
  if (!t) return [];
970
970
  const n = this.state$.currentConversation.readUntil.get(), a = this.state$.messages.child(t).state.get() ?? [], r = Object.values(this.state$.ephemeralMessages.child(t).get() ?? {}), i = (r.length === 0 ? a : r.concat(a).sort((l, _) => _.createdAt - l.createdAt)).map((l) => {
@@ -985,12 +985,12 @@ class da extends Ta {
985
985
  const T = Symbol("NO_KEY");
986
986
  let A = T;
987
987
  for (const I of l) {
988
- const D = _(I);
989
- A === T || A === D ? u.push(I) : (S.push(u), u = [I]), A = D;
988
+ const h = _(I);
989
+ A === T || A === h ? u.push(I) : (S.push(u), u = [I]), A = h;
990
990
  }
991
991
  return u.length !== 0 && S.push(u), S;
992
992
  }(c, (l) => l instanceof Ut ? l.id : l.sender?.id).map((l) => (l.id = l.map((_) => _.id).join(","), l));
993
- }), this.mentionableUsers$ = W(() => {
993
+ }), this.mentionableUsers$ = K(() => {
994
994
  const t = this.state$.extCurrentConversationId.get(), n = this.extUserId$.get();
995
995
  if (!t || !n) return [];
996
996
  const a = this.state$.participants.child(t).get();
@@ -1070,56 +1070,56 @@ function Qi(e) {
1070
1070
  const t = se(), n = ca();
1071
1071
  return d(t.Icon, { common: n, ...e });
1072
1072
  }
1073
- function Ht({ src: e, onError: t, filename: n, className: a = "" }) {
1074
- const r = H(null), i = H(), o = H(), [s, E] = B(!1), [c, l] = B(0), [_, S] = B(1), u = H(), [T, A] = B(!1);
1075
- f(() => {
1073
+ function yt({ src: e, onError: t, filename: n, className: a = "" }) {
1074
+ const r = y(null), i = y(), o = y(), [s, E] = w(!1), [c, l] = w(0), [_, S] = w(1), u = y(), [T, A] = w(!1);
1075
+ v(() => {
1076
1076
  i.current = new Audio();
1077
- const R = { normalize: !0, height: 50, container: r.current };
1078
- function h() {
1079
- const p = i.current;
1080
- p && (p.error.message === "PIPELINE_ERROR_READ: FFmpegDemuxer: demuxer seek failed" ? (p.load(), E(!1)) : (A(!0), E(!1), t?.()));
1077
+ const L = { normalize: !0, height: 50, container: r.current };
1078
+ function p() {
1079
+ const m = i.current;
1080
+ m && (m.error.message === "PIPELINE_ERROR_READ: FFmpegDemuxer: demuxer seek failed" ? (m.load(), E(!1)) : (A(!0), E(!1), t?.()));
1081
1081
  }
1082
- const L = n.slice(n.lastIndexOf(".") + 1);
1083
- if (function(p) {
1084
- return /(?:^|\/)talkjs_audio_message_[0-9]+_([0-9]+)[.](?:mp3|webm)$/.test(p);
1085
- }(n) && L === "webm" && !i.current.canPlayType("audio/webm;codecs=opus")) R.backend = "WebAudio", o.current = new Audio("data:audio/mp3;base64,//MkxAAHiAICWABElBeKPL/RANb2w+yiT1g/gTok//lP/W/l3h8QO/OCdCqCW2Cw//MkxAQHkAIWUAhEmAQXWUOFW2dxPu//9mr60ElY5sseQ+xxesmHKtZr7bsqqX2L//MkxAgFwAYiQAhEAC2hq22d3///9FTV6tA36JdgBJoOGgc+7qvqej5Zu7/7uI9l//MkxBQHAAYi8AhEAO193vt9KGOq+6qcT7hhfN5FTInmwk8RkqKImTM55pRQHQSq//MkxBsGkgoIAABHhTACIJLf99nVI///yuW1uBqWfEu7CgNPWGpUadBmZ////4sL//MkxCMHMAH9iABEmAsKioqKigsLCwtVTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVV//MkxCkECAUYCAAAAFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV"), o.current.controls = !1;
1082
+ const D = n.slice(n.lastIndexOf(".") + 1);
1083
+ if (function(m) {
1084
+ return /(?:^|\/)talkjs_audio_message_[0-9]+_([0-9]+)[.](?:mp3|webm)$/.test(m);
1085
+ }(n) && D === "webm" && !i.current.canPlayType("audio/webm;codecs=opus")) L.backend = "WebAudio", o.current = new Audio("data:audio/mp3;base64,//MkxAAHiAICWABElBeKPL/RANb2w+yiT1g/gTok//lP/W/l3h8QO/OCdCqCW2Cw//MkxAQHkAIWUAhEmAQXWUOFW2dxPu//9mr60ElY5sseQ+xxesmHKtZr7bsqqX2L//MkxAgFwAYiQAhEAC2hq22d3///9FTV6tA36JdgBJoOGgc+7qvqej5Zu7/7uI9l//MkxBQHAAYi8AhEAO193vt9KGOq+6qcT7hhfN5FTInmwk8RkqKImTM55pRQHQSq//MkxBsGkgoIAABHhTACIJLf99nVI///yuW1uBqWfEu7CgNPWGpUadBmZ////4sL//MkxCMHMAH9iABEmAsKioqKigsLCwtVTEFNRTMuOTkuNVVVVVVVVVVVVVVVVVVV//MkxCkECAUYCAAAAFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV"), o.current.controls = !1;
1086
1086
  else {
1087
- const p = i.current;
1088
- p.addEventListener("error", h), p.src = e, p.preload = "auto", p.preservesPitch = !0, R.media = p;
1087
+ const m = i.current;
1088
+ m.addEventListener("error", p), m.src = e, m.preload = "auto", m.preservesPitch = !0, L.media = m;
1089
1089
  }
1090
- u.current = function(p) {
1091
- if (!p.container) return;
1092
- const v = getComputedStyle(p.container);
1093
- let k = Kt(v.color);
1094
- return k || (k = Kt("rgb(255,255,255)")), Qa.create({ ...p, barGap: p.barGap ?? 2, barRadius: p.barRadius ?? 0, barWidth: p.barWidth ?? 2, barHeight: p.barHeight, hideScrollbar: !0, cursorWidth: p.cursorWidth ?? 0, cursorColor: p.cursorColor, height: p.height ?? 24, progressColor: p.progressColor ?? k.cssa(), waveColor: p.waveColor ?? k.alpha(k.alpha() / 2).cssa() });
1095
- }(R);
1096
- const m = u.current;
1097
- return m.on("finish", () => {
1090
+ u.current = function(m) {
1091
+ if (!m.container) return;
1092
+ const f = getComputedStyle(m.container);
1093
+ let M = Kt(f.color);
1094
+ return M || (M = Kt("rgb(255,255,255)")), Qa.create({ ...m, barGap: m.barGap ?? 2, barRadius: m.barRadius ?? 0, barWidth: m.barWidth ?? 2, barHeight: m.barHeight, hideScrollbar: !0, cursorWidth: m.cursorWidth ?? 0, cursorColor: m.cursorColor, height: m.height ?? 24, progressColor: m.progressColor ?? M.cssa(), waveColor: m.waveColor ?? M.alpha(M.alpha() / 2).cssa() });
1095
+ }(L);
1096
+ const R = u.current;
1097
+ return R.on("finish", () => {
1098
1098
  i.current.loop = !0, E(!1);
1099
- }), m.on("ready", (p) => l(Math.trunc(p))), m.on("timeupdate", (p) => l(Math.trunc(p))), R.backend === "WebAudio" && m.load(e).catch(() => {
1099
+ }), R.on("ready", (m) => l(Math.trunc(m))), R.on("timeupdate", (m) => l(Math.trunc(m))), L.backend === "WebAudio" && R.load(e).catch(() => {
1100
1100
  A(!0), E(!1), t?.();
1101
1101
  }), () => {
1102
- i.current?.removeEventListener("error", h), i.current = void 0, m.destroy(), u.current = void 0;
1102
+ i.current?.removeEventListener("error", p), i.current = void 0, R.destroy(), u.current = void 0;
1103
1103
  };
1104
1104
  }, [e, n, t]);
1105
- const I = Y(() => {
1105
+ const I = B(() => {
1106
1106
  if (u.current.options.backend === "WebAudio") u.current.isPlaying() || o.current.play(), u.current.playPause(), E(u.current.isPlaying() ?? !1);
1107
1107
  else {
1108
- const R = i.current;
1109
- R.paused ? R.play() : R.pause(), R.loop = !1, !R.paused && R.ended && (R.load(), R.play()), E(!R.paused);
1108
+ const L = i.current;
1109
+ L.paused ? L.play() : L.pause(), L.loop = !1, !L.paused && L.ended && (L.load(), L.play()), E(!L.paused);
1110
1110
  }
1111
- }, []), D = Y((R) => {
1112
- u.current.setPlaybackRate(R), S(R);
1111
+ }, []), h = B((L) => {
1112
+ u.current.setPlaybackRate(L), S(L);
1113
1113
  }, []);
1114
- return T ? d("div", {}) : te("div", { className: `t-audio-player ${a}`, children: [d("button", { onClick: I, children: d(Et, { className: "t-play-pause-icon", type: s ? "pause" : "play", "aria-label": s ? "pause audio" : "play audio" }) }), d("div", { className: "t-waveform", ref: r }), d("div", { className: "t-duration", children: wa(c) }), d(oi, { as: "div", children: ({ isExpanded: R }) => te(Me, { children: [te(si, { className: "t-playback-speed", "aria-label": "set playback speed", children: [_, "x", d(Et, { type: "updown", "aria-hidden": !0, className: "t-up-down-icon" })] }), R && d(_i, { children: te(li, { className: "t-action-menu", children: [d("div", { className: "t-playback-heading", children: "Playback Speed" }), [0.25, 0.5, 0.75, 1, 1.25, 1.5, 2].map((h, L) => te(ci, { onSelect: () => D(h), children: [d("span", { className: "t-playback-checkmark", children: _ == h ? "✓" : "" }), h, "x"] }, L))] }) })] }) })] });
1114
+ return T ? d("div", {}) : te("div", { className: `t-audio-player ${a}`, children: [d("button", { onClick: I, children: d(Et, { className: "t-play-pause-icon", type: s ? "pause" : "play", "aria-label": s ? "pause audio" : "play audio" }) }), d("div", { className: "t-waveform", ref: r }), d("div", { className: "t-duration", children: wa(c) }), d(oi, { as: "div", children: ({ isExpanded: L }) => te(Me, { children: [te(si, { className: "t-playback-speed", "aria-label": "set playback speed", children: [_, "x", d(Et, { type: "updown", "aria-hidden": !0, className: "t-up-down-icon" })] }), L && d(_i, { children: te(li, { className: "t-action-menu", children: [d("div", { className: "t-playback-heading", children: "Playback Speed" }), [0.25, 0.5, 0.75, 1, 1.25, 1.5, 2].map((p, D) => te(ci, { onSelect: () => h(p), children: [d("span", { className: "t-playback-checkmark", children: _ == p ? "✓" : "" }), p, "x"] }, D))] }) })] }) })] });
1115
1115
  }
1116
1116
  const J = new tr({ nodes: { doc: { content: "paragraph+" }, paragraph: { code: !0, content: "inline*", parseDOM: [{ tag: "p" }], toDOM: () => ["p", 0] }, text: { group: "inline" }, mention: { group: "inline", inline: !0, attrs: { id: {}, name: {} }, content: "text*", toDOM: (e) => ["span", { "data-mention-id": e.attrs.id, class: "t-mention" }, `@${e.attrs.name}`], parseDOM: [{ tag: "span[data-mention-id]", getAttrs: (e) => ({ id: e.dataset["mention-id"] }) }] }, customemoji: { group: "inline", inline: !0, attrs: { name: {}, url: {} }, content: "text*", selectable: !1, toDOM: (e) => ["img", { src: e.attrs.url, alt: e.attrs.name, "data-custom-emoji": e.attrs.name }], parseDOM: [{ tag: "img[data-custom-emoji]", getAttrs: (e) => {
1117
1117
  const t = e;
1118
1118
  return { name: t.dataset.customEmoji, url: t.src };
1119
- } }] } }, marks: { literal: { toDOM: () => ["span", { "data-literal": "" }], parseDOM: [{ tag: "span[data-literal]" }] }, bold: { toDOM: () => ["b"], parseDOM: [{ tag: "b" }] }, italic: { toDOM: () => ["i"], parseDOM: [{ tag: "i" }] }, strikethrough: { toDOM: () => ["del"], parseDOM: [{ tag: "del" }] }, emoji: { attrs: { emoji: {} }, toDOM: (e) => ["span", { "data-emoji": e.attrs.emoji }, e.attrs.emoji], parseDOM: [{ tag: "span[data-emoji]", getAttrs: (e) => ({ emoji: e.dataset.emoji }) }] } } }), Rt = new yn("placeholder"), cn = new wn({ key: Rt, props: { decorations(e) {
1119
+ } }] } }, marks: { literal: { toDOM: () => ["span", { "data-literal": "" }], parseDOM: [{ tag: "span[data-literal]" }] }, bold: { toDOM: () => ["b"], parseDOM: [{ tag: "b" }] }, italic: { toDOM: () => ["i"], parseDOM: [{ tag: "i" }] }, strikethrough: { toDOM: () => ["del"], parseDOM: [{ tag: "del" }] }, emoji: { attrs: { emoji: {} }, toDOM: (e) => ["span", { "data-emoji": e.attrs.emoji }, e.attrs.emoji], parseDOM: [{ tag: "span[data-emoji]", getAttrs: (e) => ({ emoji: e.dataset.emoji }) }] } } }), Rt = new Hn("placeholder"), cn = new wn({ key: Rt, props: { decorations(e) {
1120
1120
  if (Sa(e.doc)) return;
1121
1121
  const t = e.doc.firstChild, n = Un.node(0, t.nodeSize, { class: "empty-node", "data-placeholder": Rt.getState(e) });
1122
- return Hn.create(e.doc, [n]);
1122
+ return yn.create(e.doc, [n]);
1123
1123
  } }, state: { init: () => "", apply: (e, t) => e.getMeta(Rt) ?? t } });
1124
1124
  function Sa(e) {
1125
1125
  return e.childCount !== 1 || e.firstChild.childCount !== 0;
@@ -1159,7 +1159,7 @@ const je = (e, t, n = void 0) => function(a, r) {
1159
1159
  return [a];
1160
1160
  }
1161
1161
  });
1162
- function Ae(e, t) {
1162
+ function _e(e, t) {
1163
1163
  return (n) => {
1164
1164
  const a = n;
1165
1165
  let r = 0;
@@ -1176,7 +1176,7 @@ function Ia(e) {
1176
1176
  return e.replace(/<!!mention:.*?\|([^>]*)>/gim, "@$1").replace(/<!!customemoji:(.*?)>/gim, "$1");
1177
1177
  }
1178
1178
  const ln = "’'()[]{}<>:,‒–—―…!.«»-‐?‘’“”;/⁄␠·&@*\\•^¤¢$€£¥₩₪†‡°¡¿¬#№%‰‱¶′§~¨_|¦⁂☞∴‽※".replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
1179
- var yt = ((e) => (e[e.italic = 1] = "italic", e[e.strikethrough = 2] = "strikethrough", e[e.bold = 4] = "bold", e))(yt || {});
1179
+ var Ht = ((e) => (e[e.italic = 1] = "italic", e[e.strikethrough = 2] = "strikethrough", e[e.bold = 4] = "bold", e))(Ht || {});
1180
1180
  const eo = [0, 1, 2, 3, 4, 5, 6].map((e) => {
1181
1181
  const t = [];
1182
1182
  return 1 & e || t.push(/_([^\s_].*?[^\s_])_|_([^\s_])_/), 2 & e || t.push(/~([^\s~].*?[^\s~])~|~([^\s~])~/), 4 & e || t.push(/\*([^\s*].*?[^\s*])\*|\*([^\s*])\*/), new RegExp(t.map((n) => n.source).join("|"), "g");
@@ -1186,16 +1186,16 @@ function no(e) {
1186
1186
  }
1187
1187
  function Na(e, t = 0) {
1188
1188
  const n = eo[t], a = n ? function(r) {
1189
- const i = ao.getOrCompute(r, () => new RegExp(`(?:^|[\\s${ln}])(?:${r.source})(?=[\\s${ln}]|$)`, "g")), o = Ae(i, (s) => {
1189
+ const i = ao.getOrCompute(r, () => new RegExp(`(?:^|[\\s${ln}])(?:${r.source})(?=[\\s${ln}]|$)`, "g")), o = _e(i, (s) => {
1190
1190
  const E = s[0][1], c = s[1] || s[2] || s[3] || s[4] || s[5] || s[6];
1191
- return [" ", { type: yt[to[E]], children: [c] }];
1191
+ return [" ", { type: Ht[to[E]], children: [c] }];
1192
1192
  });
1193
1193
  return (s) => {
1194
1194
  const [E, ...c] = o(" " + s);
1195
1195
  return E.length > 1 && c.unshift(E.substring(1)), c;
1196
1196
  };
1197
1197
  }(n) : () => [e];
1198
- return je(a(e), (r, i) => i === "bold" || i === "italic" || i === "strikethrough" ? Na(r, t | yt[i]) : [r]);
1198
+ return je(a(e), (r, i) => i === "bold" || i === "italic" || i === "strikethrough" ? Na(r, t | Ht[i]) : [r]);
1199
1199
  }
1200
1200
  const ao = function() {
1201
1201
  const e = function() {
@@ -1216,18 +1216,18 @@ const ao = function() {
1216
1216
  function Ra(e, t = e) {
1217
1217
  return { type: "autolink", url: e, text: t };
1218
1218
  }
1219
- const ro = Ae(/<!!mention:([^>\s]*?)\|(.*?)>/gm, ([e, t, n]) => /* @__PURE__ */ function(a, r) {
1219
+ const ro = _e(/<!!mention:([^>\s]*?)\|(.*?)>/gm, ([e, t, n]) => /* @__PURE__ */ function(a, r) {
1220
1220
  return { type: "mention", id: a, text: r };
1221
- }(decodeURIComponent(t), n)), io = Ae(/<!!customemoji:(.*?)>/gm, ([e, t]) => /* @__PURE__ */ function(n) {
1221
+ }(decodeURIComponent(t), n)), io = _e(/<!!customemoji:(.*?)>/gm, ([e, t]) => /* @__PURE__ */ function(n) {
1222
1222
  return { type: "customemoji", text: n };
1223
- }(t)), La = Ae(/<((?:https?|mailto):.*?)\|(.*?)>/gi, ([e, t, n]) => /* @__PURE__ */ function(a, r = []) {
1223
+ }(t)), La = _e(/<((?:https?|mailto):.*?)\|(.*?)>/gi, ([e, t, n]) => /* @__PURE__ */ function(a, r = []) {
1224
1224
  return { type: "link", url: a, children: r };
1225
- }(t, [n])), oo = Ae(/<actionlink:([^|]+)[|]([^>]*)>/gi, ([e, t, n]) => {
1225
+ }(t, [n])), oo = _e(/<actionlink:([^|]+)[|]([^>]*)>/gi, ([e, t, n]) => {
1226
1226
  const { action: a, params: r } = ma(t);
1227
1227
  return /* @__PURE__ */ function(i, o, s = []) {
1228
1228
  return { type: "actionlink", action: i, params: o, children: s };
1229
1229
  }(a, r, [n]);
1230
- }), so = Ae(/<actionbutton:([^|]+)[|]([^>]*)>/gi, ([e, t, n]) => {
1230
+ }), so = _e(/<actionbutton:([^|]+)[|]([^>]*)>/gi, ([e, t, n]) => {
1231
1231
  const { action: a, params: r } = ma(t);
1232
1232
  return /* @__PURE__ */ function(i, o, s = []) {
1233
1233
  return { type: "actionbutton", action: i, params: o, children: s };
@@ -1237,10 +1237,10 @@ function ma(e) {
1237
1237
  const t = e.indexOf("?");
1238
1238
  return t === -1 ? { action: e, params: {} } : { action: e.slice(0, t), params: Object.fromEntries(new URLSearchParams(e.slice(t))) };
1239
1239
  }
1240
- const Eo = Ae(/(?:^|\n)(?:\s*[-*+]\s+[^\n]+(?:\n|$))+/g, ([e]) => /* @__PURE__ */ function(t = []) {
1240
+ const Eo = _e(/(?:^|\n)(?:\s*[-*+]\s+[^\n]+(?:\n|$))+/g, ([e]) => /* @__PURE__ */ function(t = []) {
1241
1241
  return { type: "bulletlist", children: t };
1242
1242
  }([e.startsWith(`
1243
- `) ? e.slice(1) : e])), co = Ae(/^\s*[-*+]\s+([^\n]+)(?:\n|$)/gm, ([e, t]) => ({ type: "bulletpoint", children: [t] })), lo = (e) => {
1243
+ `) ? e.slice(1) : e])), co = _e(/^\s*[-*+]\s+([^\n]+)(?:\n|$)/gm, ([e, t]) => ({ type: "bulletpoint", children: [t] })), lo = (e) => {
1244
1244
  const t = /(?:^|[^-:/\w])([(+]?[0-9](?:[-_+ ().]?[0-9]){5,11}[0-9])(?:[^-:/\w]|$)/g;
1245
1245
  let n = 0;
1246
1246
  const a = [];
@@ -1263,7 +1263,7 @@ const Eo = Ae(/(?:^|\n)(?:\s*[-*+]\s+[^\n]+(?:\n|$))+/g, ([e]) => /* @__PURE__ *
1263
1263
  }, Ao = ["Codeblock", "Codespan", "FormattedLink", "Wikitext", "Autolink", "Actions", "Mention", "Mention", "BulletPoint", "CustomEmoji"];
1264
1264
  function uo(e = { except: [] }) {
1265
1265
  const t = { multilineSteps: [], singlelineSteps: [] }, n = e.except ?? Ao.filter((a) => !e.only.includes(a));
1266
- return n.includes("BulletPoint") || t.multilineSteps.push(Eo, co), n.includes("Mention") || t.singlelineSteps.push(ro), n.includes("CustomEmoji") || t.singlelineSteps.push(io), n.includes("Codespan") || t.multilineSteps.push(Ae(/```([^]+?)```/g, ([a, r]) => ({ type: "codespan", text: Ia(r) }))), n.includes("FormattedLink") || t.singlelineSteps.push(La), n.includes("Actions") || (t.singlelineSteps.push(oo), t.singlelineSteps.push(so)), n.includes("Wikitext") || t.singlelineSteps.push(no), n.includes("Autolink") || t.singlelineSteps.push(_o, lo), t;
1266
+ return n.includes("BulletPoint") || t.multilineSteps.push(Eo, co), n.includes("Mention") || t.singlelineSteps.push(ro), n.includes("CustomEmoji") || t.singlelineSteps.push(io), n.includes("Codespan") || t.multilineSteps.push(_e(/```([^]+?)```/g, ([a, r]) => ({ type: "codespan", text: Ia(r) }))), n.includes("FormattedLink") || t.singlelineSteps.push(La), n.includes("Actions") || (t.singlelineSteps.push(oo), t.singlelineSteps.push(so)), n.includes("Wikitext") || t.singlelineSteps.push(no), n.includes("Autolink") || t.singlelineSteps.push(_o, lo), t;
1267
1267
  }
1268
1268
  const Oo = function(e) {
1269
1269
  const t = RegExp(`[^${e}]+${e}?|${e}`, "g");
@@ -1370,7 +1370,7 @@ function Io(e, { allowSpaces: t = !1 }) {
1370
1370
  };
1371
1371
  }
1372
1372
  function An({ matcher: e = Io("#"), suggestionClass: t = "ProseMirror-suggestion", onEnter: n = () => !1, onChange: a = () => !1, onExit: r = () => !1, onKeyDown: i = () => !1, debug: o = !1 }) {
1373
- return new wn({ key: new yn("suggestions"), view() {
1373
+ return new wn({ key: new Hn("suggestions"), view() {
1374
1374
  return { update: (s, E) => {
1375
1375
  const c = this.key.getState(E), l = this.key.getState(s.state), _ = c.active && l.active && c.range.from !== l.range.from, S = !c.active && l.active, u = c.active && !l.active, T = !S && !u && c.text !== l.text;
1376
1376
  (u || _) && r({ view: s, range: c.range, text: c.text }), T && !_ && a({ view: s, range: l.range, text: l.text }), (S || _) && n({ view: s, range: l.range, text: l.text });
@@ -1388,31 +1388,31 @@ function An({ matcher: e = Io("#"), suggestionClass: t = "ProseMirror-suggestion
1388
1388
  return !!c && i({ view: s, event: E });
1389
1389
  }, decorations(s) {
1390
1390
  const { active: E, range: c } = this.getState(s);
1391
- return E ? Hn.create(s.doc, [Un.inline(c.from, c.to, { nodeName: "span", class: t, style: o ? "background: rgba(0, 0, 255, 0.05); color: blue; border: 2px solid blue;" : null })]) : null;
1391
+ return E ? yn.create(s.doc, [Un.inline(c.from, c.to, { nodeName: "span", class: t, style: o ? "background: rgba(0, 0, 255, 0.05); color: blue; border: 2px solid blue;" : null })]) : null;
1392
1392
  } } });
1393
1393
  }
1394
1394
  function No({ placeholder: e, disabled: t, className: n = "", characterLimit: a, spellcheck: r }) {
1395
- const i = qe(), o = H(), s = H(null);
1396
- return f(() => (o.current = function(E, c, l, _, S) {
1397
- const u = nr.create({ schema: J, plugins: [...S.filter(Ro), ar(), qt({ ...Qe, "Mod-z": rr, "Mod-y": ir, "Mod-b": _n("*"), "Mod-i": _n("_"), "Mod-Enter": Qe.Enter, "Shift-Enter": Qe.Enter, Enter: l }), qt({ Enter: Qe.Enter }), cn] }), T = To(), A = new er(E, { handlePaste: (I, D, R) => So(I, D, _), clipboardTextSerializer(I) {
1398
- const D = [];
1399
- return I.content.forEach((R) => {
1400
- R && D.push(Ia(R.textContent));
1401
- }), D.join();
1395
+ const i = qe(), o = y(), s = y(null);
1396
+ return v(() => (o.current = function(E, c, l, _, S) {
1397
+ const u = nr.create({ schema: J, plugins: [...S.filter(Ro), ar(), qt({ ...Qe, "Mod-z": rr, "Mod-y": ir, "Mod-b": _n("*"), "Mod-i": _n("_"), "Mod-Enter": Qe.Enter, "Shift-Enter": Qe.Enter, Enter: l }), qt({ Enter: Qe.Enter }), cn] }), T = To(), A = new er(E, { handlePaste: (I, h, L) => So(I, h, _), clipboardTextSerializer(I) {
1398
+ const h = [];
1399
+ return I.content.forEach((L) => {
1400
+ L && h.push(Ia(L.textContent));
1401
+ }), h.join();
1402
1402
  }, state: u, dispatchTransaction(I) {
1403
1403
  I = (I = I.removeStoredMark(J.marks.literal)).removeStoredMark(J.marks.emoji);
1404
- const D = A.state.apply(I);
1405
- A.state.doc.eq(D.doc) || c(new Ot(D.doc)), A.updateState(D), I.steps.some((R) => R instanceof cr) && setTimeout(() => T(A), 0);
1404
+ const h = A.state.apply(I);
1405
+ A.state.doc.eq(h.doc) || c(new Ot(h.doc)), A.updateState(h), I.steps.some((L) => L instanceof cr) && setTimeout(() => T(A), 0);
1406
1406
  } });
1407
1407
  return A;
1408
1408
  }(s.current, (E) => i.onChange(E), () => !!i.onEnter && (i.onEnter(), !0), (E) => i.onPasteImage(E), [i.emojiSuggesterPlugin(), i.mentionsPlugin()]), i.setEditorView(o.current), () => {
1409
1409
  i.setEditorView(void 0), o.current?.destroy();
1410
- }), [i]), f(() => {
1410
+ }), [i]), v(() => {
1411
1411
  o.current?.setProps({ editable: () => !t });
1412
- }, [t]), f(() => Zt(() => o.current?.setProps({ attributes: { spellcheck: String(i.spellcheck$.get() ?? r ?? !1), class: "t-text-input", "aria-label": "Message Field", role: "textbox" } })), [i, r]), f(() => Zt(() => {
1412
+ }, [t]), v(() => Zt(() => o.current?.setProps({ attributes: { spellcheck: String(i.spellcheck$.get() ?? r ?? !1), class: "t-text-input", "aria-label": "Message Field", role: "textbox" } })), [i, r]), v(() => Zt(() => {
1413
1413
  const E = o.current;
1414
1414
  E?.dispatch(E.state.tr.setMeta(cn, i.placeholder$.get() ?? e));
1415
- }), [i, e]), f(() => {
1415
+ }), [i, e]), v(() => {
1416
1416
  a && Number.isInteger(a) && i.setMaxLength(a);
1417
1417
  }, [a, i]), d("div", { className: `t-editor ${n}`, ref: s });
1418
1418
  }
@@ -1528,7 +1528,7 @@ function fa(e) {
1528
1528
  }
1529
1529
  class va extends Ta {
1530
1530
  constructor() {
1531
- super(...arguments), this.conversationListSubscription = null, this.extCurrentConversationId$ = W(null), this.conversationsArray$ = W([]), this.conversationsMap$ = W({});
1531
+ super(...arguments), this.conversationListSubscription = null, this.extCurrentConversationId$ = K(null), this.conversationsArray$ = K([]), this.conversationsMap$ = K({});
1532
1532
  }
1533
1533
  listenForConversations(t) {
1534
1534
  const n = t.subscribeConversations((a) => {
@@ -1615,8 +1615,8 @@ const vo = (e, t) => {
1615
1615
  return [V(n, null, ...Ue(e.children, t))];
1616
1616
  };
1617
1617
  function ko({ unicode: e }) {
1618
- const [t, n] = B(() => e !== ":arslan:");
1619
- if (f(() => {
1618
+ const [t, n] = w(() => e !== ":arslan:");
1619
+ if (v(() => {
1620
1620
  t && !ua(e) && n(!1);
1621
1621
  }, []), t) return d("span", { className: "t-emoji", children: e });
1622
1622
  const a = go(e);
@@ -1678,20 +1678,20 @@ function Uo({ common: e, block: t, message: n, theme: a, downloadUrl: r }) {
1678
1678
  return d(i, { block: t, common: e, message: n, downloadUrl: r });
1679
1679
  }
1680
1680
  function Tt(e, t, n = !0) {
1681
- const a = Y((i) => {
1681
+ const a = B((i) => {
1682
1682
  i.keyCode === 27 && e();
1683
- }, [e]), r = Y((i) => {
1683
+ }, [e]), r = B((i) => {
1684
1684
  i.target instanceof HTMLElement && i.target.closest(t) === null && e();
1685
1685
  }, [t, e]);
1686
- f(() => {
1686
+ v(() => {
1687
1687
  if (n) return window.addEventListener("keydown", a, !0), document.addEventListener("mousedown", r, !0), () => {
1688
1688
  window.removeEventListener("keydown", a, !0), document.removeEventListener("mousedown", r, !0);
1689
1689
  };
1690
1690
  }, [a, r, n]);
1691
1691
  }
1692
1692
  function Ma(e) {
1693
- const [t, n] = B();
1694
- return f(() => {
1693
+ const [t, n] = w();
1694
+ return v(() => {
1695
1695
  let a = !0;
1696
1696
  return e().then((r) => {
1697
1697
  a && n({ value: r });
@@ -1704,14 +1704,14 @@ function Vt() {
1704
1704
  const e = j(), t = x(e.t$);
1705
1705
  return d(Et, { type: "spinner", "aria-label": t.LOADING, className: "t-loading-icon" });
1706
1706
  }
1707
- const Ho = "https://cdn.jsdelivr.net/npm/emoji-picker-element@1.26.3/+esm", Xt = /* @__PURE__ */ function(e) {
1707
+ const yo = "https://cdn.jsdelivr.net/npm/emoji-picker-element@1.26.3/+esm", Xt = /* @__PURE__ */ function(e) {
1708
1708
  let t;
1709
1709
  return () => (t === void 0 && (t = { value: e() }), t.value);
1710
1710
  }(async function() {
1711
1711
  if (typeof window > "u" || window.document === void 0) return new Promise(() => {
1712
1712
  });
1713
1713
  try {
1714
- const e = await import(Ho);
1714
+ const e = await import(yo);
1715
1715
  return await new e.Database().ready(), e;
1716
1716
  } catch (e) {
1717
1717
  return bt.error("Failed to load emoji picker:", e), new Promise(() => {
@@ -1719,8 +1719,8 @@ const Ho = "https://cdn.jsdelivr.net/npm/emoji-picker-element@1.26.3/+esm", Xt =
1719
1719
  }
1720
1720
  });
1721
1721
  function Pa(e) {
1722
- const { onClose: t, onEmojiSelected: n } = Ar(), a = H(null), r = Ma(Xt);
1723
- return f(() => {
1722
+ const { onClose: t, onEmojiSelected: n } = Ar(), a = y(null), r = Ma(Xt);
1723
+ return v(() => {
1724
1724
  if (!r) return;
1725
1725
  F.defined(a.current);
1726
1726
  const i = a.current, o = i.shadowRoot;
@@ -1738,12 +1738,12 @@ function Pa(e) {
1738
1738
  return i.addEventListener("emoji-click", s), i.addEventListener("pointermove", E, { once: !0 }), () => {
1739
1739
  i.removeEventListener("emoji-click", s), i.removeEventListener("pointermove", E);
1740
1740
  };
1741
- }, [r, n]), f(() => {
1741
+ }, [r, n]), v(() => {
1742
1742
  r && a.current && a.current.shadowRoot.getElementById("search")?.focus();
1743
1743
  }, [r]), Tt(() => t(), ".t-emoji-picker"), d("div", r ? { className: "t-emoji-picker", children: d("emoji-picker", { ref: a, class: e.colorScheme }) } : { className: "t-emoji-picker", "t-loading": "", children: d(Vt, {}) });
1744
1744
  }
1745
- function yo(e) {
1746
- const { messageId: t, colorScheme: n, ...a } = e, { closePopover: r } = ur(), i = ye();
1745
+ function Ho(e) {
1746
+ const { messageId: t, colorScheme: n, ...a } = e, { closePopover: r } = ur(), i = He();
1747
1747
  return d("div", { ...a, children: d(Bn.Provider, { value: { onClose: r, onEmojiSelected: (o) => {
1748
1748
  i.addReaction(t, o), r();
1749
1749
  } }, children: d(Pa, { colorScheme: n }) }) });
@@ -1773,90 +1773,90 @@ function Ua({ focused: e, setFocused: t, buttonId: n }) {
1773
1773
  const r = n(e);
1774
1774
  r && document.getElementById(r)?.scrollIntoView({ block: "nearest" });
1775
1775
  }, [e, n]);
1776
- const a = Y((r) => {
1776
+ const a = B((r) => {
1777
1777
  const i = r.currentTarget.dataset.index;
1778
1778
  t(+i);
1779
1779
  }, [t]);
1780
- return { containerProps: G(() => ({ role: "menu", "aria-activedescendant": n(e) }), [e, n]), itemProps: Y((r) => ({ onMouseMove: a, id: n(r), "data-index": r }), [a, n]) };
1780
+ return { containerProps: z(() => ({ role: "menu", "aria-activedescendant": n(e) }), [e, n]), itemProps: B((r) => ({ onMouseMove: a, id: n(r), "data-index": r }), [a, n]) };
1781
1781
  }
1782
1782
  function Bo({ className: e }) {
1783
- const [t, n] = B([]), [a, r] = B([]), [i, o] = B(0), [s, E] = B(0), c = Ma(Xt), l = G(() => c && new c.value.Database({}), [c]), _ = qe(), S = x(_.state$.suggestEmojiQuery);
1784
- f(() => {
1783
+ const [t, n] = w([]), [a, r] = w([]), [i, o] = w(0), [s, E] = w(0), c = Ma(Xt), l = z(() => c && new c.value.Database({}), [c]), _ = qe(), S = x(_.state$.suggestEmojiQuery);
1784
+ v(() => {
1785
1785
  l && (S ? async function() {
1786
- const R = await l.getPreferredSkinTone();
1787
- E(R);
1788
- let h = await l.getEmojiBySearchQuery(S);
1789
- if (h = h.filter((L) => L.url || function(m) {
1790
- return m.version <= Oa && !$o.includes(m.unicode);
1791
- }(L)), function(L, m) {
1792
- m.sort((p, v) => {
1793
- const k = p.shortcodes?.find((C) => C.startsWith(L)), U = v.shortcodes?.find((C) => C.startsWith(L));
1794
- return k && !U ? -1 : !k && U ? 1 : k && U ? k.length - U.length : 0;
1786
+ const L = await l.getPreferredSkinTone();
1787
+ E(L);
1788
+ let p = await l.getEmojiBySearchQuery(S);
1789
+ if (p = p.filter((D) => D.url || function(R) {
1790
+ return R.version <= Oa && !$o.includes(R.unicode);
1791
+ }(D)), function(D, R) {
1792
+ R.sort((m, f) => {
1793
+ const M = m.shortcodes?.find((U) => U.startsWith(D)), Y = f.shortcodes?.find((U) => U.startsWith(D));
1794
+ return M && !Y ? -1 : !M && Y ? 1 : M && Y ? M.length - Y.length : 0;
1795
1795
  });
1796
- }(S.substring(1), h), o(0), n(h), h.length > 0 && r(h), S.endsWith(":")) {
1797
- const L = S.slice(1, -1), m = h.find((p) => p.shortcodes?.includes(L));
1798
- m && _.selectEmoji(xe(m, R));
1796
+ }(S.substring(1), p), o(0), n(p), p.length > 0 && r(p), S.endsWith(":")) {
1797
+ const D = S.slice(1, -1), R = p.find((m) => m.shortcodes?.includes(D));
1798
+ R && _.selectEmoji(xe(R, L));
1799
1799
  }
1800
1800
  }() : n([]));
1801
1801
  }, [S, _, l]);
1802
- const u = Y((R) => {
1803
- const h = t[R];
1804
- return h && "emoji-button-" + xe(h, s);
1802
+ const u = B((L) => {
1803
+ const p = t[L];
1804
+ return p && "emoji-button-" + xe(p, s);
1805
1805
  }, [t, s]), { containerProps: T, itemProps: A } = Ua({ focused: i, setFocused: o, buttonId: u }), I = t.length > 0;
1806
- Tt(() => _.closeSuggester(), "[t-emoji-suggest-bar]", I), f(() => {
1807
- if (I) return _.listenKeydown("emoji", (R) => ba(R, { dir: "ltr", focused: i, setFocused: o, itemCount: t.length, onConfirm() {
1808
- const h = t[i];
1809
- F.defined(h), _.selectEmoji(xe(h, s));
1806
+ Tt(() => _.closeSuggester(), "[t-emoji-suggest-bar]", I), v(() => {
1807
+ if (I) return _.listenKeydown("emoji", (L) => ba(L, { dir: "ltr", focused: i, setFocused: o, itemCount: t.length, onConfirm() {
1808
+ const p = t[i];
1809
+ F.defined(p), _.selectEmoji(xe(p, s));
1810
1810
  } })), () => {
1811
1811
  _.listenKeydown("emoji", void 0);
1812
1812
  };
1813
1813
  _.listenKeydown("emoji", void 0);
1814
1814
  }, [_, t, i, I, s]);
1815
- const D = H(null);
1816
- return d(Sr, { in: I, timeout: 100, classNames: "slide", mountOnEnter: !0, unmountOnExit: !0, nodeRef: D, children: d("div", { "t-emoji-suggest-bar": "", className: e, ref: D, ...T, children: a.map((R, h) => d(Yo, { emoji: R, skinTone: s, focused: h === i, onSelect: (L) => _.selectEmoji(L), ...A(h) }, xe(R, s))) }) });
1815
+ const h = y(null);
1816
+ return d(Sr, { in: I, timeout: 100, classNames: "slide", mountOnEnter: !0, unmountOnExit: !0, nodeRef: h, children: d("div", { "t-emoji-suggest-bar": "", className: e, ref: h, ...T, children: a.map((L, p) => d(Yo, { emoji: L, skinTone: s, focused: p === i, onSelect: (D) => _.selectEmoji(D), ...A(p) }, xe(L, s))) }) });
1817
1817
  }
1818
1818
  function xe(e, t) {
1819
- return Bt(e) ? Ha(e, t) : e.name;
1819
+ return Bt(e) ? ya(e, t) : e.name;
1820
1820
  }
1821
1821
  function Bt(e) {
1822
1822
  return !!e.unicode;
1823
1823
  }
1824
1824
  function Yo(e) {
1825
- const { emoji: t, focused: n, skinTone: a, onSelect: r, ...i } = e, o = (t.shortcodes ?? []).join(", "), s = Bt(t) ? [t.unicode, o].join(", ") : o, E = Bt(t) ? Ha(t, a) : null;
1825
+ const { emoji: t, focused: n, skinTone: a, onSelect: r, ...i } = e, o = (t.shortcodes ?? []).join(", "), s = Bt(t) ? [t.unicode, o].join(", ") : o, E = Bt(t) ? ya(t, a) : null;
1826
1826
  return d("button", { "t-focused": n ? "" : void 0, title: o, "aria-label": s, onClick: () => r(xe(t, a)), ...i, children: E });
1827
1827
  }
1828
- function Ha(e, t) {
1828
+ function ya(e, t) {
1829
1829
  return e.skins?.find((a) => a.tone === t)?.unicode ?? e.unicode;
1830
1830
  }
1831
1831
  const $o = ["🏻", "🏼", "🏽", "🏾", "🏿"];
1832
1832
  function xo(e) {
1833
- const { anchorSelector: t, children: n, ...a } = e, r = G(() => document.querySelector(t), [t]), [i, o] = B(null), { styles: s, attributes: E } = Ir(r, i, { modifiers: [], placement: "top-start" });
1833
+ const { anchorSelector: t, children: n, ...a } = e, r = z(() => document.querySelector(t), [t]), [i, o] = w(null), { styles: s, attributes: E } = Ir(r, i, { modifiers: [], placement: "top-start" });
1834
1834
  return d("div", { ref: o, style: { ...s.popper, zIndex: 1e3 }, ...E.popper, ...a, children: e.children });
1835
1835
  }
1836
1836
  function jo(e) {
1837
- const { className: t } = e, n = j(), a = x(() => n.mentionableUsers$.get()), [r, i] = B(0), o = qe(), s = x(o.state$.suggestMentionQuery), E = G(() => Object.fromEntries(a.map((T) => {
1837
+ const { className: t } = e, n = j(), a = x(() => n.mentionableUsers$.get()), [r, i] = w(0), o = qe(), s = x(o.state$.suggestMentionQuery), E = z(() => Object.fromEntries(a.map((T) => {
1838
1838
  return [T.id, (A = T.name, [...A.matchAll(/^|\s+/g)].map((I) => I.index + I[0].length).map((I) => A.substring(I)))];
1839
1839
  var A;
1840
- })), [a]), c = G(() => {
1840
+ })), [a]), c = z(() => {
1841
1841
  if (!s) return [];
1842
1842
  const T = dn(s);
1843
- return T === "" ? a : a.filter((A) => E[A.id].some((I) => function(D, R) {
1844
- return Qt(D.substring(0, R.length), R);
1843
+ return T === "" ? a : a.filter((A) => E[A.id].some((I) => function(h, L) {
1844
+ return Qt(h.substring(0, L.length), L);
1845
1845
  }(I, T)));
1846
- }, [s, a, E]), l = H(void 0);
1847
- f(() => {
1846
+ }, [s, a, E]), l = y(void 0);
1847
+ v(() => {
1848
1848
  if (l.current) {
1849
1849
  const T = c.findIndex((A) => A.id === l.current);
1850
1850
  i(T === -1 ? 0 : T);
1851
1851
  }
1852
- }, [c]), f(() => {
1852
+ }, [c]), v(() => {
1853
1853
  l.current = c[r]?.id;
1854
1854
  }, [r, c]);
1855
- const _ = Y((T) => {
1855
+ const _ = B((T) => {
1856
1856
  const A = c[T]?.id;
1857
1857
  return A && "mention-button-" + A;
1858
1858
  }, [c]), { containerProps: S, itemProps: u } = Ua({ focused: r, setFocused: i, buttonId: _ });
1859
- return f(() => {
1859
+ return v(() => {
1860
1860
  if (c.length !== 0) return o.listenKeydown("mention", (T) => ba(T, { dir: "ttb", focused: r, setFocused: i, itemCount: c.length, onSpace() {
1861
1861
  if (s) {
1862
1862
  const A = c[r];
@@ -1879,7 +1879,7 @@ function dn(e) {
1879
1879
  return F(e[0] === "@"), e.substring(1);
1880
1880
  }
1881
1881
  function tt(e) {
1882
- const { popoverComponent: t, popoverProps: n, children: a, type: r = "popover", ...i } = e, [o, s] = B(void 0), [E, c] = B(!1);
1882
+ const { popoverComponent: t, popoverProps: n, children: a, type: r = "popover", ...i } = e, [o, s] = w(void 0), [E, c] = w(!1);
1883
1883
  let l, _, S;
1884
1884
  return r === "menu" ? (l = at.Root, _ = at.Trigger, S = at.Content) : (l = St.Root, _ = St.Trigger, S = St.Content), d(Or.Provider, { value: { closePopover: () => c(!1) }, children: te(l, { modal: !0, open: E, onOpenChange: c, children: [d(_, { asChild: !0, children: d("button", { ...i, ref: (u) => ((T) => {
1885
1885
  const A = T?.closest("[t-menu-boundary]") ?? void 0;
@@ -1904,37 +1904,37 @@ function ge(e) {
1904
1904
  function nt(e) {
1905
1905
  return e < 1024 ? e + " B" : e < 1048576 ? Math.floor(e / 1024) + " KB" : e < 1073741824 ? Math.floor(e / 1048576) + " MB" : e < 1099511627776 ? Math.floor(e / 1073741824) + " GB" : Math.floor(e / 1099511627776) + " TB";
1906
1906
  }
1907
- function ya({ latitude: e, longitude: t }) {
1907
+ function Ha({ latitude: e, longitude: t }) {
1908
1908
  const n = e + "," + t;
1909
1909
  return { imageUrl: `https://maps.googleapis.com/maps/api/staticmap?center=${n}&zoom=15&size=300x200&scale=2&maptype=roadmap&markers=${n}&key=${Dr}`, linkUrl: `https://maps.google.com/maps?q=${n}&z=15` };
1910
1910
  }
1911
1911
  function Xo(e, t) {
1912
- const [n, a] = B({ long: "", short: "" });
1912
+ const [n, a] = w({ long: "", short: "" });
1913
1913
  return Ke(() => {
1914
1914
  let r, i = !0;
1915
1915
  const o = () => {
1916
1916
  const E = Date.now(), c = function(l, _, S) {
1917
1917
  const u = l - _;
1918
1918
  let T, A, I;
1919
- const D = new Date(_), R = { month: "short", day: "numeric" };
1919
+ const h = new Date(_), L = { month: "short", day: "numeric" };
1920
1920
  if (u < Sn) return { changeTimeout: 5e3, short: S.JUST_NOW, long: S.JUST_NOW };
1921
1921
  if (u < In) T = Sn, A = "MINUTES", I = S.MINUTES;
1922
1922
  else if (u < Nn) T = In, A = "HOURS", I = S.HOURS;
1923
1923
  else {
1924
1924
  if (!(u < Ko)) {
1925
- if (D.getFullYear() === new Date(l).getFullYear()) {
1926
- const L = D.toLocaleDateString(S.locale, R);
1927
- return { changeTimeout: void 0, short: L, long: L };
1925
+ if (h.getFullYear() === new Date(l).getFullYear()) {
1926
+ const D = h.toLocaleDateString(S.locale, L);
1927
+ return { changeTimeout: void 0, short: D, long: D };
1928
1928
  }
1929
1929
  {
1930
- const L = D.toLocaleDateString(S.locale, { ...R, year: "numeric" });
1931
- return { changeTimeout: void 0, short: L, long: L };
1930
+ const D = h.toLocaleDateString(S.locale, { ...L, year: "numeric" });
1931
+ return { changeTimeout: void 0, short: D, long: D };
1932
1932
  }
1933
1933
  }
1934
1934
  T = Nn, A = "DAYS", I = S.DAYS;
1935
1935
  }
1936
- const h = Math.floor(u / T);
1937
- return { changeTimeout: T, short: h + I, long: Wo(h, A.toLowerCase(), S.locale) };
1936
+ const p = Math.floor(u / T);
1937
+ return { changeTimeout: T, short: p + I, long: Wo(p, A.toLowerCase(), S.locale) };
1938
1938
  }(E, e > E ? E - 2e3 : e, t);
1939
1939
  return a(c), c;
1940
1940
  }, s = () => {
@@ -2765,7 +2765,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
2765
2765
  const { Icon: a } = n.theme;
2766
2766
  return N`
2767
2767
  <div className="t-theme-audio-block">
2768
- <${Ht} src=${e.url} filename=${e.filename} />
2768
+ <${yt} src=${e.url} filename=${e.filename} />
2769
2769
 
2770
2770
  <a className="t-body-text" href=${t}>
2771
2771
  <${a}
@@ -2827,7 +2827,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
2827
2827
  <${o} participants=${n} common=${e} />
2828
2828
  `;
2829
2829
  }, ConversationListItem: function(e) {
2830
- const { common: t, conversation: n, participants: a, isSelected: r } = e, { currentUser: i, theme: o, conversationList: s } = t, { TimeAgo: E, ConversationImage: c, CompactMessageContent: l } = o, { lastMessage: _ } = n, S = a.length >= 3, u = _?.sender?.name, T = _?.editedAt ?? _?.createdAt, A = a.filter((R) => R.user.id !== i.id), I = A.length ? A : a, D = n.subject ?? I.map((R) => R.user.name).join(", ");
2830
+ const { common: t, conversation: n, participants: a, isSelected: r } = e, { currentUser: i, theme: o, conversationList: s } = t, { TimeAgo: E, ConversationImage: c, CompactMessageContent: l } = o, { lastMessage: _ } = n, S = a.length >= 3, u = _?.sender?.name, T = _?.editedAt ?? _?.createdAt, A = a.filter((L) => L.user.id !== i.id), I = A.length ? A : a, h = n.subject ?? I.map((L) => L.user.name).join(", ");
2831
2831
  return N`
2832
2832
  <div
2833
2833
  className="t-theme-conversation-list-item"
@@ -2843,7 +2843,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
2843
2843
 
2844
2844
  <div className="t-inner">
2845
2845
  <div className="t-header">
2846
- <div className="t-conversation-name">${D}</div>
2846
+ <div className="t-conversation-name">${h}</div>
2847
2847
 
2848
2848
  ${T && N`
2849
2849
  <span className="t-timestamp">
@@ -2959,7 +2959,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
2959
2959
  </div>
2960
2960
  `;
2961
2961
  }, LocationBlock: function({ block: e }) {
2962
- const { imageUrl: t, linkUrl: n } = ya(e);
2962
+ const { imageUrl: t, linkUrl: n } = Ha(e);
2963
2963
  return N`
2964
2964
  <div className="t-theme-location-block">
2965
2965
  <a
@@ -2977,12 +2977,12 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
2977
2977
  </div>
2978
2978
  `;
2979
2979
  }, Message: function(e) {
2980
- const { message: t, messageStatus: n, permissions: a, common: r } = e, { currentUser: i, theme: o, participants: s, chatbox: E, t: c } = r, { Avatar: l, Icon: _, ReferencedMessage: S, TimeAgo: u, MessageActionMenu: T } = o, A = s.length >= 3, I = t.sender, D = I?.id !== i.id && A, R = t.referencedMessage, h = n !== "sending" && (a.canReplyToMessage || a.canDeleteMessage);
2981
- let L;
2982
- return L = I ? I.id === i.id ? "currentUser" : "other" : "system", N`
2980
+ const { message: t, messageStatus: n, permissions: a, common: r } = e, { currentUser: i, theme: o, participants: s, chatbox: E, t: c } = r, { Avatar: l, Icon: _, ReferencedMessage: S, TimeAgo: u, MessageActionMenu: T } = o, A = s.length >= 3, I = t.sender, h = I?.id !== i.id && A, L = t.referencedMessage, p = n !== "sending" && (a.canReplyToMessage || a.canDeleteMessage);
2981
+ let D;
2982
+ return D = I ? I.id === i.id ? "currentUser" : "other" : "system", N`
2983
2983
  <div
2984
2984
  className="t-theme-message"
2985
- t-sender=${L}
2985
+ t-sender=${D}
2986
2986
  t-message-id=${t.id}
2987
2987
  >
2988
2988
  <div className="t-message-row">
@@ -2993,14 +2993,14 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
2993
2993
 
2994
2994
  <div className="t-message-body">
2995
2995
  <!-- in group chats, show the message sender name in a random color -->
2996
- ${I && D && N`<div
2996
+ ${I && h && N`<div
2997
2997
  className="t-message-sender-name"
2998
2998
  style=${{ color: Vo(I.id) }}
2999
2999
  >
3000
3000
  ${I.name}
3001
3001
  </div>`}
3002
- ${R && N`<${S}
3003
- referencedMessage=${R}
3002
+ ${L && N`<${S}
3003
+ referencedMessage=${L}
3004
3004
  common=${r}
3005
3005
  />`}
3006
3006
 
@@ -3012,11 +3012,11 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
3012
3012
 
3013
3013
  <div className="t-message-status">
3014
3014
  <${u} timestamp=${t.createdAt} common=${r} />
3015
- ${L == "currentUser" && N`<${Jo} ...${e} />`}
3015
+ ${D == "currentUser" && N`<${Jo} ...${e} />`}
3016
3016
  </div>
3017
3017
  </div>
3018
3018
 
3019
- ${h && N`
3019
+ ${p && N`
3020
3020
  <${tt}
3021
3021
  type="menu"
3022
3022
  popoverComponent=${T}
@@ -3030,7 +3030,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
3030
3030
  ${a.canAddReaction && N`
3031
3031
  <${tt}
3032
3032
  className="t-add-reaction-button"
3033
- popoverComponent=${yo}
3033
+ popoverComponent=${Ho}
3034
3034
  popoverProps=${{ messageId: t.id, colorScheme: "light", className: "t-reaction-picker" }}
3035
3035
  aria-label="Add reaction"
3036
3036
  >
@@ -3041,20 +3041,20 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
3041
3041
 
3042
3042
  ${t.reactions.length > 0 && N`
3043
3043
  <div className="t-emoji-reactions">
3044
- ${t.reactions.map((m) => {
3045
- const p = m.currentUserReacted ? "remove your reaction" : "add reaction", v = m.count === 1 ? "person" : "people";
3044
+ ${t.reactions.map((R) => {
3045
+ const m = R.currentUserReacted ? "remove your reaction" : "add reaction", f = R.count === 1 ? "person" : "people";
3046
3046
  return N`
3047
3047
  <button
3048
3048
  className="t-reaction-button"
3049
- t-active=${m.currentUserReacted ? "true" : void 0}
3050
- onClick=${() => E.toggleReaction(t.id, m)}
3049
+ t-active=${R.currentUserReacted ? "true" : void 0}
3050
+ onClick=${() => E.toggleReaction(t.id, R)}
3051
3051
  disabled=${!a.canAddReaction}
3052
- aria-label="${m.count} ${v} reacted with ${m.emoji}. Press to ${p}"
3053
- aria-pressed=${m.currentUserReacted}
3054
- key=${m.emoji}
3052
+ aria-label="${R.count} ${f} reacted with ${R.emoji}. Press to ${m}"
3053
+ aria-pressed=${R.currentUserReacted}
3054
+ key=${R.emoji}
3055
3055
  >
3056
- <span className="t-emoji">${m.emoji}</span>
3057
- <span className="t-num-reactions">${m.count}</span>
3056
+ <span className="t-emoji">${R.emoji}</span>
3057
+ <span className="t-num-reactions">${R.count}</span>
3058
3058
  </button>
3059
3059
  `;
3060
3060
  })}
@@ -3100,7 +3100,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
3100
3100
  </div>
3101
3101
  `;
3102
3102
  }, MessageField: function(e) {
3103
- const { common: t, referencedMessage: n, editor: a, permissions: r, editMessageId: i } = e, { chatbox: o, device: s, conversation: E, t: c, theme: l } = t, { ReplyBar: _, Icon: S } = l, u = i ? "edit" : "send", T = u === "edit" && !a.atTextLimit && a.characterCount > 0, A = u === "send" && a.isEmpty && r.canShareLocation, I = u === "send" && a.isEmpty && r.canShareFile, D = u === "send" && s.supportsEmojiPicker && !s.isMobile;
3103
+ const { common: t, referencedMessage: n, editor: a, permissions: r, editMessageId: i } = e, { chatbox: o, device: s, conversation: E, t: c, theme: l } = t, { ReplyBar: _, Icon: S } = l, u = i ? "edit" : "send", T = u === "edit" && !a.atTextLimit && a.characterCount > 0, A = u === "send" && a.isEmpty && r.canShareLocation, I = u === "send" && a.isEmpty && r.canShareFile, h = u === "send" && s.supportsEmojiPicker && !s.isMobile;
3104
3104
  return N`
3105
3105
  <div className="t-theme-message-field" t-mode=${u}>
3106
3106
  ${a.showEmojiPicker && N`
@@ -3146,7 +3146,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
3146
3146
  >
3147
3147
  <${S} type="attach" common=${t} />
3148
3148
  </button>`}
3149
- ${D && N`<button
3149
+ ${h && N`<button
3150
3150
  className="t-emoji-button"
3151
3151
  t-kind="icon-button"
3152
3152
  aria-label="Insert an emoji"
@@ -3308,7 +3308,7 @@ const Gt = Object.freeze(Object.defineProperty({ __proto__: null, AudioBlock: fu
3308
3308
  </div>
3309
3309
  `;
3310
3310
  }, VoiceBlock: function({ block: e }) {
3311
- return N`<${Ht}
3311
+ return N`<${yt}
3312
3312
  className="t-theme-voice-block"
3313
3313
  src=${e.url}
3314
3314
  filename=${e.filename}
@@ -3397,7 +3397,7 @@ class Ba {
3397
3397
  }, 5e3), this._suggesterKeydownHandlers = { emoji: void 0, mention: void 0 }, this.toggleEmojiPicker = (r) => {
3398
3398
  const i = this.state$.showEmojiPicker;
3399
3399
  r ??= !i.peek(), i.set(r), r === !1 && this.focus();
3400
- }, this.spellcheck$ = W(), this.placeholder$ = W();
3400
+ }, this.spellcheck$ = K(), this.placeholder$ = K();
3401
3401
  }
3402
3402
  setEditorView(t) {
3403
3403
  this.editorView = t;
@@ -3499,15 +3499,15 @@ function Ya(e) {
3499
3499
  }), d(Bn.Provider, { value: { onClose: () => o.toggleEmojiPicker(!1), onEmojiSelected: (l) => o.selectEmoji(l) }, children: d(t.MessageField, { common: a, referencedMessage: r, permissions: i, editor: c, editMessageId: e.editMessageId }) });
3500
3500
  }
3501
3501
  function as({ message: e }) {
3502
- const t = j(), n = ye(), a = x(t.state$.editingMessageId), r = G(() => ce(e.content[0].children), [e]), i = Le({ isEmpty: r.length === 0, isTyping: !1, atTextLimit: !1, characterCount: r.length, showEmojiPicker: !1, suggestEmojiQuery: void 0, suggestMentionQuery: void 0 }), o = G(() => new Ba(i, t.device$, t.state$.userPermissions), [i, t]), s = Y(async () => {
3502
+ const t = j(), n = He(), a = x(t.state$.editingMessageId), r = z(() => ce(e.content[0].children), [e]), i = Le({ isEmpty: r.length === 0, isTyping: !1, atTextLimit: !1, characterCount: r.length, showEmojiPicker: !1, suggestEmojiQuery: void 0, suggestMentionQuery: void 0 }), o = z(() => new Ba(i, t.device$, t.state$.userPermissions), [i, t]), s = B(async () => {
3503
3503
  const E = o.state$;
3504
3504
  if (E.isEmpty.peek() || E.atTextLimit.peek()) return;
3505
3505
  const c = o.getText();
3506
3506
  c && await n.editMessage(e.id, { text: c }), t.state$.editingMessageId.set(null);
3507
3507
  }, [t, n, o, e.id]);
3508
- return f(() => {
3508
+ return v(() => {
3509
3509
  o.onEnter = s;
3510
- }, [o, s]), f(() => {
3510
+ }, [o, s]), v(() => {
3511
3511
  o.focus(), o.setText(ce(e.content[0].children, !0));
3512
3512
  }, [o, e]), d(Yn.Provider, { value: o, children: d(Ya, { editMessageId: a, onEditMessage: s }) });
3513
3513
  }
@@ -3520,7 +3520,7 @@ function is(e) {
3520
3520
  return d(t.MessageDivider, { common: n, ...e });
3521
3521
  }
3522
3522
  function os({ message: e }) {
3523
- const t = se(), n = j(), a = Be(), [r, i] = B("sent");
3523
+ const t = se(), n = j(), a = Be(), [r, i] = w("sent");
3524
3524
  return Pe((o) => {
3525
3525
  if (e.id.startsWith("ephemeral-")) return i("sending");
3526
3526
  const s = n.state$.currentConversation.everyoneReadUntil.get();
@@ -3528,15 +3528,15 @@ function os({ message: e }) {
3528
3528
  }), d(t.Message, { common: a, message: e, messageStatus: r, permissions: n.messagePermissions$(e).get() });
3529
3529
  }
3530
3530
  function ss({ extConversationId: e }) {
3531
- const t = We(), n = j(), a = ye(), r = H(!0), i = H(null);
3531
+ const t = We(), n = j(), a = He(), r = y(!0), i = y(null);
3532
3532
  Ke(() => {
3533
3533
  r.current = i.current.scrollTop > -30;
3534
- }), f(() => {
3534
+ }), v(() => {
3535
3535
  r.current && (i.current.scrollTop = 0);
3536
- }), f(() => {
3536
+ }), v(() => {
3537
3537
  const E = new IntersectionObserver((c) => n.state$.visibility.isInView.set(c[0].isIntersecting), { threshold: 0.9 });
3538
3538
  return E.observe(i.current), () => E.disconnect();
3539
- }, [n]), f(() => {
3539
+ }, [n]), v(() => {
3540
3540
  const E = () => n.state$.visibility.tabFocused.set(!document.hidden);
3541
3541
  return document.addEventListener("visibilitychange", E), () => document.removeEventListener("visibilitychange", E);
3542
3542
  }, [n]), Pe((E) => {
@@ -3544,7 +3544,7 @@ function ss({ extConversationId: e }) {
3544
3544
  const c = n.state$.visibility.tabFocused.get(), l = n.state$.visibility.isInView.get(), _ = i.current.checkVisibility({ contentVisibilityAuto: !0, opacityProperty: !0, visibilityProperty: !0, checkOpacity: !0, checkVisibilityCSS: !0 }), S = n.state$.currentConversation.get();
3545
3545
  return S && S.isUnread && c && l && _ ? t.conversation(S.id).markAsRead() : void 0;
3546
3546
  });
3547
- const o = Y((E) => {
3547
+ const o = B((E) => {
3548
3548
  const c = E.currentTarget;
3549
3549
  c.scrollHeight - c.clientHeight + c.scrollTop < 90 && n.messageSubscription && n.messageSubscription.loadMore(10);
3550
3550
  }, [n.messageSubscription]), s = x(n.state$.typing.child(e));
@@ -3557,7 +3557,7 @@ function Es({ item$: e }) {
3557
3557
  const cs = /* @__PURE__ */ new Set(["ByV39eoc", "B1FxElnd", "aW4c49tW", "qGfuGtx", "SbERe5ee", "ilaVEa15", "FOlWOSaH", "dao5gGmT", "DLUgAhzL", "fqXFumr6", "FtiWHMYT", "66iWOyWt", "1375amYi", "mWbJgzpt", "jO7GqAvL", "SkFIKxo5", "2z4ILc3y", "aDr8oPL1", "Hku1c4Pt"]);
3558
3558
  function dt({ appId: e, chatboxState: t }) {
3559
3559
  const n = e.charAt(0) === "t" || cs.has(e);
3560
- return f(() => {
3560
+ return v(() => {
3561
3561
  switch (t.type) {
3562
3562
  case "auth-failed":
3563
3563
  Re.error("Could not authenticate user. Check if you are authenticating correctly.");
@@ -3605,8 +3605,8 @@ function Ge() {
3605
3605
  return e.promise = t, e;
3606
3606
  }
3607
3607
  function As(e, t, n) {
3608
- const { beforeBrowserPermissionPrompt: a, onMissingBrowserPermissionCallback: r } = He($n);
3609
- return Y(async () => {
3608
+ const { beforeBrowserPermissionPrompt: a, onMissingBrowserPermissionCallback: r } = ye($n);
3609
+ return B(async () => {
3610
3610
  function i(l) {
3611
3611
  l === "denied" && r({ type: e });
3612
3612
  }
@@ -3636,8 +3636,8 @@ function As(e, t, n) {
3636
3636
  }, [a, r, e, t, ...n]);
3637
3637
  }
3638
3638
  function us({ onClose: e }) {
3639
- const t = j(), n = ye(), a = We(), [r, i] = B(null);
3640
- return { attachFile: Y(async (s) => {
3639
+ const t = j(), n = He(), a = We(), [r, i] = w(null);
3640
+ return { attachFile: B(async (s) => {
3641
3641
  try {
3642
3642
  if (s || (s = (await new Promise((T) => {
3643
3643
  const A = document.createElement("input");
@@ -3649,11 +3649,11 @@ function us({ onClose: e }) {
3649
3649
  }))[0]), !s) return;
3650
3650
  const { uploadPromise: E, upload: c } = await async function(T, A) {
3651
3651
  const I = T.name;
3652
- if (function(L) {
3653
- return /\.(mp4|ts|mov|webm|ogv)$/i.test(L);
3652
+ if (function(D) {
3653
+ return /\.(mp4|ts|mov|webm|ogv)$/i.test(D);
3654
3654
  }(T.name)) {
3655
- const L = await ht("video", T, (v) => ({ width: v.videoWidth, height: v.videoHeight, duration: v.duration, filename: I })), m = A.uploadVideo(T, L), p = function(v) {
3656
- switch (v.name.split(".").pop()) {
3655
+ const D = await ht("video", T, (f) => ({ width: f.videoWidth, height: f.videoHeight, duration: f.duration, filename: I })), R = A.uploadVideo(T, D), m = function(f) {
3656
+ switch (f.name.split(".").pop()) {
3657
3657
  case "ts":
3658
3658
  return "video/MP2T";
3659
3659
  case "mov":
@@ -3666,22 +3666,22 @@ function us({ onClose: e }) {
3666
3666
  return "video/mp4";
3667
3667
  }
3668
3668
  }(T);
3669
- return { uploadPromise: m, upload: { type: "video", file: T, metadata: L, temporaryBlobUrl: URL.createObjectURL(new Blob([T], { type: p })) } };
3669
+ return { uploadPromise: R, upload: { type: "video", file: T, metadata: D, temporaryBlobUrl: URL.createObjectURL(new Blob([T], { type: m })) } };
3670
3670
  }
3671
- if (function(L) {
3672
- return /\.(mp3|m4a|ogg|oga|opus|flac|wav)$/i.test(L);
3671
+ if (function(D) {
3672
+ return /\.(mp3|m4a|ogg|oga|opus|flac|wav)$/i.test(D);
3673
3673
  }(T.name)) {
3674
- const L = await ht("audio", T, (m) => ({ duration: m.duration, filename: I }));
3675
- return { uploadPromise: A.uploadAudio(T, L), upload: { type: "audio", file: T, metadata: L, temporaryBlobUrl: URL.createObjectURL(new Blob([T])) } };
3674
+ const D = await ht("audio", T, (R) => ({ duration: R.duration, filename: I }));
3675
+ return { uploadPromise: A.uploadAudio(T, D), upload: { type: "audio", file: T, metadata: D, temporaryBlobUrl: URL.createObjectURL(new Blob([T])) } };
3676
3676
  }
3677
- if (function(L) {
3678
- return /(gif|png|jpg|jpeg|svg|bmp|webp)$/i.test(L);
3677
+ if (function(D) {
3678
+ return /(gif|png|jpg|jpeg|svg|bmp|webp)$/i.test(D);
3679
3679
  }(T.name)) {
3680
- const L = await ht("img", T, (m) => ({ width: m.naturalWidth, height: m.naturalHeight, filename: I }));
3681
- return { uploadPromise: A.uploadImage(T, L), upload: { type: "image", file: T, metadata: L, temporaryBlobUrl: URL.createObjectURL(new Blob([T])) } };
3680
+ const D = await ht("img", T, (R) => ({ width: R.naturalWidth, height: R.naturalHeight, filename: I }));
3681
+ return { uploadPromise: A.uploadImage(T, D), upload: { type: "image", file: T, metadata: D, temporaryBlobUrl: URL.createObjectURL(new Blob([T])) } };
3682
3682
  }
3683
- const D = { filename: I }, R = A.uploadFile(T, D), h = URL.createObjectURL(new Blob([T]));
3684
- return { uploadPromise: R, upload: { type: "file", file: T, metadata: D, temporaryBlobUrl: h } };
3683
+ const h = { filename: I }, L = A.uploadFile(T, h), p = URL.createObjectURL(new Blob([T]));
3684
+ return { uploadPromise: L, upload: { type: "file", file: T, metadata: h, temporaryBlobUrl: p } };
3685
3685
  }(s, a), l = c.file.size + "," + c.file.name;
3686
3686
  t.state$.localFileBlobUrls.child(t.state$.extCurrentConversationId.peek()).child(l).set({ url: c.temporaryBlobUrl, fetching: !1 }), t.latestFileUpload = c;
3687
3687
  const _ = Ge(), S = { upload: c, closePreview: _.resolve, uploaded: !1 };
@@ -3747,8 +3747,8 @@ function ja({ children: e, className: t, ...n }) {
3747
3747
  function Os({ uploadState: e }) {
3748
3748
  const t = e.error, n = e.uploaded;
3749
3749
  Tt(() => e.closePreview("cancel"), ".t-upload-preview");
3750
- const a = H(null);
3751
- f(() => {
3750
+ const a = y(null);
3751
+ v(() => {
3752
3752
  n && a.current.focus();
3753
3753
  }, [n]);
3754
3754
  const r = j(), i = x(r.t$);
@@ -3759,7 +3759,7 @@ function Ts({ upload: e, uploaded: t }) {
3759
3759
  return e.type !== "location" ? te(Me, { children: [d(Ss, { upload: e }), d(Is, { upload: e, uploaded: t, t: a })] }) : t ? d(ds, { location: e.location }) : d("div", { className: "t-loading", children: d(Vt, {}) });
3760
3760
  }
3761
3761
  function ds({ location: e }) {
3762
- const { imageUrl: t, linkUrl: n } = ya(e), a = JSON.stringify(t);
3762
+ const { imageUrl: t, linkUrl: n } = Ha(e), a = JSON.stringify(t);
3763
3763
  return d("a", { href: n, target: "_blank", rel: "noreferrer", className: "t-location-upload-preview", style: { background: `url(${a}) center center / cover no-repeat` } });
3764
3764
  }
3765
3765
  const Ss = fe.memo(function({ upload: e }) {
@@ -3773,7 +3773,7 @@ const Ss = fe.memo(function({ upload: e }) {
3773
3773
  t = d("div", { className: "t-img-container", children: d("img", { src: a }) });
3774
3774
  } else if (e.type === "audio") {
3775
3775
  const a = URL.createObjectURL(n);
3776
- t = d(Ht, { src: a, filename: n.name });
3776
+ t = d(yt, { src: a, filename: n.name });
3777
3777
  }
3778
3778
  return t;
3779
3779
  }), Is = fe.memo(function({ uploaded: e, upload: t, t: n }) {
@@ -3793,19 +3793,19 @@ function Rs() {
3793
3793
  function Ls({ appId: e, chatHeaderVisible: t, messageFieldVisible: n }) {
3794
3794
  const a = qe(), r = function() {
3795
3795
  const u = j(), T = Le(() => {
3796
- const D = u.extUserId$.get(), R = u.errors$.get(), h = u.authTokenState$.get(), L = D && u.currentUser$.get(), m = u.state$.currentConversation.get(), p = u.state$.extCurrentConversationId.get(), v = p && u.state$.participants.child(p).get(), k = u.app$.get();
3797
- return u.device$.get(), R.serverError ? "server-error" : R.wrongAppId ? "wrong-app-id" : h === "loading" || h === "idle" ? "loading-token" : h === "invalid" ? "invalid-token" : h === "expired" ? "expired-token" : h === "valid" ? R.unknownUser ? "unknown-user" : R.unknownConversation ? "loading-conv-failed" : L && m && v && k ? "loaded" : "loading-data" : void F.unreachable();
3796
+ const h = u.extUserId$.get(), L = u.errors$.get(), p = u.authTokenState$.get(), D = h && u.currentUser$.get(), R = u.state$.currentConversation.get(), m = u.state$.extCurrentConversationId.get(), f = m && u.state$.participants.child(m).get(), M = u.app$.get();
3797
+ return u.device$.get(), L.serverError ? "server-error" : L.wrongAppId ? "wrong-app-id" : p === "loading" || p === "idle" ? "loading-token" : p === "invalid" ? "invalid-token" : p === "expired" ? "expired-token" : p === "valid" ? L.unknownUser ? "unknown-user" : L.unknownConversation ? "loading-conv-failed" : D && R && f && M ? "loaded" : "loading-data" : void F.unreachable();
3798
3798
  }), A = Le({ type: "loading" });
3799
- Pe((D) => {
3800
- const R = T.get(), h = u.state$.extCurrentConversationId.peek(), L = u.extUserId$.peek(), m = u.appId$.peek();
3801
- function p(v) {
3799
+ Pe((h) => {
3800
+ const L = T.get(), p = u.state$.extCurrentConversationId.peek(), D = u.extUserId$.peek(), R = u.appId$.peek();
3801
+ function m(f) {
3802
3802
  A.set({ type: "loading" });
3803
- const k = setTimeout(() => {
3804
- A.set(v);
3803
+ const M = setTimeout(() => {
3804
+ A.set(f);
3805
3805
  }, 5e3);
3806
- return () => clearTimeout(k);
3806
+ return () => clearTimeout(M);
3807
3807
  }
3808
- switch (R) {
3808
+ switch (L) {
3809
3809
  case "invalid-token":
3810
3810
  A.set({ type: "auth-failed" });
3811
3811
  break;
@@ -3813,7 +3813,7 @@ function Ls({ appId: e, chatHeaderVisible: t, messageFieldVisible: n }) {
3813
3813
  A.set({ type: "expired-token" });
3814
3814
  break;
3815
3815
  case "wrong-app-id":
3816
- A.set({ type: "wrong-app-id", appId: m });
3816
+ A.set({ type: "wrong-app-id", appId: R });
3817
3817
  break;
3818
3818
  case "server-error":
3819
3819
  A.set({ type: "server-error" });
@@ -3823,39 +3823,39 @@ function Ls({ appId: e, chatHeaderVisible: t, messageFieldVisible: n }) {
3823
3823
  A.set({ type: "loading" });
3824
3824
  break;
3825
3825
  case "loaded":
3826
- A.set({ type: "loaded", conversationId: h, userId: L });
3826
+ A.set({ type: "loaded", conversationId: p, userId: D });
3827
3827
  break;
3828
3828
  case "loading-conv-failed":
3829
- D.onCleanup = p({ type: "inaccessible-conversation", userId: L, conversationId: h });
3829
+ h.onCleanup = m({ type: "inaccessible-conversation", userId: D, conversationId: p });
3830
3830
  break;
3831
3831
  case "unknown-user":
3832
- D.onCleanup = p({ type: "unknown-user", userId: L });
3832
+ h.onCleanup = m({ type: "unknown-user", userId: D });
3833
3833
  break;
3834
3834
  default:
3835
- F.never(R);
3835
+ F.never(L);
3836
3836
  }
3837
3837
  });
3838
3838
  const I = Le({ type: "loading" });
3839
- return Pe((D) => {
3839
+ return Pe((h) => {
3840
3840
  if (A.type.get() === "loading") {
3841
3841
  I.set({ type: "invisible-loading" });
3842
- const R = setTimeout(() => {
3842
+ const L = setTimeout(() => {
3843
3843
  I.set({ type: "loading" });
3844
3844
  }, 1e3);
3845
- D.onCleanup = () => {
3846
- clearTimeout(R);
3845
+ h.onCleanup = () => {
3846
+ clearTimeout(L);
3847
3847
  };
3848
3848
  } else I.set(A.get());
3849
3849
  }), x(I);
3850
3850
  }(), { attachFile: i, shareLocation: o, uploadState: s } = us({ onClose: () => a.focus() });
3851
- f(() => {
3851
+ v(() => {
3852
3852
  a.uploadFile = i;
3853
3853
  }, [a, i]);
3854
- const [E, c] = B(!1), l = Y((u) => {
3854
+ const [E, c] = w(!1), l = B((u) => {
3855
3855
  i(u.dataTransfer.files[0]), u.preventDefault(), c(!1);
3856
- }, [i]), _ = Y((u) => {
3856
+ }, [i]), _ = B((u) => {
3857
3857
  u.preventDefault(), c(!0);
3858
- }, []), S = Y((u) => {
3858
+ }, []), S = B((u) => {
3859
3859
  u.preventDefault(), c(!1);
3860
3860
  }, []);
3861
3861
  return r.type === "invisible-loading" ? d(Me, {}) : r.type === "loading" ? d($a, {}) : r.type === "inaccessible-conversation" ? d(ls, {}) : r.type === "unknown-user" || r.type === "auth-failed" || r.type === "wrong-app-id" || r.type === "server-error" || r.type === "unexpected-error" ? d(dt, { appId: e, chatboxState: r }) : r.type == "expired-token" ? d(xa, {}) : r.type === "loaded" ? te("div", { className: "t-chatbox-content", onDragOver: _, onDragLeave: S, onDrop: l, children: [t && d(Rs, {}), d(ss, { extConversationId: r.conversationId }), n && d(Ya, { attachFile: i, shareLocation: o }), s && d(Os, { uploadState: s }), E && d(ja, { className: "t-drop-overlay", children: d(Et, { type: "attach" }) })] }) : d(Me, {});
@@ -4179,17 +4179,17 @@ class Ce {
4179
4179
  }
4180
4180
  }
4181
4181
  function Xa(e, t) {
4182
- const n = t.appId, a = t.userId, r = "conversationId" in t ? t.conversationId : void 0, i = G(() => Ce.fromHost(t.host), [t.host]);
4182
+ const n = t.appId, a = t.userId, r = "conversationId" in t ? t.conversationId : void 0, i = z(() => Ce.fromHost(t.host), [t.host]);
4183
4183
  Ke(() => {
4184
4184
  e.updateThemeCustom(t.themeCustom);
4185
4185
  }, [e, t.themeCustom]);
4186
- const o = G(() => Fa(), [t.appId, t.userId, t.token, t.tokenFetcher]), s = Lr({ apiUrls: i, appId: n, userId: a, token: t.token, tokenFetcher: t.tokenFetcher });
4187
- f(() => e.listenForErrors(s, r), [s, e, r]);
4188
- const E = G(() => new gs(i, n, o, s._authProvider), [n, o, s, i]);
4189
- return f(() => e.listenForAuthChanges(s, t.tokenFetcher), [s, e, t.tokenFetcher]), f(() => e.listenForUserAndAppChanges(s, E), [e, E, s]), { session: s, restApi: E };
4186
+ const o = z(() => Fa(), [t.appId, t.userId, t.token, t.tokenFetcher]), s = Lr({ apiUrls: i, appId: n, userId: a, token: t.token, tokenFetcher: t.tokenFetcher });
4187
+ v(() => e.listenForErrors(s, r), [s, e, r]);
4188
+ const E = z(() => new gs(i, n, o, s._authProvider), [n, o, s, i]);
4189
+ return v(() => e.listenForAuthChanges(s, t.tokenFetcher), [s, e, t.tokenFetcher]), v(() => e.listenForUserAndAppChanges(s, E), [e, E, s]), { session: s, restApi: E };
4190
4190
  }
4191
4191
  function ot(e, t, n) {
4192
- return Y((a) => {
4192
+ return B((a) => {
4193
4193
  e && e(a), t?.tagName !== "T-CHATBOX" && t?.tagName !== "T-CONVERSATION-LIST" || function(r, i, o) {
4194
4194
  for (const s of o) {
4195
4195
  const E = new Event(s);
@@ -4199,7 +4199,7 @@ function ot(e, t, n) {
4199
4199
  }, [e, t, n]);
4200
4200
  }
4201
4201
  function Ga(e) {
4202
- f(() => {
4202
+ v(() => {
4203
4203
  if (window.cordova) {
4204
4204
  const t = e.current;
4205
4205
  F.defined(t);
@@ -4214,87 +4214,87 @@ function Ga(e) {
4214
4214
  }, [e]);
4215
4215
  }
4216
4216
  function za() {
4217
- const [e, t] = B(!0);
4218
- return f(() => {
4217
+ const [e, t] = w(!0);
4218
+ return v(() => {
4219
4219
  t(!1);
4220
4220
  }, []), e;
4221
4221
  }
4222
4222
  pr(), Xt(), lr({ observableFunctions: { child: (e, t) => (F(typeof t == "string" || typeof t == "number", "Key should be a string or a number"), _r.getProxy(e, t.toString())) } }), Re.registerHandler(({ level: e, data: t }) => {
4223
4223
  console[e]("[TalkJS]", ...t);
4224
4224
  });
4225
- const fs = oe(function(e, t) {
4225
+ const fs = ie(function(e, t) {
4226
4226
  const { onSendMessage: n, onDeleteMessage: a, beforeBrowserPermissionPrompt: r, onMissingBrowserPermission: i, messageFieldPlaceholder: o, messageFieldSpellcheck: s, __hostElement: E } = e;
4227
- f(() => {
4227
+ v(() => {
4228
4228
  e.__internalOnLoaded?.();
4229
4229
  }, []);
4230
- const c = za(), l = H(null);
4230
+ const c = za(), l = y(null);
4231
4231
  Ga(l);
4232
- const _ = ot(a, E, ["deleteMessage", "delete-message", "deletemessage", "DeleteMessage"]), S = ot(n, E, ["sendMessage", "send-message", "sendmessage", "SendMessage"]), u = { beforeBrowserPermissionPrompt: r, onMissingBrowserPermissionCallback: ot(i, E, ["browserPermissionDenied", "browser-permission-denied", "browserpermissiondenied", "BrowserPermissionDenied"]) }, { store: T, controller: A, editorInternals: I, session: D } = function(L, m, p) {
4233
- const v = L.appId, k = L.userId, U = L.conversationId, C = G(() => new da(), [L.appId]), { session: P, restApi: w } = Xa(C, L), X = G(() => new Ba(C.state$.editor, C.device$, C.state$.userPermissions), [C]), z = G(() => new ps(C, P, X, m, p), [P, C, X, m, p]);
4234
- return X.controller = z, f(() => {
4235
- let ie, g = !0;
4236
- C.resetState(v, k, U);
4237
- const M = P.currentUser.subscribe(async ($) => {
4238
- if (g && (C.errors$.unknownUser.set(!$), $ && (C.currentUser$.set($), $.role !== ie))) {
4239
- ie = $.role;
4240
- const le = await w.getApp($.role);
4241
- if (!g) return;
4242
- C.app$.set(le);
4232
+ const _ = ot(a, E, ["deleteMessage", "delete-message", "deletemessage", "DeleteMessage"]), S = ot(n, E, ["sendMessage", "send-message", "sendmessage", "SendMessage"]), u = { beforeBrowserPermissionPrompt: r, onMissingBrowserPermissionCallback: ot(i, E, ["browserPermissionDenied", "browser-permission-denied", "browserpermissiondenied", "BrowserPermissionDenied"]) }, { store: T, controller: A, editorInternals: I, session: h } = function(R, m, f) {
4233
+ const M = R.appId, Y = R.userId, U = R.conversationId, g = z(() => new da(), [R.appId]), { session: b, restApi: W } = Xa(g, R), X = z(() => new Ba(g.state$.editor, g.device$, g.state$.userPermissions), [g]), oe = z(() => new ps(g, b, X, m, f), [b, g, X, m, f]);
4234
+ return X.controller = oe, v(() => {
4235
+ let C, k = !0;
4236
+ g.resetState(M, Y, U);
4237
+ const G = b.currentUser.subscribe(async ($) => {
4238
+ if (k && (g.errors$.unknownUser.set(!$), $ && (g.currentUser$.set($), $.role !== C))) {
4239
+ C = $.role;
4240
+ const P = await W.getApp($.role);
4241
+ if (!k) return;
4242
+ g.app$.set(P);
4243
4243
  }
4244
- }), y = P.conversation(U).subscribeMessages(async ($, le) => {
4245
- g && $ && (await C.readyForNewMessagesPromise, C.storeMessages(U, $, le));
4244
+ }), H = b.conversation(U).subscribeMessages(async ($, P) => {
4245
+ k && $ && (await g.readyForNewMessagesPromise, g.storeMessages(U, $, P));
4246
4246
  });
4247
- C.messageSubscription = y;
4248
- const K = P.conversation(U).subscribeParticipants(($) => {
4249
- g && $ && C.state$.participants.child(U).set($);
4247
+ g.messageSubscription = H;
4248
+ const Z = b.conversation(U).subscribeParticipants(($) => {
4249
+ k && $ && g.state$.participants.child(U).set($);
4250
4250
  });
4251
- C.participantSubscription = K;
4252
- const Q = P.conversation(U).subscribe(async ($) => {
4253
- g && $ && C.state$.currentConversation.set($);
4254
- }), q = P.conversation(U).subscribeTyping(($) => {
4255
- g && $ && C.storeTyping(U, $);
4251
+ g.participantSubscription = Z;
4252
+ const q = b.conversation(U).subscribe(async ($) => {
4253
+ k && $ && g.state$.currentConversation.set($);
4254
+ }), Ae = b.conversation(U).subscribeTyping(($) => {
4255
+ k && $ && g.storeTyping(U, $);
4256
4256
  });
4257
4257
  return () => {
4258
- g = !1, M.unsubscribe(), K.unsubscribe(), Q.unsubscribe(), y.unsubscribe(), q.unsubscribe(), C.messageSubscription = null;
4258
+ k = !1, G.unsubscribe(), Z.unsubscribe(), q.unsubscribe(), H.unsubscribe(), Ae.unsubscribe(), g.messageSubscription = null;
4259
4259
  };
4260
- }, [U, k, v, w, P, C, z]), f(() => {
4261
- const ie = C.state$.participants.child(U).onChange(({ value: g }) => {
4262
- if (!g) return;
4263
- const M = /* @__PURE__ */ new Set();
4264
- for (const y of g) M.add(y.user.id);
4260
+ }, [U, Y, M, W, b, g, oe]), v(() => {
4261
+ const C = g.state$.participants.child(U).onChange(({ value: k }) => {
4262
+ if (!k) return;
4263
+ const G = /* @__PURE__ */ new Set();
4264
+ for (const H of k) G.add(H.user.id);
4265
4265
  Fe(() => {
4266
- for (const y of vn(C.onlineSubscriptions)) M.has(y) || (C.onlineSubscriptions[y]?.unsubscribe(), delete C.onlineSubscriptions[y], C.state$.isUserConnected.child(y).set(!1));
4266
+ for (const H of vn(g.onlineSubscriptions)) G.has(H) || (g.onlineSubscriptions[H]?.unsubscribe(), delete g.onlineSubscriptions[H], g.state$.isUserConnected.child(H).set(!1));
4267
4267
  });
4268
- for (const y of M) C.onlineSubscriptions[y] || (C.onlineSubscriptions[y] = P.user(y).subscribeOnline((K) => {
4269
- K && C.state$.isUserConnected.child(y).set(K.isConnected);
4268
+ for (const H of G) g.onlineSubscriptions[H] || (g.onlineSubscriptions[H] = b.user(H).subscribeOnline((Z) => {
4269
+ Z && g.state$.isUserConnected.child(H).set(Z.isConnected);
4270
4270
  }));
4271
4271
  }, { initial: !0 });
4272
4272
  return () => {
4273
- ie();
4274
- for (const g of vn(C.onlineSubscriptions)) C.onlineSubscriptions[g].unsubscribe();
4275
- C.onlineSubscriptions = {}, C.state$.isUserConnected.set({});
4273
+ C();
4274
+ for (const k of vn(g.onlineSubscriptions)) g.onlineSubscriptions[k].unsubscribe();
4275
+ g.onlineSubscriptions = {}, g.state$.isUserConnected.set({});
4276
4276
  };
4277
- }, [C, U, P]), { store: C, controller: z, editorInternals: X, session: P };
4278
- }(e, S, _), R = Y(async () => {
4279
- const L = I.state$;
4280
- if (L.isEmpty.peek() || L.atTextLimit.peek()) return;
4281
- const m = I.getText(), p = T.state$.referencedMessageId.peek();
4282
- p && A.setReferencedMessage(null), I.clearText(), T.state$.editor.showEmojiPicker.set(!1), await A.sendMessage({ text: m, referencedMessage: p ?? void 0 });
4277
+ }, [g, U, b]), { store: g, controller: oe, editorInternals: X, session: b };
4278
+ }(e, S, _), L = B(async () => {
4279
+ const R = I.state$;
4280
+ if (R.isEmpty.peek() || R.atTextLimit.peek()) return;
4281
+ const m = I.getText(), f = T.state$.referencedMessageId.peek();
4282
+ f && A.setReferencedMessage(null), I.clearText(), T.state$.editor.showEmojiPicker.set(!1), await A.sendMessage({ text: m, referencedMessage: f ?? void 0 });
4283
4283
  }, [A, I, T]);
4284
- f(() => {
4285
- const L = e.enterSendsMessage ?? !0;
4286
- I.onEnter = L ? R : void 0;
4287
- }, [I, e.enterSendsMessage, R]), f(() => {
4284
+ v(() => {
4285
+ const R = e.enterSendsMessage ?? !0;
4286
+ I.onEnter = R ? L : void 0;
4287
+ }, [I, e.enterSendsMessage, L]), v(() => {
4288
4288
  I.spellcheck$.set(s);
4289
- }, [I, s]), f(() => {
4289
+ }, [I, s]), v(() => {
4290
4290
  I.placeholder$.set(o);
4291
- }, [I, o]), bn(t, () => ({ deleteMessage: (L) => A.deleteMessage(L), setEditing: (L) => A.setEditing(L), editMessage: (L, m) => A.editMessage(L, m), sendMessage: (L) => A.sendMessage(L), sendFileMessage: (L) => A.sendFileMessage(L), sendLocationMessage: (L) => A.sendLocationMessage(L), setReferencedMessage: (L) => A.setReferencedMessage(L), getMessageFieldText: () => I.getText(), setMessageFieldText: (L) => I.setText(L) }));
4292
- const h = Y(({ error: L }) => d(dt, { appId: e.appId, chatboxState: { type: "unexpected-error", error: L } }), [e.appId]);
4293
- return d("div", c ? { className: "t-chatbox", ref: l } : { className: "t-chatbox", ref: l, children: d(Xn, { fallbackRender: h, children: d(Yn.Provider, { value: I, children: d(xn.Provider, { value: T, children: d(jn.Provider, { value: e.theme, children: d($n.Provider, { value: u, children: d(Fn.Provider, { value: A, children: d(Vn.Provider, { value: D, children: d(dr.Provider, { value: { sendMessage: R }, children: d(Ls, { appId: e.appId, chatHeaderVisible: e.chatHeaderVisible ?? !0, messageFieldVisible: e.messageFieldVisible ?? !0 }) }) }) }) }) }) }) }) }) });
4291
+ }, [I, o]), bn(t, () => ({ deleteMessage: (R) => A.deleteMessage(R), setEditing: (R) => A.setEditing(R), editMessage: (R, m) => A.editMessage(R, m), sendMessage: (R) => A.sendMessage(R), sendFileMessage: (R) => A.sendFileMessage(R), sendLocationMessage: (R) => A.sendLocationMessage(R), setReferencedMessage: (R) => A.setReferencedMessage(R), getMessageFieldText: () => I.getText(), setMessageFieldText: (R) => I.setText(R) }));
4292
+ const p = B(({ error: R }) => d(dt, { appId: e.appId, chatboxState: { type: "unexpected-error", error: R } }), [e.appId]), D = "t-chatbox" + (e.className ? ` ${e.className}` : "");
4293
+ return d("div", c ? { className: D, style: e.style, ref: l } : { className: D, style: e.style, ref: l, children: d(Xn, { fallbackRender: p, children: d(Yn.Provider, { value: I, children: d(xn.Provider, { value: T, children: d(jn.Provider, { value: e.theme, children: d($n.Provider, { value: u, children: d(Fn.Provider, { value: A, children: d(Vn.Provider, { value: h, children: d(dr.Provider, { value: { sendMessage: L }, children: d(Ls, { appId: e.appId, chatHeaderVisible: e.chatHeaderVisible ?? !0, messageFieldVisible: e.messageFieldVisible ?? !0 }) }) }) }) }) }) }) }) }) });
4294
4294
  });
4295
4295
  function vs({ conversation: e }) {
4296
- const t = j(), n = We(), a = se(), r = ca(), i = x(t.extCurrentConversationId$), [o, s] = B([]);
4297
- return f(() => {
4296
+ const t = j(), n = We(), a = se(), r = ca(), i = x(t.extCurrentConversationId$), [o, s] = w([]);
4297
+ return v(() => {
4298
4298
  const E = n.conversation(e.id).subscribeParticipants(async (c) => {
4299
4299
  c && s(c);
4300
4300
  });
@@ -4302,8 +4302,8 @@ function vs({ conversation: e }) {
4302
4302
  }, [n, e.id]), o ? d(a.ConversationListItem, { common: r, conversation: e, participants: o, isSelected: i === e.id }) : null;
4303
4303
  }
4304
4304
  function ks() {
4305
- const e = j(), t = H(null);
4306
- f(() => {
4305
+ const e = j(), t = y(null);
4306
+ v(() => {
4307
4307
  let a = !0;
4308
4308
  const r = t.current;
4309
4309
  return async function() {
@@ -4313,7 +4313,7 @@ function ks() {
4313
4313
  a = !1;
4314
4314
  };
4315
4315
  }, [e]);
4316
- const n = Y((a) => {
4316
+ const n = B((a) => {
4317
4317
  const r = a.currentTarget;
4318
4318
  r.scrollHeight - r.clientHeight - r.scrollTop < 15 && e.conversationListSubscription && e.conversationListSubscription.loadMore(20);
4319
4319
  }, [e]);
@@ -4387,32 +4387,32 @@ class Ps {
4387
4387
  this.onSelectConversation(n);
4388
4388
  }
4389
4389
  }
4390
- const bs = oe(function(e, t) {
4391
- f(() => {
4390
+ const bs = ie(function(e, t) {
4391
+ v(() => {
4392
4392
  e.__internalOnLoaded?.();
4393
4393
  }, []);
4394
- const n = za(), a = H(null);
4394
+ const n = za(), a = y(null);
4395
4395
  Ga(a);
4396
- const r = ot(e.onSelectConversation, e.__hostElement, ["selectConversation", "select-conversation", "selectconversation", "SelectConversation"]), i = G(() => new va(), [e.appId]), { session: o } = Xa(i, e);
4397
- f(() => {
4396
+ const r = ot(e.onSelectConversation, e.__hostElement, ["selectConversation", "select-conversation", "selectconversation", "SelectConversation"]), i = z(() => new va(), [e.appId]), { session: o } = Xa(i, e);
4397
+ v(() => {
4398
4398
  i.resetState(e.appId, e.userId);
4399
4399
  }, [i, e.appId, e.userId]);
4400
- const s = G(() => new Ps(i, r), [i, r]);
4401
- f(() => i.listenForConversations(o), [i, o]), f(() => {
4400
+ const s = z(() => new Ps(i, r), [i, r]);
4401
+ v(() => i.listenForConversations(o), [i, o]), v(() => {
4402
4402
  e.selectedConversationId !== void 0 && i.extCurrentConversationId$.set(e.selectedConversationId);
4403
- }, [i, e.selectedConversationId]), bn(t, () => ({ selectConversation: (c) => s.selectConversation(c) }));
4404
- const E = Y(({ error: c }) => d(dt, { appId: e.appId, chatboxState: { type: "unexpected-error", error: c } }), [e.appId]);
4405
- return d("div", n ? { className: "t-conversation-list", ref: a } : { className: "t-conversation-list", ref: a, children: d(Xn, { fallbackRender: E, children: d(xn.Provider, { value: i, children: d(jn.Provider, { value: e.theme, children: d(Fn.Provider, { value: s, children: d(Vn.Provider, { value: o, children: d(Ms, { appId: e.appId }) }) }) }) }) }) });
4403
+ }, [i, e.selectedConversationId]), bn(t, () => ({ selectConversation: (l) => s.selectConversation(l) }));
4404
+ const E = B(({ error: l }) => d(dt, { appId: e.appId, chatboxState: { type: "unexpected-error", error: l } }), [e.appId]), c = "t-conversation-list" + (e.className ? ` ${e.className}` : "");
4405
+ return d("div", n ? { className: c, style: e.style, ref: a } : { className: c, style: e.style, ref: a, children: d(Xn, { fallbackRender: E, children: d(xn.Provider, { value: i, children: d(jn.Provider, { value: e.theme, children: d(Fn.Provider, { value: s, children: d(Vn.Provider, { value: o, children: d(Ms, { appId: e.appId }) }) }) }) }) }) });
4406
4406
  });
4407
4407
  new Promise((e) => {
4408
4408
  typeof document < "u" && document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", e, { once: !0 }) : e(void 0);
4409
4409
  });
4410
- const iE = (Mn = Gt, oe(function(e, t) {
4410
+ const iE = (Mn = Gt, ie(function(e, t) {
4411
4411
  return d(fs, { ...e, theme: e.theme ?? Mn, ref: t });
4412
4412
  }));
4413
4413
  var Mn;
4414
4414
  const oE = function(e) {
4415
- return oe(function(t, n) {
4415
+ return ie(function(t, n) {
4416
4416
  return d(bs, { ...t, theme: t.theme ?? e, ref: n });
4417
4417
  });
4418
4418
  }(Gt), sE = Gt;