@_solaris/messenger-widget 0.2.18 → 0.2.19

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 z, Transition as Se, withCtx as xe, withKeys as me, withModifiers as Y, createElementVNode as i, toDisplayString as b, createCommentVNode as y, normalizeStyle as V, normalizeClass as E, Fragment as M, renderList as $, resolveComponent as O, createBlock as R, createTextVNode as re, resolveDynamicComponent as Me, renderSlot as Te, withDirectives as H, vModelText as G, vModelCheckbox as Ie, vModelSelect as Oe, createStaticVNode as ue, markRaw as fe } from "vue";
1
+ import { reactive as Ae, openBlock as l, createElementBlock as d, createVNode as z, Transition as Se, withCtx as xe, withKeys as me, withModifiers as J, createElementVNode as i, toDisplayString as b, createCommentVNode as w, normalizeStyle as V, normalizeClass as E, Fragment as M, renderList as j, resolveComponent as O, createBlock as R, createTextVNode as re, resolveDynamicComponent as Me, renderSlot as Te, withDirectives as H, vModelText as K, vModelCheckbox as Ie, vModelSelect as Oe, createStaticVNode as ue, markRaw as fe } from "vue";
2
2
  const Ee = [
3
3
  "connected",
4
4
  "message",
@@ -100,7 +100,7 @@ function $e(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 w(h) {
103
+ async function y(h) {
104
104
  const f = await o("PATCH", "/customers/me", h);
105
105
  return (f == null ? void 0 : f.customer) ?? null;
106
106
  }
@@ -108,7 +108,7 @@ function $e(t) {
108
108
  const h = await o("GET", "/conversations");
109
109
  return (h == null ? void 0 : h.conversations) ?? [];
110
110
  }
111
- async function F(h = {}) {
111
+ async function $(h = {}) {
112
112
  return (await o("POST", "/conversations", h)).conversation;
113
113
  }
114
114
  async function A(h) {
@@ -126,8 +126,8 @@ function $e(t) {
126
126
  `/conversations/${encodeURIComponent(h)}/messages${k}`
127
127
  );
128
128
  }
129
- async function D(h, f) {
130
- W();
129
+ async function U(h, f) {
130
+ G();
131
131
  const _ = {
132
132
  client_msg_id: f.client_msg_id,
133
133
  type: "content",
@@ -141,8 +141,8 @@ function $e(t) {
141
141
  _
142
142
  );
143
143
  }
144
- async function j(h, f, _) {
145
- return W(), o(
144
+ async function F(h, f, _) {
145
+ return G(), o(
146
146
  "POST",
147
147
  `/messages/${encodeURIComponent(h)}/callbacks/${encodeURIComponent(f)}`,
148
148
  _ ? { inputs: _ } : {}
@@ -173,7 +173,7 @@ function $e(t) {
173
173
  size_bytes: k
174
174
  };
175
175
  }
176
- async function X(h) {
176
+ async function q(h) {
177
177
  return o(
178
178
  "GET",
179
179
  `/attachments/sign?path=${encodeURIComponent(h)}`
@@ -187,7 +187,7 @@ function $e(t) {
187
187
  }).toString();
188
188
  return `${e.baseUrl}/stream?${h}`;
189
189
  }
190
- function q() {
190
+ function W() {
191
191
  if (!e.eventSource && !(typeof document < "u" && document.hidden))
192
192
  try {
193
193
  const h = new EventSource(ie());
@@ -206,16 +206,16 @@ function $e(t) {
206
206
  console.error("[transport] bad SSE payload", h, _);
207
207
  }
208
208
  }
209
- function K() {
209
+ function Y() {
210
210
  e.eventSource && (e.eventSource.close(), e.eventSource = null), e.connection !== "paused" && r("idle");
211
211
  }
212
- function W() {
213
- clearTimeout(e.burstTimer), q(), e.panelOpen || (e.burstTimer = setTimeout(() => {
214
- e.panelOpen || K();
212
+ function G() {
213
+ clearTimeout(e.burstTimer), W(), e.panelOpen || (e.burstTimer = setTimeout(() => {
214
+ e.panelOpen || Y();
215
215
  }, Le));
216
216
  }
217
217
  function oe(h) {
218
- e.panelOpen = !!h, e.panelOpen ? (clearTimeout(e.burstTimer), q()) : W();
218
+ e.panelOpen = !!h, e.panelOpen ? (clearTimeout(e.burstTimer), W()) : G();
219
219
  }
220
220
  async function le() {
221
221
  try {
@@ -223,7 +223,7 @@ function $e(t) {
223
223
  const T = I == null ? void 0 : I.last_message_at;
224
224
  return T && (!k || T > k) ? T : k;
225
225
  }, null);
226
- f && (!e.lastActivityAt || f > e.lastActivityAt) && (e.lastActivityAt = f, a("activity", { conversations: h, latestAt: f }), W());
226
+ f && (!e.lastActivityAt || f > e.lastActivityAt) && (e.lastActivityAt = f, a("activity", { conversations: h, latestAt: f }), G());
227
227
  } catch (h) {
228
228
  console.error("[transport] poll failed", h);
229
229
  }
@@ -237,14 +237,14 @@ function $e(t) {
237
237
  function m() {
238
238
  if (document.hidden)
239
239
  clearTimeout(e.hiddenGraceTimer), e.hiddenGraceTimer = setTimeout(() => {
240
- e.hiddenGraceTimer = null, document.hidden && (u(), K(), r("paused"));
240
+ e.hiddenGraceTimer = null, document.hidden && (u(), Y(), r("paused"));
241
241
  }, Re);
242
242
  else {
243
243
  if (e.hiddenGraceTimer) {
244
244
  clearTimeout(e.hiddenGraceTimer), e.hiddenGraceTimer = null;
245
245
  return;
246
246
  }
247
- r("idle"), Q(), e.panelOpen && q();
247
+ r("idle"), Q(), e.panelOpen && W();
248
248
  }
249
249
  }
250
250
  async function p() {
@@ -264,7 +264,7 @@ function $e(t) {
264
264
  return typeof document < "u" && (e.visibilityHandler = m, document.addEventListener("visibilitychange", e.visibilityHandler)), Q(), h;
265
265
  }
266
266
  function g() {
267
- u(), clearTimeout(e.burstTimer), clearTimeout(e.hiddenGraceTimer), e.hiddenGraceTimer = null, K(), e.visibilityHandler && (document.removeEventListener("visibilitychange", e.visibilityHandler), e.visibilityHandler = null), e.started = !1;
267
+ u(), clearTimeout(e.burstTimer), clearTimeout(e.hiddenGraceTimer), e.hiddenGraceTimer = null, Y(), e.visibilityHandler && (document.removeEventListener("visibilitychange", e.visibilityHandler), e.visibilityHandler = null), e.started = !1;
268
268
  }
269
269
  return {
270
270
  on: n,
@@ -274,16 +274,16 @@ function $e(t) {
274
274
  // REST
275
275
  bootstrap: v,
276
276
  getCustomer: C,
277
- patchCustomer: w,
277
+ patchCustomer: y,
278
278
  listConversations: S,
279
- createConversation: F,
279
+ createConversation: $,
280
280
  getConversation: A,
281
281
  patchConversation: N,
282
282
  listMessages: x,
283
- postMessage: D,
284
- postCallback: j,
283
+ postMessage: U,
284
+ postCallback: F,
285
285
  uploadAttachment: P,
286
- signAttachment: X,
286
+ signAttachment: q,
287
287
  // Read-only state
288
288
  get connection() {
289
289
  return e.connection;
@@ -344,7 +344,7 @@ function De(t) {
344
344
  e.connection = u;
345
345
  })), n.push(t.on("message", (u) => {
346
346
  const m = u == null ? void 0 : u.conversation_id, p = u == null ? void 0 : u.message;
347
- !m || !(p != null && p.id) || (q(m, p), p.client_msg_id && delete e.streamingByMsgId[p.client_msg_id], W(m, p.created_at));
347
+ !m || !(p != null && p.id) || (W(m, p), p.client_msg_id && delete e.streamingByMsgId[p.client_msg_id], G(m, p.created_at));
348
348
  })), n.push(t.on("message_stream", (u) => {
349
349
  const m = u == null ? void 0 : u.message_id, p = u == null ? void 0 : u.token;
350
350
  !m || typeof p != "string" || (e.streamingByMsgId[m] = (e.streamingByMsgId[m] || "") + p);
@@ -400,7 +400,7 @@ function De(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) ?? [], w(u, {
403
+ e.messagesByConv[u] = (m == null ? void 0 : m.messages) ?? [], y(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 De(t) {
409
409
  async function C(u) {
410
410
  const m = e.paginationByConv[u];
411
411
  if (!(!m || m.loading || !m.nextCursor)) {
412
- w(u, { ...m, loading: !0 });
412
+ y(u, { ...m, loading: !0 });
413
413
  try {
414
414
  let h = m.nextCursor, f = [], _ = 0;
415
415
  for (; _ < 6 && h; _++) {
@@ -420,24 +420,24 @@ function De(t) {
420
420
  if (f = [...Z, ...f], h = (L == null ? void 0 : L.next_cursor) ?? null, !Z.length || f.length >= 60) break;
421
421
  }
422
422
  const k = e.messagesByConv[u] || [], I = new Set(k.map((L) => String(L == null ? void 0 : L.id))), T = [...f.filter((L) => !I.has(String(L == null ? void 0 : L.id))), ...k];
423
- e.messagesByConv[u] = T, w(u, {
423
+ e.messagesByConv[u] = T, y(u, {
424
424
  nextCursor: h,
425
425
  loading: !1,
426
426
  loaded: !0
427
427
  });
428
428
  } catch (p) {
429
- console.error("[store] loadMore failed", p), w(u, { ...m, loading: !1 });
429
+ console.error("[store] loadMore failed", p), y(u, { ...m, loading: !1 });
430
430
  }
431
431
  }
432
432
  }
433
- function w(u, m) {
433
+ function y(u, m) {
434
434
  e.paginationByConv = { ...e.paginationByConv, [u]: m };
435
435
  }
436
436
  async function S(u, m) {
437
437
  const p = await t.patchConversation(u, m), g = e.conversations.findIndex((h) => h.id === u);
438
438
  g !== -1 && (e.conversations[g] = p);
439
439
  }
440
- async function F(u, m, { attachments: p, metadata: g } = {}) {
440
+ async function $(u, m, { attachments: p, metadata: g } = {}) {
441
441
  var T;
442
442
  const h = (m || "").trim(), f = Array.isArray(p) && p.length > 0;
443
443
  if (!u || !h && !f) return;
@@ -457,7 +457,7 @@ function De(t) {
457
457
  ...f ? { payload: { type: "content", attachments: p } } : {},
458
458
  ...g && typeof g == "object" ? { metadata: g } : {}
459
459
  };
460
- q(u, I);
460
+ W(u, I);
461
461
  try {
462
462
  await t.postMessage(u, {
463
463
  client_msg_id: _,
@@ -467,7 +467,7 @@ function De(t) {
467
467
  ...g && typeof g == "object" ? { metadata: g } : {}
468
468
  });
469
469
  } catch (L) {
470
- console.error("[store] send failed", L), K(u, _, { _failed: !0, _pending: !1 });
470
+ console.error("[store] send failed", L), Y(u, _, { _failed: !0, _pending: !1 });
471
471
  }
472
472
  }
473
473
  async function A(u, m, p) {
@@ -495,7 +495,7 @@ function De(t) {
495
495
  }
496
496
  return null;
497
497
  }
498
- async function D(u, { rating: m, comment: p } = {}) {
498
+ async function U(u, { rating: m, comment: p } = {}) {
499
499
  const g = e.conversations.find((_) => _.id === u), f = {
500
500
  ...(g == null ? void 0 : g.metadata) || {},
501
501
  feedback: {
@@ -506,7 +506,7 @@ function De(t) {
506
506
  };
507
507
  await S(u, { metadata: f });
508
508
  }
509
- function j(u) {
509
+ function F(u) {
510
510
  var p, g;
511
511
  const m = e.messagesByConv[u] || [];
512
512
  for (let h = m.length - 1; h >= 0; h--) {
@@ -528,7 +528,7 @@ function De(t) {
528
528
  }
529
529
  return null;
530
530
  }
531
- function X(u) {
531
+ function q(u) {
532
532
  const m = e.runningActionsByConv[u];
533
533
  if (!m) return null;
534
534
  const p = Object.keys(m);
@@ -561,7 +561,7 @@ function De(t) {
561
561
  }
562
562
  return [];
563
563
  }
564
- function q(u, m) {
564
+ function W(u, m) {
565
565
  var f;
566
566
  const p = e.messagesByConv[u] || [];
567
567
  let g = -1;
@@ -574,7 +574,7 @@ function De(t) {
574
574
  function ae(u, m) {
575
575
  return u === m ? !0 : u == null || m == null ? !1 : String(u) === String(m);
576
576
  }
577
- function K(u, m, p) {
577
+ function Y(u, m, p) {
578
578
  const g = e.messagesByConv[u];
579
579
  if (!g) return;
580
580
  const h = g.findIndex((_) => _.id === m);
@@ -582,7 +582,7 @@ function De(t) {
582
582
  const f = g.slice();
583
583
  f[h] = { ...g[h], ...p }, e.messagesByConv[u] = f;
584
584
  }
585
- function W(u, m) {
585
+ function G(u, m) {
586
586
  const p = e.conversations.findIndex((h) => h.id === u);
587
587
  if (p === -1) return;
588
588
  const g = e.conversations[p];
@@ -620,19 +620,19 @@ function De(t) {
620
620
  openConversation: v,
621
621
  loadMore: C,
622
622
  patchConversation: S,
623
- send: F,
623
+ send: $,
624
624
  clickCallback: A,
625
625
  signAttachment: x,
626
- submitFeedback: D,
627
- getPendingApproval: j,
628
- getActionInFlight: X,
626
+ submitFeedback: U,
627
+ getPendingApproval: F,
628
+ getActionInFlight: q,
629
629
  getLatestSuggestions: ie,
630
630
  getLatestForm: P,
631
631
  // Pass-through for panel open/close (controls SSE burst).
632
632
  setPanelOpen: t.setPanelOpen
633
633
  };
634
634
  }
635
- const U = {
635
+ const D = {
636
636
  w: "#ffffff",
637
637
  g50: "#F9F9F7",
638
638
  g100: "#F2F1EE",
@@ -664,21 +664,21 @@ const Ne = `
664
664
  .wm-root {
665
665
  --wm-f: 'Geist', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
666
666
  --wm-fm: 'Geist Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
667
- --wm-w: ${U.w};
668
- --wm-g50: ${U.g50};
669
- --wm-g100: ${U.g100};
670
- --wm-g150: ${U.g150};
671
- --wm-g200: ${U.g200};
672
- --wm-g300: ${U.g300};
673
- --wm-g400: ${U.g400};
674
- --wm-g500: ${U.g500};
675
- --wm-g700: ${U.g700};
676
- --wm-g900: ${U.g900};
677
- --wm-a: ${U.accent};
678
- --wm-al: ${U.accentLight};
679
- --wm-green: ${U.green};
680
- --wm-red: ${U.red};
681
- --wm-redBg: ${U.redBg};
667
+ --wm-w: ${D.w};
668
+ --wm-g50: ${D.g50};
669
+ --wm-g100: ${D.g100};
670
+ --wm-g150: ${D.g150};
671
+ --wm-g200: ${D.g200};
672
+ --wm-g300: ${D.g300};
673
+ --wm-g400: ${D.g400};
674
+ --wm-g500: ${D.g500};
675
+ --wm-g700: ${D.g700};
676
+ --wm-g900: ${D.g900};
677
+ --wm-a: ${D.accent};
678
+ --wm-al: ${D.accentLight};
679
+ --wm-green: ${D.green};
680
+ --wm-red: ${D.red};
681
+ --wm-redBg: ${D.redBg};
682
682
  --wm-sh1: 0 1px 3px rgba(0,0,0,.06);
683
683
  --wm-sh2: 0 4px 24px rgba(0,0,0,.09), 0 1px 4px rgba(0,0,0,.05);
684
684
  --wm-shPanel: 0 12px 40px rgba(0,0,0,.13), 0 2px 8px rgba(0,0,0,.06);
@@ -732,8 +732,8 @@ function We(t, e, n, a, r, s) {
732
732
  "aria-label": "Ouvrir le messenger sur le dernier message",
733
733
  onClick: e[1] || (e[1] = (o) => t.$emit("open")),
734
734
  onKeydown: [
735
- e[2] || (e[2] = me(Y((o) => t.$emit("open"), ["prevent"]), ["enter"])),
736
- e[3] || (e[3] = me(Y((o) => t.$emit("open"), ["prevent"]), ["space"]))
735
+ e[2] || (e[2] = me(J((o) => t.$emit("open"), ["prevent"]), ["enter"])),
736
+ e[3] || (e[3] = me(J((o) => t.$emit("open"), ["prevent"]), ["space"]))
737
737
  ]
738
738
  }, [
739
739
  i("p", Ve, b(n.peek), 1),
@@ -741,7 +741,7 @@ function We(t, e, n, a, r, s) {
741
741
  type: "button",
742
742
  class: "wm-peek__close",
743
743
  "aria-label": "Ignorer",
744
- onClick: e[0] || (e[0] = Y((o) => t.$emit("dismiss"), ["stop"]))
744
+ onClick: e[0] || (e[0] = J((o) => t.$emit("dismiss"), ["stop"]))
745
745
  }, [...e[5] || (e[5] = [
746
746
  i("svg", {
747
747
  width: "11",
@@ -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)) : y("", !0)
760
+ ], 32)) : w("", !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)) : y("", !0)
787
+ }, b(n.unreadCount > 9 ? "9+" : n.unreadCount), 9, qe)) : w("", !0)
788
788
  ])
789
789
  ]);
790
790
  }
@@ -809,7 +809,7 @@ function Xe(t, e, n, a, r, s) {
809
809
  class: E(["wm-aiav", { "wm-aiav--tail": n.tail }]),
810
810
  style: V({ width: n.size + "px", height: n.size + "px", "--wm-avr": n.size * 0.32 + "px" })
811
811
  }, [
812
- n.pulse ? (l(), d("div", Ye)) : y("", !0),
812
+ n.pulse ? (l(), d("div", Ye)) : w("", !0),
813
813
  i("div", {
814
814
  class: E(["wm-aiav__inner", { "wm-aiav__inner--glow": n.pulse }])
815
815
  }, [
@@ -843,7 +843,7 @@ function Xe(t, e, n, a, r, s) {
843
843
  ], 2)
844
844
  ], 6);
845
845
  }
846
- const J = /* @__PURE__ */ B(Ke, [["render", Xe], ["__scopeId", "data-v-8c924688"]]), Qe = {
846
+ const X = /* @__PURE__ */ B(Ke, [["render", Xe], ["__scopeId", "data-v-8c924688"]]), Qe = {
847
847
  name: "WmHumanAvatar",
848
848
  props: {
849
849
  name: { type: String, default: "" },
@@ -914,7 +914,7 @@ function at(t, e, n, a, r, s) {
914
914
  class: "wm-team__stack",
915
915
  style: V({ width: s.stackWidth + "px" })
916
916
  }, [
917
- (l(!0), d(M, null, $(n.members.slice(0, 3), (o, c) => (l(), d("div", {
917
+ (l(!0), d(M, null, j(n.members.slice(0, 3), (o, c) => (l(), d("div", {
918
918
  key: c,
919
919
  class: "wm-team__pill",
920
920
  style: V({ left: c * 13 + "px", zIndex: 3 - c, background: s.colorFor(o) })
@@ -926,12 +926,12 @@ 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)) : y("", !0)
930
- ])) : y("", !0);
929
+ n.responseLabel ? (l(), d("span", it, b(n.responseLabel), 1)) : w("", !0)
930
+ ])) : w("", !0);
931
931
  }
932
932
  const ot = /* @__PURE__ */ B(tt, [["render", at], ["__scopeId", "data-v-3659b9c1"]]), lt = {
933
933
  name: "WmHeader",
934
- components: { AIAvatar: J, HumanAvatar: ke, TeamAvatars: ot },
934
+ components: { AIAvatar: X, HumanAvatar: ke, TeamAvatars: ot },
935
935
  props: {
936
936
  title: { type: String, default: "Nouvelle conversation" },
937
937
  escalated: { type: Boolean, default: !1 },
@@ -1015,12 +1015,12 @@ function gt(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"])) : y("", !0),
1018
+ }, null, 8, ["members", "response-label"])) : w("", !0),
1019
1019
  i("span", pt, [
1020
1020
  e[4] || (e[4] = i("span", { class: "wm-header__dot" }, null, -1)),
1021
1021
  re(" " + b(s.statusText), 1)
1022
1022
  ])
1023
- ])) : y("", !0)
1023
+ ])) : w("", !0)
1024
1024
  ])
1025
1025
  ], 64)) : (l(), d("div", _t)),
1026
1026
  i("div", vt, [
@@ -1055,7 +1055,7 @@ function gt(t, e, n, a, r, s) {
1055
1055
  r: "1.6"
1056
1056
  })
1057
1057
  ], -1)
1058
- ])], 2)) : y("", !0),
1058
+ ])], 2)) : w("", !0),
1059
1059
  n.showClose ? (l(), d("button", {
1060
1060
  key: 1,
1061
1061
  type: "button",
@@ -1077,7 +1077,7 @@ function gt(t, e, n, a, r, s) {
1077
1077
  }, [
1078
1078
  i("path", { d: "M18 6L6 18M6 6l12 12" })
1079
1079
  ], -1)
1080
- ])])) : y("", !0)
1080
+ ])])) : w("", !0)
1081
1081
  ])
1082
1082
  ]);
1083
1083
  }
@@ -1089,7 +1089,7 @@ const yt = /* @__PURE__ */ B(lt, [["render", gt], ["__scopeId", "data-v-b5f5f6a9
1089
1089
  link: "M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"
1090
1090
  }, wt = {
1091
1091
  name: "WmOnboarding",
1092
- components: { AIAvatar: J },
1092
+ components: { AIAvatar: X },
1093
1093
  props: {
1094
1094
  welcomeMessage: { type: String, default: "" },
1095
1095
  agentName: { type: String, default: "" },
@@ -1143,7 +1143,7 @@ function Nt(t, e, n, a, r, s) {
1143
1143
  n.unreadThreads.length ? (l(), d("div", St, [
1144
1144
  e[3] || (e[3] = i("div", { class: "wm-onb__section-title" }, "Messages non lus", -1)),
1145
1145
  i("div", xt, [
1146
- (l(!0), d(M, null, $(n.unreadThreads, (c) => (l(), d("button", {
1146
+ (l(!0), d(M, null, j(n.unreadThreads, (c) => (l(), d("button", {
1147
1147
  key: c.id,
1148
1148
  type: "button",
1149
1149
  class: "wm-onb__link wm-onb__resume",
@@ -1188,11 +1188,11 @@ function Nt(t, e, n, a, r, s) {
1188
1188
  ], -1))
1189
1189
  ], 8, Mt))), 128))
1190
1190
  ])
1191
- ])) : y("", !0),
1191
+ ])) : w("", !0),
1192
1192
  n.quickLinks.length ? (l(), d("div", Et, [
1193
1193
  e[5] || (e[5] = i("div", { class: "wm-onb__section-title" }, "Accès rapide", -1)),
1194
1194
  i("div", Bt, [
1195
- (l(!0), d(M, null, $(n.quickLinks, (c, v) => (l(), d("button", {
1195
+ (l(!0), d(M, null, j(n.quickLinks, (c, v) => (l(), d("button", {
1196
1196
  key: v,
1197
1197
  type: "button",
1198
1198
  class: "wm-onb__link",
@@ -1222,7 +1222,7 @@ function Nt(t, e, n, a, r, s) {
1222
1222
  ], -1))
1223
1223
  ], 8, Lt))), 128))
1224
1224
  ])
1225
- ])) : y("", !0),
1225
+ ])) : w("", !0),
1226
1226
  i("div", Ut, [
1227
1227
  i("button", {
1228
1228
  type: "button",
@@ -1333,7 +1333,7 @@ function Xt(t, e, n, a, r, s) {
1333
1333
  "aria-hidden": "true"
1334
1334
  }, "·", -1)),
1335
1335
  i("span", Jt, b(s.detailText), 1)
1336
- ], 64)) : y("", !0)
1336
+ ], 64)) : w("", !0)
1337
1337
  ], 2);
1338
1338
  }
1339
1339
  const Qt = /* @__PURE__ */ B(zt, [["render", Xt], ["__scopeId", "data-v-7f90dad6"]]), Zt = {
@@ -1370,7 +1370,7 @@ function an(t, e, n, a, r, s) {
1370
1370
  ], -1))
1371
1371
  ]),
1372
1372
  i("div", sn, [
1373
- (l(!0), d(M, null, $(s.fields, (o, c) => (l(), d("div", {
1373
+ (l(!0), d(M, null, j(s.fields, (o, c) => (l(), d("div", {
1374
1374
  key: c,
1375
1375
  class: "wm-art__field"
1376
1376
  }, [
@@ -1418,20 +1418,20 @@ function yn(t, e, n, a, r, s) {
1418
1418
  alt: n.data.title || "",
1419
1419
  loading: "lazy"
1420
1420
  }, null, 8, un)
1421
- ])) : y("", !0),
1421
+ ])) : w("", !0),
1422
1422
  i("div", hn, [
1423
1423
  i("div", mn, [
1424
1424
  i("div", fn, b(n.data.title), 1),
1425
- n.data.subtitle ? (l(), d("div", pn, b(n.data.subtitle), 1)) : y("", !0)
1425
+ n.data.subtitle ? (l(), d("div", pn, b(n.data.subtitle), 1)) : w("", !0)
1426
1426
  ]),
1427
1427
  n.data.badge && n.data.badge.label ? (l(), d("span", {
1428
1428
  key: 0,
1429
1429
  class: E(["wm-art__badge", `wm-art__badge--${n.data.badge.tone || "neutral"}`])
1430
- }, b(n.data.badge.label), 3)) : y("", !0)
1430
+ }, b(n.data.badge.label), 3)) : w("", !0)
1431
1431
  ]),
1432
1432
  s.hasBody ? (l(), d("div", _n, [
1433
- n.data.body ? (l(), d("div", vn, b(n.data.body), 1)) : y("", !0),
1434
- s.fields.length ? (l(!0), d(M, { key: 1 }, $(s.fields, (o, c) => (l(), d("div", {
1433
+ n.data.body ? (l(), d("div", vn, b(n.data.body), 1)) : w("", !0),
1434
+ s.fields.length ? (l(!0), d(M, { key: 1 }, j(s.fields, (o, c) => (l(), d("div", {
1435
1435
  key: c,
1436
1436
  class: "wm-art__field"
1437
1437
  }, [
@@ -1439,8 +1439,8 @@ function yn(t, e, n, a, r, s) {
1439
1439
  i("div", {
1440
1440
  class: E(["wm-art__fieldValue", { "wm-art__fieldValue--multi": o.multiline }])
1441
1441
  }, b(o.value), 3)
1442
- ]))), 128)) : y("", !0)
1443
- ])) : y("", !0)
1442
+ ]))), 128)) : w("", !0)
1443
+ ])) : w("", !0)
1444
1444
  ]);
1445
1445
  }
1446
1446
  const wn = /* @__PURE__ */ B(ln, [["render", yn], ["__scopeId", "data-v-d7369333"]]);
@@ -1522,10 +1522,10 @@ function Ln(t, e, n, a, r, s) {
1522
1522
  re(" " + b(n.data.status.label), 1)
1523
1523
  ], 2)
1524
1524
  ]),
1525
- n.data.body ? (l(), d("div", Tn, b(n.data.body), 1)) : y("", !0)
1525
+ n.data.body ? (l(), d("div", Tn, b(n.data.body), 1)) : w("", !0)
1526
1526
  ]),
1527
1527
  s.fields.length ? (l(), d("div", In, [
1528
- (l(!0), d(M, null, $(s.fields, (o, c) => (l(), d("div", {
1528
+ (l(!0), d(M, null, j(s.fields, (o, c) => (l(), d("div", {
1529
1529
  key: c,
1530
1530
  class: "wm-art__field"
1531
1531
  }, [
@@ -1563,11 +1563,11 @@ function Ln(t, e, n, a, r, s) {
1563
1563
  height: "9",
1564
1564
  rx: "0.5"
1565
1565
  }, null, -1)
1566
- ])], 8, En)) : y("", !0),
1566
+ ])], 8, En)) : w("", !0),
1567
1567
  i("span", null, b(o.value), 1)
1568
1568
  ], 2)
1569
1569
  ]))), 128))
1570
- ])) : y("", !0),
1570
+ ])) : w("", !0),
1571
1571
  n.data.created_at ? (l(), d("div", Bn, [
1572
1572
  e[3] || (e[3] = i("svg", {
1573
1573
  width: "11",
@@ -1590,7 +1590,7 @@ function Ln(t, e, n, a, r, s) {
1590
1590
  i("path", { d: "M16 2v4M8 2v4M3 10h18" })
1591
1591
  ], -1)),
1592
1592
  i("span", null, b(s.formattedDate), 1)
1593
- ])) : y("", !0)
1593
+ ])) : w("", !0)
1594
1594
  ]);
1595
1595
  }
1596
1596
  const Rn = /* @__PURE__ */ B(kn, [["render", Ln], ["__scopeId", "data-v-97001af0"]]), $n = {
@@ -1616,7 +1616,7 @@ function jn(t, e, n, a, r, s) {
1616
1616
  return s.component ? (l(), R(Me(s.component), {
1617
1617
  key: 0,
1618
1618
  data: n.artifact.data
1619
- }, null, 8, ["data"])) : y("", !0);
1619
+ }, null, 8, ["data"])) : w("", !0);
1620
1620
  }
1621
1621
  const Un = /* @__PURE__ */ B(Fn, [["render", jn]]), Dn = {
1622
1622
  name: "WmAttachmentPreview",
@@ -1733,9 +1733,9 @@ function Yn(t, e, n, a, r, s) {
1733
1733
  ], -1)),
1734
1734
  i("span", qn, [
1735
1735
  i("span", Wn, b(s.displayName), 1),
1736
- s.sizeLabel ? (l(), d("span", Gn, b(s.sizeLabel), 1)) : y("", !0)
1736
+ s.sizeLabel ? (l(), d("span", Gn, b(s.sizeLabel), 1)) : w("", !0)
1737
1737
  ]),
1738
- r.loading ? (l(), d("span", Kn)) : y("", !0)
1738
+ r.loading ? (l(), d("span", Kn)) : w("", !0)
1739
1739
  ], 8, Vn))
1740
1740
  ], 2);
1741
1741
  }
@@ -1781,20 +1781,20 @@ function Zn(t) {
1781
1781
  if (!S) break;
1782
1782
  C.push(S[1]), a++;
1783
1783
  }
1784
- const w = C.map((S) => `<li>${ee(S)}</li>`).join("");
1785
- n.push({ type: "block", html: `<ul class="wm-md-ul">${w}</ul>` });
1784
+ const y = C.map((S) => `<li>${ee(S)}</li>`).join("");
1785
+ n.push({ type: "block", html: `<ul class="wm-md-ul">${y}</ul>` });
1786
1786
  continue;
1787
1787
  }
1788
1788
  const c = /^\s*(\d+)\.\s+(.*)$/.exec(s);
1789
1789
  if (c) {
1790
- const C = parseInt(c[1], 10), w = [c[2]];
1790
+ const C = parseInt(c[1], 10), y = [c[2]];
1791
1791
  for (a++; a < e.length; ) {
1792
1792
  const A = /^\s*\d+\.\s+(.*)$/.exec(e[a]);
1793
1793
  if (!A) break;
1794
- w.push(A[1]), a++;
1794
+ y.push(A[1]), a++;
1795
1795
  }
1796
- const S = w.map((A) => `<li>${ee(A)}</li>`).join(""), F = C !== 1 ? ` start="${C}"` : "";
1797
- n.push({ type: "block", html: `<ol class="wm-md-ol"${F}>${S}</ol>` });
1796
+ const S = y.map((A) => `<li>${ee(A)}</li>`).join(""), $ = C !== 1 ? ` start="${C}"` : "";
1797
+ n.push({ type: "block", html: `<ol class="wm-md-ol"${$}>${S}</ol>` });
1798
1798
  continue;
1799
1799
  }
1800
1800
  const v = /^(#{1,6})\s+(.*)$/.exec(s);
@@ -1861,7 +1861,7 @@ const ls = {
1861
1861
  idle: "Conversation en pause"
1862
1862
  }, cs = 80, ds = 200, us = {
1863
1863
  name: "WmMessageList",
1864
- components: { AIAvatar: J, HumanAvatar: ke, Bubble: ss, Typing: os, ActionResult: Qt, AttachmentPreview: Jn, ArtifactRenderer: Un },
1864
+ components: { AIAvatar: X, HumanAvatar: ke, Bubble: ss, Typing: os, ActionResult: Qt, AttachmentPreview: Jn, ArtifactRenderer: Un },
1865
1865
  props: {
1866
1866
  messages: { type: Array, default: () => [] },
1867
1867
  streamingActive: { type: Boolean, default: !1 },
@@ -2133,9 +2133,10 @@ const ls = {
2133
2133
  // they're the last item of the cluster — BL for ai/human, BR for
2134
2134
  // user.
2135
2135
  cornersFor(t, e) {
2136
- const n = t.items, a = t.role === "user", r = 14, s = 4, o = !!n[e - 1], c = !!n[e + 1];
2137
- let v = r, C = r, w = r, S = r;
2138
- return a ? (o && (C = s, v = s), c && (w = s, S = s), c || (w = s)) : (o && (v = s, C = s), c && (S = s, w = s), c || (S = s)), { tl: v, tr: C, br: w, bl: S };
2136
+ var F, P, q;
2137
+ const n = t.items, a = (F = n[e]) == null ? void 0 : F.kind, r = (P = n[e - 1]) == null ? void 0 : P.kind, s = (q = n[e + 1]) == null ? void 0 : q.kind, o = t.role === "user", c = 14, v = 4, C = r == null ? void 0 : r.bottom, y = s == null ? void 0 : s.top, S = !!C && !!(a != null && a.top) && C !== a.top, $ = !!y && !!(a != null && a.bottom) && y !== a.bottom;
2138
+ let A = c, N = c, x = c, U = c;
2139
+ return o ? (C && (N = v, S && (A = v)), y && (x = v, $ && (U = v)), !y && (a == null ? void 0 : a.bottom) === "bubble" && (x = v)) : (C && (A = v, S && (N = v)), y && (U = v, $ && (x = v)), !y && (a == null ? void 0 : a.bottom) === "bubble" && (U = v)), { tl: A, tr: N, br: x, bl: U };
2139
2140
  },
2140
2141
  // Inline style emitting the four corner CSS variables. Set on
2141
2142
  // `.wm-list__row` so they cascade to Bubble/ActionResult/
@@ -2229,7 +2230,7 @@ const ls = {
2229
2230
  class: "wm-list__row wm-list__row--ai fade-up"
2230
2231
  }, Ss = { class: "wm-list__avatarSlot" };
2231
2232
  function xs(t, e, n, a, r, s) {
2232
- const o = O("AIAvatar"), c = O("HumanAvatar"), v = O("ActionResult"), C = O("ArtifactRenderer"), w = O("Bubble"), S = O("AttachmentPreview"), F = O("Typing");
2233
+ const o = O("AIAvatar"), c = O("HumanAvatar"), v = O("ActionResult"), C = O("ArtifactRenderer"), y = O("Bubble"), S = O("AttachmentPreview"), $ = O("Typing");
2233
2234
  return l(), d("div", {
2234
2235
  ref: "scrollEl",
2235
2236
  class: E(["wm-list", { "wm-list--silent": r.silentFades }]),
@@ -2241,20 +2242,20 @@ function xs(t, e, n, a, r, s) {
2241
2242
  "aria-hidden": "true"
2242
2243
  }, null, -1),
2243
2244
  i("span", { class: "wm-list__loadMore-lbl" }, "Chargement de l'historique…", -1)
2244
- ])])) : s.historyExhausted ? (l(), d("div", ms, "Début de la conversation")) : y("", !0),
2245
+ ])])) : s.historyExhausted ? (l(), d("div", ms, "Début de la conversation")) : w("", !0),
2245
2246
  n.dateLabel ? (l(), d("div", fs, [
2246
2247
  e[2] || (e[2] = i("div", { class: "wm-list__line" }, null, -1)),
2247
2248
  i("span", ps, b(n.dateLabel), 1),
2248
2249
  e[3] || (e[3] = i("div", { class: "wm-list__line" }, null, -1))
2249
- ])) : y("", !0),
2250
- (l(!0), d(M, null, $(s.groups, (A, N) => (l(), d(M, {
2250
+ ])) : w("", !0),
2251
+ (l(!0), d(M, null, j(s.groups, (A, N) => (l(), d(M, {
2251
2252
  key: A.key
2252
2253
  }, [
2253
2254
  A.key === s.unreadGroupKey ? (l(), d("div", _s, [...e[4] || (e[4] = [
2254
2255
  i("div", { class: "wm-list__line wm-list__line--unread" }, null, -1),
2255
2256
  i("span", { class: "wm-list__sep-label wm-list__sep-label--unread" }, "Non lus", -1),
2256
2257
  i("div", { class: "wm-list__line wm-list__line--unread" }, null, -1)
2257
- ])])) : y("", !0),
2258
+ ])])) : w("", !0),
2258
2259
  i("div", {
2259
2260
  class: E(["wm-list__group", "wm-list__group--" + A.role])
2260
2261
  }, [
@@ -2263,13 +2264,13 @@ function xs(t, e, n, a, r, s) {
2263
2264
  i("span", gs, b(A.systemLabel), 1),
2264
2265
  e[6] || (e[6] = i("div", { class: "wm-list__line wm-list__line--strong" }, null, -1))
2265
2266
  ])) : (l(), d(M, { key: 1 }, [
2266
- (l(!0), d(M, null, $(A.items, (x, D) => (l(), d("div", {
2267
+ (l(!0), d(M, null, j(A.items, (x, U) => (l(), d("div", {
2267
2268
  key: `${s.messageKey(x.message)}-${x.partKey}`,
2268
2269
  class: E(["wm-list__row fade-up", ["wm-list__row--" + A.role, { "is-pending": x.message._pending, "is-failed": x.message._failed }]]),
2269
- style: V(s.cornersStyle(A, D))
2270
+ style: V(s.cornersStyle(A, U))
2270
2271
  }, [
2271
2272
  A.role !== "user" ? (l(), d("div", ys, [
2272
- D === A.items.length - 1 ? (l(), d(M, { key: 0 }, [
2273
+ U === A.items.length - 1 ? (l(), d(M, { key: 0 }, [
2273
2274
  A.role === "ai" ? (l(), R(o, {
2274
2275
  key: 0,
2275
2276
  size: 26,
@@ -2280,8 +2281,8 @@ function xs(t, e, n, a, r, s) {
2280
2281
  "avatar-url": A.agentAvatarUrl,
2281
2282
  size: 26
2282
2283
  }, null, 8, ["name", "avatar-url"]))
2283
- ], 64)) : y("", !0)
2284
- ])) : y("", !0),
2284
+ ], 64)) : w("", !0)
2285
+ ])) : w("", !0),
2285
2286
  x.renderAs === "action" ? (l(), R(v, {
2286
2287
  key: 1,
2287
2288
  state: x.message.payload.state,
@@ -2299,30 +2300,30 @@ function xs(t, e, n, a, r, s) {
2299
2300
  key: 4,
2300
2301
  artifact: s.artifactOf(x.message)
2301
2302
  }, null, 8, ["artifact"])) : (l(), d("div", ws, [
2302
- x.message.text_md ? (l(), R(w, {
2303
+ x.message.text_md ? (l(), R(y, {
2303
2304
  key: 0,
2304
2305
  role: A.role,
2305
2306
  text: x.message.text_md
2306
- }, null, 8, ["role", "text"])) : y("", !0),
2307
+ }, null, 8, ["role", "text"])) : w("", !0),
2307
2308
  s.attachmentsOf(x.message).length ? (l(), d("div", {
2308
2309
  key: 1,
2309
2310
  class: E(["wm-list__atts", { "wm-list__atts--align-end": A.role === "user" }])
2310
2311
  }, [
2311
- (l(!0), d(M, null, $(s.attachmentsOf(x.message), (j, P) => (l(), R(S, {
2312
+ (l(!0), d(M, null, j(s.attachmentsOf(x.message), (F, P) => (l(), R(S, {
2312
2313
  key: `${s.messageKey(x.message)}-att-${P}`,
2313
- attachment: j
2314
+ attachment: F
2314
2315
  }, null, 8, ["attachment"]))), 128))
2315
- ], 2)) : y("", !0)
2316
+ ], 2)) : w("", !0)
2316
2317
  ]))
2317
2318
  ], 6))), 128)),
2318
2319
  A.role !== "user" || s.lastTimeOf(A) ? (l(), d("div", {
2319
2320
  key: 0,
2320
2321
  class: E(["wm-list__meta", { "wm-list__meta--right": A.role === "user" }])
2321
2322
  }, [
2322
- A.role !== "user" ? (l(), d("span", bs, b(s.roleLabel(A)), 1)) : y("", !0),
2323
- A.role !== "user" && s.lastTimeOf(A) ? (l(), d("span", ks, "·")) : y("", !0),
2324
- s.lastTimeOf(A) ? (l(), d("span", Cs, b(s.lastTimeOf(A)), 1)) : y("", !0)
2325
- ], 2)) : y("", !0)
2323
+ A.role !== "user" ? (l(), d("span", bs, b(s.roleLabel(A)), 1)) : w("", !0),
2324
+ A.role !== "user" && s.lastTimeOf(A) ? (l(), d("span", ks, "·")) : w("", !0),
2325
+ s.lastTimeOf(A) ? (l(), d("span", Cs, b(s.lastTimeOf(A)), 1)) : w("", !0)
2326
+ ], 2)) : w("", !0)
2326
2327
  ], 64))
2327
2328
  ], 2)
2328
2329
  ], 64))), 128)),
@@ -2333,11 +2334,11 @@ function xs(t, e, n, a, r, s) {
2333
2334
  tail: !0
2334
2335
  })
2335
2336
  ]),
2336
- z(F)
2337
- ])) : y("", !0)
2337
+ z($)
2338
+ ])) : w("", !0)
2338
2339
  ], 34);
2339
2340
  }
2340
- const Ms = /* @__PURE__ */ B(us, [["render", xs], ["__scopeId", "data-v-5374b236"]]), ne = typeof navigator < "u" && !!navigator.mediaDevices && typeof navigator.mediaDevices.getDisplayMedia == "function", he = typeof window < "u" && typeof window.MediaRecorder < "u";
2341
+ const Ms = /* @__PURE__ */ B(us, [["render", xs], ["__scopeId", "data-v-6d8aa76a"]]), ne = typeof navigator < "u" && !!navigator.mediaDevices && typeof navigator.mediaDevices.getDisplayMedia == "function", he = typeof window < "u" && typeof window.MediaRecorder < "u";
2341
2342
  function Ts() {
2342
2343
  return he && [
2343
2344
  "video/webm;codecs=vp9,opus",
@@ -2395,54 +2396,54 @@ async function Es(t = {}) {
2395
2396
  let e;
2396
2397
  try {
2397
2398
  e = await navigator.mediaDevices.getDisplayMedia(Ce({ audio: !0 }));
2398
- } catch (w) {
2399
- return (w == null ? void 0 : w.name) !== "NotAllowedError" && console.error("[media] record picker", w), null;
2399
+ } catch (y) {
2400
+ return (y == null ? void 0 : y.name) !== "NotAllowedError" && console.error("[media] record picker", y), null;
2400
2401
  }
2401
2402
  const n = Ts();
2402
2403
  let a;
2403
2404
  try {
2404
2405
  a = n ? new window.MediaRecorder(e, { mimeType: n }) : new window.MediaRecorder(e);
2405
- } catch (w) {
2406
- return console.error("[media] recorder init", w), e.getTracks().forEach((S) => {
2406
+ } catch (y) {
2407
+ return console.error("[media] recorder init", y), e.getTracks().forEach((S) => {
2407
2408
  S.stop();
2408
2409
  }), null;
2409
2410
  }
2410
2411
  const r = [];
2411
2412
  let s = null, o = !1;
2412
- a.addEventListener("dataavailable", (w) => {
2413
- w.data && w.data.size > 0 && r.push(w.data);
2413
+ a.addEventListener("dataavailable", (y) => {
2414
+ y.data && y.data.size > 0 && r.push(y.data);
2414
2415
  }), a.addEventListener("stop", () => {
2415
- var w, S;
2416
- if (s && clearInterval(s), e.getTracks().forEach((F) => {
2417
- F.stop();
2416
+ var y, S;
2417
+ if (s && clearInterval(s), e.getTracks().forEach(($) => {
2418
+ $.stop();
2418
2419
  }), r.length) {
2419
- const F = a.mimeType || n || "video/webm", A = new Blob(r, { type: F }), N = /mp4/.test(F) ? "mp4" : "webm", x = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-").slice(0, 19), D = new File([A], `ecran-${x}.${N}`, { type: F });
2420
- (w = t.onfinalize) == null || w.call(t, D);
2420
+ const $ = a.mimeType || n || "video/webm", A = new Blob(r, { type: $ }), N = /mp4/.test($) ? "mp4" : "webm", x = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-").slice(0, 19), U = new File([A], `ecran-${x}.${N}`, { type: $ });
2421
+ (y = t.onfinalize) == null || y.call(t, U);
2421
2422
  } else
2422
2423
  (S = t.oncancel) == null || S.call(t);
2423
- }), e.getVideoTracks().forEach((w) => {
2424
- w.addEventListener("ended", () => c(), { once: !0 });
2424
+ }), e.getVideoTracks().forEach((y) => {
2425
+ y.addEventListener("ended", () => c(), { once: !0 });
2425
2426
  });
2426
2427
  function c() {
2427
2428
  if (!o && (o = !0, a.state !== "inactive"))
2428
2429
  try {
2429
2430
  a.stop();
2430
- } catch (w) {
2431
- console.error("[media] recorder stop", w);
2431
+ } catch (y) {
2432
+ console.error("[media] recorder stop", y);
2432
2433
  }
2433
2434
  }
2434
2435
  try {
2435
2436
  a.start(1e3);
2436
- } catch (w) {
2437
- return console.error("[media] recorder start", w), e.getTracks().forEach((S) => {
2437
+ } catch (y) {
2438
+ return console.error("[media] recorder start", y), e.getTracks().forEach((S) => {
2438
2439
  S.stop();
2439
2440
  }), null;
2440
2441
  }
2441
2442
  (C = t.onstart) == null || C.call(t);
2442
2443
  const v = Date.now();
2443
2444
  return s = setInterval(() => {
2444
- var w;
2445
- (w = t.ontick) == null || w.call(t, Date.now() - v);
2445
+ var y;
2446
+ (y = t.ontick) == null || y.call(t, Date.now() - v);
2446
2447
  }, 500), {
2447
2448
  stop: c,
2448
2449
  get state() {
@@ -2618,10 +2619,10 @@ function Ws(t, e, n, a, r, s) {
2618
2619
  class: "wm-rec__stop",
2619
2620
  onClick: e[0] || (e[0] = (...o) => s.stopRecording && s.stopRecording(...o))
2620
2621
  }, "Arrêter")
2621
- ])) : y("", !0),
2622
+ ])) : w("", !0),
2622
2623
  i("form", {
2623
2624
  class: E(["wm-compose", { "has-attach": r.attachOpen }]),
2624
- onSubmit: e[7] || (e[7] = Y((...o) => s.onSubmit && s.onSubmit(...o), ["prevent"]))
2625
+ onSubmit: e[7] || (e[7] = J((...o) => s.onSubmit && s.onSubmit(...o), ["prevent"]))
2625
2626
  }, [
2626
2627
  i("input", {
2627
2628
  ref: "fileEl",
@@ -2634,9 +2635,9 @@ function Ws(t, e, n, a, r, s) {
2634
2635
  key: 0,
2635
2636
  class: "wm-compose__overlay",
2636
2637
  onClick: e[2] || (e[2] = (o) => r.attachOpen = !1)
2637
- })) : y("", !0),
2638
+ })) : w("", !0),
2638
2639
  r.attachOpen ? (l(), d("div", js, [
2639
- (l(!0), d(M, null, $(s.attachItems, (o) => (l(), d("button", {
2640
+ (l(!0), d(M, null, j(s.attachItems, (o) => (l(), d("button", {
2640
2641
  key: o.action,
2641
2642
  type: "button",
2642
2643
  class: "wm-compose__menuItem",
@@ -2657,7 +2658,7 @@ function Ws(t, e, n, a, r, s) {
2657
2658
  ]),
2658
2659
  i("span", null, b(o.label), 1)
2659
2660
  ], 8, Us))), 128))
2660
- ])) : y("", !0),
2661
+ ])) : w("", !0),
2661
2662
  H(i("textarea", {
2662
2663
  ref: "inputEl",
2663
2664
  "onUpdate:modelValue": e[3] || (e[3] = (o) => r.local = o),
@@ -2668,7 +2669,7 @@ function Ws(t, e, n, a, r, s) {
2668
2669
  onKeydown: e[4] || (e[4] = (...o) => s.onKeydown && s.onKeydown(...o)),
2669
2670
  onInput: e[5] || (e[5] = (...o) => s.autosize && s.autosize(...o))
2670
2671
  }, null, 40, Hs), [
2671
- [G, r.local]
2672
+ [K, r.local]
2672
2673
  ]),
2673
2674
  i("div", zs, [
2674
2675
  i("button", {
@@ -2740,18 +2741,18 @@ function Js(t, e, n, a, r, s) {
2740
2741
  key: s.batchKey,
2741
2742
  class: "wm-chips"
2742
2743
  }, [
2743
- (l(!0), d(M, null, $(n.items, (o, c) => (l(), d("button", {
2744
+ (l(!0), d(M, null, j(n.items, (o, c) => (l(), d("button", {
2744
2745
  key: c,
2745
2746
  type: "button",
2746
2747
  class: "wm-chip",
2747
2748
  style: V({ animationDelay: n.baseDelay + c * n.stepDelay + "ms" }),
2748
2749
  onClick: (v) => t.$emit("select", o)
2749
2750
  }, b(o.label), 13, Ys))), 128))
2750
- ])) : y("", !0);
2751
+ ])) : w("", !0);
2751
2752
  }
2752
2753
  const Xs = /* @__PURE__ */ B(Ks, [["render", Js], ["__scopeId", "data-v-55aa529d"]]), Qs = {
2753
2754
  name: "WmApprovalCard",
2754
- components: { AIAvatar: J },
2755
+ components: { AIAvatar: X },
2755
2756
  props: {
2756
2757
  action: { type: String, required: !0 },
2757
2758
  detail: { type: String, default: "" },
@@ -2795,7 +2796,7 @@ function ar(t, e, n, a, r, s) {
2795
2796
  ]),
2796
2797
  i("div", nr, [
2797
2798
  i("div", sr, b(n.action), 1),
2798
- n.detail ? (l(), d("div", rr, b(n.detail), 1)) : y("", !0)
2799
+ n.detail ? (l(), d("div", rr, b(n.detail), 1)) : w("", !0)
2799
2800
  ])
2800
2801
  ]),
2801
2802
  i("div", ir, [
@@ -2804,13 +2805,13 @@ function ar(t, e, n, a, r, s) {
2804
2805
  type: "button",
2805
2806
  class: "wm-approval__btn wm-approval__btn--neutral",
2806
2807
  onClick: e[0] || (e[0] = (c) => t.$emit("callback", s.rejectId))
2807
- }, b(s.rejectLabel), 1)) : y("", !0),
2808
+ }, b(s.rejectLabel), 1)) : w("", !0),
2808
2809
  s.approveId ? (l(), d("button", {
2809
2810
  key: 1,
2810
2811
  type: "button",
2811
2812
  class: "wm-approval__btn wm-approval__btn--primary",
2812
2813
  onClick: e[1] || (e[1] = (c) => t.$emit("callback", s.approveId))
2813
- }, b(s.approveLabel), 1)) : y("", !0)
2814
+ }, b(s.approveLabel), 1)) : w("", !0)
2814
2815
  ])
2815
2816
  ]);
2816
2817
  }
@@ -2826,7 +2827,7 @@ const lr = /* @__PURE__ */ new Set([
2826
2827
  "date"
2827
2828
  ]), cr = {
2828
2829
  name: "WmFormCard",
2829
- components: { AIAvatar: J },
2830
+ components: { AIAvatar: X },
2830
2831
  props: {
2831
2832
  form: { type: Object, required: !0 },
2832
2833
  readOnly: { type: Boolean, default: !1 },
@@ -2934,14 +2935,14 @@ function Lr(t, e, n, a, r, s) {
2934
2935
  ]),
2935
2936
  i("div", mr, [
2936
2937
  i("div", fr, b(n.form.title || "Formulaire"), 1),
2937
- n.form.description ? (l(), d("div", pr, b(n.form.description), 1)) : y("", !0)
2938
+ n.form.description ? (l(), d("div", pr, b(n.form.description), 1)) : w("", !0)
2938
2939
  ])
2939
2940
  ]),
2940
2941
  i("form", {
2941
2942
  class: "wm-form__body",
2942
- onSubmit: e[0] || (e[0] = Y((...c) => s.onSubmit && s.onSubmit(...c), ["prevent"]))
2943
+ onSubmit: e[0] || (e[0] = J((...c) => s.onSubmit && s.onSubmit(...c), ["prevent"]))
2943
2944
  }, [
2944
- (l(!0), d(M, null, $(s.normalizedFields, (c) => (l(), d("div", {
2945
+ (l(!0), d(M, null, j(s.normalizedFields, (c) => (l(), d("div", {
2945
2946
  key: c.key,
2946
2947
  class: "wm-form__field"
2947
2948
  }, [
@@ -2950,7 +2951,7 @@ function Lr(t, e, n, a, r, s) {
2950
2951
  class: "wm-form__label"
2951
2952
  }, [
2952
2953
  re(b(c.label), 1),
2953
- c.required ? (l(), d("span", vr, "*")) : y("", !0)
2954
+ c.required ? (l(), d("span", vr, "*")) : w("", !0)
2954
2955
  ], 8, _r),
2955
2956
  c.type === "text" ? H((l(), d("input", {
2956
2957
  key: 0,
@@ -2962,7 +2963,7 @@ function Lr(t, e, n, a, r, s) {
2962
2963
  required: c.required,
2963
2964
  disabled: n.readOnly || r.busy
2964
2965
  }, null, 8, gr)), [
2965
- [G, r.values[c.key]]
2966
+ [K, r.values[c.key]]
2966
2967
  ]) : c.type === "textarea" ? H((l(), d("textarea", {
2967
2968
  key: 1,
2968
2969
  id: `wm-f-${r._uid}-${c.key}`,
@@ -2973,7 +2974,7 @@ function Lr(t, e, n, a, r, s) {
2973
2974
  required: c.required,
2974
2975
  disabled: n.readOnly || r.busy
2975
2976
  }, null, 8, yr)), [
2976
- [G, r.values[c.key]]
2977
+ [K, r.values[c.key]]
2977
2978
  ]) : c.type === "number" ? H((l(), d("input", {
2978
2979
  key: 2,
2979
2980
  id: `wm-f-${r._uid}-${c.key}`,
@@ -2985,7 +2986,7 @@ function Lr(t, e, n, a, r, s) {
2985
2986
  disabled: n.readOnly || r.busy
2986
2987
  }, null, 8, wr)), [
2987
2988
  [
2988
- G,
2989
+ K,
2989
2990
  r.values[c.key],
2990
2991
  void 0,
2991
2992
  { number: !0 }
@@ -2999,7 +3000,7 @@ function Lr(t, e, n, a, r, s) {
2999
3000
  required: c.required,
3000
3001
  disabled: n.readOnly || r.busy
3001
3002
  }, null, 8, br)), [
3002
- [G, r.values[c.key]]
3003
+ [K, r.values[c.key]]
3003
3004
  ]) : c.type === "boolean" ? (l(), d("label", kr, [
3004
3005
  H(i("input", {
3005
3006
  id: `wm-f-${r._uid}-${c.key}`,
@@ -3019,14 +3020,14 @@ function Lr(t, e, n, a, r, s) {
3019
3020
  disabled: n.readOnly || r.busy
3020
3021
  }, [
3021
3022
  i("option", Sr, b(c.placeholder || "Choisir…"), 1),
3022
- (l(!0), d(M, null, $(c.options, (v) => (l(), d("option", {
3023
+ (l(!0), d(M, null, j(c.options, (v) => (l(), d("option", {
3023
3024
  key: v.value,
3024
3025
  value: v.value
3025
3026
  }, b(v.label), 9, xr))), 128))
3026
3027
  ], 8, Ar)), [
3027
3028
  [Oe, r.values[c.key]]
3028
3029
  ]) : c.type === "multiselect" ? (l(), d("div", Mr, [
3029
- (l(!0), d(M, null, $(c.options, (v) => (l(), d("label", {
3030
+ (l(!0), d(M, null, j(c.options, (v) => (l(), d("label", {
3030
3031
  key: v.value,
3031
3032
  class: "wm-form__multiItem"
3032
3033
  }, [
@@ -3039,16 +3040,16 @@ function Lr(t, e, n, a, r, s) {
3039
3040
  }, null, 40, Tr),
3040
3041
  i("span", null, b(v.label), 1)
3041
3042
  ]))), 128))
3042
- ])) : y("", !0)
3043
+ ])) : w("", !0)
3043
3044
  ]))), 128)),
3044
- r.error ? (l(), d("div", Ir, b(r.error), 1)) : y("", !0),
3045
+ r.error ? (l(), d("div", Ir, b(r.error), 1)) : w("", !0),
3045
3046
  n.readOnly ? (l(), d("div", Br, "Réponse envoyée")) : (l(), d("button", {
3046
3047
  key: 1,
3047
3048
  type: "submit",
3048
3049
  class: "wm-form__submit",
3049
3050
  disabled: r.busy
3050
3051
  }, [
3051
- r.busy ? (l(), d("span", Er)) : y("", !0),
3052
+ r.busy ? (l(), d("span", Er)) : w("", !0),
3052
3053
  i("span", null, b(r.busy ? "Envoi…" : n.form.submit_label || "Envoyer"), 1)
3053
3054
  ], 8, Or))
3054
3055
  ], 32)
@@ -3090,7 +3091,7 @@ function zr(t, e, n, a, r, s) {
3090
3091
  e[1] || (e[1] = i("div", { class: "wm-fb__title" }, "Comment s'est passée cette conversation ?", -1)),
3091
3092
  e[2] || (e[2] = i("div", { class: "wm-fb__sub" }, "Votre avis nous aide à améliorer l'assistant.", -1)),
3092
3093
  i("div", jr, [
3093
- (l(!0), d(M, null, $(r.options, (o) => (l(), d("button", {
3094
+ (l(!0), d(M, null, j(r.options, (o) => (l(), d("button", {
3094
3095
  key: o.v,
3095
3096
  type: "button",
3096
3097
  class: E(["wm-fb__opt", { "is-selected": r.sel === o.v }]),
@@ -3259,18 +3260,18 @@ function di(t, e, n, a, r, s) {
3259
3260
  placeholder: "Rechercher dans vos messages",
3260
3261
  "aria-label": "Rechercher dans vos messages"
3261
3262
  }, null, 512), [
3262
- [G, r.query]
3263
+ [K, r.query]
3263
3264
  ])
3264
3265
  ])
3265
3266
  ]),
3266
3267
  i("div", Qr, [
3267
- (l(!0), d(M, null, $(s.groups, (o) => (l(), d(M, {
3268
+ (l(!0), d(M, null, j(s.groups, (o) => (l(), d(M, {
3268
3269
  key: o.key
3269
3270
  }, [
3270
3271
  o.items.length ? (l(), d("div", Zr, [
3271
3272
  i("div", ei, b(o.label), 1),
3272
3273
  i("div", ti, [
3273
- (l(!0), d(M, null, $(o.items, (c) => (l(), d("button", {
3274
+ (l(!0), d(M, null, j(o.items, (c) => (l(), d("button", {
3274
3275
  key: c.id,
3275
3276
  type: "button",
3276
3277
  class: E(["wm-hd__row", {
@@ -3293,7 +3294,7 @@ function di(t, e, n, a, r, s) {
3293
3294
  opacity: "0.92"
3294
3295
  })
3295
3296
  ], -1)),
3296
- c.unread ? (l(), d("span", ri)) : y("", !0)
3297
+ c.unread ? (l(), d("span", ri)) : w("", !0)
3297
3298
  ]),
3298
3299
  i("div", ii, [
3299
3300
  i("div", ai, [
@@ -3303,9 +3304,9 @@ function di(t, e, n, a, r, s) {
3303
3304
  ])
3304
3305
  ], 10, ni))), 128))
3305
3306
  ])
3306
- ])) : y("", !0)
3307
+ ])) : w("", !0)
3307
3308
  ], 64))), 128)),
3308
- s.hasAny ? y("", !0) : (l(), d("div", ci, " Aucun fil pour le moment. "))
3309
+ s.hasAny ? w("", !0) : (l(), d("div", ci, " Aucun fil pour le moment. "))
3309
3310
  ])
3310
3311
  ])
3311
3312
  ]);
@@ -3378,7 +3379,7 @@ function gi(t, e, n, a, r, s) {
3378
3379
  onClick: e[2] || (e[2] = (o) => s.emit("rename"))
3379
3380
  }, [...e[9] || (e[9] = [
3380
3381
  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)
3381
- ])])) : y("", !0),
3382
+ ])])) : w("", !0),
3382
3383
  n.canClear ? (l(), d("button", {
3383
3384
  key: 1,
3384
3385
  type: "button",
@@ -3401,7 +3402,7 @@ function gi(t, e, n, a, r, s) {
3401
3402
  ])
3402
3403
  ], -1),
3403
3404
  i("span", { class: "wm-mm__label" }, "Effacer ce fil", -1)
3404
- ])])) : y("", !0),
3405
+ ])])) : w("", !0),
3405
3406
  n.canExport ? (l(), d("button", {
3406
3407
  key: 2,
3407
3408
  type: "button",
@@ -3409,7 +3410,7 @@ function gi(t, e, n, a, r, s) {
3409
3410
  onClick: e[4] || (e[4] = (o) => s.emit("export"))
3410
3411
  }, [...e[11] || (e[11] = [
3411
3412
  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)
3412
- ])])) : y("", !0)
3413
+ ])])) : w("", !0)
3413
3414
  ]),
3414
3415
  e[17] || (e[17] = i("div", { class: "wm-mm__sep" }, null, -1)),
3415
3416
  i("div", _i, [
@@ -3465,7 +3466,7 @@ function gi(t, e, n, a, r, s) {
3465
3466
  ])
3466
3467
  ], -1),
3467
3468
  i("span", { class: "wm-mm__label" }, "Statut des services", -1)
3468
- ])])) : y("", !0),
3469
+ ])])) : w("", !0),
3469
3470
  n.helpUrl ? (l(), d("button", {
3470
3471
  key: 1,
3471
3472
  type: "button",
@@ -3488,7 +3489,7 @@ function gi(t, e, n, a, r, s) {
3488
3489
  ])
3489
3490
  ], -1),
3490
3491
  i("span", { class: "wm-mm__label" }, "Centre d'aide", -1)
3491
- ])])) : y("", !0)
3492
+ ])])) : w("", !0)
3492
3493
  ])
3493
3494
  ])
3494
3495
  ]);
@@ -3910,7 +3911,7 @@ const ki = 450, Ci = 50, Ai = 900, Si = 12e3, xi = 300, Mi = {
3910
3911
  const e = (v = (c = (o = this.pendingApproval) == null ? void 0 : o.payload) == null ? void 0 : c.pending) == null ? void 0 : v.prepared_params;
3911
3912
  if (!e || typeof e != "object") return "";
3912
3913
  const n = Object.entries(e);
3913
- return n.length ? n.slice(0, 2).map(([C, w]) => `${C}: ${w}`).join(" · ") : "";
3914
+ return n.length ? n.slice(0, 2).map(([C, y]) => `${C}: ${y}`).join(" · ") : "";
3914
3915
  },
3915
3916
  actionInFlight() {
3916
3917
  var t, e;
@@ -4241,11 +4242,11 @@ const ki = 450, Ci = 50, Ai = 900, Si = 12e3, xi = 300, Mi = {
4241
4242
  ) + a;
4242
4243
  this.nextRevealAt = s;
4243
4244
  const o = Math.max(0, s - e), c = t.id, v = setTimeout(() => {
4244
- this.revealedAt = { ...this.revealedAt, [c]: Date.now() }, this.revealTimers = this.revealTimers.filter((w) => w !== v);
4245
+ this.revealedAt = { ...this.revealedAt, [c]: Date.now() }, this.revealTimers = this.revealTimers.filter((y) => y !== v);
4245
4246
  }, o);
4246
4247
  this.revealTimers.push(v);
4247
4248
  const C = setTimeout(() => {
4248
- this.revealedAt[c] > 0 || (this.revealedAt = { ...this.revealedAt, [c]: Date.now() }), this.revealTimers = this.revealTimers.filter((w) => w !== C);
4249
+ this.revealedAt[c] > 0 || (this.revealedAt = { ...this.revealedAt, [c]: Date.now() }), this.revealTimers = this.revealTimers.filter((y) => y !== C);
4249
4250
  }, o + 4e3);
4250
4251
  this.revealTimers.push(C);
4251
4252
  },
@@ -4408,18 +4409,18 @@ const ki = 450, Ci = 50, Ai = 900, Si = 12e3, xi = 300, Mi = {
4408
4409
  t.created_at ? `Créée le : ${t.created_at}` : "",
4409
4410
  ""
4410
4411
  ];
4411
- for (const w of e) {
4412
- if (!w) continue;
4413
- 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" : ((C = w.author) == null ? void 0 : C.type) === "agent_ia" ? "Assistant IA" : "Système"), F = w.created_at ? new Date(w.created_at).toLocaleString("fr-FR") : "", A = (w.text_md || "").trim();
4414
- A && (n.push(`[${F}] ${S} :`), n.push(A), n.push(""));
4412
+ for (const y of e) {
4413
+ if (!y) continue;
4414
+ const S = ((o = y.author) == null ? void 0 : o.name) || (((c = y.author) == null ? void 0 : c.type) === "user" ? "Vous" : ((v = y.author) == null ? void 0 : v.type) === "agent_human" ? "Agent" : ((C = y.author) == null ? void 0 : C.type) === "agent_ia" ? "Assistant IA" : "Système"), $ = y.created_at ? new Date(y.created_at).toLocaleString("fr-FR") : "", A = (y.text_md || "").trim();
4415
+ A && (n.push(`[${$}] ${S} :`), n.push(A), n.push(""));
4415
4416
  }
4416
4417
  const a = new Blob([n.join(`
4417
4418
  `)], { type: "text/plain;charset=utf-8" });
4418
4419
  try {
4419
- const w = URL.createObjectURL(a), S = document.createElement("a");
4420
- 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);
4421
- } catch (w) {
4422
- console.error("[ww-messenger] export failed", w);
4420
+ const y = URL.createObjectURL(a), S = document.createElement("a");
4421
+ S.href = y, S.download = `${(t.name || "conversation").replace(/[^a-z0-9-_]+/gi, "_")}.txt`, document.body.appendChild(S), S.click(), document.body.removeChild(S), setTimeout(() => URL.revokeObjectURL(y), 1e3);
4422
+ } catch (y) {
4423
+ console.error("[ww-messenger] export failed", y);
4423
4424
  }
4424
4425
  },
4425
4426
  async onSend(t) {
@@ -4516,7 +4517,7 @@ const ki = 450, Ci = 50, Ai = 900, Si = 12e3, xi = 300, Mi = {
4516
4517
  class: "wm-attached"
4517
4518
  }, ji = ["onClick"];
4518
4519
  function Ui(t, e, n, a, r, s) {
4519
- const o = O("Launcher"), c = O("Header"), v = O("Onboarding"), C = O("MessageList"), w = O("ApprovalCard"), S = O("FormCard"), F = O("Feedback"), A = O("SuggestionChips"), N = O("Composer"), x = O("MoreMenu"), D = O("HistoryDrawer");
4520
+ const o = O("Launcher"), c = O("Header"), v = O("Onboarding"), C = O("MessageList"), y = O("ApprovalCard"), S = O("FormCard"), $ = O("Feedback"), A = O("SuggestionChips"), N = O("Composer"), x = O("MoreMenu"), U = O("HistoryDrawer");
4520
4521
  return l(), d("div", {
4521
4522
  class: E(["wm-root", `wm-root--${n.displayMode}`])
4522
4523
  }, [
@@ -4525,8 +4526,8 @@ function Ui(t, e, n, a, r, s) {
4525
4526
  "unread-count": s.unreadCount,
4526
4527
  peek: s.launcherPeek,
4527
4528
  onOpen: s.openFromPeek,
4528
- onDismiss: e[0] || (e[0] = (j) => r.labelDismissed = !0)
4529
- }, null, 8, ["unread-count", "peek", "onOpen"])) : y("", !0),
4529
+ onDismiss: e[0] || (e[0] = (F) => r.labelDismissed = !0)
4530
+ }, null, 8, ["unread-count", "peek", "onOpen"])) : w("", !0),
4530
4531
  r.isOpen || s.isEmbedded ? (l(), d("section", {
4531
4532
  key: 1,
4532
4533
  class: E(["wm-panel", `wm-panel--${n.displayMode}`]),
@@ -4535,12 +4536,12 @@ function Ui(t, e, n, a, r, s) {
4535
4536
  "aria-label": "Messenger"
4536
4537
  }, [
4537
4538
  !s.ready && !s.error ? (l(), d("div", Ti, [
4538
- s.isEmbedded ? y("", !0) : (l(), d("button", {
4539
+ s.isEmbedded ? w("", !0) : (l(), d("button", {
4539
4540
  key: 0,
4540
4541
  type: "button",
4541
4542
  class: "wm-loading__close",
4542
4543
  "aria-label": "Réduire",
4543
- onClick: e[1] || (e[1] = (...j) => s.close && s.close(...j))
4544
+ onClick: e[1] || (e[1] = (...F) => s.close && s.close(...F))
4544
4545
  }, [...e[6] || (e[6] = [
4545
4546
  i("svg", {
4546
4547
  width: "13",
@@ -4612,7 +4613,7 @@ function Ui(t, e, n, a, r, s) {
4612
4613
  }, null, 8, ["messages", "streaming-active", "date-label", "conversation-id", "loading-more", "has-more", "unread-anchor-ts", "onLoadMore"]),
4613
4614
  i("div", Bi, [
4614
4615
  s.floatVisible ? (l(), d("div", Li, [
4615
- s.approvalReady ? (l(), R(w, {
4616
+ s.approvalReady ? (l(), R(y, {
4616
4617
  key: 0,
4617
4618
  action: s.approvalTitle,
4618
4619
  detail: s.approvalDetail,
@@ -4622,7 +4623,7 @@ function Ui(t, e, n, a, r, s) {
4622
4623
  key: s.pendingForm.message && s.pendingForm.message.id,
4623
4624
  form: s.pendingForm.form,
4624
4625
  onSubmit: s.onFormSubmit
4625
- }, null, 8, ["form", "onSubmit"])) : s.showFeedback ? (l(), R(F, {
4626
+ }, null, 8, ["form", "onSubmit"])) : s.showFeedback ? (l(), R($, {
4626
4627
  key: 2,
4627
4628
  busy: r.feedbackBusy,
4628
4629
  done: r.feedbackDone,
@@ -4632,7 +4633,7 @@ function Ui(t, e, n, a, r, s) {
4632
4633
  items: s.suggestions,
4633
4634
  onSelect: s.onSuggestion
4634
4635
  }, null, 8, ["items", "onSelect"]))
4635
- ], 512)) : y("", !0),
4636
+ ], 512)) : w("", !0),
4636
4637
  s.actionInFlight ? (l(), d("div", Ri, [
4637
4638
  e[10] || (e[10] = i("span", {
4638
4639
  class: "wm-actionWait__spinner",
@@ -4643,7 +4644,7 @@ function Ui(t, e, n, a, r, s) {
4643
4644
  key: 2,
4644
4645
  ref: "composer",
4645
4646
  modelValue: r.draft,
4646
- "onUpdate:modelValue": e[2] || (e[2] = (j) => r.draft = j),
4647
+ "onUpdate:modelValue": e[2] || (e[2] = (F) => r.draft = F),
4647
4648
  placeholder: s.composerPlaceholder,
4648
4649
  disabled: !!s.pendingApproval,
4649
4650
  "attach-label": "Joindre un fichier",
@@ -4659,12 +4660,12 @@ function Ui(t, e, n, a, r, s) {
4659
4660
  "notif-enabled": r.notifEnabled,
4660
4661
  "status-url": s.statusUrl,
4661
4662
  "help-url": s.helpUrl,
4662
- onClose: e[3] || (e[3] = (j) => r.moreOpen = !1),
4663
+ onClose: e[3] || (e[3] = (F) => r.moreOpen = !1),
4663
4664
  onNotifToggle: s.onNotifToggle,
4664
4665
  onAction: s.onMoreAction
4665
- }, null, 8, ["can-rename", "can-clear", "can-export", "notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : y("", !0),
4666
+ }, null, 8, ["can-rename", "can-clear", "can-export", "notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : w("", !0),
4666
4667
  r.pendingAttachments.length ? (l(), d("div", Fi, [
4667
- (l(!0), d(M, null, $(r.pendingAttachments, (j, P) => (l(), d("div", {
4668
+ (l(!0), d(M, null, j(r.pendingAttachments, (F, P) => (l(), d("div", {
4668
4669
  key: P,
4669
4670
  class: "wm-attached__chip"
4670
4671
  }, [
@@ -4681,11 +4682,11 @@ function Ui(t, e, n, a, r, s) {
4681
4682
  }, [
4682
4683
  i("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" })
4683
4684
  ], -1)),
4684
- i("span", null, b(j.name), 1),
4685
+ i("span", null, b(F.name), 1),
4685
4686
  i("button", {
4686
4687
  type: "button",
4687
4688
  "aria-label": "Retirer",
4688
- onClick: (X) => r.pendingAttachments.splice(P, 1)
4689
+ onClick: (q) => r.pendingAttachments.splice(P, 1)
4689
4690
  }, [...e[11] || (e[11] = [
4690
4691
  i("svg", {
4691
4692
  width: "10",
@@ -4702,7 +4703,7 @@ function Ui(t, e, n, a, r, s) {
4702
4703
  ], -1)
4703
4704
  ])], 8, ji)
4704
4705
  ]))), 128))
4705
- ])) : y("", !0)
4706
+ ])) : w("", !0)
4706
4707
  ], 64)) : (l(), R(v, {
4707
4708
  key: 1,
4708
4709
  "welcome-message": s.widgetWelcomeMessage,
@@ -4714,14 +4715,14 @@ function Ui(t, e, n, a, r, s) {
4714
4715
  onSelect: s.onQuickLink,
4715
4716
  onResume: s.onDrawerPick
4716
4717
  }, null, 8, ["welcome-message", "agent-name", "quick-links", "unread-threads", "busy", "onStart", "onSelect", "onResume"])),
4717
- r.historyOpen ? (l(), R(D, {
4718
+ r.historyOpen ? (l(), R(U, {
4718
4719
  key: 3,
4719
4720
  conversations: s.drawerConversations,
4720
4721
  "active-id": s.currentConv ? s.currentConv.id : null,
4721
- onClose: e[4] || (e[4] = (j) => r.historyOpen = !1),
4722
+ onClose: e[4] || (e[4] = (F) => r.historyOpen = !1),
4722
4723
  onNew: s.onDrawerNew,
4723
4724
  onPick: s.onDrawerPick
4724
- }, null, 8, ["conversations", "active-id", "onNew", "onPick"])) : y("", !0),
4725
+ }, null, 8, ["conversations", "active-id", "onNew", "onPick"])) : w("", !0),
4725
4726
  r.moreOpen && !s.currentConv ? (l(), R(x, {
4726
4727
  key: 4,
4727
4728
  "can-rename": !1,
@@ -4730,17 +4731,17 @@ function Ui(t, e, n, a, r, s) {
4730
4731
  "notif-enabled": r.notifEnabled,
4731
4732
  "status-url": s.statusUrl,
4732
4733
  "help-url": s.helpUrl,
4733
- onClose: e[5] || (e[5] = (j) => r.moreOpen = !1),
4734
+ onClose: e[5] || (e[5] = (F) => r.moreOpen = !1),
4734
4735
  onNotifToggle: s.onNotifToggle,
4735
4736
  onAction: s.onMoreAction
4736
- }, null, 8, ["notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : y("", !0)
4737
+ }, null, 8, ["notif-enabled", "status-url", "help-url", "onNotifToggle", "onAction"])) : w("", !0)
4737
4738
  ], 64))
4738
- ], 6)) : y("", !0)
4739
+ ], 6)) : w("", !0)
4739
4740
  ], 2);
4740
4741
  }
4741
- const Pi = /* @__PURE__ */ B(Mi, [["render", Ui], ["__scopeId", "data-v-8264e504"]]), Hi = "0.2.18";
4742
+ const Pi = /* @__PURE__ */ B(Mi, [["render", Ui], ["__scopeId", "data-v-8264e504"]]), Hi = "0.2.19";
4742
4743
  export {
4743
- J as AIAvatar,
4744
+ X as AIAvatar,
4744
4745
  ce as AVATAR_COLORS,
4745
4746
  Qt as ActionResult,
4746
4747
  or as ApprovalCard,
@@ -4771,7 +4772,7 @@ export {
4771
4772
  ye as avatarColor,
4772
4773
  we as avatarInitials,
4773
4774
  Is as captureScreenshotFile,
4774
- U as colors,
4775
+ D as colors,
4775
4776
  De as createStore,
4776
4777
  $e as createTransport,
4777
4778
  Pi as default,