@_solaris/messenger-widget 0.2.30 → 0.2.32

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 Ae, openBlock as l, createElementBlock as d, createVNode as K, Transition as Se, withCtx as xe, withKeys as me, withModifiers as ee, createElementVNode as i, toDisplayString as b, createCommentVNode as w, normalizeStyle as G, normalizeClass as B, Fragment as M, renderList as j, resolveComponent as I, createBlock as $, createTextVNode as oe, resolveDynamicComponent as Me, renderSlot as Te, withDirectives as W, vModelText as Q, vModelCheckbox as Oe, vModelSelect as Ie, createStaticVNode as ue, markRaw as fe } from "vue";
1
+ import { reactive as Ae, openBlock as l, createElementBlock as d, createVNode as K, Transition as Se, withCtx as xe, withKeys as me, withModifiers as ee, createElementVNode as i, toDisplayString as b, createCommentVNode as g, normalizeStyle as G, normalizeClass as B, Fragment as M, renderList as j, resolveComponent as I, createBlock as $, createTextVNode as oe, resolveDynamicComponent as Me, renderSlot as Te, withDirectives as W, vModelText as Q, vModelCheckbox as Oe, vModelSelect as Ie, createStaticVNode as ue, markRaw as fe } from "vue";
2
2
  const Be = [
3
3
  "connected",
4
4
  "message",
@@ -100,7 +100,7 @@ function Re(t) {
100
100
  const h = await o("GET", "/customers/me");
101
101
  return (h == null ? void 0 : h.customer) ?? null;
102
102
  }
103
- async function g(h) {
103
+ async function w(h) {
104
104
  const f = await o("PATCH", "/customers/me", h);
105
105
  return (f == null ? void 0 : f.customer) ?? null;
106
106
  }
@@ -274,7 +274,7 @@ function Re(t) {
274
274
  // REST
275
275
  bootstrap: v,
276
276
  getCustomer: k,
277
- patchCustomer: g,
277
+ patchCustomer: w,
278
278
  listConversations: S,
279
279
  createConversation: R,
280
280
  getConversation: A,
@@ -400,7 +400,7 @@ function Ue(t) {
400
400
  async function v(u) {
401
401
  if (e.messagesByConv[u]) return;
402
402
  const m = await t.listMessages(u, { limit: c });
403
- e.messagesByConv[u] = (m == null ? void 0 : m.messages) ?? [], g(u, {
403
+ e.messagesByConv[u] = (m == null ? void 0 : m.messages) ?? [], w(u, {
404
404
  nextCursor: (m == null ? void 0 : m.next_cursor) ?? null,
405
405
  loading: !1,
406
406
  loaded: !0
@@ -409,7 +409,7 @@ function Ue(t) {
409
409
  async function k(u) {
410
410
  const m = e.paginationByConv[u];
411
411
  if (!(!m || m.loading || !m.nextCursor)) {
412
- g(u, { ...m, loading: !0 });
412
+ w(u, { ...m, loading: !0 });
413
413
  try {
414
414
  let h = m.nextCursor, f = [], p = 0;
415
415
  for (; p < 6 && h; p++) {
@@ -420,17 +420,17 @@ function Ue(t) {
420
420
  if (f = [...se, ...f], h = (L == null ? void 0 : L.next_cursor) ?? null, !se.length || f.length >= 60) break;
421
421
  }
422
422
  const C = e.messagesByConv[u] || [], O = new Set(C.map((L) => String(L == null ? void 0 : L.id))), T = [...f.filter((L) => !O.has(String(L == null ? void 0 : L.id))), ...C];
423
- e.messagesByConv[u] = T, g(u, {
423
+ e.messagesByConv[u] = T, w(u, {
424
424
  nextCursor: h,
425
425
  loading: !1,
426
426
  loaded: !0
427
427
  });
428
428
  } catch (_) {
429
- console.error("[store] loadMore failed", _), g(u, { ...m, loading: !1 });
429
+ console.error("[store] loadMore failed", _), w(u, { ...m, loading: !1 });
430
430
  }
431
431
  }
432
432
  }
433
- function g(u, m) {
433
+ function w(u, m) {
434
434
  e.paginationByConv = { ...e.paginationByConv, [u]: m };
435
435
  }
436
436
  async function S(u, m) {
@@ -757,7 +757,7 @@ function We(t, e, n, a, r, s) {
757
757
  i("path", { d: "M18 6L6 18M6 6l12 12" })
758
758
  ], -1)
759
759
  ])])
760
- ], 32)) : w("", !0)
760
+ ], 32)) : g("", !0)
761
761
  ]),
762
762
  _: 1
763
763
  }),
@@ -784,7 +784,7 @@ function We(t, e, n, a, r, s) {
784
784
  key: 0,
785
785
  class: "wm-launcher__badge",
786
786
  "aria-label": `${n.unreadCount} conversation${n.unreadCount > 1 ? "s" : ""} non lue${n.unreadCount > 1 ? "s" : ""}`
787
- }, b(n.unreadCount > 9 ? "9+" : n.unreadCount), 9, qe)) : w("", !0)
787
+ }, b(n.unreadCount > 9 ? "9+" : n.unreadCount), 9, qe)) : g("", !0)
788
788
  ])
789
789
  ]);
790
790
  }
@@ -809,7 +809,7 @@ function Xe(t, e, n, a, r, s) {
809
809
  class: B(["wm-aiav", { "wm-aiav--tail": n.tail }]),
810
810
  style: G({ width: n.size + "px", height: n.size + "px", "--wm-avr": n.size * 0.32 + "px" })
811
811
  }, [
812
- n.pulse ? (l(), d("div", Ye)) : w("", !0),
812
+ n.pulse ? (l(), d("div", Ye)) : g("", !0),
813
813
  i("div", {
814
814
  class: B(["wm-aiav__inner", { "wm-aiav__inner--glow": n.pulse }])
815
815
  }, [
@@ -926,8 +926,8 @@ function at(t, e, n, a, r, s) {
926
926
  }, null, 8, st)) : (l(), d("span", rt, b(s.initialsFor(o)), 1))
927
927
  ], 4))), 128))
928
928
  ], 4),
929
- n.responseLabel ? (l(), d("span", it, b(n.responseLabel), 1)) : w("", !0)
930
- ])) : w("", !0);
929
+ n.responseLabel ? (l(), d("span", it, b(n.responseLabel), 1)) : g("", !0)
930
+ ])) : g("", !0);
931
931
  }
