@_solaris/messenger-widget 0.5.15 → 0.5.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/messenger.js CHANGED
@@ -1,4 +1,4 @@
1
- import { reactive as Fe, openBlock as c, createElementBlock as u, normalizeStyle as q, normalizeClass as O, toDisplayString as v, resolveComponent as E, createVNode as V, Transition as Pe, withCtx as Ue, Fragment as R, renderList as U, withKeys as ue, withModifiers as Y, createElementVNode as o, createCommentVNode as b, createBlock as F, withDirectives as K, vModelText as X, createTextVNode as pe, resolveDynamicComponent as je, renderSlot as De, vModelCheckbox as ze, vModelSelect as He, markRaw as ke } from "vue";
1
+ import { reactive as Fe, openBlock as c, createElementBlock as u, normalizeStyle as q, normalizeClass as O, toDisplayString as v, resolveComponent as E, createVNode as V, Transition as Pe, withCtx as Ue, Fragment as R, renderList as j, withKeys as ue, withModifiers as Y, createElementVNode as o, createCommentVNode as w, createBlock as P, withDirectives as K, vModelText as X, createTextVNode as pe, resolveDynamicComponent as je, renderSlot as De, vModelCheckbox as ze, vModelSelect as He, markRaw as ke } from "vue";
2
2
  const qe = [
3
3
  "connected",
4
4
  "message",
@@ -131,7 +131,7 @@ function We(e) {
131
131
  console.error("[transport] initial /conversations failed", d);
132
132
  }
133
133
  }
134
- async function w() {
134
+ async function b() {
135
135
  const d = await a("GET", "/customers/me");
136
136
  return (d == null ? void 0 : d.customer) ?? null;
137
137
  }
@@ -159,14 +159,14 @@ function We(e) {
159
159
  f
160
160
  )).conversation;
161
161
  }