932
932
  const ot = /* @__PURE__ */ E(tt, [["render", at], ["__scopeId", "data-v-3659b9c1"]]), lt = {
933
933
  name: "WmHeader",
@@ -1015,12 +1015,12 @@ function yt(t, e, n, a, r, s) {
1015
1015
  key: 0,
1016
1016
  members: n.teamMembers,
1017
1017
  "response-label": n.responseLabel
1018
- }, null, 8, ["members", "response-label"])) : w("", !0),
1018
+ }, null, 8, ["members", "response-label"])) : g("", !0),
1019
1019
  i("span", _t, [
1020
1020
  e[4] || (e[4] = i("span", { class: "wm-header__dot" }, null, -1)),
1021
1021
  oe(" " + b(s.statusText), 1)
1022
1022
  ])
1023
- ])) : w("", !0)
1023
+ ])) : g("", !0)
1024
1024
  ])
1025
1025
  ], 64)) : (l(), d("div", pt)),
1026
1026
  i("div", vt, [
@@ -1055,7 +1055,7 @@ function yt(t, e, n, a, r, s) {
1055
1055
  r: "1.6"
1056
1056
  })
1057
1057
  ], -1)
1058
- ])], 2)) : w("", !0),
1058
+ ])], 2)) : g("", !0),
1059
1059
  n.showClose ? (l(), d("button", {
1060
1060
  key: 1,
1061
1061
  type: "button",
@@ -1077,7 +1077,7 @@ function yt(t, e, n, a, r, s) {
1077
1077
  }, [
1078
1078
  i("path", { d: "M18 6L6 18M6 6l12 12" })
1079
1079
  ], -1)
1080
- ])])) : w("", !0)
1080
+ ])])) : g("", !0)
1081
1081
  ])
1082
1082
  ]);
1083
1083
  }
@@ -1188,7 +1188,7 @@ function Nt(t, e, n, a, r, s) {
1188
1188
  ], -1))
1189
1189
  ], 8, Mt))), 128))
1190
1190
  ])
1191
- ])) : w("", !0),
1191
+ ])) : g("", !0),
1192
1192
  n.quickLinks.length ? (l(), d("div", Bt, [
1193
1193
  e[5] || (e[5] = i("div", { class: "wm-onb__section-title" }, "Accès rapide", -1)),
1194
1194
  i("div", Et, [
@@ -1222,7 +1222,7 @@ function Nt(t, e, n, a, r, s) {
1222
1222
  ], -1))
1223
1223
  ], 8, Lt))), 128))
1224
1224
  ])
1225
- ])) : w("", !0),
1225
+ ])) : g("", !0),
1226
1226
  i("div", Dt, [
1227
1227
  i("button", {
1228
1228
  type: "button",
@@ -1334,11 +1334,11 @@ function Qt(t, e, n, a, r, s) {
1334
1334
  "aria-hidden": "true"
1335
1335
  }, " · ", -1)),
1336
1336
  i("span", Xt, b(s.detailText), 1)
1337
- ], 64)) : w("", !0)
1337
+ ], 64)) : g("", !0)
1338
1338
  ])
1339
1339
  ], 2);
1340
1340
  }
1341
- const Zt = /* @__PURE__ */ E(zt, [["render", Qt], ["__scopeId", "data-v-0ab2726b"]]), en = {
1341
+ const Zt = /* @__PURE__ */ E(zt, [["render", Qt], ["__scopeId", "data-v-64a83fb8"]]), en = {
1342
1342
  name: "WmArtifactFormResponse",
1343
1343
  props: {
1344
1344
  data: { type: Object, required: !0 }
@@ -1420,19 +1420,19 @@ function wn(t, e, n, a, r, s) {
1420
1420
  alt: n.data.title || "",
1421
1421
  loading: "lazy"
1422
1422
  }, null, 8, hn)
1423
- ])) : w("", !0),
1423
+ ])) : g("", !0),
1424
1424
  i("div", mn, [
1425
1425
  i("div", fn, [
1426
1426
  i("div", _n, b(n.data.title), 1),
1427
- n.data.subtitle ? (l(), d("div", pn, b(n.data.subtitle), 1)) : w("", !0)
1427
+ n.data.subtitle ? (l(), d("div", pn, b(n.data.subtitle), 1)) : g("", !0)
1428
1428
  ]),
1429
1429
  n.data.badge && n.data.badge.label ? (l(), d("span", {
1430
1430
  key: 0,
1431
1431
  class: B(["wm-art__badge", `wm-art__badge--${n.data.badge.tone || "neutral"}`])
1432
- }, b(n.data.badge.label), 3)) : w("", !0)
1432
+ }, b(n.data.badge.label), 3)) : g("", !0)
1433
1433
  ]),
1434
1434
  s.hasBody ? (l(), d("div", vn, [
1435
- n.data.body ? (l(), d("div", yn, b(n.data.body), 1)) : w("", !0),
1435
+ n.data.body ? (l(), d("div", yn, b(n.data.body), 1)) : g("", !0),
1436
1436
  s.fields.length ? (l(!0), d(M, { key: 1 }, j(s.fields, (o, c) => (l(), d("div", {
1437
1437
  key: c,
1438
1438
  class: "wm-art__field"
@@ -1441,8 +1441,8 @@ function wn(t, e, n, a, r, s) {
1441
1441
  i("div", {
1442
1442
  class: B(["wm-art__fieldValue", { "wm-art__fieldValue--multi": o.multiline }])
1443
1443
  }, b(o.value), 3)
1444
- ]))), 128)) : w("", !0)
1445
- ])) : w("", !0)
1444
+ ]))), 128)) : g("", !0)
1445
+ ])) : g("", !0)
1446
1446
  ]);
1447
1447
  }
1448
1448
  const bn = /* @__PURE__ */ E(cn, [["render", wn], ["__scopeId", "data-v-d7369333"]]);
@@ -1541,7 +1541,7 @@ function Rn(t, e, n, a, r, s) {
1541
1541
  oe(" " + b(n.data.status.label), 1)
1542
1542
  ], 2)
1543
1543
  ]),
1544
- n.data.body ? (l(), d("div", On, b(n.data.body), 1)) : w("", !0)
1544
+ n.data.body ? (l(), d("div", On, b(n.data.body), 1)) : g("", !0)
1545
1545
  ]),
1546
1546
  s.fields.length ? (l(), d("div", In, [
1547
1547
  (l(!0), d(M, null, j(s.fields, (o, c) => (l(), d("div", {
@@ -1591,11 +1591,11 @@ function Rn(t, e, n, a, r, s) {
1591
1591
  rx: "2"
1592
1592
  }, null, -1),
1593
1593
  i("path", { d: "M16 2v4M8 2v4M3 10h18" }, null, -1)
1594
- ])])) : w("", !0),
1594
+ ])])) : g("", !0),
1595
1595
  i("span", null, b(o.value), 1)
1596
1596
  ], 2)
1597
1597
  ]))), 128))
1598
- ])) : w("", !0),
1598
+ ])) : g("", !0),
1599
1599
  n.data.created_at ? (l(), d("div", $n, [
1600
1600
  e[4] || (e[4] = i("svg", {
1601
1601
  width: "11",
@@ -1618,7 +1618,7 @@ function Rn(t, e, n, a, r, s) {
1618
1618
  i("path", { d: "M16 2v4M8 2v4M3 10h18" })
1619
1619
  ], -1)),
1620
1620
  i("span", null, b(s.formattedDate), 1)
1621
- ])) : w("", !0)
1621
+ ])) : g("", !0)
1622
1622
  ]);
1623
1623
  }
1624
1624
  const Fn = /* @__PURE__ */ E(Cn, [["render", Rn], ["__scopeId", "data-v-8b274eb7"]]), jn = {
@@ -1644,7 +1644,7 @@ function Un(t, e, n, a, r, s) {
1644
1644
  return s.component ? (l(), $(Me(s.component), {
1645
1645
  key: 0,
1646
1646
  data: n.artifact.data
1647
- }, null, 8, ["data"])) : w("", !0);
1647
+ }, null, 8, ["data"])) : g("", !0);
1648
1648
  }
1649
1649
  const Nn = /* @__PURE__ */ E(Dn, [["render", Un]]), Pn = {
1650
1650
  name: "WmAttachmentPreview",
@@ -1761,9 +1761,9 @@ function Xn(t, e, n, a, r, s) {
1761
1761
  ], -1)),
1762
1762
  i("span", Kn, [
1763
1763
  i("span", Gn, b(s.displayName), 1),
1764
- s.sizeLabel ? (l(), d("span", Yn, b(s.sizeLabel), 1)) : w("", !0)
1764
+ s.sizeLabel ? (l(), d("span", Yn, b(s.sizeLabel), 1)) : g("", !0)
1765
1765
  ]),
1766
- r.loading ? (l(), d("span", Jn)) : w("", !0)
1766
+ r.loading ? (l(), d("span", Jn)) : g("", !0)
1767
1767
  ], 8, Wn))
1768
1768
  ], 2);
1769
1769
  }
@@ -1809,19 +1809,19 @@ function ts(t) {
1809
1809
  if (!S) break;
1810
1810
  k.push(S[1]), a++;
1811
1811
  }
1812
- const g = k.map((S) => `<li>${re(S)}</li>`).join("");
1813
- n.push({ type: "block", html: `<ul class="wm-md-ul">${g}</ul>` });
1812
+ const w = k.map((S) => `<li>${re(S)}</li>`).join("");
1813
+ n.push({ type: "block", html: `<ul class="wm-md-ul">${w}</ul>` });
1814
1814
  continue;
1815
1815
  }
1816
1816
  const c = /^\s*(\d+)\.\s+(.*)$/.exec(s);
1817
1817
  if (c) {
1818
- const k = parseInt(c[1], 10), g = [c[2]];
1818
+ const k = parseInt(c[1], 10), w = [c[2]];
1819
1819
  for (a++; a < e.length; ) {
1820
1820
  const A = /^\s*\d+\.\s+(.*)$/.exec(e[a]);
1821
1821
  if (!A) break;
1822
- g.push(A[1]), a++;
1822
+ w.push(A[1]), a++;
1823
1823
  }
1824
- const S = g.map((A) => `<li>${re(A)}</li>`).join(""), R = k !== 1 ? ` start="${k}"` : "";
1824
+ const S = w.map((A) => `<li>${re(A)}</li>`).join(""), R = k !== 1 ? ` start="${k}"` : "";
1825
1825
  n.push({ type: "block", html: `<ol class="wm-md-ol"${R}>${S}</ol>` });
1826
1826
  continue;
1827
1827
  }