162
- async function P(d, f) {
162
+ async function F(d, f) {
163
163
  return a(
164
164
  "PATCH",
165
165
  `/conversations/${encodeURIComponent(d)}/read`,
166
166
  { message_id: f }
167
167
  );
168
168
  }
169
- async function B(d, f = {}) {
169
+ async function N(d, f = {}) {
170
170
  const _ = new URLSearchParams();
171
171
  f.before && _.set("before", f.before), f.since && _.set("since", f.since), f.limit && _.set("limit", String(f.limit));
172
172
  const y = _.toString() ? `?${_.toString()}` : "";
@@ -175,7 +175,7 @@ function We(e) {
175
175
  `/conversations/${encodeURIComponent(d)}/messages${y}`
176
176
  );
177
177
  }
178
- async function H(d, f) {
178
+ async function U(d, f) {
179
179
  se();
180
180
  const _ = {
181
181
  client_msg_id: f.client_msg_id,
@@ -301,15 +301,15 @@ function We(e) {
301
301
  stop: g,
302
302
  setPanelOpen: ce,
303
303
  // REST
304
- getCustomer: w,
304
+ getCustomer: b,
305
305
  patchCustomer: T,
306
306
  listConversations: I,
307
307
  createConversation: A,
308
308
  getConversation: z,
309
309
  patchConversation: M,
310
- markConversationRead: P,
311
- listMessages: B,
312
- postMessage: H,
310
+ markConversationRead: F,
311
+ listMessages: N,
312
+ postMessage: U,
313
313
  postCallback: W,
314
314
  uploadAttachment: Z,
315
315
  signAttachment: ee,
@@ -459,7 +459,7 @@ function Qe(e) {
459
459
  async function p(h) {
460
460
  const m = t.paginationByConv[h];
461
461
  if (!(m != null && m.loaded || m != null && m.loading)) {
462
- w(h, { nextCursor: null, loading: !0, loaded: !1 });
462
+ b(h, { nextCursor: null, loading: !0, loaded: !1 });
463
463
  try {
464
464
  const g = await e.listMessages(h, {
465
465
  limit: l
@@ -469,13 +469,13 @@ function Qe(e) {
469
469
  const y = f.filter((C) => !((C == null ? void 0 : C.id) != null && _.has(`id:${String(C.id)}`) || C != null && C.client_msg_id && _.has(`c:${C.client_msg_id}`)));
470
470
  t.messagesByConv[h] = [...d, ...y].sort(
471
471
  ce
472
- ), w(h, {
472
+ ), b(h, {
473
473
  nextCursor: (g == null ? void 0 : g.next_cursor) ?? null,
474
474
  loading: !1,
475
475
  loaded: !0
476
476
  });
477
477
  } catch (g) {
478
- console.error("[store] openConversation failed", g), w(h, {
478
+ console.error("[store] openConversation failed", g), b(h, {
479
479
  nextCursor: null,
480
480
  loading: !1,
481
481
  loaded: !1
@@ -489,7 +489,7 @@ function Qe(e) {
489
489
  if (!m || m.loading || !m.nextCursor) return;
490
490
  const d = (f = (t.messagesByConv[h] || []).find((_) => _ == null ? void 0 : _.created_at)) == null ? void 0 : f.created_at;
491
491
  if (d) {
492
- w(h, { ...m, loading: !0 });
492
+ b(h, { ...m, loading: !0 });
493
493
  try {
494
494
  const _ = await e.listMessages(h, {
495
495
  before: d,
@@ -498,17 +498,17 @@ function Qe(e) {
498
498
  for (const x of C)
499
499
  (x == null ? void 0 : x.id) != null && S.add(`id:${String(x.id)}`), x != null && x.client_msg_id && S.add(`c:${x.client_msg_id}`);
500
500
  const L = y.filter((x) => !((x == null ? void 0 : x.id) != null && S.has(`id:${String(x.id)}`) || x != null && x.client_msg_id && S.has(`c:${x.client_msg_id}`)));
501
- t.messagesByConv[h] = [...L, ...C], w(h, {
501
+ t.messagesByConv[h] = [...L, ...C], b(h, {
502
502
  nextCursor: (_ == null ? void 0 : _.next_cursor) ?? null,
503
503
  loading: !1,
504
504
  loaded: !0
505
505
  });
506
506
  } catch (_) {
507
- console.error("[store] loadMore failed", _), w(h, { ...m, loading: !1 });
507
+ console.error("[store] loadMore failed", _), b(h, { ...m, loading: !1 });
508
508
  }
509
509
  }
510
510
  }
511
- function w(h, m) {
511
+ function b(h, m) {
512
512
  t.paginationByConv = { ...t.paginationByConv, [h]: m };
513
513
  }
514
514
  async function T(h, m) {
@@ -596,10 +596,10 @@ function Qe(e) {
596
596
  console.error("[store] callback failed", d), h != null && delete t.awaitingCallback[h];
597
597
  }
598
598
  }
599
- const P = /* @__PURE__ */ new Map();
600
- async function B(h) {
599
+ const F = /* @__PURE__ */ new Map();
600
+ async function N(h) {
601
601
  if (!h) return null;
602
- const m = P.get(h);
602
+ const m = F.get(h);
603
603
  if (m != null && m.url) {
604
604
  const g = m.expires_at ? Date.parse(m.expires_at) : 0;
605
605
  if (!g || g - Date.now() > 6e4) return m.url;
@@ -607,7 +607,7 @@ function Qe(e) {
607
607
  try {
608
608
  const g = await e.signAttachment(h);
609
609
  if (g != null && g.signed_url)
610
- return P.set(h, {
610
+ return F.set(h, {
611
611
  url: g.signed_url,
612
612
  expires_at: g.expires_at
613
613
  }), g.signed_url;
@@ -616,7 +616,7 @@ function Qe(e) {
616
616
  }
617
617
  return null;
618
618
  }
619
- async function H(h, { rating: m, comment: g } = {}) {
619
+ async function U(h, { rating: m, comment: g } = {}) {
620
620
  const d = t.conversations.find((y) => y.id === h), _ = {
621
621
  ...(d == null ? void 0 : d.metadata) || {},
622
622
  feedback: {
@@ -752,8 +752,8 @@ function Qe(e) {
752
752
  markConversationRead: A,
753
753
  send: z,
754
754
  clickCallback: M,
755
- signAttachment: B,
756
- submitFeedback: H,
755
+ signAttachment: N,
756
+ submitFeedback: U,
757
757
  getPendingApproval: W,
758
758
  getActionInFlight: ee,
759
759
  getLatestSuggestions: te,
@@ -762,7 +762,7 @@ function Qe(e) {
762
762
  setPanelOpen: e.setPanelOpen
763
763
  };
764
764
  }
765
- const D = {
765
+ const H = {
766
766
  w: "#ffffff",
767
767
  g50: "#F9F9F7",
768
768
  g100: "#F2F1EE",
@@ -801,21 +801,21 @@ const Xe = `
801
801
  .wm-root {
802
802
  --wm-f: 'Geist', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
803
803
  --wm-fm: 'Geist Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
804
- --wm-w: ${D.w};
805
- --wm-g50: ${D.g50};
806
- --wm-g100: ${D.g100};
807
- --wm-g150: ${D.g150};
808
- --wm-g200: ${D.g200};
809
- --wm-g300: ${D.g300};
810
- --wm-g400: ${D.g400};
811
- --wm-g500: ${D.g500};
812
- --wm-g700: ${D.g700};
813
- --wm-g900: ${D.g900};
814
- --wm-a: ${D.accent};
815
- --wm-al: ${D.accentLight};
816
- --wm-green: ${D.green};
817
- --wm-red: ${D.red};
818
- --wm-redBg: ${D.redBg};
804
+ --wm-w: ${H.w};
805
+ --wm-g50: ${H.g50};
806
+ --wm-g100: ${H.g100};
807
+ --wm-g150: ${H.g150};
808
+ --wm-g200: ${H.g200};
809
+ --wm-g300: ${H.g300};
810
+ --wm-g400: ${H.g400};
811
+ --wm-g500: ${H.g500};
812
+ --wm-g700: ${H.g700};
813
+ --wm-g900: ${H.g900};
814
+ --wm-a: ${H.accent};
815
+ --wm-al: ${H.accentLight};
816
+ --wm-green: ${H.green};
817
+ --wm-red: ${H.red};
818
+ --wm-redBg: ${H.redBg};
819
819
  --wm-sh1: 0 1px 3px rgba(0,0,0,.06);
820
820
  --wm-sh2: 0 4px 24px rgba(0,0,0,.09), 0 1px 4px rgba(0,0,0,.05);
821
821
  --wm-shPanel: 0 12px 40px rgba(0,0,0,.13), 0 2px 8px rgba(0,0,0,.06);
@@ -1091,7 +1091,7 @@ function we(e) {
1091
1091
  function oe(e) {
1092
1092
  return Ce[we(e)] || Ce[ie];
1093
1093
  }
1094
- function j(e) {
1094
+ function D(e) {
1095
1095
  const t = we(e), n = _e[t] || _e[ie], i = _e[ie];
1096
1096
  return function(s, a) {
1097
1097
  let l = n[s];
@@ -1109,7 +1109,7 @@ function Ae(e, t) {
1109
1109
  function Ie(e, t, n) {
1110
1110
  return Array.isArray(t) ? t.map((i) => Ae(e, String(i))).join(", ") : typeof t == "boolean" ? n(t ? "common.yes" : "common.no") : Ae(e, String(t));
1111
1111
  }
1112
- function tt(e, t, n = j()) {
1112
+ function tt(e, t, n = D()) {
1113
1113
  if (!e || !t) return "";
1114
1114
  const i = Array.isArray(e.fields) ? e.fields : [], r = [];
1115
1115
  for (const s of i) {
@@ -1124,7 +1124,7 @@ ${l}`);
1124
1124
 
1125
1125
  `);
1126
1126
  }
1127
- function nt(e, t, n = j()) {
1127
+ function nt(e, t, n = D()) {
1128
1128
  const i = [], r = Array.isArray(e == null ? void 0 : e.fields) ? e.fields : [];
1129
1129
  for (const s of r) {
1130
1130
  if (!(s != null && s.key) || !(s != null && s.label)) continue;
@@ -1194,7 +1194,7 @@ function it(e, t, n, i) {
1194
1194
  return r.join(`
1195
1195
  `);
1196
1196
  }
1197
- function at(e, t, n = j(), i) {
1197
+ function at(e, t, n = D(), i) {
1198
1198
  if (!e) return;
1199
1199
  const r = it(e, t || [], n, oe(i)), s = new Blob([r], { type: "text/plain;charset=utf-8" });
1200
1200
  try {
@@ -1479,7 +1479,7 @@ const ot = {
1479
1479
  ) + r;
1480
1480
  this.nextRevealAt = a;
1481
1481
  const l = Math.max(0, a - n), p = e.id, k = setTimeout(() => {
1482
- this.revealedAt = { ...this.revealedAt, [p]: Date.now() }, this.revealTimers = this.revealTimers.filter((w) => w !== k), typeof this.onMessageRevealed == "function" && this.onMessageRevealed(e, t);
1482
+ this.revealedAt = { ...this.revealedAt, [p]: Date.now() }, this.revealTimers = this.revealTimers.filter((b) => b !== k), typeof this.onMessageRevealed == "function" && this.onMessageRevealed(e, t);
1483
1483
  }, l);
1484
1484
  this.revealTimers.push(k);
1485
1485
  },
@@ -1619,7 +1619,7 @@ function pt(e) {
1619
1619
  }
1620
1620
  return null;
1621
1621
  }
1622
- const N = (e, t) => {
1622
+ const B = (e, t) => {
1623
1623
  const n = e.__vccOpts || e;
1624
1624
  for (const [i, r] of t)
1625
1625
  n[i] = r;
@@ -1665,13 +1665,13 @@ function wt(e, t, n, i, r, s) {
1665
1665
  }, v(s.initials), 5))
1666
1666
  ], 6);
1667
1667
  }
1668
- const Re = /* @__PURE__ */ N(vt, [["render", wt], ["__scopeId", "data-v-14e10c0d"]]), bt = 3, kt = {
1668
+ const Re = /* @__PURE__ */ B(vt, [["render", wt], ["__scopeId", "data-v-14e10c0d"]]), bt = 3, kt = {
1669
1669
  name: "WmLauncher",
1670
1670
  components: { HumanAvatar: Re },
1671
1671
  inject: {
1672
1672
  // Translator shared by the Messenger shell; French fallback when
1673
1673
  // the component is used standalone.
1674
- t: { default: () => j() }
1674
+ t: { default: () => D() }
1675
1675
  },
1676
1676
  props: {
1677
1677
  // Nombre de conversations non lues — pilote la pastille.
@@ -1707,7 +1707,7 @@ function Nt(e, t, n, i, r, s) {
1707
1707
  key: 0,
1708
1708
  class: O(["wm-peekStack", { "wm-peekStack--multi": s.visiblePeeks.length > 1 }])
1709
1709
  }, [
1710
- (c(!0), u(R, null, U(s.visiblePeeks, (l, p) => (c(), u("div", {
1710
+ (c(!0), u(R, null, j(s.visiblePeeks, (l, p) => (c(), u("div", {
1711
1711
  key: l.convId,
1712
1712
  class: "wm-peek",
1713
1713
  style: q({
@@ -1755,7 +1755,7 @@ function Nt(e, t, n, i, r, s) {
1755
1755
  key: 0,
1756
1756
  class: "wm-peek__avatarBadge",
1757
1757
  "aria-label": s.t("launcher.unreadMessages", { count: l.count })
1758
- }, v(l.count > 9 ? "9+" : l.count), 9, Mt)) : b("", !0)
1758
+ }, v(l.count > 9 ? "9+" : l.count), 9, Mt)) : w("", !0)
1759
1759
  ]),
1760
1760
  o("div", Tt, [
1761
1761
  o("div", xt, [
@@ -1770,7 +1770,7 @@ function Nt(e, t, n, i, r, s) {
1770
1770
  onClick: Y((k) => e.$emit("open", l.convId), ["stop"])
1771
1771
  }, v(s.t("common.open")), 9, Rt)
1772
1772
  ], 44, Ct))), 128))
1773
- ], 2)) : b("", !0)
1773
+ ], 2)) : w("", !0)
1774
1774
  ]),
1775
1775
  _: 1
1776
1776
  }),
@@ -1801,11 +1801,11 @@ function Nt(e, t, n, i, r, s) {
1801
1801
  }) : s.t("launcher.unreadConversationsOne", {
1802
1802
  count: n.unreadCount
1803
1803
  })
1804
- }, v(n.unreadCount > 9 ? "9+" : n.unreadCount), 9, Bt)) : b("", !0)
1804
+ }, v(n.unreadCount > 9 ? "9+" : n.unreadCount), 9, Bt)) : w("", !0)
1805
1805
  ], 8, Et)
1806
1806
  ], 32);
1807
1807
  }
1808
- const Ft = /* @__PURE__ */ N(kt, [["render", Nt], ["__scopeId", "data-v-9d7efc48"]]), Pt = {
1808
+ const Ft = /* @__PURE__ */ B(kt, [["render", Nt], ["__scopeId", "data-v-9d7efc48"]]), Pt = {
1809
1809
  name: "WmAIAvatar",
1810
1810
  props: {
1811
1811
  size: { type: Number, default: 26 },
@@ -1847,7 +1847,7 @@ function zt(e, t, n, i, r, s) {
1847
1847
  "--wm-avr": n.size * 0.32 + "px"
1848
1848
  })
1849
1849
  }, [
1850
- n.pulse ? (c(), u("div", Ut)) : b("", !0),
1850
+ n.pulse ? (c(), u("div", Ut)) : w("", !0),
1851
1851
  o("div", {
1852
1852
  class: O(["wm-aiav__inner", {
1853
1853
  "wm-aiav__inner--glow": n.pulse,
@@ -1896,7 +1896,7 @@ function zt(e, t, n, i, r, s) {
1896
1896
  ], 6)
1897
1897
  ], 6);
1898
1898
  }
1899
- const le = /* @__PURE__ */ N(Pt, [["render", zt], ["__scopeId", "data-v-6f7f685d"]]), Ht = {
1899
+ const le = /* @__PURE__ */ B(Pt, [["render", zt], ["__scopeId", "data-v-6f7f685d"]]), Ht = {
1900
1900
  name: "WmTeamAvatars",
1901
1901
  props: {
1902
1902
  members: { type: Array, default: () => [] },
@@ -1931,7 +1931,7 @@ function Wt(e, t, n, i, r, s) {
1931
1931
  class: "wm-team__stack",
1932
1932
  style: q({ width: s.stackWidth + "px" })
1933
1933
  }, [
1934
- (c(!0), u(R, null, U(n.members.slice(0, 3), (a, l) => (c(), u("div", {
1934
+ (c(!0), u(R, null, j(n.members.slice(0, 3), (a, l) => (c(), u("div", {
1935
1935
  key: l,
1936
1936
  class: "wm-team__pill",
1937
1937
  style: q({
@@ -1947,16 +1947,16 @@ function Wt(e, t, n, i, r, s) {
1947
1947
  }, null, 8, $t)) : (c(), u("span", Vt, v(s.initialsFor(a)), 1))
1948
1948
  ], 4))), 128))
1949
1949
  ], 4),
1950
- n.responseLabel ? (c(), u("span", Kt, v(n.responseLabel), 1)) : b("", !0)
1951
- ])) : b("", !0);
1950
+ n.responseLabel ? (c(), u("span", Kt, v(n.responseLabel), 1)) : w("", !0)
1951
+ ])) : w("", !0);
1952
1952
  }
1953
- const Gt = /* @__PURE__ */ N(Ht, [["render", Wt], ["__scopeId", "data-v-e49a9063"]]), Yt = {
1953
+ const Gt = /* @__PURE__ */ B(Ht, [["render", Wt], ["__scopeId", "data-v-e49a9063"]]), Yt = {
1954
1954
  name: "WmHeader",
1955
1955
  components: { AIAvatar: le, TeamAvatars: Gt },
1956
1956
  inject: {
1957
1957
  // Translator shared by the Messenger shell. Falls back to a French
1958
1958
  // translator when the component is used standalone (no provider).
1959
- t: { default: () => j() }
1959
+ t: { default: () => D() }
1960
1960
  },
1961
1961
  props: {
1962
1962
  title: { type: String, default: "Nouvelle conversation" },
@@ -2031,11 +2031,11 @@ function on(e, t, n, i, r, s) {
2031
2031
  o("div", en, [
2032
2032
  o("div", tn, v(n.title), 1)
2033
2033
  ]),
2034
- s.hasTeam ? (c(), F(l, {
2034
+ s.hasTeam ? (c(), P(l, {
2035
2035
  key: 0,
2036
2036
  members: s.displayedTeamMembers,
2037
2037
  "response-label": ""
2038
- }, null, 8, ["members"])) : b("", !0)
2038
+ }, null, 8, ["members"])) : w("", !0)
2039
2039
  ], 64)) : (c(), u("div", nn)),
2040
2040
  o("div", sn, [
2041
2041
  n.showMore ? (c(), u("button", {
@@ -2069,7 +2069,7 @@ function on(e, t, n, i, r, s) {
2069
2069
  r: "1.6"
2070
2070
  })
2071
2071
  ], -1)
2072
- ])], 10, rn)) : b("", !0),
2072
+ ])], 10, rn)) : w("", !0),
2073
2073
  n.showClose ? (c(), u("button", {
2074
2074
  key: 1,
2075
2075
  type: "button",
@@ -2091,11 +2091,11 @@ function on(e, t, n, i, r, s) {
2091
2091
  }, [
2092
2092
  o("path", { d: "M18 6L6 18M6 6l12 12" })
2093
2093
  ], -1)
2094
- ])], 8, an)) : b("", !0)
2094
+ ])], 8, an)) : w("", !0)
2095
2095
  ])
2096
2096
  ]);
2097
2097
  }
2098
- const ln = /* @__PURE__ */ N(Yt, [["render", on], ["__scopeId", "data-v-925c9e94"]]);
2098
+ const ln = /* @__PURE__ */ B(Yt, [["render", on], ["__scopeId", "data-v-925c9e94"]]);
2099
2099
  function Ee(e) {
2100
2100
  return String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
2101
2101
  }
@@ -2142,22 +2142,22 @@ function un(e) {
2142
2142
  if (!T) break;
2143
2143
  k.push(T[1]), i++;
2144
2144
  }
2145
- const w = k.map((T) => `<li>${re(T)}</li>`).join("");
2145
+ const b = k.map((T) => `<li>${re(T)}</li>`).join("");
2146
2146
  n.push({
2147
2147
  type: "block",
2148
- html: `<ul class="wm-md-ul">${w}</ul>`
2148
+ html: `<ul class="wm-md-ul">${b}</ul>`
2149
2149
  });
2150
2150
  continue;
2151
2151
  }
2152
2152
  const l = /^\s*(\d+)\.\s+(.*)$/.exec(s);
2153
2153
  if (l) {
2154
- const k = parseInt(l[1], 10), w = [l[2]];
2154
+ const k = parseInt(l[1], 10), b = [l[2]];
2155
2155
  for (i++; i < t.length; ) {
2156
2156
  const A = /^\s*\d+\.\s+(.*)$/.exec(t[i]);
2157
2157
  if (!A) break;
2158
- w.push(A[1]), i++;
2158
+ b.push(A[1]), i++;
2159
2159
  }
2160
- const T = w.map((A) => `<li>${re(A)}</li>`).join(""), I = k !== 1 ? ` start="${k}"` : "";
2160
+ const T = b.map((A) => `<li>${re(A)}</li>`).join(""), I = k !== 1 ? ` start="${k}"` : "";
2161
2161
  n.push({
2162
2162
  type: "block",
2163
2163
  html: `<ol class="wm-md-ol"${I}>${T}</ol>`
@@ -2197,7 +2197,7 @@ const Te = {
2197
2197
  inject: {
2198
2198
  // Translator + resolved-language getter shared by the Messenger
2199
2199
  // shell. Fall back to French wording when used standalone.
2200
- t: { default: () => j() },
2200
+ t: { default: () => D() },
2201
2201
  wmLocale: { default: () => () => "fr" }
2202
2202
  },
2203
2203
  props: {
@@ -2363,7 +2363,7 @@ function Hn(e, t, n, i, r, s) {
2363
2363
  o("div", {
2364
2364
  class: O(s.quickLinksLayout)
2365
2365
  }, [
2366
- (c(!0), u(R, null, U(n.quickLinks, (l, p) => (c(), u("button", {
2366
+ (c(!0), u(R, null, j(n.quickLinks, (l, p) => (c(), u("button", {
2367
2367
  key: p,
2368
2368
  type: "button",
2369
2369
  class: O(["wm-onb__card", { "wm-onb__card--row": s.isOddQuickLinks }]),
@@ -2378,11 +2378,11 @@ function Hn(e, t, n, i, r, s) {
2378
2378
  ]),
2379
2379
  o("span", Mn, [
2380
2380
  o("span", Tn, v(l.label), 1),
2381
- l.description ? (c(), u("span", xn, v(l.description), 1)) : b("", !0)
2381
+ l.description ? (c(), u("span", xn, v(l.description), 1)) : w("", !0)
2382
2382
  ])
2383
2383
  ], 10, kn))), 128))
2384
2384
  ], 2)
2385
- ])) : b("", !0),
2385
+ ])) : w("", !0),
2386
2386
  n.openThreads.length ? (c(), u("div", On, [
2387
2387
  o("div", Ln, v(s.t("onboarding.recentConversations")), 1),
2388
2388
  o("div", In, [
@@ -2411,7 +2411,7 @@ function Hn(e, t, n, i, r, s) {
2411
2411
  ])
2412
2412
  ]),
2413
2413
  o("div", En, [
2414
- (c(!0), u(R, null, U(s.filteredThreads, (l) => (c(), u("button", {
2414
+ (c(!0), u(R, null, j(s.filteredThreads, (l) => (c(), u("button", {
2415
2415
  key: l.id,
2416
2416
  type: "button",
2417
2417
  class: "wm-onb__thread",
@@ -2437,7 +2437,7 @@ function Hn(e, t, n, i, r, s) {
2437
2437
  key: 0,
2438
2438
  class: "wm-onb__thread-dot",
2439
2439
  "aria-label": s.t("onboarding.unread")
2440
- }, null, 8, Nn)) : b("", !0)
2440
+ }, null, 8, Nn)) : w("", !0)
2441
2441
  ], 2),
2442
2442
  o("span", Fn, [
2443
2443
  o("span", Pn, v(l.title), 1),
@@ -2447,7 +2447,7 @@ function Hn(e, t, n, i, r, s) {
2447
2447
  }, null, 8, Un)
2448
2448
  ]),
2449
2449
  o("span", jn, [
2450
- s.formatTs(l._ts) ? (c(), u("span", Dn, v(s.formatTs(l._ts)), 1)) : b("", !0),
2450
+ s.formatTs(l._ts) ? (c(), u("span", Dn, v(s.formatTs(l._ts)), 1)) : w("", !0),
2451
2451
  t[6] || (t[6] = o("svg", {
2452
2452
  width: "14",
2453
2453
  height: "14",
@@ -2464,12 +2464,12 @@ function Hn(e, t, n, i, r, s) {
2464
2464
  ], -1))
2465
2465
  ])
2466
2466
  ], 8, Bn))), 128)),
2467
- s.filteredThreads.length ? b("", !0) : (c(), u("div", zn, v(s.t("onboarding.noResults", { query: r.query })), 1))
2467
+ s.filteredThreads.length ? w("", !0) : (c(), u("div", zn, v(s.t("onboarding.noResults", { query: r.query })), 1))
2468
2468
  ])
2469
- ])) : b("", !0)
2469
+ ])) : w("", !0)
2470
2470
  ]);
2471
2471
  }
2472
- const qn = /* @__PURE__ */ N(hn, [["render", Hn], ["__scopeId", "data-v-28c0780b"]]);
2472
+ const qn = /* @__PURE__ */ B(hn, [["render", Hn], ["__scopeId", "data-v-28c0780b"]]);
2473
2473
  function $n(e) {
2474
2474
  return typeof e != "string" ? "" : e.replace(/`([^`]+)`/g, "$1").replace(/\*\*([^*]+)\*\*/g, "$1").replace(new RegExp("(?<!\\*)\\*([^*]+)\\*(?!\\*)", "g"), "$1").replace(/__([^_]+)__/g, "$1").replace(/\[([^\]]+)\]\([^)]+\)/g, "$1").replace(/\s+/g, " ").trim();
2475
2475
  }
@@ -2570,16 +2570,16 @@ function es(e, t, n, i, r, s) {
2570
2570
  "aria-hidden": "true"
2571
2571
  }, " · ", -1)),
2572
2572
  o("span", Zn, v(s.detailText), 1)
2573
- ], 64)) : b("", !0)
2573
+ ], 64)) : w("", !0)
2574
2574
  ])
2575
2575
  ], 2);
2576
2576
  }
2577
- const ts = /* @__PURE__ */ N(Vn, [["render", es], ["__scopeId", "data-v-7284acd0"]]), ns = {
2577
+ const ts = /* @__PURE__ */ B(Vn, [["render", es], ["__scopeId", "data-v-7284acd0"]]), ns = {
2578
2578
  name: "WmArtifactFormResponse",
2579
2579
  inject: {
2580
2580
  // Translator shared by the Messenger shell; French fallback when
2581
2581
  // the component is used standalone.
2582
- t: { default: () => j() }
2582
+ t: { default: () => D() }
2583
2583
  },
2584
2584
  props: {
2585
2585
  data: { type: Object, required: !0 }
@@ -2613,7 +2613,7 @@ function cs(e, t, n, i, r, s) {
2613
2613
  ])
2614
2614
  ]),
2615
2615
  o("div", os, [
2616
- (c(!0), u(R, null, U(s.fields, (a, l) => (c(), u("div", {
2616
+ (c(!0), u(R, null, j(s.fields, (a, l) => (c(), u("div", {
2617
2617
  key: l,
2618
2618
  class: "wm-art__field"
2619
2619
  }, [
@@ -2628,7 +2628,7 @@ function cs(e, t, n, i, r, s) {
2628
2628
  ])
2629
2629
  ]);
2630
2630
  }
2631
- const ds = /* @__PURE__ */ N(ns, [["render", cs], ["__scopeId", "data-v-713aecf1"]]), us = {
2631
+ const ds = /* @__PURE__ */ B(ns, [["render", cs], ["__scopeId", "data-v-713aecf1"]]), us = {
2632
2632
  name: "WmArtifactInfoCard",
2633
2633
  props: {
2634
2634
  data: { type: Object, required: !0 }
@@ -2664,11 +2664,11 @@ function ks(e, t, n, i, r, s) {
2664
2664
  alt: n.data.title || "",
2665
2665
  loading: "lazy"
2666
2666
  }, null, 8, fs)
2667
- ])) : b("", !0),
2667
+ ])) : w("", !0),
2668
2668
  o("div", gs, [
2669
2669
  o("div", _s, [
2670
2670
  o("div", ps, v(n.data.title), 1),
2671
- n.data.subtitle ? (c(), u("div", vs, v(n.data.subtitle), 1)) : b("", !0)
2671
+ n.data.subtitle ? (c(), u("div", vs, v(n.data.subtitle), 1)) : w("", !0)
2672
2672
  ]),
2673
2673
  n.data.badge && n.data.badge.label ? (c(), u("span", {
2674
2674
  key: 0,
@@ -2676,11 +2676,11 @@ function ks(e, t, n, i, r, s) {
2676
2676
  "wm-art__badge",
2677
2677
  `wm-art__badge--${n.data.badge.tone || "neutral"}`
2678
2678
  ])
2679
- }, v(n.data.badge.label), 3)) : b("", !0)
2679
+ }, v(n.data.badge.label), 3)) : w("", !0)
2680
2680
  ]),
2681
2681
  s.hasBody ? (c(), u("div", ys, [
2682
- n.data.body ? (c(), u("div", ws, v(n.data.body), 1)) : b("", !0),
2683
- s.fields.length ? (c(!0), u(R, { key: 1 }, U(s.fields, (a, l) => (c(), u("div", {
2682
+ n.data.body ? (c(), u("div", ws, v(n.data.body), 1)) : w("", !0),
2683
+ s.fields.length ? (c(!0), u(R, { key: 1 }, j(s.fields, (a, l) => (c(), u("div", {
2684
2684
  key: l,
2685
2685
  class: "wm-art__field"
2686
2686
  }, [
@@ -2691,11 +2691,11 @@ function ks(e, t, n, i, r, s) {
2691
2691
  { "wm-art__fieldValue--multi": a.multiline }
2692
2692
  ])
2693
2693
  }, v(a.value), 3)
2694
- ]))), 128)) : b("", !0)
2695
- ])) : b("", !0)
2694
+ ]))), 128)) : w("", !0)
2695
+ ])) : w("", !0)
2696
2696
  ]);
2697
2697
  }
2698
- const Cs = /* @__PURE__ */ N(us, [["render", ks], ["__scopeId", "data-v-7eae0e4a"]]);
2698
+ const Cs = /* @__PURE__ */ B(us, [["render", ks], ["__scopeId", "data-v-7eae0e4a"]]);
2699
2699
  function As(e, t, n) {
2700
2700
  if (!e) return "";
2701
2701
  const i = new Date(e);
@@ -2715,7 +2715,7 @@ const Ss = {
2715
2715
  inject: {
2716
2716
  // Translator + resolved-language getter shared by the Messenger
2717
2717
  // shell. Fall back to French wording when used standalone.
2718
- t: { default: () => j() },
2718
+ t: { default: () => D() },
2719
2719
  wmLocale: { default: () => () => "fr" }
2720
2720
  },
2721
2721
  props: {
@@ -2814,10 +2814,10 @@ function Ps(e, t, n, i, r, s) {
2814
2814
  pe(" " + v(n.data.status.label), 1)
2815
2815
  ], 2)
2816
2816
  ]),
2817
- n.data.body ? (c(), u("div", Is, v(n.data.body), 1)) : b("", !0)
2817
+ n.data.body ? (c(), u("div", Is, v(n.data.body), 1)) : w("", !0)
2818
2818
  ]),
2819
2819
  s.fields.length ? (c(), u("div", Rs, [
2820
- (c(!0), u(R, null, U(s.fields, (a, l) => (c(), u("div", {
2820
+ (c(!0), u(R, null, j(s.fields, (a, l) => (c(), u("div", {
2821
2821
  key: l,
2822
2822
  class: "wm-art__field"
2823
2823
  }, [
@@ -2867,11 +2867,11 @@ function Ps(e, t, n, i, r, s) {
2867
2867
  rx: "2"
2868
2868
  }, null, -1),
2869
2869
  o("path", { d: "M16 2v4M8 2v4M3 10h18" }, null, -1)
2870
- ])])) : b("", !0),
2870
+ ])])) : w("", !0),
2871
2871
  o("span", null, v(a.value), 1)
2872
2872
  ], 2)
2873
2873
  ]))), 128))
2874
- ])) : b("", !0),
2874
+ ])) : w("", !0),
2875
2875
  n.data.created_at ? (c(), u("div", Fs, [
2876
2876
  t[4] || (t[4] = o("svg", {
2877
2877
  width: "11",
@@ -2894,10 +2894,10 @@ function Ps(e, t, n, i, r, s) {
2894
2894
  o("path", { d: "M16 2v4M8 2v4M3 10h18" })
2895
2895
  ], -1)),
2896
2896
  o("span", null, v(s.formattedDate), 1)
2897
- ])) : b("", !0)
2897
+ ])) : w("", !0)
2898
2898
  ]);