@@ -1985,7 +1985,7 @@ const ds = {
1985
1985
  unreadGroupKey() {
1986
1986
  if (!this.unreadAnchorTs) return null;
1987
1987
  for (const t of this.groups) {
1988
- if (t.role === "user" || t.role === "system") continue;
1988
+ if (t.role === "user" || t.role === "system" || !t.items.length) continue;
1989
1989
  const e = t.messages[0];
1990
1990
  if (e != null && e.created_at && !(e.created_at <= this.unreadAnchorTs) && !(this.unreadBoundaryTs && e.created_at > this.unreadBoundaryTs))
1991
1991
  return t.key;
@@ -2195,9 +2195,9 @@ const ds = {
2195
2195
  // doit garder son arrondi.
2196
2196
  cornersFor(t, e) {
2197
2197
  var Y, H, J;
2198
- const n = t.items, a = (Y = n[e]) == null ? void 0 : Y.kind, r = (H = n[e - 1]) == null ? void 0 : H.kind, s = (J = n[e + 1]) == null ? void 0 : J.kind, o = t.role === "user", c = 14, v = 4, k = r == null ? void 0 : r.bottom, g = s == null ? void 0 : s.top, S = this.widthByKey[this.rowKeyOf(t, e)], R = this.widthByKey[this.rowKeyOf(t, e - 1)], A = this.widthByKey[this.rowKeyOf(t, e + 1)], P = 0.5, x = (q, z, X) => q != null && S != null ? q + P >= S : z === X || z === "card" && X === "bubble";
2198
+ const n = t.items, a = (Y = n[e]) == null ? void 0 : Y.kind, r = (H = n[e - 1]) == null ? void 0 : H.kind, s = (J = n[e + 1]) == null ? void 0 : J.kind, o = t.role === "user", c = 14, v = 4, k = r == null ? void 0 : r.bottom, w = s == null ? void 0 : s.top, S = this.widthByKey[this.rowKeyOf(t, e)], R = this.widthByKey[this.rowKeyOf(t, e - 1)], A = this.widthByKey[this.rowKeyOf(t, e + 1)], P = 0.5, x = (q, z, X) => q != null && S != null ? q + P >= S : z === X || z === "card" && X === "bubble";
2199
2199
  let U = c, F = c, N = c, V = c;
2200
- return o ? (k && (F = v), (g || !s) && (N = v), k && x(R, k, a == null ? void 0 : a.top) && (U = v), g && x(A, g, a == null ? void 0 : a.bottom) && (V = v)) : (k && (U = v), (g || !s) && (V = v), k && x(R, k, a == null ? void 0 : a.top) && (F = v), g && x(A, g, a == null ? void 0 : a.bottom) && (N = v)), { tl: U, tr: F, br: N, bl: V };
2200
+ return o ? (k && (F = v), (w || !s) && (N = v), k && x(R, k, a == null ? void 0 : a.top) && (U = v), w && x(A, w, a == null ? void 0 : a.bottom) && (V = v)) : (k && (U = v), (w || !s) && (V = v), k && x(R, k, a == null ? void 0 : a.top) && (F = v), w && x(A, w, a == null ? void 0 : a.bottom) && (N = v)), { tl: U, tr: F, br: N, bl: V };
2201
2201
  },
2202
2202
  // Inline style emitting the four corner CSS variables. Set on
2203
2203
  // `.wm-list__row` so they cascade to Bubble/ActionResult/
@@ -2256,14 +2256,23 @@ const ds = {
2256
2256
  this.widthByKey = Object.freeze(e);
2257
2257
  },
2258
2258
  lastTimeOf(t) {
2259
- const e = t.messages[t.messages.length - 1];
2260
- if (!(e != null && e.created_at)) return "";
2259
+ const e = t.items[t.items.length - 1], n = (e == null ? void 0 : e.message) || t.messages[t.messages.length - 1];
2260
+ if (!(n != null && n.created_at)) return "";
2261
2261
  try {
2262
- return be(new Date(e.created_at));
2262
+ return be(new Date(n.created_at));
2263
2263
  } catch {
2264
2264
  return "";
2265
2265
  }
2266
2266
  },
2267
+ // True quand le DERNIER message du groupe vit uniquement via un
2268
+ // overlay (form-only). On supprime alors la meta-row pour que la
2269
+ // bulle précédente flow visuellement vers l'overlay au lieu d'être
2270
+ // séparée par une estampille rôle + heure.
2271
+ hasTrailingOverlay(t) {
2272
+ if (!t.messages.length) return !1;
2273
+ const e = t.messages[t.messages.length - 1], n = t.items[t.items.length - 1];
2274
+ return !!e && (n == null ? void 0 : n.message) !== e;
2275
+ },
2267
2276
  attachmentsOf(t) {
2268
2277
  var n;
2269
2278
  const e = (n = t == null ? void 0 : t.payload) == null ? void 0 : n.attachments;
@@ -2333,7 +2342,7 @@ const ds = {
2333
2342
  class: "wm-list__row wm-list__row--ai fade-up"
2334
2343
  }, Ts = { class: "wm-list__avatarSlot" };
2335
2344
  function Os(t, e, n, a, r, s) {
2336
- const o = I("AIAvatar"), c = I("HumanAvatar"), v = I("ActionResult"), k = I("ArtifactRenderer"), g = I("Bubble"), S = I("AttachmentPreview"), R = I("Typing");
2345
+ const o = I("AIAvatar"), c = I("HumanAvatar"), v = I("ActionResult"), k = I("ArtifactRenderer"), w = I("Bubble"), S = I("AttachmentPreview"), R = I("Typing");
2337
2346
  return l(), d("div", {
2338
2347
  ref: "scrollEl",
2339
2348
  class: B(["wm-list", { "wm-list--silent": r.silentFades }]),
@@ -2345,12 +2354,12 @@ function Os(t, e, n, a, r, s) {
2345
2354
  "aria-hidden": "true"
2346
2355
  }, null, -1),
2347
2356
  i("span", { class: "wm-list__loadMore-lbl" }, "Chargement de l'historique…", -1)
2348
- ])])) : s.historyExhausted ? (l(), d("div", _s, "Début de la conversation")) : w("", !0),
2357
+ ])])) : s.historyExhausted ? (l(), d("div", _s, "Début de la conversation")) : g("", !0),
2349
2358
  n.dateLabel ? (l(), d("div", ps, [
2350
2359
  e[2] || (e[2] = i("div", { class: "wm-list__line" }, null, -1)),
2351
2360
  i("span", vs, b(n.dateLabel), 1),
2352
2361
  e[3] || (e[3] = i("div", { class: "wm-list__line" }, null, -1))
2353
- ])) : w("", !0),
2362
+ ])) : g("", !0),
2354
2363
  (l(!0), d(M, null, j(s.groups, (A, P) => (l(), d(M, {
2355
2364
  key: A.key
2356
2365
  }, [
@@ -2358,8 +2367,9 @@ function Os(t, e, n, a, r, s) {
2358
2367
  i("div", { class: "wm-list__line wm-list__line--unread" }, null, -1),
2359
2368
  i("span", { class: "wm-list__sep-label wm-list__sep-label--unread" }, "Non lus", -1),
2360
2369
  i("div", { class: "wm-list__line wm-list__line--unread" }, null, -1)
2361
- ])])) : w("", !0),
2362
- i("div", {
2370
+ ])])) : g("", !0),
2371
+ A.role === "system" || A.items.length ? (l(), d("div", {
2372
+ key: 1,
2363
2373
  class: B(["wm-list__group", "wm-list__group--" + A.role])
2364
2374
  }, [
2365
2375
  A.role === "system" ? (l(), d("div", gs, [
@@ -2385,8 +2395,8 @@ function Os(t, e, n, a, r, s) {
2385
2395
  "avatar-url": A.agentAvatarUrl,
2386
2396
  size: 26
2387
2397
  }, null, 8, ["name", "avatar-url"]))
2388
- ], 64)) : w("", !0)
2389
- ])) : w("", !0),
2398
+ ], 64)) : g("", !0)
2399
+ ])) : g("", !0),
2390
2400
  x.renderAs === "action" ? (l(), $(v, {
2391
2401
  key: 1,
2392
2402
  state: x.message.payload.state,
@@ -2404,11 +2414,11 @@ function Os(t, e, n, a, r, s) {
2404
2414
  key: 4,
2405
2415
  artifact: s.artifactOf(x.message)
2406
2416
  }, null, 8, ["artifact"])) : (l(), d("div", Cs, [
2407
- x.message.text_md ? (l(), $(g, {
2417
+ x.message.text_md ? (l(), $(w, {
2408
2418
  key: 0,
2409
2419
  role: A.role,
2410
2420
  text: x.message.text_md
2411
- }, null, 8, ["role", "text"])) : w("", !0),
2421
+ }, null, 8, ["role", "text"])) : g("", !0),
2412
2422
  s.attachmentsOf(x.message).length ? (l(), d("div", {
2413
2423
  key: 1,
2414
2424
  class: B(["wm-list__atts", { "wm-list__atts--align-end": A.role === "user" }])
@@ -2417,19 +2427,19 @@ function Os(t, e, n, a, r, s) {
2417
2427
  key: `${s.messageKey(x.message)}-att-${N}`,
2418
2428
  attachment: F
2419
2429
  }, null, 8, ["attachment"]))), 128))
2420
- ], 2)) : w("", !0)
2430
+ ], 2)) : g("", !0)
2421
2431
  ]))
2422
2432
  ], 14, bs))), 128)),