2899
2899
  }
2900
- const Us = /* @__PURE__ */ N(Ss, [["render", Ps], ["__scopeId", "data-v-5f30c914"]]), js = {
2900
+ const Us = /* @__PURE__ */ B(Ss, [["render", Ps], ["__scopeId", "data-v-5f30c914"]]), js = {
2901
2901
  form_response: ds,
2902
2902
  info_card: Cs,
2903
2903
  ticket: Us
@@ -2917,18 +2917,18 @@ const Us = /* @__PURE__ */ N(Ss, [["render", Ps], ["__scopeId", "data-v-5f30c914
2917
2917
  }
2918
2918
  };
2919
2919
  function zs(e, t, n, i, r, s) {
2920
- return s.component ? (c(), F(je(s.component), {
2920
+ return s.component ? (c(), P(je(s.component), {
2921
2921
  key: 0,
2922
2922
  data: n.artifact.data
2923
- }, null, 8, ["data"])) : b("", !0);
2923
+ }, null, 8, ["data"])) : w("", !0);
2924
2924
  }
2925
- const Hs = /* @__PURE__ */ N(Ds, [["render", zs]]), qs = {
2925
+ const Hs = /* @__PURE__ */ B(Ds, [["render", zs]]), qs = {
2926
2926
  name: "WmAttachmentPreview",
2927
2927
  inject: {
2928
2928
  signAttachmentFn: { default: null },
2929
2929
  // Translator shared by the Messenger shell; French fallback when
2930
2930
  // the component is used standalone.
2931
- t: { default: () => j() }
2931
+ t: { default: () => D() }
2932
2932
  },
2933
2933
  props: {
2934
2934
  attachment: { type: Object, required: !0 }
@@ -3051,13 +3051,13 @@ function Zs(e, t, n, i, r, s) {
3051
3051
  ], -1)),
3052
3052
  o("span", Ys, [
3053
3053
  o("span", Js, v(s.displayName), 1),
3054
- s.sizeLabel ? (c(), u("span", Qs, v(s.sizeLabel), 1)) : b("", !0)
3054
+ s.sizeLabel ? (c(), u("span", Qs, v(s.sizeLabel), 1)) : w("", !0)
3055
3055
  ]),
3056
- r.loading ? (c(), u("span", Xs)) : b("", !0)
3056
+ r.loading ? (c(), u("span", Xs)) : w("", !0)
3057
3057
  ], 8, Gs))
3058
3058
  ], 2);