2423
- A.role !== "user" || s.lastTimeOf(A) ? (l(), d("div", {
2433
+ (A.role !== "user" || s.lastTimeOf(A)) && !s.hasTrailingOverlay(A) ? (l(), d("div", {
2424
2434
  key: 0,
2425
2435
  class: B(["wm-list__meta", { "wm-list__meta--right": A.role === "user" }])
2426
2436
  }, [
2427
- A.role !== "user" ? (l(), d("span", As, b(s.roleLabel(A)), 1)) : w("", !0),
2428
- A.role !== "user" && s.lastTimeOf(A) ? (l(), d("span", Ss, "·")) : w("", !0),
2429
- s.lastTimeOf(A) ? (l(), d("span", xs, b(s.lastTimeOf(A)), 1)) : w("", !0)
2430
- ], 2)) : w("", !0)
2437
+ A.role !== "user" ? (l(), d("span", As, b(s.roleLabel(A)), 1)) : g("", !0),
2438
+ A.role !== "user" && s.lastTimeOf(A) ? (l(), d("span", Ss, "·")) : g("", !0),
2439
+ s.lastTimeOf(A) ? (l(), d("span", xs, b(s.lastTimeOf(A)), 1)) : g("", !0)
2440
+ ], 2)) : g("", !0)
2431
2441
  ], 64))
2432
- ], 2)
2442
+ ], 2)) : g("", !0)
2433
2443
  ], 64))), 128)),
2434
2444
  n.streamingActive ? (l(), d("div", Ms, [
2435
2445
  i("div", Ts, [
@@ -2439,10 +2449,10 @@ function Os(t, e, n, a, r, s) {
2439
2449
  })
2440
2450
  ]),
2441
2451
  K(R)
2442
- ])) : w("", !0)
2452
+ ])) : g("", !0)
2443
2453
  ], 34);
2444
2454
  }
2445
- const Is = /* @__PURE__ */ E(ms, [["render", Os], ["__scopeId", "data-v-63002c7f"]]), ie = typeof navigator < "u" && !!navigator.mediaDevices && typeof navigator.mediaDevices.getDisplayMedia == "function", he = typeof window < "u" && typeof window.MediaRecorder < "u";
2455
+ const Is = /* @__PURE__ */ E(ms, [["render", Os], ["__scopeId", "data-v-6bd35fa5"]]), ie = typeof navigator < "u" && !!navigator.mediaDevices && typeof navigator.mediaDevices.getDisplayMedia == "function", he = typeof window < "u" && typeof window.MediaRecorder < "u";
2446
2456
  function Bs() {
2447
2457
  return he && [
2448
2458
  "video/webm;codecs=vp9,opus",
@@ -2500,54 +2510,54 @@ async function $s(t = {}) {
2500
2510
  let e;
2501
2511
  try {
2502
2512
  e = await navigator.mediaDevices.getDisplayMedia(Ce({ audio: !0 }));
2503
- } catch (g) {
2504
- return (g == null ? void 0 : g.name) !== "NotAllowedError" && console.error("[media] record picker", g), null;
2513
+ } catch (w) {
2514
+ return (w == null ? void 0 : w.name) !== "NotAllowedError" && console.error("[media] record picker", w), null;
2505
2515
  }
2506
2516
  const n = Bs();
2507
2517
  let a;
2508
2518
  try {
2509
2519
  a = n ? new window.MediaRecorder(e, { mimeType: n }) : new window.MediaRecorder(e);
2510
- } catch (g) {
2511
- return console.error("[media] recorder init", g), e.getTracks().forEach((S) => {
2520
+ } catch (w) {
2521
+ return console.error("[media] recorder init", w), e.getTracks().forEach((S) => {
2512
2522
  S.stop();
2513
2523
  }), null;
2514
2524
  }
2515
2525
  const r = [];
2516
2526
  let s = null, o = !1;
2517
- a.addEventListener("dataavailable", (g) => {
2518
- g.data && g.data.size > 0 && r.push(g.data);
2527
+ a.addEventListener("dataavailable", (w) => {
2528
+ w.data && w.data.size > 0 && r.push(w.data);
2519
2529
  }), a.addEventListener("stop", () => {
2520
- var g, S;
2530
+ var w, S;
2521
2531
  if (s && clearInterval(s), e.getTracks().forEach((R) => {
2522
2532
  R.stop();
2523
2533
  }), r.length) {
2524
2534
  const R = a.mimeType || n || "video/webm", A = new Blob(r, { type: R }), P = /mp4/.test(R) ? "mp4" : "webm", x = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-").slice(0, 19), U = new File([A], `ecran-${x}.${P}`, { type: R });
2525
- (g = t.onfinalize) == null || g.call(t, U);
2535
+ (w = t.onfinalize) == null || w.call(t, U);
2526
2536
  } else
2527
2537
  (S = t.oncancel) == null || S.call(t);
2528
- }), e.getVideoTracks().forEach((g) => {
2529
- g.addEventListener("ended", () => c(), { once: !0 });
2538
+ }), e.getVideoTracks().forEach((w) => {
2539
+ w.addEventListener("ended", () => c(), { once: !0 });
2530
2540
  });
2531
2541
  function c() {
2532
2542
  if (!o && (o = !0, a.state !== "inactive"))
2533
2543
  try {
2534
2544
  a.stop();
2535
- } catch (g) {
2536
- console.error("[media] recorder stop", g);
2545
+ } catch (w) {
2546
+ console.error("[media] recorder stop", w);
2537
2547
  }
2538
2548
  }
2539
2549
  try {
2540
2550
  a.start(1e3);
2541
- } catch (g) {
2542
- return console.error("[media] recorder start", g), e.getTracks().forEach((S) => {
2551
+ } catch (w) {
2552
+ return console.error("[media] recorder start", w), e.getTracks().forEach((S) => {
2543
2553
  S.stop();
2544
2554
  }), null;
2545
2555
  }
2546
2556
  (k = t.onstart) == null || k.call(t);
2547
2557
  const v = Date.now();
2548
2558
  return s = setInterval(() => {
2549
- var g;
2550
- (g = t.ontick) == null || g.call(t, Date.now() - v);
2559
+ var w;
2560
+ (w = t.ontick) == null || w.call(t, Date.now() - v);
2551
2561
  }, 500), {
2552
2562
  stop: c,
2553
2563
  get state() {
@@ -2723,7 +2733,7 @@ function Ys(t, e, n, a, r, s) {
2723
2733
  class: "wm-rec__stop",
2724
2734
  onClick: e[0] || (e[0] = (...o) => s.stopRecording && s.stopRecording(...o))
2725
2735
  }, "Arrêter")
2726
- ])) : w("", !0),
2736
+ ])) : g("", !0),
2727
2737
  i("form", {
2728
2738
  class: B(["wm-compose", { "has-attach": r.attachOpen }]),
2729
2739
  onSubmit: e[7] || (e[7] = ee((...o) => s.onSubmit && s.onSubmit(...o), ["prevent"]))
@@ -2739,7 +2749,7 @@ function Ys(t, e, n, a, r, s) {
2739
2749
  key: 0,
2740
2750
  class: "wm-compose__overlay",
2741
2751
  onClick: e[2] || (e[2] = (o) => r.attachOpen = !1)
2742
- })) : w("", !0),
2752
+ })) : g("", !0),
2743
2753
  r.attachOpen ? (l(), d("div", Ns, [
2744
2754
  (l(!0), d(M, null, j(s.attachItems, (o) => (l(), d("button", {
2745
2755
  key: o.action,
@@ -2762,7 +2772,7 @@ function Ys(t, e, n, a, r, s) {
2762
2772
  ]),
2763
2773
  i("span", null, b(o.label), 1)
2764
2774
  ], 8, Ps))), 128))
2765
- ])) : w("", !0),
2775
+ ])) : g("", !0),
2766
2776
  W(i("textarea", {
2767
2777
  ref: "inputEl",
2768
2778
  "onUpdate:modelValue": e[3] || (e[3] = (o) => r.local = o),
@@ -2852,7 +2862,7 @@ function Zs(t, e, n, a, r, s) {
2852
2862
  style: G({ animationDelay: n.baseDelay + c * n.stepDelay + "ms" }),
2853
2863
  onClick: (v) => t.$emit("select", o)
2854
2864
  }, b(o.label), 13, Qs))), 128))