3059
3059
  }
3060
- const er = /* @__PURE__ */ N(qs, [["render", Zs], ["__scopeId", "data-v-0c877a62"]]), tr = {
3060
+ const er = /* @__PURE__ */ B(qs, [["render", Zs], ["__scopeId", "data-v-0c877a62"]]), tr = {
3061
3061
  name: "WmBubble",
3062
3062
  props: {
3063
3063
  role: { type: String, default: "ai" },
@@ -3079,7 +3079,7 @@ function sr(e, t, n, i, r, s) {
3079
3079
  ], !0)
3080
3080
  ], 2);
3081
3081
  }
3082
- const rr = /* @__PURE__ */ N(tr, [["render", sr], ["__scopeId", "data-v-7ab13147"]]), ir = { name: "WmTyping" }, ar = { class: "wm-typing" };
3082
+ const rr = /* @__PURE__ */ B(tr, [["render", sr], ["__scopeId", "data-v-7ab13147"]]), ir = { name: "WmTyping" }, ar = { class: "wm-typing" };
3083
3083
  function or(e, t, n, i, r, s) {
3084
3084
  return c(), u("div", ar, [...t[0] || (t[0] = [
3085
3085
  o("span", { style: { "animation-delay": "0s" } }, null, -1),
@@ -3087,7 +3087,7 @@ function or(e, t, n, i, r, s) {
3087
3087
  o("span", { style: { "animation-delay": "0.4s" } }, null, -1)
3088
3088
  ])]);
3089
3089
  }
3090
- const lr = /* @__PURE__ */ N(ir, [["render", or], ["__scopeId", "data-v-df2447fd"]]);
3090
+ const lr = /* @__PURE__ */ B(ir, [["render", or], ["__scopeId", "data-v-df2447fd"]]);
3091
3091
  function Q(e) {
3092
3092
  return e ? e.client_msg_id || e.id : "";
3093
3093
  }
@@ -3112,7 +3112,7 @@ const cr = {
3112
3112
  inject: {
3113
3113
  // Translator + resolved-language getter shared by the Messenger
3114
3114
  // shell. Fall back to French wording when used standalone.
3115
- t: { default: () => j() },
3115
+ t: { default: () => D() },
3116
3116
  wmLocale: { default: () => () => "fr" }
3117
3117
  },
3118
3118
  props: {
@@ -3172,8 +3172,8 @@ const cr = {
3172
3172
  const l = this.roleOf(a);
3173
3173
  if (l === "system") {
3174
3174
  if (((n = a == null ? void 0 : a.payload) == null ? void 0 : n.event) === "action_admin_pending") {
3175
- const w = e[e.length - 1];
3176
- w && w.role === "ai" ? w.messages.push(a) : e.push({
3175
+ const b = e[e.length - 1];
3176
+ b && b.role === "ai" ? b.messages.push(a) : e.push({
3177
3177
  key: `g-${Q(a)}`,
3178
3178
  role: "ai",
3179
3179
  agentName: "",
@@ -3492,9 +3492,9 @@ const cr = {
3492
3492
  // doit garder son arrondi.
3493
3493
  cornersFor(e, t) {
3494
3494
  var Z, ee, te;
3495
- const n = e.items, i = (Z = n[t]) == null ? void 0 : Z.kind, r = (ee = n[t - 1]) == null ? void 0 : ee.kind, s = (te = n[t + 1]) == null ? void 0 : te.kind, a = e.role === "user", l = 14, p = 4, k = r == null ? void 0 : r.bottom, w = s == null ? void 0 : s.top, T = this.widthByKey[this.rowKeyOf(e, t)], I = this.widthByKey[this.rowKeyOf(e, t - 1)], A = this.widthByKey[this.rowKeyOf(e, t + 1)], z = 0.5, M = ($, ne, G) => $ != null && T != null ? $ + z >= T : ne === G || ne === "card" && G === "bubble";
3496
- let P = l, B = l, H = l, W = l;
3497
- return a ? (k && (B = p), (w || !s) && (H = p), k && M(I, k, i == null ? void 0 : i.top) && (P = p), w && M(A, w, i == null ? void 0 : i.bottom) && (W = p)) : (k && (P = p), (w || !s) && (W = p), k && M(I, k, i == null ? void 0 : i.top) && (B = p), w && M(A, w, i == null ? void 0 : i.bottom) && (H = p)), { tl: P, tr: B, br: H, bl: W };
3495
+ const n = e.items, i = (Z = n[t]) == null ? void 0 : Z.kind, r = (ee = n[t - 1]) == null ? void 0 : ee.kind, s = (te = n[t + 1]) == null ? void 0 : te.kind, a = e.role === "user", l = 14, p = 4, k = r == null ? void 0 : r.bottom, b = s == null ? void 0 : s.top, T = this.widthByKey[this.rowKeyOf(e, t)], I = this.widthByKey[this.rowKeyOf(e, t - 1)], A = this.widthByKey[this.rowKeyOf(e, t + 1)], z = 0.5, M = ($, ne, G) => $ != null && T != null ? $ + z >= T : ne === G || ne === "card" && G === "bubble";
3496
+ let F = l, N = l, U = l, W = l;
3497
+ return a ? (k && (N = p), (b || !s) && (U = p), k && M(I, k, i == null ? void 0 : i.top) && (F = p), b && M(A, b, i == null ? void 0 : i.bottom) && (W = p)) : (k && (F = p), (b || !s) && (W = p), k && M(I, k, i == null ? void 0 : i.top) && (N = p), b && M(A, b, i == null ? void 0 : i.bottom) && (U = p)), { tl: F, tr: N, br: U, bl: W };
3498
3498
  },
3499
3499
  // Inline style emitting the four corner CSS variables. Set on
3500
3500
  // `.wm-list__row` so they cascade to Bubble/ActionResult/
@@ -3646,7 +3646,7 @@ const cr = {
3646
3646
  class: "wm-list__row wm-list__row--ai fade-up"
3647
3647
  }, Or = { class: "wm-list__avatarSlot" };
3648
3648
  function Lr(e, t, n, i, r, s) {
3649
- const a = E("AIAvatar"), l = E("HumanAvatar"), p = E("ActionResult"), k = E("ArtifactRenderer"), w = E("Bubble"), T = E("AttachmentPreview"), I = E("Typing");
3649
+ const a = E("AIAvatar"), l = E("HumanAvatar"), p = E("ActionResult"), k = E("ArtifactRenderer"), b = E("Bubble"), T = E("AttachmentPreview"), I = E("Typing");
3650
3650
  return c(), u("div", {
3651
3651
  ref: "scrollEl",
3652
3652
  class: O(["wm-list", { "wm-list--silent": r.silentFades }]),
@@ -3658,20 +3658,20 @@ function Lr(e, t, n, i, r, s) {
3658
3658
  "aria-hidden": "true"
3659
3659
  }, null, -1)),
3660
3660
  o("span", fr, v(s.t("messageList.loadingHistory")), 1)
3661
- ])) : s.historyExhausted ? (c(), u("div", gr, v(s.t("messageList.conversationStart")), 1)) : b("", !0),
3661
+ ])) : s.historyExhausted ? (c(), u("div", gr, v(s.t("messageList.conversationStart")), 1)) : w("", !0),
3662
3662
  n.dateLabel ? (c(), u("div", _r, [
3663
3663
  t[2] || (t[2] = o("div", { class: "wm-list__line" }, null, -1)),
3664
3664
  o("span", pr, v(n.dateLabel), 1),
3665
3665
  t[3] || (t[3] = o("div", { class: "wm-list__line" }, null, -1))
3666
- ])) : b("", !0),
3667
- (c(!0), u(R, null, U(s.groups, (A, z) => (c(), u(R, {
3666
+ ])) : w("", !0),
3667
+ (c(!0), u(R, null, j(s.groups, (A, z) => (c(), u(R, {
3668
3668
  key: A.key
3669
3669
  }, [
3670
3670
  A.key === s.unreadGroupKey ? (c(), u("div", vr, [
3671
3671
  t[4] || (t[4] = o("div", { class: "wm-list__line wm-list__line--unread" }, null, -1)),
3672
3672
  o("span", yr, v(s.t("messageList.unread")), 1),
3673
3673
  t[5] || (t[5] = o("div", { class: "wm-list__line wm-list__line--unread" }, null, -1))
3674
- ])) : b("", !0),
3674
+ ])) : w("", !0),
3675
3675
  A.role === "system" || A.items.length ? (c(), u("div", {
3676
3676
  key: 1,
3677
3677
  class: O(["wm-list__group", "wm-list__group--" + A.role])
@@ -3681,7 +3681,7 @@ function Lr(e, t, n, i, r, s) {
3681
3681
  o("span", br, v(A.systemLabel), 1),
3682
3682
  t[7] || (t[7] = o("div", { class: "wm-list__line wm-list__line--strong" }, null, -1))
3683
3683
  ])) : (c(), u(R, { key: 1 }, [
3684
- (c(!0), u(R, null, U(A.items, (M, P) => (c(), u("div", {
3684
+ (c(!0), u(R, null, j(A.items, (M, F) => (c(), u("div", {
3685
3685
  key: `${s.messageKey(M.message)}-${M.partKey}`,
3686
3686
  "data-row-key": `${s.messageKey(M.message)}-${M.partKey}`,
3687
3687
  class: O(["wm-list__row fade-up", [
@@ -3691,72 +3691,72 @@ function Lr(e, t, n, i, r, s) {
3691
3691
  "is-failed": M.message._failed
3692
3692
  }
3693
3693
  ]]),
3694
- style: q(s.cornersStyle(A, P))
3694
+ style: q(s.cornersStyle(A, F))
3695
3695
  }, [
3696
3696
  A.role !== "user" ? (c(), u("div", Cr, [
3697
- P === A.items.length - 1 ? (c(), u(R, { key: 0 }, [
3698
- A.role === "ai" ? (c(), F(a, {
3697
+ F === A.items.length - 1 ? (c(), u(R, { key: 0 }, [
3698
+ A.role === "ai" ? (c(), P(a, {
3699
3699
  key: 0,
3700
3700
  size: 26,
3701
3701
  tail: !0,
3702
3702
  name: n.aiAgentName,
3703
3703
  "image-url": n.aiAgentAvatarUrl
3704
- }, null, 8, ["name", "image-url"])) : (c(), F(l, {
3704
+ }, null, 8, ["name", "image-url"])) : (c(), P(l, {
3705
3705
  key: 1,
3706
3706
  name: A.agentName,
3707
3707
  "avatar-url": A.agentAvatarUrl,
3708
3708
  size: 26,
3709
3709
  tail: !0
3710
3710
  }, null, 8, ["name", "avatar-url"]))
3711
- ], 64)) : b("", !0)
3712
- ])) : b("", !0),
3713
- M.renderAs === "action" ? (c(), F(p, {
3711
+ ], 64)) : w("", !0)
3712
+ ])) : w("", !0),
3713
+ M.renderAs === "action" ? (c(), P(p, {
3714
3714
  key: 1,
3715
3715
  state: M.message.payload.state,
3716
3716
  label: s.actionLabel(M.message),
3717
3717
  detail: s.actionDetail(M.message)
3718
- }, null, 8, ["state", "label", "detail"])) : M.renderAs === "admin-pending" ? (c(), F(p, {
3718
+ }, null, 8, ["state", "label", "detail"])) : M.renderAs === "admin-pending" ? (c(), P(p, {
3719
3719
  key: 2,
3720
3720
  state: "awaiting",
3721
3721
  label: s.t("messageList.approvalRequestSent"),
3722
3722
  detail: M.message.text_md || ""
3723
- }, null, 8, ["label", "detail"])) : M.renderAs === "artifact-of-action" ? (c(), F(k, {
3723
+ }, null, 8, ["label", "detail"])) : M.renderAs === "artifact-of-action" ? (c(), P(k, {
3724
3724
  key: 3,
3725
3725
  artifact: s.actionArtifact(M.message)
3726
- }, null, 8, ["artifact"])) : M.renderAs === "artifact" ? (c(), F(k, {
3726
+ }, null, 8, ["artifact"])) : M.renderAs === "artifact" ? (c(), P(k, {
3727
3727
  key: 4,
3728
3728
  artifact: s.artifactOf(M.message)
3729
3729
  }, null, 8, ["artifact"])) : (c(), u("div", Ar, [
3730
- M.message.text_md ? (c(), F(w, {
3730
+ M.message.text_md ? (c(), P(b, {
3731
3731
  key: 0,
3732
3732
  role: A.role,
3733
3733
  text: M.message.text_md
3734
- }, null, 8, ["role", "text"])) : b("", !0),
3734
+ }, null, 8, ["role", "text"])) : w("", !0),
3735
3735
  s.attachmentsOf(M.message).length ? (c(), u("div", {
3736
3736
  key: 1,
3737
3737
  class: O(["wm-list__atts", {
3738
3738
  "wm-list__atts--align-end": A.role === "user"
3739
3739
  }])
3740
3740
  }, [
3741
- (c(!0), u(R, null, U(s.attachmentsOf(
3741
+ (c(!0), u(R, null, j(s.attachmentsOf(
3742
3742
  M.message
3743
- ), (B, H) => (c(), F(T, {
3744
- key: `${s.messageKey(M.message)}-att-${H}`,
3745
- attachment: B
3743
+ ), (N, U) => (c(), P(T, {
3744
+ key: `${s.messageKey(M.message)}-att-${U}`,
3745
+ attachment: N
3746
3746
  }, null, 8, ["attachment"]))), 128))
3747
- ], 2)) : b("", !0)
3747
+ ], 2)) : w("", !0)
3748
3748
  ]))
3749
3749
  ], 14, kr))), 128)),
3750
3750
  (A.role !== "user" || s.lastTimeOf(A)) && !s.hasTrailingOverlay(A) ? (c(), u("div", {
3751
3751
  key: 0,
3752
3752
  class: O(["wm-list__meta", { "wm-list__meta--right": A.role === "user" }])
3753
3753
  }, [
3754
- A.role !== "user" ? (c(), u("span", Sr, v(s.roleLabel(A)), 1)) : b("", !0),
3755
- A.role !== "user" && s.lastTimeOf(A) ? (c(), u("span", Mr, "·")) : b("", !0),
3756
- s.lastTimeOf(A) ? (c(), u("span", Tr, v(s.lastTimeOf(A)), 1)) : b("", !0)
3757
- ], 2)) : b("", !0)
3754
+ A.role !== "user" ? (c(), u("span", Sr, v(s.roleLabel(A)), 1)) : w("", !0),
3755
+ A.role !== "user" && s.lastTimeOf(A) ? (c(), u("span", Mr, "·")) : w("", !0),
3756
+ s.lastTimeOf(A) ? (c(), u("span", Tr, v(s.lastTimeOf(A)), 1)) : w("", !0)
3757
+ ], 2)) : w("", !0)
3758
3758
  ], 64))
3759
- ], 2)) : b("", !0)
3759
+ ], 2)) : w("", !0)
3760
3760
  ], 64))), 128)),
3761
3761
  n.streamingActive ? (c(), u("div", xr, [
3762
3762
  o("div", Or, [
@@ -3768,10 +3768,10 @@ function Lr(e, t, n, i, r, s) {
3768
3768
  }, null, 8, ["name", "image-url"])
3769
3769
  ]),
3770
3770
  V(I)
3771
- ])) : b("", !0)
3771
+ ])) : w("", !0)
3772
3772
  ], 34);
3773
3773
  }
3774
- const Ir = /* @__PURE__ */ N(hr, [["render", Lr], ["__scopeId", "data-v-d769b193"]]), he = typeof navigator < "u" && !!navigator.mediaDevices && typeof navigator.mediaDevices.getDisplayMedia == "function", be = typeof window < "u" && typeof window.MediaRecorder < "u";
3774
+ const Ir = /* @__PURE__ */ B(hr, [["render", Lr], ["__scopeId", "data-v-d769b193"]]), he = typeof navigator < "u" && !!navigator.mediaDevices && typeof navigator.mediaDevices.getDisplayMedia == "function", be = typeof window < "u" && typeof window.MediaRecorder < "u";
3775
3775
  function Rr() {
3776
3776
  return be && [
3777
3777
  "video/webm;codecs=vp9,opus",
@@ -3836,56 +3836,56 @@ async function Nr(e = {}) {
3836
3836
  t = await navigator.mediaDevices.getDisplayMedia(
3837
3837
  Be({ audio: !0 })
3838
3838
  );
3839
- } catch (w) {
3840
- return (w == null ? void 0 : w.name) !== "NotAllowedError" && console.error("[media] record picker", w), null;
3839
+ } catch (b) {
3840
+ return (b == null ? void 0 : b.name) !== "NotAllowedError" && console.error("[media] record picker", b), null;
3841
3841
  }
3842
3842
  const n = Rr();
3843
3843
  let i;
3844
3844
  try {
3845
3845
  i = n ? new window.MediaRecorder(t, { mimeType: n }) : new window.MediaRecorder(t);
3846
- } catch (w) {
3847
- return console.error("[media] recorder init", w), t.getTracks().forEach((T) => {
3846
+ } catch (b) {
3847
+ return console.error("[media] recorder init", b), t.getTracks().forEach((T) => {
3848
3848
  T.stop();
3849
3849
  }), null;
3850
3850
  }
3851
3851
  const r = [];
3852
3852
  let s = null, a = !1;
3853
- i.addEventListener("dataavailable", (w) => {
3854
- w.data && w.data.size > 0 && r.push(w.data);
3853
+ i.addEventListener("dataavailable", (b) => {
3854
+ b.data && b.data.size > 0 && r.push(b.data);
3855
3855
  }), i.addEventListener("stop", () => {
3856
- var w, T;
3856
+ var b, T;
3857
3857
  if (s && clearInterval(s), t.getTracks().forEach((I) => {
3858
3858
  I.stop();
3859
3859
  }), r.length) {
3860
- const I = i.mimeType || n || "video/webm", A = new Blob(r, { type: I }), z = /mp4/.test(I) ? "mp4" : "webm", M = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-").slice(0, 19), P = new File([A], `ecran-${M}.${z}`, {
3860
+ const I = i.mimeType || n || "video/webm", A = new Blob(r, { type: I }), z = /mp4/.test(I) ? "mp4" : "webm", M = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-").slice(0, 19), F = new File([A], `ecran-${M}.${z}`, {
3861
3861
  type: I
3862
3862
  });
3863
- (w = e.onfinalize) == null || w.call(e, P);
3863
+ (b = e.onfinalize) == null || b.call(e, F);
3864
3864
  } else
3865
3865
  (T = e.oncancel) == null || T.call(e);
3866
- }), t.getVideoTracks().forEach((w) => {
3867
- w.addEventListener("ended", () => l(), { once: !0 });
3866
+ }), t.getVideoTracks().forEach((b) => {
3867
+ b.addEventListener("ended", () => l(), { once: !0 });
3868
3868
  });
3869
3869
  function l() {
3870
3870
  if (!a && (a = !0, i.state !== "inactive"))
3871
3871
  try {
3872
3872
  i.stop();
3873
- } catch (w) {
3874
- console.error("[media] recorder stop", w);
3873
+ } catch (b) {
3874
+ console.error("[media] recorder stop", b);
3875
3875
  }
3876
3876
  }
3877
3877
  try {
3878
3878
  i.start(1e3);
3879
- } catch (w) {
3880
- return console.error("[media] recorder start", w), t.getTracks().forEach((T) => {
3879
+ } catch (b) {
3880
+ return console.error("[media] recorder start", b), t.getTracks().forEach((T) => {
3881
3881
  T.stop();
3882
3882
  }), null;
3883
3883
  }
3884
3884
  (k = e.onstart) == null || k.call(e);
3885
3885
  const p = Date.now();
3886
3886
  return s = setInterval(() => {
3887
- var w;
3888
- (w = e.ontick) == null || w.call(e, Date.now() - p);
3887
+ var b;
3888
+ (b = e.ontick) == null || b.call(e, Date.now() - p);
3889
3889
  }, 500), {
3890
3890
  stop: l,
3891
3891
  get state() {
@@ -3914,7 +3914,7 @@ const Fr = [
3914
3914
  inject: {
3915
3915
  // Translator shared by the Messenger shell; French fallback when
3916
3916
  // the component is used standalone.
3917
- t: { default: () => j() }
3917
+ t: { default: () => D() }
3918
3918
  },
3919
3919
  props: {
3920
3920
  modelValue: { type: String, default: "" },
@@ -4067,7 +4067,7 @@ function Jr(e, t, n, i, r, s) {
4067
4067
  class: "wm-rec__stop",
4068
4068
  onClick: t[0] || (t[0] = (...a) => s.stopRecording && s.stopRecording(...a))
4069
4069
  }, v(s.t("composer.stop")), 1)
4070
- ])) : b("", !0),
4070
+ ])) : w("", !0),
4071
4071
  o("form", {
4072
4072
  class: O(["wm-compose", { "has-attach": r.attachOpen }]),
4073
4073
  onSubmit: t[7] || (t[7] = Y((...a) => s.onSubmit && s.onSubmit(...a), ["prevent"]))
@@ -4083,9 +4083,9 @@ function Jr(e, t, n, i, r, s) {
4083
4083
  key: 0,
4084
4084
  class: "wm-compose__overlay",
4085
4085
  onClick: t[2] || (t[2] = (a) => r.attachOpen = !1)
4086
- })) : b("", !0),
4086
+ })) : w("", !0),
4087
4087
  r.attachOpen ? (c(), u("div", zr, [
4088
- (c(!0), u(R, null, U(s.attachItems, (a) => (c(), u("button", {
4088
+ (c(!0), u(R, null, j(s.attachItems, (a) => (c(), u("button", {
4089
4089
  key: a.action,
4090
4090
  type: "button",
4091
4091
  class: "wm-compose__menuItem",
@@ -4106,7 +4106,7 @@ function Jr(e, t, n, i, r, s) {
4106
4106
  ]),
4107
4107
  o("span", null, v(a.label), 1)
4108
4108
  ], 8, Hr))), 128))
4109
- ])) : b("", !0),
4109
+ ])) : w("", !0),
4110
4110
  K(o("textarea", {
4111
4111
  ref: "inputEl",
4112
4112
  "onUpdate:modelValue": t[3] || (t[3] = (a) => r.local = a),
@@ -4166,7 +4166,7 @@ function Jr(e, t, n, i, r, s) {
4166
4166
  ], 34)
4167
4167
  ]);
4168
4168
  }
4169
- const Qr = /* @__PURE__ */ N(Pr, [["render", Jr], ["__scopeId", "data-v-aa81dbb8"]]), Xr = {
4169
+ const Qr = /* @__PURE__ */ B(Pr, [["render", Jr], ["__scopeId", "data-v-aa81dbb8"]]), Xr = {
4170
4170
  name: "WmSuggestionChips",
4171
4171
  props: {
4172
4172
  items: { type: Array, default: () => [] },
@@ -4189,22 +4189,22 @@ function ei(e, t, n, i, r, s) {
4189
4189
  key: s.batchKey,
4190
4190
  class: "wm-chips"
4191
4191
  }, [
4192
- (c(!0), u(R, null, U(n.items, (a, l) => (c(), u("button", {
4192
+ (c(!0), u(R, null, j(n.items, (a, l) => (c(), u("button", {
4193
4193
  key: l,
4194
4194
  type: "button",
4195
4195
  class: "wm-chip",
4196
4196
  style: q({ animationDelay: n.baseDelay + l * n.stepDelay + "ms" }),
4197
4197
  onClick: (p) => e.$emit("select", a)
4198
4198
  }, v(a.label), 13, Zr))), 128))
4199
- ])) : b("", !0);
4199
+ ])) : w("", !0);
4200
4200
  }
4201
- const ti = /* @__PURE__ */ N(Xr, [["render", ei], ["__scopeId", "data-v-47ad8085"]]), ni = {
4201
+ const ti = /* @__PURE__ */ B(Xr, [["render", ei], ["__scopeId", "data-v-47ad8085"]]), ni = {
4202
4202
  name: "WmApprovalCard",
4203
4203
  components: { AIAvatar: le },
4204
4204
  inject: {
4205
4205
  // Translator shared by the Messenger shell; French fallback when
4206
4206
  // the component is used standalone.
4207
- t: { default: () => j() }
4207
+ t: { default: () => D() }
4208
4208
  },
4209
4209
  props: {
4210
4210
  action: { type: String, required: !0 },
@@ -4259,7 +4259,7 @@ function di(e, t, n, i, r, s) {
4259
4259
  ]),
4260
4260
  o("div", ai, [
4261
4261
  o("div", oi, v(n.action), 1),
4262
- n.detail ? (c(), u("div", li, v(n.detail), 1)) : b("", !0)
4262
+ n.detail ? (c(), u("div", li, v(n.detail), 1)) : w("", !0)
4263
4263
  ])
4264
4264
  ]),
4265
4265
  o("div", ci, [
@@ -4268,17 +4268,17 @@ function di(e, t, n, i, r, s) {
4268
4268
  type: "button",
4269
4269
  class: "wm-approval__btn wm-approval__btn--neutral",
4270
4270
  onClick: t[0] || (t[0] = (l) => e.$emit("callback", s.rejectId))
4271
- }, v(s.rejectLabel), 1)) : b("", !0),
4271
+ }, v(s.rejectLabel), 1)) : w("", !0),
4272
4272
  s.approveId ? (c(), u("button", {
4273
4273
  key: 1,
4274
4274
  type: "button",
4275
4275
  class: "wm-approval__btn wm-approval__btn--primary",
4276
4276
  onClick: t[1] || (t[1] = (l) => e.$emit("callback", s.approveId))
4277
- }, v(s.approveLabel), 1)) : b("", !0)
4277
+ }, v(s.approveLabel), 1)) : w("", !0)
4278
4278
  ])