2855
- ])) : w("", !0);
2865
+ ])) : g("", !0);
2856
2866
  }
2857
2867
  const er = /* @__PURE__ */ E(Xs, [["render", Zs], ["__scopeId", "data-v-55aa529d"]]), tr = {
2858
2868
  name: "WmApprovalCard",
@@ -2900,7 +2910,7 @@ function cr(t, e, n, a, r, s) {
2900
2910
  ]),
2901
2911
  i("div", ir, [
2902
2912
  i("div", ar, b(n.action), 1),
2903
- n.detail ? (l(), d("div", or, b(n.detail), 1)) : w("", !0)
2913
+ n.detail ? (l(), d("div", or, b(n.detail), 1)) : g("", !0)
2904
2914
  ])
2905
2915
  ]),
2906
2916
  i("div", lr, [
@@ -2909,13 +2919,13 @@ function cr(t, e, n, a, r, s) {
2909
2919
  type: "button",
2910
2920
  class: "wm-approval__btn wm-approval__btn--neutral",
2911
2921
  onClick: e[0] || (e[0] = (c) => t.$emit("callback", s.rejectId))
2912
- }, b(s.rejectLabel), 1)) : w("", !0),
2922
+ }, b(s.rejectLabel), 1)) : g("", !0),
2913
2923
  s.approveId ? (l(), d("button", {
2914
2924
  key: 1,
2915
2925
  type: "button",
2916
2926
  class: "wm-approval__btn wm-approval__btn--primary",
2917
2927
  onClick: e[1] || (e[1] = (c) => t.$emit("callback", s.approveId))
2918
- }, b(s.approveLabel), 1)) : w("", !0)
2928
+ }, b(s.approveLabel), 1)) : g("", !0)
2919
2929
  ])
2920
2930
  ]);
2921
2931
  }
@@ -3039,7 +3049,7 @@ function Fr(t, e, n, a, r, s) {
3039
3049
  ]),
3040
3050
  i("div", pr, [
3041
3051
  i("div", vr, b(n.form.title || "Formulaire"), 1),
3042
- n.form.description ? (l(), d("div", yr, b(n.form.description), 1)) : w("", !0)
3052
+ n.form.description ? (l(), d("div", yr, b(n.form.description), 1)) : g("", !0)
3043
3053
  ])
3044
3054
  ]),
3045
3055
  i("form", {
@@ -3055,7 +3065,7 @@ function Fr(t, e, n, a, r, s) {
3055
3065
  class: "wm-form__label"
3056
3066
  }, [
3057
3067
  oe(b(c.label), 1),
3058
- c.required ? (l(), d("span", wr, "*")) : w("", !0)
3068
+ c.required ? (l(), d("span", wr, "*")) : g("", !0)
3059
3069
  ], 8, gr),
3060
3070
  c.type === "text" ? W((l(), d("input", {
3061
3071
  key: 0,
@@ -3144,16 +3154,16 @@ function Fr(t, e, n, a, r, s) {
3144
3154
  }, null, 40, Br),
3145
3155
  i("span", null, b(v.label), 1)
3146
3156
  ]))), 128))
3147
- ])) : w("", !0)
3157
+ ])) : g("", !0)
3148
3158
  ]))), 128)),
3149
- r.error ? (l(), d("div", Er, b(r.error), 1)) : w("", !0),
3159
+ r.error ? (l(), d("div", Er, b(r.error), 1)) : g("", !0),
3150
3160
  n.readOnly ? (l(), d("div", Rr, "Réponse envoyée")) : (l(), d("button", {
3151
3161
  key: 1,
3152
3162
  type: "submit",
3153
3163
  class: "wm-form__submit",
3154
3164
  disabled: r.busy
3155
3165
  }, [
3156
- r.busy ? (l(), d("span", $r)) : w("", !0),
3166
+ r.busy ? (l(), d("span", $r)) : g("", !0),
3157
3167
  i("span", null, b(r.busy ? "Envoi…" : n.form.submit_label || "Envoyer"), 1)
3158
3168
  ], 8, Lr))
3159
3169
  ], 32)
@@ -3398,7 +3408,7 @@ function mi(t, e, n, a, r, s) {
3398
3408
  opacity: "0.92"
3399
3409
  })
3400
3410
  ], -1)),
3401
- c.unread ? (l(), d("span", oi)) : w("", !0)
3411
+ c.unread ? (l(), d("span", oi)) : g("", !0)
3402
3412
  ]),
3403
3413
  i("div", li, [
3404
3414
  i("div", ci, [
@@ -3408,9 +3418,9 @@ function mi(t, e, n, a, r, s) {
3408
3418
  ])
3409
3419
  ], 10, ii))), 128))
3410
3420
  ])
3411
- ])) : w("", !0)
3421
+ ])) : g("", !0)
3412
3422
  ], 64))), 128)),
3413
- s.hasAny ? w("", !0) : (l(), d("div", hi, " Aucun fil pour le moment. "))
3423
+ s.hasAny ? g("", !0) : (l(), d("div", hi, " Aucun fil pour le moment. "))
3414
3424
  ])
3415
3425
  ])
3416
3426
  ]);
@@ -3483,7 +3493,7 @@ function bi(t, e, n, a, r, s) {
3483
3493
  onClick: e[2] || (e[2] = (o) => s.emit("rename"))
3484
3494
  }, [...e[9] || (e[9] = [
3485
3495
  ue('<span class="wm-mm__icon" data-v-c1bb81d2><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" data-v-c1bb81d2><path d="M12 20h9" data-v-c1bb81d2></path><path d="M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z" data-v-c1bb81d2></path></svg></span><span class="wm-mm__label" data-v-c1bb81d2>Renommer le fil</span>', 2)
3486
- ])])) : w("", !0),
3496
+ ])])) : g("", !0),
3487
3497
  n.canClear ? (l(), d("button", {
3488
3498
  key: 1,
3489
3499
  type: "button",
@@ -3506,7 +3516,7 @@ function bi(t, e, n, a, r, s) {
3506
3516
  ])
3507
3517
  ], -1),
3508
3518
  i("span", { class: "wm-mm__label" }, "Effacer ce fil", -1)
3509
- ])])) : w("", !0),
3519
+ ])])) : g("", !0),
3510
3520
  n.canExport ? (l(), d("button", {
3511
3521
  key: 2,
3512
3522
  type: "button",
@@ -3514,7 +3524,7 @@ function bi(t, e, n, a, r, s) {
3514
3524
  onClick: e[4] || (e[4] = (o) => s.emit("export"))
3515
3525
  }, [...e[11] || (e[11] = [
3516
3526
  ue('<span class="wm-mm__icon" data-v-c1bb81d2><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" data-v-c1bb81d2><path d="M4 12v8a2 2 0 002 2h12a2 2 0 002-2v-8M16 6l-4-4-4 4M12 2v13" data-v-c1bb81d2></path></svg></span><span class="wm-mm__label" data-v-c1bb81d2>Exporter la transcription</span><span class="wm-mm__hint" data-v-c1bb81d2>.txt</span>', 3)
3517
- ])])) : w("", !0)
3527
+ ])])) : g("", !0)
3518
3528
  ]),
3519
3529
  e[17] || (e[17] = i("div", { class: "wm-mm__sep" }, null, -1)),
3520
3530
  i("div", gi, [
@@ -3570,7 +3580,7 @@ function bi(t, e, n, a, r, s) {
3570
3580
  ])
3571
3581
  ], -1),
3572
3582
  i("span", { class: "wm-mm__label" }, "Statut des services", -1)
3573
- ])])) : w("", !0),
3583
+ ])])) : g("", !0),
3574
3584
  n.helpUrl ? (l(), d("button", {
3575
3585
  key: 1,
3576
3586
  type: "button",
@@ -3593,7 +3603,7 @@ function bi(t, e, n, a, r, s) {
3593
3603
  ])
3594
3604
  ], -1),
3595
3605
  i("span", { class: "wm-mm__label" }, "Centre d'aide", -1)
3596
- ])])) : w("", !0)
3606
+ ])])) : g("", !0)
3597
3607
  ])
3598
3608
  ])
3599
3609
  ]);
@@ -4021,7 +4031,7 @@ const Si = 450, xi = 50, Mi = 900, Ti = 12e3, Oi = 300, Ii = {
4021
4031
  const e = (v = (c = (o = this.pendingApproval) == null ? void 0 : o.payload) == null ? void 0 : c.pending) == null ? void 0 : v.prepared_params;
4022
4032
  if (!e || typeof e != "object") return "";
4023
4033
  const n = Object.entries(e);
4024
- return n.length ? n.slice(0, 2).map(([k, g]) => `${k}: ${g}`).join(" · ") : "";
4034
+ return n.length ? n.slice(0, 2).map(([k, w]) => `${k}: ${w}`).join(" · ") : "";
4025
4035
  },
4026
4036
  actionInFlight() {
4027
4037
  var t, e;
@@ -4352,11 +4362,11 @@ const Si = 450, xi = 50, Mi = 900, Ti = 12e3, Oi = 300, Ii = {
4352
4362
  ) + a;
4353
4363
  this.nextRevealAt = s;
4354
4364
  const o = Math.max(0, s - e), c = t.id, v = setTimeout(() => {
4355
- this.revealedAt = { ...this.revealedAt, [c]: Date.now() }, this.revealTimers = this.revealTimers.filter((g) => g !== v);
4365
+ this.revealedAt = { ...this.revealedAt, [c]: Date.now() }, this.revealTimers = this.revealTimers.filter((w) => w !== v);
4356
4366
  }, o);
4357
4367
  this.revealTimers.push(v);
4358
4368
  const k = setTimeout(() => {
4359
- this.revealedAt[c] > 0 || (this.revealedAt = { ...this.revealedAt, [c]: Date.now() }), this.revealTimers = this.revealTimers.filter((g) => g !== k);
4369
+ this.revealedAt[c] > 0 || (this.revealedAt = { ...this.revealedAt, [c]: Date.now() }), this.revealTimers = this.revealTimers.filter((w) => w !== k);
4360
4370
  }, o + 4e3);
4361
4371
  this.revealTimers.push(k);
4362
4372
  },
@@ -4519,18 +4529,18 @@ const Si = 450, xi = 50, Mi = 900, Ti = 12e3, Oi = 300, Ii = {
4519
4529
  t.created_at ? `Créée le : ${t.created_at}` : "",
4520
4530
  ""
4521
4531
  ];
4522
- for (const g of e) {
4523
- if (!g) continue;
4524
- const S = ((o = g.author) == null ? void 0 : o.name) || (((c = g.author) == null ? void 0 : c.type) === "user" ? "Vous" : ((v = g.author) == null ? void 0 : v.type) === "agent_human" ? "Agent" : ((k = g.author) == null ? void 0 : k.type) === "agent_ia" ? "Assistant IA" : "Système"), R = g.created_at ? new Date(g.created_at).toLocaleString("fr-FR") : "", A = (g.text_md || "").trim();
4532
+ for (const w of e) {
4533
+ if (!w) continue;
4534
+ const S = ((o = w.author) == null ? void 0 : o.name) || (((c = w.author) == null ? void 0 : c.type) === "user" ? "Vous" : ((v = w.author) == null ? void 0 : v.type) === "agent_human" ? "Agent" : ((k = w.author) == null ? void 0 : k.type) === "agent_ia" ? "Assistant IA" : "Système"), R = w.created_at ? new Date(w.created_at).toLocaleString("fr-FR") : "", A = (w.text_md || "").trim();
4525
4535
  A && (n.push(`[${R}] ${S} :`), n.push(A), n.push(""));
4526
4536
  }
4527
4537
  const a = new Blob([n.join(`
4528
4538
  `)], { type: "text/plain;charset=utf-8" });
4529
4539
  try {
4530
- const g = URL.createObjectURL(a), S = document.createElement("a");
4531
- S.href = g, S.download = `${(t.name || "conversation").replace(/[^a-z0-9-_]+/gi, "_")}.txt`, document.body.appendChild(S), S.click(), document.body.removeChild(S), setTimeout(() => URL.revokeObjectURL(g), 1e3);
4532
- } catch (g) {
4533
- console.error("[ww-messenger] export failed", g);
4540
+ const w = URL.createObjectURL(a), S = document.createElement("a");
4541
+ S.href = w, S.download = `${(t.name || "conversation").replace(/[^a-z0-9-_]+/gi, "_")}.txt`, document.body.appendChild(S), S.click(), document.body.removeChild(S), setTimeout(() => URL.revokeObjectURL(w), 1e3);
4542
+ } catch (w) {
4543
+ console.error("[ww-messenger] export failed", w);
4534
4544
  }
4535
4545
  },