4279
4279
  ]);
4280
4280
  }
4281
- const ui = /* @__PURE__ */ N(ni, [["render", di], ["__scopeId", "data-v-a2bed37e"]]);
4281
+ const ui = /* @__PURE__ */ B(ni, [["render", di], ["__scopeId", "data-v-a2bed37e"]]);
4282
4282
  let xe = 0;
4283
4283
  const hi = /* @__PURE__ */ new Set([
4284
4284
  "text",
@@ -4294,7 +4294,7 @@ const hi = /* @__PURE__ */ new Set([
4294
4294
  inject: {
4295
4295
  // Translator shared by the Messenger shell; French fallback when
4296
4296
  // the component is used standalone.
4297
- t: { default: () => j() }
4297
+ t: { default: () => D() }
4298
4298
  },
4299
4299
  props: {
4300
4300
  form: { type: Object, required: !0 },
@@ -4411,14 +4411,14 @@ function Pi(e, t, n, i, r, s) {
4411
4411
  ]),
4412
4412
  o("div", pi, [
4413
4413
  o("div", vi, v(n.form.title || s.t("form.title")), 1),
4414
- n.form.description ? (c(), u("div", yi, v(n.form.description), 1)) : b("", !0)
4414
+ n.form.description ? (c(), u("div", yi, v(n.form.description), 1)) : w("", !0)
4415
4415
  ])
4416
4416
  ]),
4417
4417
  o("form", {
4418
4418
  class: "wm-form__body",
4419
4419
  onSubmit: t[0] || (t[0] = Y((...l) => s.onSubmit && s.onSubmit(...l), ["prevent"]))
4420
4420
  }, [
4421
- (c(!0), u(R, null, U(s.normalizedFields, (l) => (c(), u("div", {
4421
+ (c(!0), u(R, null, j(s.normalizedFields, (l) => (c(), u("div", {
4422
4422
  key: l.key,
4423
4423
  class: "wm-form__field"
4424
4424
  }, [
@@ -4427,7 +4427,7 @@ function Pi(e, t, n, i, r, s) {
4427
4427
  class: "wm-form__label"
4428
4428
  }, [
4429
4429
  pe(v(l.label), 1),
4430
- l.required ? (c(), u("span", bi, "*")) : b("", !0)
4430
+ l.required ? (c(), u("span", bi, "*")) : w("", !0)
4431
4431
  ], 8, wi),
4432
4432
  l.type === "text" ? K((c(), u("input", {
4433
4433
  key: 0,
@@ -4496,14 +4496,14 @@ function Pi(e, t, n, i, r, s) {
4496
4496
  disabled: n.readOnly || r.busy
4497
4497
  }, [
4498
4498
  o("option", Oi, v(l.placeholder || s.t("form.choose")), 1),
4499
- (c(!0), u(R, null, U(l.options, (p) => (c(), u("option", {
4499
+ (c(!0), u(R, null, j(l.options, (p) => (c(), u("option", {
4500
4500
  key: p.value,
4501
4501
  value: p.value
4502
4502
  }, v(p.label), 9, Li))), 128))
4503
4503
  ], 8, xi)), [
4504
4504
  [He, r.values[l.key]]
4505
4505
  ]) : l.type === "multiselect" ? (c(), u("div", Ii, [
4506
- (c(!0), u(R, null, U(l.options, (p) => (c(), u("label", {
4506
+ (c(!0), u(R, null, j(l.options, (p) => (c(), u("label", {
4507
4507
  key: p.value,
4508
4508
  class: "wm-form__multiItem"
4509
4509
  }, [
@@ -4520,27 +4520,27 @@ function Pi(e, t, n, i, r, s) {
4520
4520
  }, null, 40, Ri),
4521
4521
  o("span", null, v(p.label), 1)
4522
4522
  ]))), 128))
4523
- ])) : b("", !0)
4523
+ ])) : w("", !0)
4524
4524
  ]))), 128)),
4525
- r.error ? (c(), u("div", Ei, v(r.error), 1)) : b("", !0),
4525
+ r.error ? (c(), u("div", Ei, v(r.error), 1)) : w("", !0),
4526
4526
  n.readOnly ? (c(), u("div", Fi, v(s.t("form.responseSent")), 1)) : (c(), u("button", {
4527
4527
  key: 1,
4528
4528
  type: "submit",
4529
4529
  class: "wm-form__submit",
4530
4530
  disabled: r.busy
4531
4531
  }, [
4532
- r.busy ? (c(), u("span", Ni)) : b("", !0),
4532
+ r.busy ? (c(), u("span", Ni)) : w("", !0),
4533
4533
  o("span", null, v(r.busy ? s.t("common.sending") : n.form.submit_label || s.t("common.send")), 1)
4534
4534
  ], 8, Bi))
4535
4535
  ], 32)
4536
4536
  ]);
4537
4537
  }
4538
- const Ui = /* @__PURE__ */ N(mi, [["render", Pi], ["__scopeId", "data-v-fe65cc56"]]), ji = {
4538
+ const Ui = /* @__PURE__ */ B(mi, [["render", Pi], ["__scopeId", "data-v-fe65cc56"]]), ji = {
4539
4539
  name: "WmFeedback",
4540
4540
  inject: {
4541
4541
  // Translator shared by the Messenger shell; French fallback when
4542
4542
  // the component is used standalone.
4543
- t: { default: () => j() }
4543
+ t: { default: () => D() }
4544
4544
  },
4545
4545
  props: {
4546
4546
  busy: { type: Boolean, default: !1 },
@@ -4597,7 +4597,7 @@ function Qi(e, t, n, i, r, s) {
4597
4597
  o("div", zi, v(s.t("feedback.question")), 1),
4598
4598
  o("div", Hi, v(s.t("feedback.subtitle")), 1),
4599
4599
  o("div", qi, [
4600
- (c(!0), u(R, null, U(s.options, (a) => (c(), u("button", {
4600
+ (c(!0), u(R, null, j(s.options, (a) => (c(), u("button", {
4601
4601
  key: a.v,
4602
4602
  type: "button",
4603
4603
  class: O(["wm-fb__opt", { "is-selected": r.sel === a.v }]),
@@ -4616,12 +4616,12 @@ function Qi(e, t, n, i, r, s) {
4616
4616
  ], 64))
4617
4617
  ]);
4618
4618
  }
4619
- const Xi = /* @__PURE__ */ N(ji, [["render", Qi], ["__scopeId", "data-v-9b630564"]]), Zi = {
4619
+ const Xi = /* @__PURE__ */ B(ji, [["render", Qi], ["__scopeId", "data-v-9b630564"]]), Zi = {
4620
4620
  name: "WmMoreMenu",
4621
4621
  inject: {
4622
4622
  // Translator shared by the Messenger shell; French fallback when
4623
4623
  // the component is used standalone.
4624
- t: { default: () => j() }
4624
+ t: { default: () => D() }
4625
4625
  },
4626
4626
  props: {
4627
4627
  canRename: { type: Boolean, default: !0 },
@@ -4700,7 +4700,7 @@ function ha(e, t, n, i, r, s) {
4700
4700
  ])
4701
4701
  ], -1)),
4702
4702
  o("span", sa, v(s.t("moreMenu.editTitle")), 1)
4703
- ])) : b("", !0),
4703
+ ])) : w("", !0),
4704
4704
  n.canExport ? (c(), u("button", {
4705
4705
  key: 1,
4706
4706
  type: "button",
@@ -4724,9 +4724,9 @@ function ha(e, t, n, i, r, s) {
4724
4724
  ], -1)),
4725
4725
  o("span", ra, v(s.t("moreMenu.exportTranscript")), 1),
4726
4726
  t[9] || (t[9] = o("span", { class: "wm-mm__hint" }, ".txt", -1))
4727
- ])) : b("", !0)
4728
- ])) : b("", !0),
4729
- n.canRename || n.canExport ? (c(), u("div", ia)) : b("", !0),
4727
+ ])) : w("", !0)
4728
+ ])) : w("", !0),
4729
+ n.canRename || n.canExport ? (c(), u("div", ia)) : w("", !0),
4730
4730
  o("div", aa, [
4731
4731
  o("button", {
4732
4732
  type: "button",
@@ -4808,7 +4808,7 @@ function ha(e, t, n, i, r, s) {
4808
4808
  ])
4809
4809
  ], -1)),
4810
4810
  o("span", da, v(s.t("moreMenu.serviceStatus")), 1)
4811
- ])) : b("", !0),
4811
+ ])) : w("", !0),
4812
4812
  n.helpUrl ? (c(), u("button", {
4813
4813
  key: 1,
4814
4814
  type: "button",
@@ -4831,17 +4831,17 @@ function ha(e, t, n, i, r, s) {
4831
4831
  ])
4832
4832
  ], -1)),
4833
4833
  o("span", ua, v(s.t("moreMenu.helpCenter")), 1)
4834
- ])) : b("", !0)
4834
+ ])) : w("", !0)
4835
4835
  ])