4536
4546
  async onSend(t) {
@@ -4627,7 +4637,7 @@ const Si = 450, xi = 50, Mi = 900, Ti = 12e3, Oi = 300, Ii = {
4627
4637
  class: "wm-attached"
4628
4638
  }, Ni = ["onClick"];
4629
4639
  function Pi(t, e, n, a, r, s) {
4630
- const o = I("Launcher"), c = I("Header"), v = I("Onboarding"), k = I("MessageList"), g = I("ApprovalCard"), S = I("FormCard"), R = I("Feedback"), A = I("SuggestionChips"), P = I("Composer"), x = I("MoreMenu"), U = I("HistoryDrawer");
4640
+ const o = I("Launcher"), c = I("Header"), v = I("Onboarding"), k = I("MessageList"), w = I("ApprovalCard"), S = I("FormCard"), R = I("Feedback"), A = I("SuggestionChips"), P = I("Composer"), x = I("MoreMenu"), U = I("HistoryDrawer");
4631
4641
  return l(), d("div", {
4632
4642
  class: B(["wm-root", `wm-root--${n.displayMode}`])
4633
4643
  }, [
@@ -4637,7 +4647,7 @@ function Pi(t, e, n, a, r, s) {
4637
4647
  peek: s.launcherPeek,
4638
4648
  onOpen: s.openFromPeek,
4639
4649
  onDismiss: e[0] || (e[0] = (F) => r.labelDismissed = !0)
4640
- }, null, 8, ["unread-count", "peek", "onOpen"])) : w("", !0),
4650
+ }, null, 8, ["unread-count", "peek", "onOpen"])) : g("", !0),
4641
4651
  r.isOpen || s.isEmbedded ? (l(), d("section", {
4642
4652
  key: 1,
4643
4653
  class: B(["wm-panel", `wm-panel--${n.displayMode}`]),
@@ -4646,7 +4656,7 @@ function Pi(t, e, n, a, r, s) {
4646
4656
  "aria-label": "Messenger"
4647
4657
  }, [
4648
4658
  !s.ready && !s.error ? (l(), d("div", Bi, [
4649
- s.isEmbedded ? w("", !0) : (l(), d("button", {
4659
+ s.isEmbedded ? g("", !0) : (l(), d("button", {
4650
4660
  key: 0,
4651
4661
  type: "button",
4652
4662
  class: "wm-loading__close",
@@ -4724,7 +4734,7 @@ function Pi(t, e, n, a, r, s) {
4724
4734
  }, null, 8, ["messages", "streaming-active", "date-label", "conversation-id", "loading-more", "has-more", "unread-anchor-ts", "unread-boundary-ts", "onLoadMore"]),
4725
4735
  i("div", Ri, [
4726
4736
  s.floatVisible ? (l(), d("div", Fi, [
4727
- s.approvalReady ? (l(), $(g, {
4737
+ s.approvalReady ? (l(), $(w, {
4728
4738
  key: 0,
4729
4739
  action: s.approvalTitle,
4730
4740
  detail: s.approvalDetail,
@@ -4744,7 +4754,7 @@ function Pi(t, e, n, a, r, s) {
4744
4754
  items: s.suggestions,
4745
4755
  onSelect: s.onSuggestion
4746
4756
  }, null, 8, ["items", "onSelect"]))
4747
- ], 512)) : w("", !0),
4757
+ ], 512)) : g("", !0),
4748
4758
  s.actionInFlight ? (l(), d("div", ji, [
4749
4759
  e[10] || (e[10] = i("span", {
4750
4760
  class: "wm-actionWait__spinner",
@@ -4774,7 +4784,7 @@ function Pi(t, e, n, a, r, s) {
4774
4784
  onClose: e[3] || (e[3] = (F) => r.moreOpen = !1),
4775
4785
  onNotifToggle: s.onNotifToggle,
4776
4786
  onAction: s.onMoreAction
4777
- }, null, 8, ["can-rename", "can-clear", "can-export", "notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : w("", !0),
4787
+ }, null, 8, ["can-rename", "can-clear", "can-export", "notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : g("", !0),
4778
4788
  r.pendingAttachments.length ? (l(), d("div", Ui, [
4779
4789
  (l(!0), d(M, null, j(r.pendingAttachments, (F, N) => (l(), d("div", {
4780
4790
  key: N,
@@ -4814,7 +4824,7 @@ function Pi(t, e, n, a, r, s) {
4814
4824
  ], -1)
4815
4825
  ])], 8, Ni)
4816
4826
  ]))), 128))
4817
- ])) : w("", !0)
4827
+ ])) : g("", !0)
4818
4828
  ], 64)) : (l(), $(v, {
4819
4829
  key: 1,
4820
4830
  "welcome-message": s.widgetWelcomeMessage,
@@ -4833,7 +4843,7 @@ function Pi(t, e, n, a, r, s) {
4833
4843
  onClose: e[4] || (e[4] = (F) => r.historyOpen = !1),
4834
4844
  onNew: s.onDrawerNew,
4835
4845
  onPick: s.onDrawerPick
4836
- }, null, 8, ["conversations", "active-id", "onNew", "onPick"])) : w("", !0),
4846
+ }, null, 8, ["conversations", "active-id", "onNew", "onPick"])) : g("", !0),
4837
4847
  r.moreOpen && !s.currentConv ? (l(), $(x, {
4838
4848
  key: 4,
4839
4849
  "can-rename": !1,
@@ -4845,12 +4855,12 @@ function Pi(t, e, n, a, r, s) {
4845
4855
  onClose: e[5] || (e[5] = (F) => r.moreOpen = !1),
4846
4856
  onNotifToggle: s.onNotifToggle,
4847
4857
  onAction: s.onMoreAction
4848
- }, null, 8, ["notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : w("", !0)
4858
+ }, null, 8, ["notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : g("", !0)
4849
4859
  ], 64))
4850
- ], 6)) : w("", !0)
4860
+ ], 6)) : g("", !0)
4851
4861
  ], 2);
4852
4862
  }
4853
- const Vi = /* @__PURE__ */ E(Ii, [["render", Pi], ["__scopeId", "data-v-29568eac"]]), qi = "0.2.30";
4863
+ const Vi = /* @__PURE__ */ E(Ii, [["render", Pi], ["__scopeId", "data-v-29568eac"]]), qi = "0.2.32";
4854
4864
  export {
4855
4865
  te as AIAvatar,
4856
4866
  ce as AVATAR_COLORS,