4836
4836
  ])
4837
4837
  ]);
4838
4838
  }
4839
- const ma = /* @__PURE__ */ N(Zi, [["render", ha], ["__scopeId", "data-v-76281e95"]]), fa = {
4839
+ const ma = /* @__PURE__ */ B(Zi, [["render", ha], ["__scopeId", "data-v-76281e95"]]), fa = {
4840
4840
  name: "WmRenameDialog",
4841
4841
  inject: {
4842
4842
  // Translator shared by the Messenger shell; French fallback when
4843
4843
  // the component is used standalone.
4844
- t: { default: () => j() }
4844
+ t: { default: () => D() }
4845
4845
  },
4846
4846
  props: {
4847
4847
  // Empty defaults: the resolved fallback comes from the translator
@@ -4945,7 +4945,7 @@ function Aa(e, t, n, i, r, s) {
4945
4945
  ])
4946
4946
  ]);
4947
4947
  }
4948
- const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8"]]), Oe = "ww-messenger-tokens", Ma = {
4948
+ const Sa = /* @__PURE__ */ B(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8"]]), Oe = "ww-messenger-tokens", Ma = {
4949
4949
  name: "Messenger",
4950
4950
  components: {
4951
4951
  Launcher: Ft,
@@ -5104,7 +5104,7 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5104
5104
  // `locale` changes. `t()` below (and the provided closure) delegate
5105
5105
  // to it so every string resolves against the current language.
5106
5106
  translator() {
5107
- return j(this.locale);
5107
+ return D(this.locale);
5108
5108
  },
5109
5109
  error() {
5110
5110
  var e;
@@ -5138,8 +5138,8 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5138
5138
  var k;
5139
5139
  const r = e[i.id] || [], s = J(i.last_read_message_id);
5140
5140
  let a = 0, l = null;
5141
- for (let w = r.length - 1; w >= 0; w--) {
5142
- const T = r[w];
5141
+ for (let b = r.length - 1; b >= 0; b--) {
5142
+ const T = r[b];
5143
5143
  if (!T) continue;
5144
5144
  if (((k = T.author) == null ? void 0 : k.type) === "user") break;
5145
5145
  const I = J(T.id);
@@ -5149,7 +5149,7 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5149
5149
  }
5150
5150
  }
5151
5151
  const p = r.filter(
5152
- (w) => !((w == null ? void 0 : w.id) != null && t[w.id] === 0)
5152
+ (b) => !((b == null ? void 0 : b.id) != null && t[b.id] === 0)
5153
5153
  );
5154
5154
  return {
5155
5155
  ...i,
@@ -5377,7 +5377,7 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5377
5377
  const t = (p = (l = (a = this.pendingApproval) == null ? void 0 : a.payload) == null ? void 0 : l.pending) == null ? void 0 : p.prepared_params;
5378
5378
  if (!t || typeof t != "object") return "";
5379
5379
  const n = Object.entries(t);
5380
- return n.length ? n.slice(0, 2).map(([k, w]) => `${k}: ${w}`).join(" · ") : "";
5380
+ return n.length ? n.slice(0, 2).map(([k, b]) => `${k}: ${b}`).join(" · ") : "";
5381
5381
  },
5382
5382
  actionInFlight() {
5383
5383
  var e, t;
@@ -5662,21 +5662,21 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5662
5662
  this.launcherHovered = e, this.sendCurrentLauncherSize();
5663
5663
  },
5664
5664
  sendCurrentLauncherSize() {
5665
- var w, T, I, A, z, M, P;
5665
+ var T, I, A, z, M, F, N;
5666
5666
  if (this.isOpen) return;
5667
- const e = (T = (w = this.$el) == null ? void 0 : w.querySelector) == null ? void 0 : T.call(w, ".wm-launcherWrap");
5667
+ const e = (I = (T = this.$el) == null ? void 0 : T.querySelector) == null ? void 0 : I.call(T, ".wm-launcherWrap");
5668
5668
  if (!e) return;
5669
5669
  const t = e.getBoundingClientRect();
5670
5670
  if (!t.width || !t.height) return;
5671
- const n = (((I = this.launcherPeeks) == null ? void 0 : I.length) ?? 0) > 0, i = this.launcherHovered ? 20 : 0, r = Math.ceil(t.width), s = Math.ceil(t.height), a = (z = (A = this.$el) == null ? void 0 : A.querySelector) == null ? void 0 : z.call(A, ".wm-launcher"), l = a == null ? void 0 : a.getBoundingClientRect(), p = (P = (M = this.$el) == null ? void 0 : M.querySelector) == null ? void 0 : P.call(M, ".wm-peek");
5672
- let k = null;
5673
- if (p) {
5674
- const B = p.getBoundingClientRect();
5675
- k = {
5676
- width: Math.ceil(B.width),
5677
- height: Math.ceil(B.height),
5678
- rightOffset: Math.max(0, Math.ceil(t.right - B.right)),
5679
- bottomOffset: Math.max(0, Math.ceil(t.bottom - B.bottom))
5671
+ const n = (((A = this.launcherPeeks) == null ? void 0 : A.length) ?? 0) > 0, i = this.launcherHovered ? 28 : 16, r = Math.ceil(t.width), s = Math.ceil(t.height), a = (M = (z = this.$el) == null ? void 0 : z.querySelector) == null ? void 0 : M.call(z, ".wm-launcher"), l = a == null ? void 0 : a.getBoundingClientRect(), p = (N = (F = this.$el) == null ? void 0 : F.querySelectorAll) == null ? void 0 : N.call(F, ".wm-peek"), k = p && p.length ? p[p.length - 1] : null;
5672
+ let b = null;
5673
+ if (k) {
5674
+ const U = k.getBoundingClientRect();
5675
+ b = {
5676
+ width: Math.ceil(U.width),
5677
+ height: Math.ceil(U.height),
5678
+ rightOffset: Math.max(0, Math.ceil(t.right - U.right)),
5679
+ bottomOffset: Math.max(0, Math.ceil(t.bottom - U.bottom))
5680
5680
  };
5681
5681
  }
5682
5682
  this.notifyParentResize("closed", {
@@ -5685,7 +5685,7 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5685
5685
  launcherWidth: l ? Math.ceil(l.width) : null,
5686
5686
  launcherHeight: l ? Math.ceil(l.height) : null,
5687
5687
  launcherHovered: this.launcherHovered,
5688
- peek: k,
5688
+ peek: b,
5689
5689
  peekHovered: this.launcherHovered && n
5690
5690
  });
5691
5691
  },
@@ -5921,18 +5921,18 @@ const Sa = /* @__PURE__ */ N(fa, [["render", Aa], ["__scopeId", "data-v-6d5f94a8
5921
5921
  class: "wm-attached"
5922
5922
  }, Ua = ["aria-label", "onClick"];
5923
5923
  function ja(e, t, n, i, r, s) {
5924
- const a = E("Launcher"), l = E("Header"), p = E("Onboarding"), k = E("MessageList"), w = E("ApprovalCard"), T = E("FormCard"), I = E("Feedback"), A = E("SuggestionChips"), z = E("Composer"), M = E("MoreMenu"), P = E("RenameDialog");
5924
+ const a = E("Launcher"), l = E("Header"), p = E("Onboarding"), k = E("MessageList"), b = E("ApprovalCard"), T = E("FormCard"), I = E("Feedback"), A = E("SuggestionChips"), z = E("Composer"), M = E("MoreMenu"), F = E("RenameDialog");
5925
5925
  return c(), u("div", {
5926
5926
  class: O(["wm-root", `wm-root--${n.displayMode}`])
5927
5927
  }, [
5928
- !r.isOpen && !s.isEmbedded ? (c(), F(a, {
5928
+ !r.isOpen && !s.isEmbedded ? (c(), P(a, {
5929
5929
  key: 0,
5930
5930
  "unread-count": s.unreadCount,
5931
5931
  peeks: s.launcherPeeks,
5932
5932
  onOpen: s.openFromPeek,
5933
5933
  onDismiss: s.dismissPeek,
5934
5934
  onHover: s.onLauncherHover
5935
- }, null, 8, ["unread-count", "peeks", "onOpen", "onDismiss", "onHover"])) : b("", !0),
5935
+ }, null, 8, ["unread-count", "peeks", "onOpen", "onDismiss", "onHover"])) : w("", !0),
5936
5936
  r.isOpen || s.isEmbedded ? (c(), u("section", {
5937
5937
  key: 1,
5938
5938
  class: O([
@@ -5945,12 +5945,12 @@ function ja(e, t, n, i, r, s) {
5945
5945
  "aria-label": "Messenger"
5946
5946
  }, [
5947
5947
  !s.ready && !s.error ? (c(), u("div", Ta, [
5948
- s.isEmbedded ? b("", !0) : (c(), u("button", {
5948
+ s.isEmbedded ? w("", !0) : (c(), u("button", {
5949
5949
  key: 0,
5950
5950
  type: "button",
5951
5951
  class: "wm-loading__close",
5952
5952
  "aria-label": s.t("loading.minimize"),
5953
- onClick: t[0] || (t[0] = (...B) => s.close && s.close(...B))
5953
+ onClick: t[0] || (t[0] = (...N) => s.close && s.close(...N))
5954
5954
  }, [...t[5] || (t[5] = [
5955
5955
  o("svg", {
5956
5956
  width: "13",
@@ -6024,7 +6024,7 @@ function ja(e, t, n, i, r, s) {
6024
6024
  }, null, 8, ["messages", "streaming-active", "date-label", "conversation-id", "loading-more", "has-more", "unread-anchor-id", "unread-boundary-ts", "ai-agent-name", "ai-agent-avatar-url", "onLoadMore"]),
6025
6025
  o("div", Ea, [
6026
6026
  s.floatVisible ? (c(), u("div", Ba, [
6027
- s.approvalReady ? (c(), F(w, {
6027
+ s.approvalReady ? (c(), P(b, {
6028
6028
  key: 0,
6029
6029
  action: s.approvalTitle,
6030
6030
  detail: s.approvalDetail,
@@ -6032,23 +6032,23 @@ function ja(e, t, n, i, r, s) {
6032
6032
  "agent-name": s.agentName,
6033
6033
  "agent-avatar-url": s.agentAvatarUrl,
6034
6034
  onCallback: s.onApprovalCallback
6035
- }, null, 8, ["action", "detail", "callbacks", "agent-name", "agent-avatar-url", "onCallback"])) : s.pendingForm ? (c(), F(T, {
6035
+ }, null, 8, ["action", "detail", "callbacks", "agent-name", "agent-avatar-url", "onCallback"])) : s.pendingForm ? (c(), P(T, {
6036
6036
  key: s.pendingForm.message && s.pendingForm.message.id,
6037
6037
  form: s.pendingForm.form,
6038
6038
  "agent-name": s.agentName,
6039
6039
  "agent-avatar-url": s.agentAvatarUrl,
6040
6040
  onSubmit: s.onFormSubmit
6041
- }, null, 8, ["form", "agent-name", "agent-avatar-url", "onSubmit"])) : s.showFeedback ? (c(), F(I, {
6041
+ }, null, 8, ["form", "agent-name", "agent-avatar-url", "onSubmit"])) : s.showFeedback ? (c(), P(I, {
6042
6042
  key: 2,
6043
6043
  busy: r.feedbackBusy,
6044
6044
  done: r.feedbackDone,
6045
6045
  onSubmit: s.onFeedback
6046
- }, null, 8, ["busy", "done", "onSubmit"])) : (c(), F(A, {
6046
+ }, null, 8, ["busy", "done", "onSubmit"])) : (c(), P(A, {
6047
6047
  key: 3,
6048
6048
  items: s.suggestions,
6049
6049
  onSelect: s.onSuggestion
6050
6050
  }, null, 8, ["items", "onSelect"]))
6051
- ], 512)) : b("", !0),
6051
+ ], 512)) : w("", !0),
6052
6052
  s.actionInFlight ? (c(), u("div", Na, [
6053
6053
  t[8] || (t[8] = o("span", {
6054
6054
  class: "wm-actionWait__spinner",
@@ -6057,11 +6057,11 @@ function ja(e, t, n, i, r, s) {
6057
6057
  o("span", Fa, v(s.t("action.inProgress", {
6058
6058
  name: s.actionInFlightName
6059
6059
  })), 1)
6060
- ])) : (c(), F(z, {
6060
+ ])) : (c(), P(z, {
6061
6061
  key: 2,
6062
6062
  ref: "composer",
6063
6063
  modelValue: r.draft,
6064
- "onUpdate:modelValue": t[1] || (t[1] = (B) => r.draft = B),
6064
+ "onUpdate:modelValue": t[1] || (t[1] = (N) => r.draft = N),
6065
6065
  placeholder: s.composerPlaceholder,
6066
6066
  disabled: !!s.pendingApproval,
6067
6067
  "attach-label": s.t("composer.attachFile"),
@@ -6069,7 +6069,7 @@ function ja(e, t, n, i, r, s) {
6069
6069
  onAttach: s.onAttach
6070
6070
  }, null, 8, ["modelValue", "placeholder", "disabled", "attach-label", "onSend", "onAttach"]))
6071
6071
  ]),
6072
- r.moreOpen ? (c(), F(M, {
6072
+ r.moreOpen ? (c(), P(M, {
6073
6073
  key: 0,
6074
6074
  "can-rename": !!s.currentConv && !s.currentConv._draft,
6075
6075
  "can-export": !!s.currentConv && !s.currentConv._draft,
@@ -6077,21 +6077,21 @@ function ja(e, t, n, i, r, s) {
6077
6077
  "browser-notif-enabled": e.browserNotifEnabled,
6078
6078
  "status-url": s.statusUrl,
6079
6079
  "help-url": s.helpUrl,
6080
- onClose: t[2] || (t[2] = (B) => r.moreOpen = !1),
6080
+ onClose: t[2] || (t[2] = (N) => r.moreOpen = !1),
6081
6081
  onSoundToggle: e.onSoundToggle,
6082
6082
  onBrowserNotifToggle: e.onBrowserNotifToggle,
6083
6083
  onAction: s.onMoreAction
6084
- }, null, 8, ["can-rename", "can-export", "sound-enabled", "browser-notif-enabled", "status-url", "help-url", "onSoundToggle", "onBrowserNotifToggle", "onAction"])) : b("", !0),
6085
- r.renameDialogOpen && s.currentConv && !s.currentConv._draft ? (c(), F(P, {
6084
+ }, null, 8, ["can-rename", "can-export", "sound-enabled", "browser-notif-enabled", "status-url", "help-url", "onSoundToggle", "onBrowserNotifToggle", "onAction"])) : w("", !0),
6085
+ r.renameDialogOpen && s.currentConv && !s.currentConv._draft ? (c(), P(F, {
6086
6086
  key: 1,
6087
6087
  "initial-value": s.currentConv.name || "",
6088
6088
  title: s.t("rename.dialogTitle"),
6089
- onClose: t[3] || (t[3] = (B) => r.renameDialogOpen = !1),
6089
+ onClose: t[3] || (t[3] = (N) => r.renameDialogOpen = !1),
6090
6090
  onSubmit: s.onRenameSubmit
6091
- }, null, 8, ["initial-value", "title", "onSubmit"])) : b("", !0),
6091
+ }, null, 8, ["initial-value", "title", "onSubmit"])) : w("", !0),
6092
6092
  r.pendingAttachments.length ? (c(), u("div", Pa, [
6093
- (c(!0), u(R, null, U(r.pendingAttachments, (B, H) => (c(), u("div", {
6094
- key: H,
6093
+ (c(!0), u(R, null, j(r.pendingAttachments, (N, U) => (c(), u("div", {
6094
+ key: U,
6095
6095
  class: "wm-attached__chip"
6096
6096
  }, [
6097
6097
  t[10] || (t[10] = o("svg", {
@@ -6107,11 +6107,11 @@ function ja(e, t, n, i, r, s) {
6107
6107
  }, [
6108
6108
  o("path", { d: "M21.44 11.05l-9.19 9.19a6 6 0 01-8.49-8.49l9.19-9.19a4 4 0 015.66 5.66l-9.2 9.19a2 2 0 01-2.83-2.83l8.49-8.48" })
6109
6109
  ], -1)),
6110
- o("span", null, v(B.name), 1),
6110
+ o("span", null, v(N.name), 1),
6111
6111
  o("button", {
6112
6112
  type: "button",
6113
6113
  "aria-label": s.t("attachment.remove"),
6114
- onClick: (W) => r.pendingAttachments.splice(H, 1)
6114
+ onClick: (W) => r.pendingAttachments.splice(U, 1)
6115
6115
  }, [...t[9] || (t[9] = [
6116
6116
  o("svg", {
6117
6117
  width: "10",
@@ -6128,8 +6128,8 @@ function ja(e, t, n, i, r, s) {
6128
6128
  ], -1)
6129
6129
  ])], 8, Ua)
6130
6130
  ]))), 128))
6131
- ])) : b("", !0)
6132
- ], 64)) : (c(), F(p, {
6131
+ ])) : w("", !0)
6132
+ ], 64)) : (c(), P(p, {
6133
6133
  key: 1,
6134
6134
  "welcome-message": s.widgetWelcomeMessage,
6135
6135
  subtitle: s.widgetSubtitle,
@@ -6142,7 +6142,7 @@ function ja(e, t, n, i, r, s) {
6142
6142
  onSelect: s.onQuickLink,
6143
6143
  onResume: s.onDrawerPick
6144
6144
  }, null, 8, ["welcome-message", "subtitle", "agent-name", "default-icon-url", "quick-links", "open-threads", "busy", "onStart", "onSelect", "onResume"])),
6145
- r.moreOpen && !s.currentConv ? (c(), F(M, {
6145
+ r.moreOpen && !s.currentConv ? (c(), P(M, {
6146
6146
  key: 3,
6147
6147
  "can-rename": !1,
6148
6148
  "can-export": !1,
@@ -6150,16 +6150,16 @@ function ja(e, t, n, i, r, s) {
6150
6150
  "browser-notif-enabled": e.browserNotifEnabled,
6151
6151
  "status-url": s.statusUrl,
6152
6152
  "help-url": s.helpUrl,
6153
- onClose: t[4] || (t[4] = (B) => r.moreOpen = !1),
6153
+ onClose: t[4] || (t[4] = (N) => r.moreOpen = !1),
6154
6154
  onSoundToggle: e.onSoundToggle,
6155
6155
  onBrowserNotifToggle: e.onBrowserNotifToggle,
6156
6156
  onAction: s.onMoreAction
6157
- }, null, 8, ["sound-enabled", "browser-notif-enabled", "status-url", "help-url", "onSoundToggle", "onBrowserNotifToggle", "onAction"])) : b("", !0)
6157
+ }, null, 8, ["sound-enabled", "browser-notif-enabled", "status-url", "help-url", "onSoundToggle", "onBrowserNotifToggle", "onAction"])) : w("", !0)
6158
6158
  ], 64))
6159
- ], 6)) : b("", !0)
6159
+ ], 6)) : w("", !0)
6160
6160
  ], 2);
6161
6161
  }
6162
- const Ha = /* @__PURE__ */ N(Ma, [["render", ja], ["__scopeId", "data-v-7b6670c0"]]), qa = "0.5.15";
6162
+ const Ha = /* @__PURE__ */ B(Ma, [["render", ja], ["__scopeId", "data-v-4250eeb2"]]), qa = "0.5.16";
6163
6163
  export {
6164
6164
  le as AIAvatar,
6165
6165
  ge as AVATAR_COLORS,
@@ -6193,9 +6193,9 @@ export {
6193
6193
  ve as avatarColor,
6194
6194
  ye as avatarInitials,
6195
6195
  Er as captureScreenshotFile,
6196
- D as colors,
6196
+ H as colors,
6197
6197
  Qe as createStore,
6198
- j as createTranslator,
6198
+ D as createTranslator,
6199
6199
  We as createTransport,
6200
6200
  oe as dateLocale,
6201
6201
  Ha as default,