chordia-ui 3.7.0 → 3.7.2

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.
Files changed (36) hide show
  1. package/dist/ChatMessage.cjs.js +15 -0
  2. package/dist/ChatMessage.cjs.js.map +1 -0
  3. package/dist/ChatMessage.es.js +915 -0
  4. package/dist/ChatMessage.es.js.map +1 -0
  5. package/dist/SideDrawer.cjs.js +2 -0
  6. package/dist/SideDrawer.cjs.js.map +1 -0
  7. package/dist/SideDrawer.es.js +358 -0
  8. package/dist/SideDrawer.es.js.map +1 -0
  9. package/dist/Toast.cjs.js +2 -2
  10. package/dist/Toast.cjs.js.map +1 -1
  11. package/dist/Toast.es.js +301 -671
  12. package/dist/Toast.es.js.map +1 -1
  13. package/dist/components/UpdatedInteractionDetails.cjs.js +4 -4
  14. package/dist/components/UpdatedInteractionDetails.cjs.js.map +1 -1
  15. package/dist/components/UpdatedInteractionDetails.es.js +652 -603
  16. package/dist/components/UpdatedInteractionDetails.es.js.map +1 -1
  17. package/dist/components/chat.cjs.js +5 -7
  18. package/dist/components/chat.cjs.js.map +1 -1
  19. package/dist/components/chat.es.js +393 -849
  20. package/dist/components/chat.es.js.map +1 -1
  21. package/dist/components/common.cjs.js +1 -1
  22. package/dist/components/common.es.js +28 -27
  23. package/dist/components/common.es.js.map +1 -1
  24. package/dist/index.cjs.js +1 -1
  25. package/dist/index.es.js +73 -72
  26. package/dist/index.es.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/components/UpdatedInteractionDetails/UpdatedInteractionContext.jsx +6 -2
  29. package/src/components/UpdatedInteractionDetails/UpdatedInteractionDetails.jsx +190 -139
  30. package/src/components/chat/ChartRenderer.jsx +300 -49
  31. package/src/components/common/AskCompass.jsx +91 -87
  32. package/src/components/common/SideDrawer.jsx +7 -3
  33. package/dist/ChartRenderer.cjs.js +0 -3
  34. package/dist/ChartRenderer.cjs.js.map +0 -1
  35. package/dist/ChartRenderer.es.js +0 -304
  36. package/dist/ChartRenderer.es.js.map +0 -1
@@ -1,7 +1,8 @@
1
- import { jsxs as n, Fragment as an, jsx as e } from "react/jsx-runtime";
2
- import ae, { useState as z, useRef as $, useEffect as Te, useMemo as Me } from "react";
3
- import { ShieldCheck as sn, TrendingUp as dn, Lightbulb as vt, ThumbsUp as xt, ChevronUp as Re, ChevronDown as _e, Pencil as cn, ThumbsDown as fn, FileSignal as bt, ScrollText as St, PauseCircle as kt, PlayCircle as wt, Info as Ct, MessagesSquare as at, Check as gn, CircleCheck as hn, Ellipsis as pn, X as st, CornerDownRight as un, ArrowLeft as Ee, ArrowRight as dt, ClipboardList as yn, CalendarDays as mn, PhoneIncoming as vn, Headset as xn, Repeat as bn, CircleUser as He, ExternalLink as Sn, History as kn } from "lucide-react";
4
- import { U as wn } from "../UpdatedInteractionRecording.es.js";
1
+ import { jsxs as n, Fragment as fn, jsx as e } from "react/jsx-runtime";
2
+ import ae, { useState as G, useRef as $, useEffect as _e, useMemo as He } from "react";
3
+ import { ShieldCheck as gn, TrendingUp as hn, Lightbulb as xt, ThumbsUp as bt, ChevronUp as St, ChevronDown as kt, Pencil as pn, ThumbsDown as un, FileSignal as wt, ScrollText as Ct, PauseCircle as Ft, PlayCircle as Wt, Info as It, MessagesSquare as lt, Check as yn, CircleCheck as mn, Ellipsis as vn, X as ot, CornerDownRight as xn, ArrowLeft as Te, ArrowRight as at, ClipboardList as bn, CalendarDays as st, PhoneIncoming as Sn, Headset as dt, CircleUser as Re, ChevronRight as ct, History as kn, ExternalLink as wn } from "lucide-react";
4
+ import { U as Cn } from "../UpdatedInteractionRecording.es.js";
5
+ import { S as Fn } from "../SideDrawer.es.js";
5
6
  const L = {
6
7
  strong: "var(--Grey-Strong, #2E3236)",
7
8
  muted: "var(--Grey-Muted, #808183)",
@@ -11,17 +12,17 @@ const L = {
11
12
  quoteLine: "var(--border-warm, #B2AEA8)",
12
13
  quoteText: "var(--text-subtle-warm, #767473)",
13
14
  iconBg: "var(--surface-hover, #F3F7F7)"
14
- }, Cn = {
15
+ }, Wn = {
15
16
  effective: "Effective",
16
17
  strong: "Strong",
17
18
  needs_improvement: "Needs Improvement",
18
19
  mixed: "Mixed"
19
- }, ct = "updated-coaching-synthesis-keyframes";
20
- function Fn() {
21
- if (typeof document > "u" || document.getElementById(ct))
20
+ }, ft = "updated-coaching-synthesis-keyframes";
21
+ function In() {
22
+ if (typeof document > "u" || document.getElementById(ft))
22
23
  return;
23
24
  const t = document.createElement("style");
24
- t.id = ct, t.textContent = `
25
+ t.id = ft, t.textContent = `
25
26
  @keyframes updated-coaching-shimmer {
26
27
  0% { background-position: -200% 0; }
27
28
  100% { background-position: 200% 0; }
@@ -32,8 +33,8 @@ function Fn() {
32
33
  }
33
34
  `, document.head.appendChild(t);
34
35
  }
35
- function Wn({ overall: t }) {
36
- const r = Cn[t] || (t ? t.replace(/_/g, " ") : "");
36
+ function zn({ overall: t }) {
37
+ const r = Wn[t] || (t ? t.replace(/_/g, " ") : "");
37
38
  return /* @__PURE__ */ n("div", { style: {
38
39
  display: "flex",
39
40
  alignItems: "center",
@@ -52,7 +53,7 @@ function Wn({ overall: t }) {
52
53
  alignItems: "center",
53
54
  gap: 6
54
55
  }, children: [
55
- /* @__PURE__ */ e(xt, { size: 14, color: L.strong, strokeWidth: 1.5 }),
56
+ /* @__PURE__ */ e(bt, { size: 14, color: L.strong, strokeWidth: 1.5 }),
56
57
  /* @__PURE__ */ e("span", { style: {
57
58
  fontSize: 13,
58
59
  fontWeight: 600,
@@ -63,7 +64,7 @@ function Wn({ overall: t }) {
63
64
  ] })
64
65
  ] });
65
66
  }
66
- function In({ item: t }) {
67
+ function Dn({ item: t }) {
67
68
  const r = typeof t == "string" ? t : (t == null ? void 0 : t.text) || "", i = typeof t == "object" ? t == null ? void 0 : t.quote : null;
68
69
  return /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 14 }, children: [
69
70
  /* @__PURE__ */ e("div", { style: {
@@ -97,7 +98,7 @@ function In({ item: t }) {
97
98
  ] })
98
99
  ] });
99
100
  }
100
- function ft({ icon: t, label: r, items: i }) {
101
+ function gt({ icon: t, label: r, items: i }) {
101
102
  return !i || i.length === 0 ? null : /* @__PURE__ */ n("div", { style: {
102
103
  flex: 1,
103
104
  display: "flex",
@@ -128,15 +129,15 @@ function ft({ icon: t, label: r, items: i }) {
128
129
  lineHeight: "normal"
129
130
  }, children: r })
130
131
  ] }),
131
- /* @__PURE__ */ e("div", { style: { display: "flex", flexDirection: "column", gap: 24 }, children: i.map((s, l) => /* @__PURE__ */ e(In, { item: s }, l)) })
132
+ /* @__PURE__ */ e("div", { style: { display: "flex", flexDirection: "column", gap: 24 }, children: i.map((s, o) => /* @__PURE__ */ e(Dn, { item: s }, o)) })
132
133
  ] });
133
134
  }
134
- const Dn = ({ data: t, loading: r, error: i }) => {
135
- var h, u;
135
+ const Gn = ({ data: t, loading: r, error: i }) => {
136
+ var p, u;
136
137
  if (ae.useEffect(() => {
137
- Fn();
138
+ In();
138
139
  }, []), r)
139
- return /* @__PURE__ */ n(an, { children: [
140
+ return /* @__PURE__ */ n(fn, { children: [
140
141
  /* @__PURE__ */ e("style", { children: `
141
142
  @keyframes coaching-spinner-spin {
142
143
  from { transform: rotate(0deg); }
@@ -206,7 +207,7 @@ const Dn = ({ data: t, loading: r, error: i }) => {
206
207
  }, children: "Unable to generate coaching summary." });
207
208
  if (!t)
208
209
  return null;
209
- const s = t.strengths || [], l = t.improvements || [], a = typeof t.one_liner == "string" ? t.one_liner : ((h = t.one_liner) == null ? void 0 : h.text) || "", f = typeof t.context == "string" ? t.context : ((u = t.context) == null ? void 0 : u.text) || "";
210
+ const s = t.strengths || [], o = t.improvements || [], a = typeof t.one_liner == "string" ? t.one_liner : ((p = t.one_liner) == null ? void 0 : p.text) || "", g = typeof t.context == "string" ? t.context : ((u = t.context) == null ? void 0 : u.text) || "";
210
211
  return /* @__PURE__ */ n("div", { style: {
211
212
  display: "flex",
212
213
  flexDirection: "column",
@@ -218,7 +219,7 @@ const Dn = ({ data: t, loading: r, error: i }) => {
218
219
  alignItems: "center",
219
220
  gap: 8
220
221
  }, children: [
221
- /* @__PURE__ */ e(sn, { size: 20, color: L.accent, strokeWidth: 2 }),
222
+ /* @__PURE__ */ e(gn, { size: 20, color: L.accent, strokeWidth: 2 }),
222
223
  /* @__PURE__ */ e("span", { style: {
223
224
  fontSize: 16,
224
225
  fontWeight: 600,
@@ -241,46 +242,46 @@ const Dn = ({ data: t, loading: r, error: i }) => {
241
242
  gap: 16,
242
243
  justifyContent: "space-between"
243
244
  }, children: [
244
- f && /* @__PURE__ */ e("div", { style: {
245
+ g && /* @__PURE__ */ e("div", { style: {
245
246
  fontSize: 14,
246
247
  fontWeight: 400,
247
248
  color: L.muted,
248
249
  fontFamily: "var(--font-sans)",
249
250
  lineHeight: 1.5,
250
251
  flex: 1
251
- }, children: f }),
252
- t.overall && /* @__PURE__ */ e(Wn, { overall: t.overall })
252
+ }, children: g }),
253
+ t.overall && /* @__PURE__ */ e(zn, { overall: t.overall })
253
254
  ] }),
254
- (s.length > 0 || l.length > 0) && /* @__PURE__ */ n("div", { style: {
255
+ (s.length > 0 || o.length > 0) && /* @__PURE__ */ n("div", { style: {
255
256
  display: "flex",
256
257
  gap: 24,
257
258
  paddingTop: 24,
258
259
  borderTop: `1px solid ${L.absent}`
259
260
  }, children: [
260
261
  /* @__PURE__ */ e(
261
- ft,
262
+ gt,
262
263
  {
263
- icon: /* @__PURE__ */ e(dn, { size: 14, color: L.strong, strokeWidth: 1.5 }),
264
+ icon: /* @__PURE__ */ e(hn, { size: 14, color: L.strong, strokeWidth: 1.5 }),
264
265
  label: "Key Strengths",
265
266
  items: s
266
267
  }
267
268
  ),
268
269
  /* @__PURE__ */ e(
269
- ft,
270
+ gt,
270
271
  {
271
- icon: /* @__PURE__ */ e(vt, { size: 14, color: L.strong, strokeWidth: 1.5 }),
272
+ icon: /* @__PURE__ */ e(xt, { size: 14, color: L.strong, strokeWidth: 1.5 }),
272
273
  label: "Improvements",
273
- items: l
274
+ items: o
274
275
  }
275
276
  )
276
277
  ] })
277
278
  ] });
278
279
  };
279
- function zn(t) {
280
+ function Mn(t) {
280
281
  const r = Math.floor(t / 60), i = Math.round(t % 60);
281
282
  return `${r}:${i.toString().padStart(2, "0")}`;
282
283
  }
283
- const Gn = {
284
+ const En = {
284
285
  display: "flex",
285
286
  justifyContent: "space-between",
286
287
  padding: "8px 8px 12px 8px",
@@ -291,62 +292,62 @@ const Gn = {
291
292
  fontWeight: 400,
292
293
  lineHeight: "normal",
293
294
  borderBottom: "1px solid var(--Grey-absent, #D9D9D9)"
294
- }, gt = {
295
+ }, ht = {
295
296
  display: "flex",
296
297
  flexDirection: "column",
297
298
  flex: "1 0 0",
298
299
  gap: 0,
299
300
  minWidth: 0
300
- }, Mn = ({
301
+ }, Hn = ({
301
302
  meta: t = {},
302
303
  callPurpose: r = {},
303
304
  classification: i = {},
304
305
  dimensions: s = [],
305
- outcomeQuality: l = "Neutral",
306
+ outcomeQuality: o = "Neutral",
306
307
  onMoreDetails: a,
307
- moreDetails: f = [],
308
- resolutionOutcome: h,
308
+ moreDetails: g = [],
309
+ resolutionOutcome: p,
309
310
  customerIntent: u,
310
311
  canShowEditButton: W = !1,
311
312
  onEditInteraction: v
312
313
  }) => {
313
- const [S, d] = z(!1), x = $(null), k = t.duration_seconds != null ? zn(t.duration_seconds) : null, w = t.message_count, G = r.interaction_driver, R = i.interaction_paradigm, b = (g) => s.find((A) => (A.key || "").toLowerCase().includes(g)), I = b("resolution_outcome"), E = b("customer_intent"), B = b("outcome_quality"), _ = (g) => g ? g.replace(/_/g, " ").replace(/\b\w/g, (A) => A.toUpperCase()) : null, P = l !== "Neutral" ? l : B ? _(B.value) : l, m = h ?? (I ? _(I.value) : null), y = u ?? (E ? _(E.value) : null), c = new Set(["resolution_outcome", "customer_intent", "outcome_quality"].map((g) => `dim.${g}`)), D = s.filter((g) => !c.has(g.key)), Z = [], Q = [
314
+ const [S, d] = G(!1), x = $(null), k = t.duration_seconds != null ? Mn(t.duration_seconds) : null, w = t.message_count, M = r.interaction_driver, R = i.interaction_paradigm, b = (h) => s.find((A) => (A.key || "").toLowerCase().includes(h)), I = b("resolution_outcome"), E = b("customer_intent"), B = b("outcome_quality"), _ = (h) => h ? h.replace(/_/g, " ").replace(/\b\w/g, (A) => A.toUpperCase()) : null, P = o !== "Neutral" ? o : B ? _(B.value) : o, m = p ?? (I ? _(I.value) : null), y = u ?? (E ? _(E.value) : null), c = new Set(["resolution_outcome", "customer_intent", "outcome_quality"].map((h) => `dim.${h}`)), z = s.filter((h) => !c.has(h.key)), Z = [], Q = [
314
315
  [
315
316
  k != null ? { label: "Duration", value: k } : null,
316
317
  w != null ? { label: "Messages", value: w } : null
317
318
  ],
318
319
  [
319
- G != null ? { label: "Driver", value: G } : null,
320
+ M != null ? { label: "Driver", value: M } : null,
320
321
  R != null ? { label: "Paradigm", value: R } : null
321
322
  ]
322
323
  ];
323
- for (let g = 0; g < D.length; g += 2) {
324
- const A = D[g] ? { label: D[g].display_name || D[g].label || D[g].key, value: _(D[g].value) } : null, U = D[g + 1] ? { label: D[g + 1].display_name || D[g + 1].label || D[g + 1].key, value: _(D[g + 1].value) } : null;
324
+ for (let h = 0; h < z.length; h += 2) {
325
+ const A = z[h] ? { label: z[h].display_name || z[h].label || z[h].key, value: _(z[h].value) } : null, U = z[h + 1] ? { label: z[h + 1].display_name || z[h + 1].label || z[h + 1].key, value: _(z[h + 1].value) } : null;
325
326
  Q.push([A, U]);
326
327
  }
327
328
  Q.push([
328
329
  { label: "Outcome Quality", value: P },
329
330
  { isMoreDetails: !0 }
330
- ]), Q.forEach((g) => Z.push(g));
331
+ ]), Q.forEach((h) => Z.push(h));
331
332
  const J = [
332
333
  m != null && { label: "Resolution Outcome", value: m },
333
334
  y != null && { label: "Customer Intent", value: y },
334
- ...f || []
335
+ ...g || []
335
336
  ].filter(Boolean);
336
- Te(() => {
337
+ _e(() => {
337
338
  if (!S)
338
339
  return;
339
- const g = (A) => {
340
+ const h = (A) => {
340
341
  x.current && !x.current.contains(A.target) && d(!1);
341
342
  };
342
- return document.addEventListener("mousedown", g), () => document.removeEventListener("mousedown", g);
343
+ return document.addEventListener("mousedown", h), () => document.removeEventListener("mousedown", h);
343
344
  }, [S]);
344
- const X = (g) => /* @__PURE__ */ n(
345
+ const X = (h) => /* @__PURE__ */ n(
345
346
  "div",
346
347
  {
347
- style: Gn,
348
+ style: En,
348
349
  children: [
349
- /* @__PURE__ */ e("span", { style: { color: "var(--Grey-Strong, #2E3236)", whiteSpace: "nowrap", flexShrink: 0 }, children: g.label }),
350
+ /* @__PURE__ */ e("span", { style: { color: "var(--Grey-Strong, #2E3236)", whiteSpace: "nowrap", flexShrink: 0 }, children: h.label }),
350
351
  /* @__PURE__ */ e("span", { style: {
351
352
  color: "var(--Grey-Muted, #808183)",
352
353
  textAlign: "right",
@@ -354,11 +355,11 @@ const Gn = {
354
355
  textOverflow: "ellipsis",
355
356
  whiteSpace: "nowrap",
356
357
  minWidth: 0
357
- }, children: g.value })
358
+ }, children: h.value })
358
359
  ]
359
360
  },
360
- g.label
361
- ), oe = () => /* @__PURE__ */ n(
361
+ h.label
362
+ ), le = () => /* @__PURE__ */ n(
362
363
  "div",
363
364
  {
364
365
  style: {
@@ -368,14 +369,15 @@ const Gn = {
368
369
  gap: 12,
369
370
  padding: "8px 8px 12px 8px",
370
371
  fontFamily: "var(--font-sans)",
371
- borderBottom: "1px solid var(--Grey-absent, #D9D9D9)"
372
+ borderBottom: "none",
373
+ minHeight: 33
372
374
  },
373
375
  children: [
374
376
  /* @__PURE__ */ n(
375
377
  "button",
376
378
  {
377
379
  onClick: () => {
378
- d((g) => !g), a && !S && a();
380
+ d((h) => !h), a && !S && a();
379
381
  },
380
382
  style: {
381
383
  display: "flex",
@@ -389,11 +391,13 @@ const Gn = {
389
391
  fontSize: 13,
390
392
  fontWeight: 500,
391
393
  lineHeight: "normal",
392
- fontFamily: "var(--font-sans)"
394
+ fontFamily: "var(--font-sans)",
395
+ whiteSpace: "nowrap",
396
+ flexShrink: 0
393
397
  },
394
398
  children: [
395
399
  /* @__PURE__ */ e("span", { children: "More Details" }),
396
- S ? /* @__PURE__ */ e(Re, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }) : /* @__PURE__ */ e(_e, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 })
400
+ S ? /* @__PURE__ */ e(St, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }) : /* @__PURE__ */ e(kt, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 })
397
401
  ]
398
402
  }
399
403
  ),
@@ -419,7 +423,7 @@ const Gn = {
419
423
  flexShrink: 0
420
424
  },
421
425
  children: [
422
- /* @__PURE__ */ e(cn, { size: 15, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 }),
426
+ /* @__PURE__ */ e(pn, { size: 15, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 }),
423
427
  /* @__PURE__ */ e("span", { style: { fontSize: 13, lineHeight: "normal" }, children: "Edit" })
424
428
  ]
425
429
  }
@@ -441,20 +445,21 @@ const Gn = {
441
445
  overflow: "visible"
442
446
  },
443
447
  children: [
444
- Z.map((g, A) => {
448
+ Z.map((h, A) => {
445
449
  var U;
446
450
  return /* @__PURE__ */ n(
447
451
  "div",
448
452
  {
449
453
  style: {
450
454
  display: "flex",
451
- alignItems: "flex-start",
455
+ alignItems: "center",
452
456
  gap: 24,
453
- alignSelf: "stretch"
457
+ alignSelf: "stretch",
458
+ flexWrap: "nowrap"
454
459
  },
455
460
  children: [
456
- /* @__PURE__ */ e("div", { style: gt, children: g[0] && !g[0].isMoreDetails ? X(g[0]) : /* @__PURE__ */ e("div", { style: { flex: 1 } }) }),
457
- /* @__PURE__ */ e("div", { style: gt, children: g[1] && !g[1].isMoreDetails ? X(g[1]) : (U = g[1]) != null && U.isMoreDetails ? oe() : /* @__PURE__ */ e("div", { style: { flex: 1 } }) })
461
+ /* @__PURE__ */ e("div", { style: ht, children: h[0] && !h[0].isMoreDetails ? X(h[0]) : /* @__PURE__ */ e("div", { style: { flex: 1 } }) }),
462
+ /* @__PURE__ */ e("div", { style: ht, children: h[1] && !h[1].isMoreDetails ? X(h[1]) : (U = h[1]) != null && U.isMoreDetails ? le() : /* @__PURE__ */ e("div", { style: { flex: 1 } }) })
458
463
  ]
459
464
  },
460
465
  A
@@ -489,7 +494,7 @@ const Gn = {
489
494
  borderBottom: "1px solid var(--Grey-absent, #D9D9D9)",
490
495
  alignSelf: "stretch"
491
496
  }, children: "More details" }),
492
- J.map((g) => /* @__PURE__ */ n(
497
+ J.map((h) => /* @__PURE__ */ n(
493
498
  "div",
494
499
  {
495
500
  style: {
@@ -505,7 +510,7 @@ const Gn = {
505
510
  alignSelf: "stretch"
506
511
  },
507
512
  children: [
508
- /* @__PURE__ */ e("span", { style: { color: "var(--Grey-Strong, #2E3236)", whiteSpace: "nowrap", flexShrink: 0 }, children: g.label }),
513
+ /* @__PURE__ */ e("span", { style: { color: "var(--Grey-Strong, #2E3236)", whiteSpace: "nowrap", flexShrink: 0 }, children: h.label }),
509
514
  /* @__PURE__ */ e("span", { style: {
510
515
  color: "var(--Grey-Muted, #808183)",
511
516
  fontSize: 13,
@@ -513,10 +518,10 @@ const Gn = {
513
518
  fontWeight: 400,
514
519
  lineHeight: "120%",
515
520
  textAlign: "right"
516
- }, children: g.value })
521
+ }, children: h.value })
517
522
  ]
518
523
  },
519
- g.label
524
+ h.label
520
525
  ))
521
526
  ]
522
527
  }
@@ -530,16 +535,16 @@ const Gn = {
530
535
  absent: "var(--Grey-absent, #D9D9D9)",
531
536
  white: "var(--Grey-White, #FFF)",
532
537
  cardBg: "var(--surface-warm-40, rgba(243, 241, 229, 0.40))"
533
- }, N = 1.2, ht = 3, pt = (t) => t != null ? Math.round(t * 100) + "%" : "—", ut = (t) => {
538
+ }, N = 1.2, pt = 3, ut = (t) => t != null ? Math.round(t * 100) + "%" : "—", yt = (t) => {
534
539
  if (t == null)
535
540
  return "—";
536
541
  const r = (t * 100).toFixed(1);
537
542
  return t > 0 ? `+${r}pp` : `${r}pp`;
538
- }, En = ({ outcomeLift: t, driverLabels: r = [] }) => {
543
+ }, Tn = ({ outcomeLift: t, driverLabels: r = [] }) => {
539
544
  var d;
540
545
  if (!t || t.lift == null)
541
546
  return null;
542
- const i = t.p_expected, s = t.p_full, l = t.lift_raw ?? (s != null && i != null ? s - i : null), a = t.lift, f = (d = t.interpretation) != null && d.lift_band ? t.interpretation.lift_band.replace(/_/g, " ") : a >= 0 ? "Positive" : "Negative", h = f.charAt(0).toUpperCase() + f.slice(1), W = /negative/i.test(f) ? fn : xt, v = r.slice(0, ht), S = r.length - ht;
547
+ const i = t.p_expected, s = t.p_full, o = t.lift_raw ?? (s != null && i != null ? s - i : null), a = t.lift, g = (d = t.interpretation) != null && d.lift_band ? t.interpretation.lift_band.replace(/_/g, " ") : a >= 0 ? "Positive" : "Negative", p = g.charAt(0).toUpperCase() + g.slice(1), W = /negative/i.test(g) ? un : bt, v = r.slice(0, pt), S = r.length - pt;
543
548
  return /* @__PURE__ */ n(
544
549
  "div",
545
550
  {
@@ -590,7 +595,7 @@ const Gn = {
590
595
  },
591
596
  children: [
592
597
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: F.strong, lineHeight: N }, children: "vs. Average Agent:" }),
593
- /* @__PURE__ */ e("span", { style: { fontSize: 14, fontWeight: 600, color: F.strong, lineHeight: N }, children: ut(a) }),
598
+ /* @__PURE__ */ e("span", { style: { fontSize: 14, fontWeight: 600, color: F.strong, lineHeight: N }, children: yt(a) }),
594
599
  /* @__PURE__ */ n(
595
600
  "div",
596
601
  {
@@ -603,7 +608,7 @@ const Gn = {
603
608
  },
604
609
  children: [
605
610
  /* @__PURE__ */ e(W, { size: 14, color: F.strong }),
606
- /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 600, color: F.strong, lineHeight: N }, children: h })
611
+ /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 600, color: F.strong, lineHeight: N }, children: p })
607
612
  ]
608
613
  }
609
614
  )
@@ -622,7 +627,7 @@ const Gn = {
622
627
  },
623
628
  children: [
624
629
  /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 16, alignItems: "flex-start", flex: 1, minWidth: 0 }, children: [
625
- /* @__PURE__ */ e("span", { style: { fontSize: 28, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N }, children: pt(i) }),
630
+ /* @__PURE__ */ e("span", { style: { fontSize: 28, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N }, children: ut(i) }),
626
631
  /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 8, alignItems: "flex-start", minHeight: 48 }, children: [
627
632
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: F.strong, fontFamily: "var(--font-sans)", lineHeight: N, whiteSpace: "nowrap" }, children: "Expected Outcome" }),
628
633
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N, textAlign: "left" }, children: "Based on call type & difficulty" })
@@ -638,7 +643,7 @@ const Gn = {
638
643
  flex: 1,
639
644
  minWidth: 0
640
645
  }, children: [
641
- /* @__PURE__ */ e("span", { style: { fontSize: 28, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N }, children: ut(l) }),
646
+ /* @__PURE__ */ e("span", { style: { fontSize: 28, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N }, children: yt(o) }),
642
647
  /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 8, alignItems: "flex-start", minHeight: 48 }, children: [
643
648
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: F.strong, fontFamily: "var(--font-sans)", lineHeight: N, whiteSpace: "nowrap" }, children: "Agent Impact" }),
644
649
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N, textAlign: "left" }, children: "Behavior-driven change" })
@@ -654,7 +659,7 @@ const Gn = {
654
659
  flex: 1,
655
660
  minWidth: 0
656
661
  }, children: [
657
- /* @__PURE__ */ e("span", { style: { fontSize: 28, fontWeight: 400, color: F.strong, fontFamily: "var(--font-sans)", lineHeight: N }, children: pt(s) }),
662
+ /* @__PURE__ */ e("span", { style: { fontSize: 28, fontWeight: 400, color: F.strong, fontFamily: "var(--font-sans)", lineHeight: N }, children: ut(s) }),
658
663
  /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 8, alignItems: "flex-start", minHeight: 48 }, children: [
659
664
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 600, color: F.strong, fontFamily: "var(--font-sans)", lineHeight: N, whiteSpace: "nowrap" }, children: "Predicted Outcome" }),
660
665
  /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: F.muted, fontFamily: "var(--font-sans)", lineHeight: N, textAlign: "left" }, children: "With agent behaviors" })
@@ -747,8 +752,8 @@ const Gn = {
747
752
  ]
748
753
  }
749
754
  );
750
- }, yt = ({ children: t, size: r = 28, onClick: i, title: s }) => {
751
- const [l, a] = z(!1);
755
+ }, mt = ({ children: t, size: r = 28, onClick: i, title: s }) => {
756
+ const [o, a] = G(!1);
752
757
  return /* @__PURE__ */ e(
753
758
  "div",
754
759
  {
@@ -763,7 +768,7 @@ const Gn = {
763
768
  width: r,
764
769
  height: r,
765
770
  borderRadius: 9999,
766
- background: l ? "var(--surface-hover, #F3F7F7)" : "transparent",
771
+ background: o ? "var(--surface-hover, #F3F7F7)" : "transparent",
767
772
  cursor: "pointer",
768
773
  flexShrink: 0,
769
774
  transition: "background 0.15s"
@@ -771,24 +776,24 @@ const Gn = {
771
776
  children: t
772
777
  }
773
778
  );
774
- }, Hn = ({
779
+ }, Rn = ({
775
780
  signals: t = { signals: [], present_count: 0, total_signals_evaluated: 0 },
776
781
  expandedSignals: r = /* @__PURE__ */ new Set(),
777
782
  toggleSignal: i = () => {
778
783
  },
779
784
  playEvidence: s = () => {
780
785
  },
781
- highlightTurns: l = () => {
786
+ highlightTurns: o = () => {
782
787
  },
783
788
  onShowInTranscript: a = () => {
784
789
  },
785
- timelinePlaying: f = !1,
786
- currentTimeSeconds: h = 0
790
+ timelinePlaying: g = !1,
791
+ currentTimeSeconds: p = 0
787
792
  }) => {
788
793
  const u = (t == null ? void 0 : t.signals) ?? [], W = (t == null ? void 0 : t.present_count) ?? u.length, v = (d) => {
789
794
  const x = Math.floor(d / 6e4), k = Math.floor(d % 6e4 / 1e3);
790
795
  return `${x.toString().padStart(2, "0")}:${k.toString().padStart(2, "0")}`;
791
- }, S = (d) => f && d.start_ms != null && h * 1e3 >= d.start_ms && h * 1e3 <= (d.end_ms ?? d.start_ms + 5e3);
796
+ }, S = (d) => g && d.start_ms != null && p * 1e3 >= d.start_ms && p * 1e3 <= (d.end_ms ?? d.start_ms + 5e3);
792
797
  return /* @__PURE__ */ n("div", { style: {
793
798
  display: "flex",
794
799
  flexDirection: "column",
@@ -812,7 +817,7 @@ const Gn = {
812
817
  borderRadius: 9999,
813
818
  background: "var(--surface-hover, #F3F7F7)",
814
819
  flexShrink: 0
815
- }, children: /* @__PURE__ */ e(bt, { size: 20, color: "#2E3236", strokeWidth: 1.5 }) }),
820
+ }, children: /* @__PURE__ */ e(wt, { size: 20, color: "#2E3236", strokeWidth: 1.5 }) }),
816
821
  /* @__PURE__ */ n("div", { style: {
817
822
  display: "flex",
818
823
  alignItems: "center",
@@ -848,7 +853,7 @@ const Gn = {
848
853
  }, children: "No signals detected." }),
849
854
  u.map((d, x) => {
850
855
  var R, b, I;
851
- const k = d.key ?? d.id ?? x, w = r.has(k), G = ((R = d.observations) == null ? void 0 : R.length) ?? 0;
856
+ const k = d.key ?? d.id ?? x, w = r.has(k), M = ((R = d.observations) == null ? void 0 : R.length) ?? 0;
852
857
  return /* @__PURE__ */ n(
853
858
  "div",
854
859
  {
@@ -886,17 +891,17 @@ const Gn = {
886
891
  lineHeight: 1.71
887
892
  }, children: [
888
893
  d.display_name || ((b = d.key) == null ? void 0 : b.replace(/_/g, " ")),
889
- G > 0 && /* @__PURE__ */ n("span", { style: {
894
+ M > 0 && /* @__PURE__ */ n("span", { style: {
890
895
  fontWeight: 600,
891
896
  color: "var(--text-dark, #0B0A0A)",
892
897
  marginLeft: 6
893
898
  }, children: [
894
899
  "(",
895
- G,
900
+ M,
896
901
  ")"
897
902
  ] })
898
903
  ] }),
899
- w ? /* @__PURE__ */ e(Re, { size: 20, color: "#767473" }) : /* @__PURE__ */ e(_e, { size: 20, color: "#767473" })
904
+ w ? /* @__PURE__ */ e(St, { size: 20, color: "#767473" }) : /* @__PURE__ */ e(kt, { size: 20, color: "#767473" })
900
905
  ]
901
906
  }
902
907
  ),
@@ -942,14 +947,14 @@ const Gn = {
942
947
  },
943
948
  children: [
944
949
  /* @__PURE__ */ e(
945
- yt,
950
+ mt,
946
951
  {
947
952
  size: 28,
948
953
  title: "Show in transcript",
949
954
  onClick: (y) => {
950
955
  y.stopPropagation(), a(E.evidence[0].start_ms);
951
956
  },
952
- children: /* @__PURE__ */ e(St, { size: 16, color: "#808183", strokeWidth: 1.5 })
957
+ children: /* @__PURE__ */ e(Ct, { size: 16, color: "#808183", strokeWidth: 1.5 })
953
958
  }
954
959
  ),
955
960
  /* @__PURE__ */ e("span", { style: {
@@ -964,32 +969,32 @@ const Gn = {
964
969
  )
965
970
  ] }),
966
971
  (m = E.evidence) == null ? void 0 : m.map((y, c) => {
967
- const D = y.start_ms != null && y.end_ms != null;
972
+ const z = y.start_ms != null && y.end_ms != null;
968
973
  return y.text && /* @__PURE__ */ n(
969
974
  "div",
970
975
  {
971
976
  onClick: (Z) => {
972
- Z.stopPropagation(), D && s(y);
977
+ Z.stopPropagation(), z && s(y);
973
978
  },
974
- onMouseEnter: () => l(y.turn_ids ?? []),
975
- onMouseLeave: () => l([]),
979
+ onMouseEnter: () => o(y.turn_ids ?? []),
980
+ onMouseLeave: () => o([]),
976
981
  style: {
977
982
  display: "flex",
978
983
  alignItems: "center",
979
984
  gap: 8,
980
985
  padding: "8px 0",
981
- cursor: D ? "pointer" : "default"
986
+ cursor: z ? "pointer" : "default"
982
987
  },
983
988
  children: [
984
- D && /* @__PURE__ */ e(yt, { size: 28, children: S(y) ? /* @__PURE__ */ e(
985
- kt,
989
+ z && /* @__PURE__ */ e(mt, { size: 28, children: S(y) ? /* @__PURE__ */ e(
990
+ Ft,
986
991
  {
987
992
  size: 17,
988
993
  color: "var(--Grey-Muted, #808183)",
989
994
  strokeWidth: 1.5
990
995
  }
991
996
  ) : /* @__PURE__ */ e(
992
- wt,
997
+ Wt,
993
998
  {
994
999
  size: 17,
995
1000
  color: "var(--Grey-Muted, #808183)",
@@ -1031,7 +1036,7 @@ const Gn = {
1031
1036
  accent: "var(--rail-orange, #C98A5A)",
1032
1037
  track: "var(--rail-surface-2, #E3E1D7)",
1033
1038
  infoIcon: "var(--color-input-border, #ACACAD)"
1034
- }, Tn = ({ score: t = 4, minScore: r = 0, maxScore: i = 5 }) => {
1039
+ }, _n = ({ score: t = 4, minScore: r = 0, maxScore: i = 5 }) => {
1035
1040
  const v = Number(t), S = Number.isFinite(v) ? Math.min(Math.max(v, r), i) : r, d = i > r ? (S - r) / (i - r) * 5 : 0, x = 180 / 5, k = (R) => {
1036
1041
  const b = R * Math.PI / 180;
1037
1042
  return {
@@ -1041,9 +1046,9 @@ const Gn = {
1041
1046
  }, w = (R, b) => {
1042
1047
  const I = k(R), E = k(b), B = R - b > 180 ? 1 : 0;
1043
1048
  return `M ${I.x} ${I.y} A 85 85 0 ${B} 1 ${E.x} ${E.y}`;
1044
- }, G = 2;
1049
+ }, M = 2;
1045
1050
  return /* @__PURE__ */ e("svg", { width: "100%", viewBox: "0 0 243 130", fill: "none", style: { maxWidth: 243 }, children: Array.from({ length: 5 }, (R, b) => {
1046
- const I = 180 - b * x - (b > 0 ? G / 2 : 0), E = 180 - (b + 1) * x + (b < 5 - 1 ? G / 2 : 0), B = Math.max(0, Math.min(1, d - b)), _ = w(I, E);
1051
+ const I = 180 - b * x - (b > 0 ? M / 2 : 0), E = 180 - (b + 1) * x + (b < 5 - 1 ? M / 2 : 0), B = Math.max(0, Math.min(1, d - b)), _ = w(I, E);
1047
1052
  return /* @__PURE__ */ n("g", { children: [
1048
1053
  /* @__PURE__ */ e(
1049
1054
  "path",
@@ -1069,10 +1074,10 @@ const Gn = {
1069
1074
  )
1070
1075
  ] }, b);
1071
1076
  }) });
1072
- }, Rn = ({ value: t = 0, maxValue: r = 5 }) => {
1077
+ }, An = ({ value: t = 0, maxValue: r = 5 }) => {
1073
1078
  const i = Number(t), s = Number.isFinite(i) ? Math.min(Math.max(i, 0), r) : 0;
1074
- return /* @__PURE__ */ e("div", { style: { display: "flex", gap: 2 }, children: Array.from({ length: r }, (l, a) => {
1075
- const f = Math.max(0, Math.min(1, s - a));
1079
+ return /* @__PURE__ */ e("div", { style: { display: "flex", gap: 2 }, children: Array.from({ length: r }, (o, a) => {
1080
+ const g = Math.max(0, Math.min(1, s - a));
1076
1081
  return /* @__PURE__ */ e(
1077
1082
  "div",
1078
1083
  {
@@ -1083,11 +1088,11 @@ const Gn = {
1083
1088
  background: O.track,
1084
1089
  overflow: "hidden"
1085
1090
  },
1086
- children: f > 0 && /* @__PURE__ */ e(
1091
+ children: g > 0 && /* @__PURE__ */ e(
1087
1092
  "div",
1088
1093
  {
1089
1094
  style: {
1090
- width: `${f * 100}%`,
1095
+ width: `${g * 100}%`,
1091
1096
  height: "100%",
1092
1097
  background: O.strong
1093
1098
  }
@@ -1097,22 +1102,22 @@ const Gn = {
1097
1102
  a
1098
1103
  );
1099
1104
  }) });
1100
- }, _n = {
1105
+ }, Ln = {
1101
1106
  CSAT: "Predicted Customer Satisfaction",
1102
1107
  Resolution: "Predicted Resolution: was the issue fully resolved?",
1103
1108
  "Process Adherence": "Process Adherence: Did the agent follow procedures?",
1104
1109
  Communication: "Predicted Communication Quality: Clarity, Empathy, Professionalism"
1105
- }, An = ({ text: t, children: r }) => {
1106
- const [i, s] = z(!1), l = $(null), [a, f] = z({ top: 0, left: 0 });
1110
+ }, Bn = ({ text: t, children: r }) => {
1111
+ const [i, s] = G(!1), o = $(null), [a, g] = G({ top: 0, left: 0 });
1107
1112
  return /* @__PURE__ */ n(
1108
1113
  "div",
1109
1114
  {
1110
- ref: l,
1115
+ ref: o,
1111
1116
  style: { position: "relative", display: "inline-flex" },
1112
1117
  onMouseEnter: () => {
1113
- if (l.current) {
1114
- const u = l.current.getBoundingClientRect();
1115
- f({
1118
+ if (o.current) {
1119
+ const u = o.current.getBoundingClientRect();
1120
+ g({
1116
1121
  top: u.top - 8,
1117
1122
  left: u.left + u.width / 2
1118
1123
  });
@@ -1146,7 +1151,7 @@ const Gn = {
1146
1151
  ]
1147
1152
  }
1148
1153
  );
1149
- }, Ln = ({ label: t, value: r = 0, maxValue: i = 5 }) => /* @__PURE__ */ n("div", { style: {
1154
+ }, jn = ({ label: t, value: r = 0, maxValue: i = 5 }) => /* @__PURE__ */ n("div", { style: {
1150
1155
  display: "flex",
1151
1156
  flexDirection: "column",
1152
1157
  gap: 8,
@@ -1165,24 +1170,24 @@ const Gn = {
1165
1170
  fontFamily: "var(--font-sans)",
1166
1171
  lineHeight: "normal"
1167
1172
  }, children: t }),
1168
- /* @__PURE__ */ e(An, { text: _n[t] || t, children: /* @__PURE__ */ e(Ct, { size: 14, color: O.infoIcon, strokeWidth: 1, style: { cursor: "pointer" } }) })
1173
+ /* @__PURE__ */ e(Bn, { text: Ln[t] || t, children: /* @__PURE__ */ e(It, { size: 14, color: O.infoIcon, strokeWidth: 1, style: { cursor: "pointer" } }) })
1169
1174
  ] }),
1170
- /* @__PURE__ */ e(Rn, { value: r, maxValue: i })
1171
- ] }), Bn = ({
1175
+ /* @__PURE__ */ e(An, { value: r, maxValue: i })
1176
+ ] }), Nn = ({
1172
1177
  score: t = 4,
1173
1178
  minScore: r = 0,
1174
1179
  maxScore: i = 5,
1175
1180
  predictedScore: s = 4,
1176
- predictedLabel: l = "Predicted Objective",
1181
+ predictedLabel: o = "Predicted Objective",
1177
1182
  description: a = "",
1178
- legends: f = [
1183
+ legends: g = [
1179
1184
  { label: "CSAT", value: 3 },
1180
1185
  { label: "Resolution", value: 4 },
1181
1186
  { label: "Process Adherence", value: 5 },
1182
1187
  { label: "Communication", value: 3 }
1183
1188
  ]
1184
1189
  }) => {
1185
- const h = Number(t), u = Number.isFinite(h) ? Math.min(Math.max(h, r), i) : r, W = u.toFixed(1);
1190
+ const p = Number(t), u = Number.isFinite(p) ? Math.min(Math.max(p, r), i) : r, W = u.toFixed(1);
1186
1191
  return /* @__PURE__ */ n("div", { style: {
1187
1192
  display: "flex",
1188
1193
  flexDirection: "column",
@@ -1231,7 +1236,7 @@ const Gn = {
1231
1236
  alignItems: "center",
1232
1237
  display: "flex"
1233
1238
  }, children: [
1234
- /* @__PURE__ */ e(Tn, { score: t, minScore: r, maxScore: i }),
1239
+ /* @__PURE__ */ e(_n, { score: t, minScore: r, maxScore: i }),
1235
1240
  (() => {
1236
1241
  const d = -(180 - (i > r ? (u - r) / (i - r) : 0) * 180 - 45);
1237
1242
  return /* @__PURE__ */ n(
@@ -1294,8 +1299,8 @@ const Gn = {
1294
1299
  height: 1,
1295
1300
  background: O.absent
1296
1301
  } }),
1297
- f.map((v, S) => /* @__PURE__ */ e(
1298
- Ln,
1302
+ g.map((v, S) => /* @__PURE__ */ e(
1303
+ jn,
1299
1304
  {
1300
1305
  label: v.label,
1301
1306
  value: v.value
@@ -1305,13 +1310,13 @@ const Gn = {
1305
1310
  ] })
1306
1311
  ] })
1307
1312
  ] });
1308
- }, Ft = (t) => {
1313
+ }, zt = (t) => {
1309
1314
  if (!t)
1310
1315
  return null;
1311
1316
  const i = String(t).trim().toLowerCase().split(/[^a-z]+/).filter(Boolean);
1312
1317
  return i.includes("supervisor") ? "var(--rail-compliance, #C98A5A)" : i.includes("admin") || i.includes("administrator") || i.includes("superadmin") ? "var(--rail-discovery, #5E88B0)" : i.includes("agent") ? "var(--rail-outcome, #6B7C93)" : null;
1313
- }, jn = (t) => {
1314
- var s, l, a, f, h, u;
1318
+ }, $n = (t) => {
1319
+ var s, o, a, g, p, u;
1315
1320
  if (!t)
1316
1321
  return null;
1317
1322
  const r = t.role ?? t.userRole ?? t.user_role ?? t.author_role ?? t.roleName ?? t.role_name ?? t.userType ?? t.user_type ?? t.type;
@@ -1321,14 +1326,14 @@ const Gn = {
1321
1326
  return r.join(" ");
1322
1327
  if (r && typeof r == "object")
1323
1328
  return r.name || r.value || r.label || null;
1324
- const i = ((s = t.user) == null ? void 0 : s.role) ?? ((l = t.user) == null ? void 0 : l.userRole) ?? ((a = t.user) == null ? void 0 : a.user_role) ?? ((f = t.profile) == null ? void 0 : f.role) ?? ((h = t.profile) == null ? void 0 : h.userRole) ?? ((u = t.profile) == null ? void 0 : u.user_role);
1329
+ const i = ((s = t.user) == null ? void 0 : s.role) ?? ((o = t.user) == null ? void 0 : o.userRole) ?? ((a = t.user) == null ? void 0 : a.user_role) ?? ((g = t.profile) == null ? void 0 : g.role) ?? ((p = t.profile) == null ? void 0 : p.userRole) ?? ((u = t.profile) == null ? void 0 : u.user_role);
1325
1330
  return typeof i == "string" ? i : Array.isArray(i) ? i.join(" ") : i && typeof i == "object" && (i.name || i.value || i.label) || null;
1326
- }, Wt = (t) => {
1331
+ }, Dt = (t) => {
1327
1332
  if (!t)
1328
1333
  return "#6B7C93";
1329
- const r = jn(t);
1330
- return Ft(r) || t.color || "#6B7C93";
1331
- }, ke = (t) => (t || "").split(" ").map((r) => r[0]).join("").toUpperCase() || "U", Nn = (t) => {
1334
+ const r = $n(t);
1335
+ return zt(r) || t.color || "#6B7C93";
1336
+ }, we = (t) => (t || "").split(" ").map((r) => r[0]).join("").toUpperCase() || "U", On = (t) => {
1332
1337
  if (!t || t === "Just now")
1333
1338
  return !0;
1334
1339
  if (/^\d{4}-\d{2}-\d{2}T/.test(t))
@@ -1340,7 +1345,7 @@ const Gn = {
1340
1345
  }
1341
1346
  const r = t.match(/^(\d+)\s*min/);
1342
1347
  return r ? parseInt(r[1], 10) < 15 : !(/\d+\s*h/.test(t) || /\d+\s*day/.test(t));
1343
- }, $n = (t) => {
1348
+ }, Pn = (t) => {
1344
1349
  if (!t)
1345
1350
  return "";
1346
1351
  if (!/^\d{4}-\d{2}-\d{2}T/.test(t))
@@ -1349,26 +1354,26 @@ const Gn = {
1349
1354
  const r = /Z$|[+-]\d{2}:\d{2}$/.test(t) ? t : t + "Z", i = new Date(r);
1350
1355
  if (Number.isNaN(i.getTime()))
1351
1356
  return t;
1352
- const l = (/* @__PURE__ */ new Date()).getTime() - i.getTime(), a = Math.floor(l / 6e4), f = Math.floor(l / 36e5);
1357
+ const o = (/* @__PURE__ */ new Date()).getTime() - i.getTime(), a = Math.floor(o / 6e4), g = Math.floor(o / 36e5);
1353
1358
  if (a < 1)
1354
1359
  return "Just now";
1355
1360
  if (a < 60)
1356
1361
  return `${a} min`;
1357
- if (f < 24)
1358
- return `${f} h`;
1359
- const h = Math.floor(f / 24);
1360
- return h === 1 ? "1 day" : `${h} days`;
1362
+ if (g < 24)
1363
+ return `${g} h`;
1364
+ const p = Math.floor(g / 24);
1365
+ return p === 1 ? "1 day" : `${p} days`;
1361
1366
  } catch {
1362
1367
  return t;
1363
1368
  }
1364
- }, It = ({ name: t, initials: r, color: i, avatar: s, size: l = 36 }) => s ? /* @__PURE__ */ e(
1369
+ }, Gt = ({ name: t, initials: r, color: i, avatar: s, size: o = 36 }) => s ? /* @__PURE__ */ e(
1365
1370
  "img",
1366
1371
  {
1367
1372
  src: s,
1368
1373
  alt: t,
1369
1374
  style: {
1370
- width: l,
1371
- height: l,
1375
+ width: o,
1376
+ height: o,
1372
1377
  borderRadius: "50%",
1373
1378
  objectFit: "cover",
1374
1379
  flexShrink: 0
@@ -1378,57 +1383,57 @@ const Gn = {
1378
1383
  "div",
1379
1384
  {
1380
1385
  style: {
1381
- width: l,
1382
- height: l,
1386
+ width: o,
1387
+ height: o,
1383
1388
  borderRadius: "50%",
1384
1389
  background: i || "#6B7C93",
1385
1390
  color: "#FFF",
1386
1391
  display: "flex",
1387
1392
  alignItems: "center",
1388
1393
  justifyContent: "center",
1389
- fontSize: l <= 32 ? "10px" : "11px",
1394
+ fontSize: o <= 32 ? "10px" : "11px",
1390
1395
  fontWeight: 650,
1391
1396
  flexShrink: 0,
1392
1397
  fontFamily: "var(--default-font-family)",
1393
1398
  letterSpacing: "0.02em"
1394
1399
  },
1395
1400
  title: t,
1396
- children: r || ke(t)
1401
+ children: r || we(t)
1397
1402
  }
1398
- ), On = ({
1403
+ ), Yn = ({
1399
1404
  comment: t,
1400
1405
  isReply: r = !1,
1401
1406
  isConsecutive: i = !1,
1402
1407
  onReply: s,
1403
- onSendReply: l,
1408
+ onSendReply: o,
1404
1409
  onEdit: a,
1405
- onDelete: f,
1406
- onMenuClick: h,
1410
+ onDelete: g,
1411
+ onMenuClick: p,
1407
1412
  showReply: u = !0
1408
1413
  }) => {
1409
- var he, pe;
1410
- const [W, v] = z(!1), [S, d] = z(!1), [x, k] = z(!1), [w, G] = z(""), [R, b] = z(!1), [I, E] = z(""), [B, _] = z(!1), P = $(null), m = $(null), y = $(null), c = t.author || {}, D = c.name || t.author_name || "Unknown", Z = c.initials || ke(D), Q = c.role || t.author_role, J = c.color || Ft(Q) || "#6B7C93", X = c.avatar || t.avatar, oe = t.timestamp || t.created_at, g = $n(oe), A = Nn(oe), U = !!(t.isEdited || t.is_edited || t.edited), we = Array.isArray(t.content) ? t.content : [t.content || t.text || ""];
1414
+ var pe, ue;
1415
+ const [W, v] = G(!1), [S, d] = G(!1), [x, k] = G(!1), [w, M] = G(""), [R, b] = G(!1), [I, E] = G(""), [B, _] = G(!1), P = $(null), m = $(null), y = $(null), c = t.author || {}, z = c.name || t.author_name || "Unknown", Z = c.initials || we(z), Q = c.role || t.author_role, J = c.color || zt(Q) || "#6B7C93", X = c.avatar || t.avatar, le = t.timestamp || t.created_at, h = Pn(le), A = On(le), U = !!(t.isEdited || t.is_edited || t.edited), Ce = Array.isArray(t.content) ? t.content : [t.content || t.text || ""];
1411
1416
  return ae.useEffect(() => {
1412
1417
  if (!S)
1413
1418
  return;
1414
- const o = (K) => {
1419
+ const l = (K) => {
1415
1420
  P.current && !P.current.contains(K.target) && d(!1);
1416
1421
  };
1417
- return document.addEventListener("mousedown", o), () => document.removeEventListener("mousedown", o);
1422
+ return document.addEventListener("mousedown", l), () => document.removeEventListener("mousedown", l);
1418
1423
  }, [S]), ae.useEffect(() => {
1419
- const o = m.current;
1420
- if (!o)
1424
+ const l = m.current;
1425
+ if (!l)
1421
1426
  return;
1422
- o.style.height = "auto";
1427
+ l.style.height = "auto";
1423
1428
  const K = 140;
1424
- o.style.height = Math.min(o.scrollHeight, K) + "px", o.style.overflowY = o.scrollHeight > K ? "auto" : "hidden";
1429
+ l.style.height = Math.min(l.scrollHeight, K) + "px", l.style.overflowY = l.scrollHeight > K ? "auto" : "hidden";
1425
1430
  }, [w, x]), ae.useEffect(() => {
1426
- const o = y.current;
1427
- if (!o)
1431
+ const l = y.current;
1432
+ if (!l)
1428
1433
  return;
1429
- o.style.height = "auto";
1434
+ l.style.height = "auto";
1430
1435
  const K = 140;
1431
- o.style.height = Math.min(o.scrollHeight, K) + "px", o.style.overflowY = o.scrollHeight > K ? "auto" : "hidden";
1436
+ l.style.height = Math.min(l.scrollHeight, K) + "px", l.style.overflowY = l.scrollHeight > K ? "auto" : "hidden";
1432
1437
  }, [I, R]), /* @__PURE__ */ n(
1433
1438
  "div",
1434
1439
  {
@@ -1444,9 +1449,9 @@ const Gn = {
1444
1449
  },
1445
1450
  children: [
1446
1451
  i ? /* @__PURE__ */ e("div", { style: { width: 36, flexShrink: 0 } }) : /* @__PURE__ */ e(
1447
- It,
1452
+ Gt,
1448
1453
  {
1449
- name: D,
1454
+ name: z,
1450
1455
  initials: Z,
1451
1456
  color: J,
1452
1457
  avatar: X
@@ -1474,7 +1479,7 @@ const Gn = {
1474
1479
  lineHeight: "150%",
1475
1480
  fontFamily: "var(--default-font-family)"
1476
1481
  },
1477
- children: D
1482
+ children: z
1478
1483
  }
1479
1484
  ),
1480
1485
  /* @__PURE__ */ e(
@@ -1487,7 +1492,7 @@ const Gn = {
1487
1492
  lineHeight: "150%",
1488
1493
  fontFamily: "var(--default-font-family)"
1489
1494
  },
1490
- children: g
1495
+ children: h
1491
1496
  }
1492
1497
  ),
1493
1498
  U && /* @__PURE__ */ e(
@@ -1509,7 +1514,7 @@ const Gn = {
1509
1514
  "button",
1510
1515
  {
1511
1516
  type: "button",
1512
- onClick: () => d((o) => !o),
1517
+ onClick: () => d((l) => !l),
1513
1518
  style: {
1514
1519
  padding: 2,
1515
1520
  border: "none",
@@ -1523,7 +1528,7 @@ const Gn = {
1523
1528
  transition: "opacity 0.15s",
1524
1529
  flexShrink: 0
1525
1530
  },
1526
- children: /* @__PURE__ */ e(pn, { size: 24, color: "var(--Grey-Muted, #808183)" })
1531
+ children: /* @__PURE__ */ e(vn, { size: 24, color: "var(--Grey-Muted, #808183)" })
1527
1532
  }
1528
1533
  ),
1529
1534
  S && /* @__PURE__ */ n(
@@ -1568,11 +1573,11 @@ const Gn = {
1568
1573
  lineHeight: "150%",
1569
1574
  textAlign: "left"
1570
1575
  },
1571
- onMouseEnter: (o) => {
1572
- o.currentTarget.style.background = "var(--surface-hover, #F3F7F7)";
1576
+ onMouseEnter: (l) => {
1577
+ l.currentTarget.style.background = "var(--surface-hover, #F3F7F7)";
1573
1578
  },
1574
- onMouseLeave: (o) => {
1575
- o.currentTarget.style.background = "transparent";
1579
+ onMouseLeave: (l) => {
1580
+ l.currentTarget.style.background = "transparent";
1576
1581
  },
1577
1582
  children: "Reply"
1578
1583
  }
@@ -1586,9 +1591,9 @@ const Gn = {
1586
1591
  if (!A)
1587
1592
  return;
1588
1593
  d(!1);
1589
- const o = Array.isArray(t.content) ? t.content.join(`
1594
+ const l = Array.isArray(t.content) ? t.content.join(`
1590
1595
  `) : t.content || t.text || "";
1591
- E(o), b(!0), k(!1);
1596
+ E(l), b(!0), k(!1);
1592
1597
  },
1593
1598
  style: {
1594
1599
  display: "flex",
@@ -1606,16 +1611,16 @@ const Gn = {
1606
1611
  textAlign: "left",
1607
1612
  opacity: A ? 1 : 0.5
1608
1613
  },
1609
- onMouseEnter: (o) => {
1610
- A && (o.currentTarget.style.background = "var(--surface-hover, #F3F7F7)");
1614
+ onMouseEnter: (l) => {
1615
+ A && (l.currentTarget.style.background = "var(--surface-hover, #F3F7F7)");
1611
1616
  },
1612
- onMouseLeave: (o) => {
1613
- o.currentTarget.style.background = "transparent";
1617
+ onMouseLeave: (l) => {
1618
+ l.currentTarget.style.background = "transparent";
1614
1619
  },
1615
1620
  children: "Edit"
1616
1621
  }
1617
1622
  ),
1618
- f && /* @__PURE__ */ e(
1623
+ g && /* @__PURE__ */ e(
1619
1624
  "button",
1620
1625
  {
1621
1626
  type: "button",
@@ -1637,11 +1642,11 @@ const Gn = {
1637
1642
  lineHeight: "150%",
1638
1643
  textAlign: "left"
1639
1644
  },
1640
- onMouseEnter: (o) => {
1641
- o.currentTarget.style.background = "var(--surface-hover, #F3F7F7)";
1645
+ onMouseEnter: (l) => {
1646
+ l.currentTarget.style.background = "var(--surface-hover, #F3F7F7)";
1642
1647
  },
1643
- onMouseLeave: (o) => {
1644
- o.currentTarget.style.background = "transparent";
1648
+ onMouseLeave: (l) => {
1649
+ l.currentTarget.style.background = "transparent";
1645
1650
  },
1646
1651
  children: "Delete"
1647
1652
  }
@@ -1695,7 +1700,7 @@ const Gn = {
1695
1700
  children: [
1696
1701
  "“",
1697
1702
  " ",
1698
- ((he = t.author) == null ? void 0 : he.name) || "Unknown"
1703
+ ((pe = t.author) == null ? void 0 : pe.name) || "Unknown"
1699
1704
  ]
1700
1705
  }
1701
1706
  ),
@@ -1713,7 +1718,7 @@ const Gn = {
1713
1718
  cursor: "pointer",
1714
1719
  padding: 0
1715
1720
  },
1716
- children: /* @__PURE__ */ e(st, { size: 20, color: "var(--Grey-Muted, #808183)" })
1721
+ children: /* @__PURE__ */ e(ot, { size: 20, color: "var(--Grey-Muted, #808183)" })
1717
1722
  }
1718
1723
  )
1719
1724
  ]
@@ -1734,14 +1739,14 @@ const Gn = {
1734
1739
  {
1735
1740
  ref: y,
1736
1741
  value: I,
1737
- onChange: (o) => E(o.target.value),
1738
- onKeyDown: (o) => {
1739
- if (o.key === "Enter") {
1740
- if (o.metaKey || o.ctrlKey || o.shiftKey)
1742
+ onChange: (l) => E(l.target.value),
1743
+ onKeyDown: (l) => {
1744
+ if (l.key === "Enter") {
1745
+ if (l.metaKey || l.ctrlKey || l.shiftKey)
1741
1746
  return;
1742
- o.preventDefault(), I.trim() && (a == null || a({ ...t, content: I.trim(), isEdited: !0 }), b(!1));
1747
+ l.preventDefault(), I.trim() && (a == null || a({ ...t, content: I.trim(), isEdited: !0 }), b(!1));
1743
1748
  }
1744
- o.key === "Escape" && b(!1);
1749
+ l.key === "Escape" && b(!1);
1745
1750
  },
1746
1751
  autoFocus: !0,
1747
1752
  rows: 1,
@@ -1799,7 +1804,7 @@ const Gn = {
1799
1804
  }
1800
1805
  ) : (
1801
1806
  /* Message bubbles — stacked, gap: 4px, fit content */
1802
- /* @__PURE__ */ e("div", { style: { display: "flex", flexDirection: "column", gap: 4, alignItems: "flex-start" }, children: we.map((o, K) => /* @__PURE__ */ e(
1807
+ /* @__PURE__ */ e("div", { style: { display: "flex", flexDirection: "column", gap: 4, alignItems: "flex-start" }, children: Ce.map((l, K) => /* @__PURE__ */ e(
1803
1808
  "div",
1804
1809
  {
1805
1810
  style: {
@@ -1813,7 +1818,7 @@ const Gn = {
1813
1818
  borderRadius: 8,
1814
1819
  wordBreak: "break-word"
1815
1820
  },
1816
- children: o
1821
+ children: l
1817
1822
  },
1818
1823
  K
1819
1824
  )) })
@@ -1836,7 +1841,7 @@ const Gn = {
1836
1841
  {
1837
1842
  type: "button",
1838
1843
  onClick: () => {
1839
- _(!1), f == null || f(t);
1844
+ _(!1), g == null || g(t);
1840
1845
  },
1841
1846
  style: {
1842
1847
  background: "var(--grey-light, #e9e8e8a1)",
@@ -1850,11 +1855,11 @@ const Gn = {
1850
1855
  borderRadius: 6,
1851
1856
  transition: "background 0.15s"
1852
1857
  },
1853
- onMouseEnter: (o) => {
1854
- o.currentTarget.style.background = "var(--Grey-absent, #D9D9D9)";
1858
+ onMouseEnter: (l) => {
1859
+ l.currentTarget.style.background = "var(--Grey-absent, #D9D9D9)";
1855
1860
  },
1856
- onMouseLeave: (o) => {
1857
- o.currentTarget.style.background = "var(--grey-light, #e9e8e8a1)";
1861
+ onMouseLeave: (l) => {
1862
+ l.currentTarget.style.background = "var(--grey-light, #e9e8e8a1)";
1858
1863
  },
1859
1864
  children: "Delete"
1860
1865
  }
@@ -1876,11 +1881,11 @@ const Gn = {
1876
1881
  borderRadius: 6,
1877
1882
  transition: "background 0.15s"
1878
1883
  },
1879
- onMouseEnter: (o) => {
1880
- o.currentTarget.style.background = "var(--grey-light, #e9e8e8a1)";
1884
+ onMouseEnter: (l) => {
1885
+ l.currentTarget.style.background = "var(--grey-light, #e9e8e8a1)";
1881
1886
  },
1882
- onMouseLeave: (o) => {
1883
- o.currentTarget.style.background = "none";
1887
+ onMouseLeave: (l) => {
1888
+ l.currentTarget.style.background = "none";
1884
1889
  },
1885
1890
  children: "Cancel"
1886
1891
  }
@@ -1911,7 +1916,7 @@ const Gn = {
1911
1916
  transition: "color 0.15s"
1912
1917
  },
1913
1918
  children: [
1914
- /* @__PURE__ */ e(un, { size: 20, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
1919
+ /* @__PURE__ */ e(xn, { size: 20, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
1915
1920
  "Reply"
1916
1921
  ]
1917
1922
  }
@@ -1959,7 +1964,7 @@ const Gn = {
1959
1964
  children: [
1960
1965
  "“",
1961
1966
  " ",
1962
- ((pe = t.author) == null ? void 0 : pe.name) || "Unknown"
1967
+ ((ue = t.author) == null ? void 0 : ue.name) || "Unknown"
1963
1968
  ]
1964
1969
  }
1965
1970
  ),
@@ -1968,7 +1973,7 @@ const Gn = {
1968
1973
  {
1969
1974
  type: "button",
1970
1975
  onClick: () => {
1971
- G(""), k(!1);
1976
+ M(""), k(!1);
1972
1977
  },
1973
1978
  style: {
1974
1979
  display: "flex",
@@ -1979,7 +1984,7 @@ const Gn = {
1979
1984
  cursor: "pointer",
1980
1985
  padding: 0
1981
1986
  },
1982
- children: /* @__PURE__ */ e(st, { size: 20, color: "var(--Grey-Muted, #808183)" })
1987
+ children: /* @__PURE__ */ e(ot, { size: 20, color: "var(--Grey-Muted, #808183)" })
1983
1988
  }
1984
1989
  )
1985
1990
  ]
@@ -2033,14 +2038,14 @@ const Gn = {
2033
2038
  {
2034
2039
  ref: m,
2035
2040
  value: w,
2036
- onChange: (o) => G(o.target.value),
2037
- onKeyDown: (o) => {
2038
- if (o.key === "Enter") {
2039
- if (o.metaKey || o.ctrlKey || o.shiftKey)
2041
+ onChange: (l) => M(l.target.value),
2042
+ onKeyDown: (l) => {
2043
+ if (l.key === "Enter") {
2044
+ if (l.metaKey || l.ctrlKey || l.shiftKey)
2040
2045
  return;
2041
- o.preventDefault(), w.trim() && (l == null || l({ content: w.trim(), parentId: t.id }), G(""), k(!1));
2046
+ l.preventDefault(), w.trim() && (o == null || o({ content: w.trim(), parentId: t.id }), M(""), k(!1));
2042
2047
  }
2043
- o.key === "Escape" && (G(""), k(!1));
2048
+ l.key === "Escape" && (M(""), k(!1));
2044
2049
  },
2045
2050
  autoFocus: !0,
2046
2051
  placeholder: "Add a reply",
@@ -2069,7 +2074,7 @@ const Gn = {
2069
2074
  {
2070
2075
  type: "button",
2071
2076
  onClick: () => {
2072
- w.trim() && (l == null || l({ content: w.trim(), parentId: t.id }), G(""), k(!1));
2077
+ w.trim() && (o == null || o({ content: w.trim(), parentId: t.id }), M(""), k(!1));
2073
2078
  },
2074
2079
  disabled: !w.trim(),
2075
2080
  style: {
@@ -2102,29 +2107,29 @@ const Gn = {
2102
2107
  ]
2103
2108
  }
2104
2109
  );
2105
- }, Pn = ({ currentUser: t, onSubmit: r }) => {
2106
- const [i, s] = z(""), [l, a] = z(!1), f = $(null);
2107
- Te(() => {
2108
- const d = f.current;
2110
+ }, Kn = ({ currentUser: t, onSubmit: r }) => {
2111
+ const [i, s] = G(""), [o, a] = G(!1), g = $(null);
2112
+ _e(() => {
2113
+ const d = g.current;
2109
2114
  if (!d)
2110
2115
  return;
2111
2116
  d.style.height = "auto";
2112
2117
  const x = 140;
2113
2118
  d.style.height = Math.min(d.scrollHeight, x) + "px", d.style.overflowY = d.scrollHeight > x ? "auto" : "hidden";
2114
2119
  }, [i]);
2115
- const h = () => {
2120
+ const p = () => {
2116
2121
  const d = i.trim();
2117
2122
  d && (r == null || r(d), s(""));
2118
2123
  }, u = (d) => {
2119
2124
  if (d.key === "Enter") {
2120
2125
  if (d.metaKey || d.ctrlKey || d.shiftKey)
2121
2126
  return;
2122
- d.preventDefault(), h();
2127
+ d.preventDefault(), p();
2123
2128
  }
2124
- }, W = (t == null ? void 0 : t.initials) || ke(t == null ? void 0 : t.name), v = Wt(t), S = t == null ? void 0 : t.avatar;
2129
+ }, W = (t == null ? void 0 : t.initials) || we(t == null ? void 0 : t.name), v = Dt(t), S = t == null ? void 0 : t.avatar;
2125
2130
  return /* @__PURE__ */ n("div", { style: { display: "flex", gap: 16, alignItems: "flex-start" }, children: [
2126
2131
  /* @__PURE__ */ e(
2127
- It,
2132
+ Gt,
2128
2133
  {
2129
2134
  name: t == null ? void 0 : t.name,
2130
2135
  initials: W,
@@ -2144,7 +2149,7 @@ const Gn = {
2144
2149
  alignItems: "flex-start",
2145
2150
  gap: 24,
2146
2151
  borderRadius: 8,
2147
- border: l ? "1px solid var(--Grey-Strong, #2E3236)" : "1px solid var(--Grey-absent, #D9D9D9)",
2152
+ border: o ? "1px solid var(--Grey-Strong, #2E3236)" : "1px solid var(--Grey-absent, #D9D9D9)",
2148
2153
  background: "var(--Grey-White, #FFF)",
2149
2154
  transition: "border-color 0.15s"
2150
2155
  },
@@ -2161,7 +2166,7 @@ const Gn = {
2161
2166
  /* @__PURE__ */ e(
2162
2167
  "textarea",
2163
2168
  {
2164
- ref: f,
2169
+ ref: g,
2165
2170
  value: i,
2166
2171
  onChange: (d) => s(d.target.value),
2167
2172
  onFocus: () => a(!0),
@@ -2191,7 +2196,7 @@ const Gn = {
2191
2196
  "button",
2192
2197
  {
2193
2198
  type: "button",
2194
- onClick: h,
2199
+ onClick: p,
2195
2200
  disabled: !i.trim(),
2196
2201
  style: {
2197
2202
  display: "flex",
@@ -2219,52 +2224,52 @@ const Gn = {
2219
2224
  }
2220
2225
  )
2221
2226
  ] });
2222
- }, Dt = ({ comment: t, depth: r = 0, isConsecutive: i = !1, onReply: s, onSendReply: l, onEdit: a, onDelete: f, onMenuClick: h }) => {
2227
+ }, Mt = ({ comment: t, depth: r = 0, isConsecutive: i = !1, onReply: s, onSendReply: o, onEdit: a, onDelete: g, onMenuClick: p }) => {
2223
2228
  const u = t.replies && t.replies.length > 0, W = !u;
2224
2229
  return /* @__PURE__ */ n(ae.Fragment, { children: [
2225
2230
  /* @__PURE__ */ e("div", { style: { paddingLeft: r > 0 ? Math.min(r * 32, 128) : 0 }, children: /* @__PURE__ */ e(
2226
- On,
2231
+ Yn,
2227
2232
  {
2228
2233
  comment: t,
2229
2234
  isReply: r > 0,
2230
2235
  isConsecutive: i,
2231
2236
  onReply: s,
2232
- onSendReply: l,
2237
+ onSendReply: o,
2233
2238
  onEdit: a,
2234
- onDelete: f,
2235
- onMenuClick: h,
2239
+ onDelete: g,
2240
+ onMenuClick: p,
2236
2241
  showReply: W
2237
2242
  }
2238
2243
  ) }),
2239
2244
  u && t.replies.map((v) => /* @__PURE__ */ e(
2240
- Dt,
2245
+ Mt,
2241
2246
  {
2242
2247
  comment: v,
2243
2248
  depth: r + 1,
2244
2249
  onReply: s,
2245
- onSendReply: l,
2250
+ onSendReply: o,
2246
2251
  onEdit: a,
2247
- onDelete: f,
2248
- onMenuClick: h
2252
+ onDelete: g,
2253
+ onMenuClick: p
2249
2254
  },
2250
2255
  v.id
2251
2256
  ))
2252
2257
  ] });
2253
- }, Yn = ({
2258
+ }, Vn = ({
2254
2259
  comments: t = [],
2255
2260
  totalComments: r,
2256
2261
  children: i,
2257
2262
  onSendComment: s,
2258
- onReply: l,
2263
+ onReply: o,
2259
2264
  onSendReply: a,
2260
- onEdit: f,
2261
- onDelete: h,
2265
+ onEdit: g,
2266
+ onDelete: p,
2262
2267
  onMenuClick: u,
2263
2268
  onMarkResolved: W,
2264
2269
  currentUser: v,
2265
2270
  isResolved: S = !1
2266
2271
  }) => {
2267
- const [d, x] = z([]), [k, w] = z(!1), G = Me(() => {
2272
+ const [d, x] = G([]), [k, w] = G(!1), M = He(() => {
2268
2273
  const m = new Set(t.map((c) => c.id)), y = d.filter((c) => !m.has(c.id));
2269
2274
  return [...t, ...y];
2270
2275
  }, [t, d]);
@@ -2272,10 +2277,10 @@ const Gn = {
2272
2277
  const m = new Set(t.map((y) => y.id));
2273
2278
  x((y) => y.filter((c) => !m.has(c.id)));
2274
2279
  }, [t]);
2275
- const R = Me(() => {
2280
+ const R = He(() => {
2276
2281
  if (!v)
2277
2282
  return { name: "You", initials: "YO", color: "#6B7C93" };
2278
- const m = v.name || "You", y = v.initials || ke(m), c = Wt(v);
2283
+ const m = v.name || "You", y = v.initials || we(m), c = Dt(v);
2279
2284
  return { ...v, name: m, initials: y, color: c };
2280
2285
  }, [v]), b = async ({ content: m, parentId: y }) => {
2281
2286
  if (a) {
@@ -2294,7 +2299,7 @@ const Gn = {
2294
2299
  parentId: y,
2295
2300
  isOptimistic: !0
2296
2301
  };
2297
- x((D) => [...D, c]);
2302
+ x((z) => [...z, c]);
2298
2303
  }
2299
2304
  }, I = async (m) => {
2300
2305
  if (s) {
@@ -2317,20 +2322,20 @@ const Gn = {
2317
2322
  }, E = (m) => {
2318
2323
  x(
2319
2324
  (y) => y.map((c) => c.id === m.id ? { ...c, content: m.content, isEdited: !0 } : c)
2320
- ), f == null || f(m);
2325
+ ), g == null || g(m);
2321
2326
  }, B = (m) => {
2322
- x((y) => y.filter((c) => c.id !== m.id)), h == null || h(m);
2323
- }, _ = Me(() => {
2327
+ x((y) => y.filter((c) => c.id !== m.id)), p == null || p(m);
2328
+ }, _ = He(() => {
2324
2329
  const m = {};
2325
- G.forEach((c) => {
2330
+ M.forEach((c) => {
2326
2331
  c.parentId && (m[c.parentId] || (m[c.parentId] = []), m[c.parentId].push(c));
2327
2332
  });
2328
2333
  const y = (c) => ({
2329
2334
  ...c,
2330
2335
  replies: (m[c.id] || []).map(y)
2331
2336
  });
2332
- return G.filter((c) => !c.parentId).map(y);
2333
- }, [G]), P = r ?? G.length;
2337
+ return M.filter((c) => !c.parentId).map(y);
2338
+ }, [M]), P = r ?? M.length;
2334
2339
  return /* @__PURE__ */ n(
2335
2340
  "div",
2336
2341
  {
@@ -2355,7 +2360,7 @@ const Gn = {
2355
2360
  alignSelf: "stretch"
2356
2361
  },
2357
2362
  children: [
2358
- /* @__PURE__ */ e(at, { size: 24, color: "var(--rail-orange, #C98A5A)", strokeWidth: 1.5 }),
2363
+ /* @__PURE__ */ e(lt, { size: 24, color: "var(--rail-orange, #C98A5A)", strokeWidth: 1.5 }),
2359
2364
  /* @__PURE__ */ e(
2360
2365
  "span",
2361
2366
  {
@@ -2407,7 +2412,7 @@ const Gn = {
2407
2412
  justifyContent: "center",
2408
2413
  flexShrink: 0
2409
2414
  },
2410
- children: /* @__PURE__ */ e(at, { style: { width: 20, height: 20, flexShrink: 0 }, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 })
2415
+ children: /* @__PURE__ */ e(lt, { style: { width: 20, height: 20, flexShrink: 0 }, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 })
2411
2416
  }
2412
2417
  ),
2413
2418
  /* @__PURE__ */ e(
@@ -2454,7 +2459,7 @@ const Gn = {
2454
2459
  flexShrink: 0
2455
2460
  },
2456
2461
  children: [
2457
- /* @__PURE__ */ e(gn, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 2 }),
2462
+ /* @__PURE__ */ e(yn, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 2 }),
2458
2463
  /* @__PURE__ */ e(
2459
2464
  "span",
2460
2465
  {
@@ -2493,7 +2498,7 @@ const Gn = {
2493
2498
  flexShrink: 0
2494
2499
  },
2495
2500
  children: [
2496
- /* @__PURE__ */ e(hn, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 }),
2501
+ /* @__PURE__ */ e(mn, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 }),
2497
2502
  "Mark as Resolved"
2498
2503
  ]
2499
2504
  }
@@ -2501,7 +2506,7 @@ const Gn = {
2501
2506
  ]
2502
2507
  }
2503
2508
  ),
2504
- G.length > 0 && /* @__PURE__ */ e(
2509
+ M.length > 0 && /* @__PURE__ */ e(
2505
2510
  "div",
2506
2511
  {
2507
2512
  style: {
@@ -2510,18 +2515,18 @@ const Gn = {
2510
2515
  gap: 0,
2511
2516
  marginBottom: 24,
2512
2517
  maxHeight: 600,
2513
- overflowY: G.length > 6 ? "auto" : "visible"
2518
+ overflowY: M.length > 6 ? "auto" : "visible"
2514
2519
  },
2515
2520
  children: _.map((m, y) => {
2516
2521
  var J, X;
2517
- const c = y > 0 ? _[y - 1] : null, D = ((J = c == null ? void 0 : c.author) == null ? void 0 : J.name) || (c == null ? void 0 : c.author_name), Z = ((X = m.author) == null ? void 0 : X.name) || m.author_name, Q = c && D === Z && (!c.replies || c.replies.length === 0);
2522
+ const c = y > 0 ? _[y - 1] : null, z = ((J = c == null ? void 0 : c.author) == null ? void 0 : J.name) || (c == null ? void 0 : c.author_name), Z = ((X = m.author) == null ? void 0 : X.name) || m.author_name, Q = c && z === Z && (!c.replies || c.replies.length === 0);
2518
2523
  return /* @__PURE__ */ e(
2519
- Dt,
2524
+ Mt,
2520
2525
  {
2521
2526
  comment: m,
2522
2527
  depth: 0,
2523
2528
  isConsecutive: !!Q,
2524
- onReply: l,
2529
+ onReply: o,
2525
2530
  onSendReply: b,
2526
2531
  onEdit: E,
2527
2532
  onDelete: B,
@@ -2532,7 +2537,7 @@ const Gn = {
2532
2537
  })
2533
2538
  }
2534
2539
  ),
2535
- G.length > 0 && /* @__PURE__ */ n(
2540
+ M.length > 0 && /* @__PURE__ */ n(
2536
2541
  "div",
2537
2542
  {
2538
2543
  style: {
@@ -2543,7 +2548,7 @@ const Gn = {
2543
2548
  marginLeft: 48
2544
2549
  },
2545
2550
  children: [
2546
- /* @__PURE__ */ e(Ct, { size: 16, color: "var(--Grey-Muted, #808183)" }),
2551
+ /* @__PURE__ */ e(It, { size: 16, color: "var(--Grey-Muted, #808183)" }),
2547
2552
  /* @__PURE__ */ e(
2548
2553
  "span",
2549
2554
  {
@@ -2598,7 +2603,7 @@ const Gn = {
2598
2603
  ]
2599
2604
  }
2600
2605
  ),
2601
- /* @__PURE__ */ e(Pn, { currentUser: R, onSubmit: I })
2606
+ /* @__PURE__ */ e(Kn, { currentUser: R, onSubmit: I })
2602
2607
  ] }),
2603
2608
  /* @__PURE__ */ e(
2604
2609
  "div",
@@ -2616,8 +2621,8 @@ const Gn = {
2616
2621
  ]
2617
2622
  }
2618
2623
  );
2619
- }, mt = ({ children: t, size: r = 28, onClick: i, title: s }) => {
2620
- const [l, a] = z(!1);
2624
+ }, vt = ({ children: t, size: r = 28, onClick: i, title: s }) => {
2625
+ const [o, a] = G(!1);
2621
2626
  return /* @__PURE__ */ e(
2622
2627
  "div",
2623
2628
  {
@@ -2632,7 +2637,7 @@ const Gn = {
2632
2637
  width: r,
2633
2638
  height: r,
2634
2639
  borderRadius: 9999,
2635
- background: l ? "var(--surface-hover, #F3F7F7)" : "transparent",
2640
+ background: o ? "var(--surface-hover, #F3F7F7)" : "transparent",
2636
2641
  cursor: "pointer",
2637
2642
  flexShrink: 0,
2638
2643
  transition: "background 0.15s"
@@ -2640,15 +2645,15 @@ const Gn = {
2640
2645
  children: t
2641
2646
  }
2642
2647
  );
2643
- }, Kn = (t) => {
2648
+ }, qn = (t) => {
2644
2649
  const r = Math.floor(t / 6e4), i = Math.floor(t % 6e4 / 1e3);
2645
2650
  return `${r.toString().padStart(2, "0")}:${i.toString().padStart(2, "0")}`;
2646
- }, Vn = ({ item: t, isLast: r, onPlayEvidence: i, onShowInTranscript: s, timelinePlaying: l, currentTimeSeconds: a }) => {
2651
+ }, Zn = ({ item: t, isLast: r, onPlayEvidence: i, onShowInTranscript: s, timelinePlaying: o, currentTimeSeconds: a }) => {
2647
2652
  var d;
2648
- const f = (d = t.signal_refs) == null ? void 0 : d.map((x) => {
2653
+ const g = (d = t.signal_refs) == null ? void 0 : d.map((x) => {
2649
2654
  const k = x.display_name || x.signal_key || "", w = x.confidence != null ? ` (${Math.round(x.confidence * 100)}%)` : "";
2650
2655
  return k + w;
2651
- }).join(", "), h = t.start_ms ?? t.startMs, u = t.end_ms ?? t.endMs, W = h != null, v = (a ?? 0) * 1e3, S = l && W && v >= h && v <= (u ?? h + 5e3);
2656
+ }).join(", "), p = t.start_ms ?? t.startMs, u = t.end_ms ?? t.endMs, W = p != null, v = (a ?? 0) * 1e3, S = o && W && v >= p && v <= (u ?? p + 5e3);
2652
2657
  return /* @__PURE__ */ n(
2653
2658
  "div",
2654
2659
  {
@@ -2682,7 +2687,7 @@ const Gn = {
2682
2687
  gap: 8
2683
2688
  },
2684
2689
  children: [
2685
- f && /* @__PURE__ */ e(
2690
+ g && /* @__PURE__ */ e(
2686
2691
  "span",
2687
2692
  {
2688
2693
  style: {
@@ -2694,7 +2699,7 @@ const Gn = {
2694
2699
  flex: 1,
2695
2700
  minWidth: 0
2696
2701
  },
2697
- children: f
2702
+ children: g
2698
2703
  }
2699
2704
  ),
2700
2705
  W && /* @__PURE__ */ n(
@@ -2708,23 +2713,23 @@ const Gn = {
2708
2713
  },
2709
2714
  children: [
2710
2715
  /* @__PURE__ */ e(
2711
- mt,
2716
+ vt,
2712
2717
  {
2713
2718
  size: 28,
2714
2719
  title: S ? "Pause" : "Play evidence",
2715
2720
  onClick: () => i == null ? void 0 : i({
2716
- start_ms: h,
2721
+ start_ms: p,
2717
2722
  end_ms: u
2718
2723
  }),
2719
2724
  children: S ? /* @__PURE__ */ e(
2720
- kt,
2725
+ Ft,
2721
2726
  {
2722
2727
  size: 17,
2723
2728
  color: "var(--Grey-Strong, #2E3236)",
2724
2729
  strokeWidth: 1
2725
2730
  }
2726
2731
  ) : /* @__PURE__ */ e(
2727
- wt,
2732
+ Wt,
2728
2733
  {
2729
2734
  size: 17,
2730
2735
  color: "var(--Grey-Muted, #808183)",
@@ -2734,12 +2739,12 @@ const Gn = {
2734
2739
  }
2735
2740
  ),
2736
2741
  /* @__PURE__ */ e(
2737
- mt,
2742
+ vt,
2738
2743
  {
2739
2744
  size: 28,
2740
2745
  title: "Show in transcript",
2741
- onClick: () => s == null ? void 0 : s(h),
2742
- children: /* @__PURE__ */ e(St, { size: 16, color: "#808183", strokeWidth: 1.5 })
2746
+ onClick: () => s == null ? void 0 : s(p),
2747
+ children: /* @__PURE__ */ e(Ct, { size: 16, color: "#808183", strokeWidth: 1.5 })
2743
2748
  }
2744
2749
  ),
2745
2750
  /* @__PURE__ */ e(
@@ -2752,7 +2757,7 @@ const Gn = {
2752
2757
  lineHeight: 1.2,
2753
2758
  whiteSpace: "nowrap"
2754
2759
  },
2755
- children: Kn(h)
2760
+ children: qn(p)
2756
2761
  }
2757
2762
  )
2758
2763
  ]
@@ -2764,16 +2769,16 @@ const Gn = {
2764
2769
  ]
2765
2770
  }
2766
2771
  );
2767
- }, qn = ({
2772
+ }, Qn = ({
2768
2773
  items: t = [],
2769
2774
  guidanceCount: r,
2770
2775
  loading: i = !1,
2771
2776
  onPlayEvidence: s,
2772
- onShowInTranscript: l,
2777
+ onShowInTranscript: o,
2773
2778
  timelinePlaying: a = !1,
2774
- currentTimeSeconds: f = 0
2779
+ currentTimeSeconds: g = 0
2775
2780
  }) => {
2776
- const h = r ?? t.length;
2781
+ const p = r ?? t.length;
2777
2782
  return /* @__PURE__ */ n(
2778
2783
  "div",
2779
2784
  {
@@ -2809,7 +2814,7 @@ const Gn = {
2809
2814
  flexShrink: 0
2810
2815
  },
2811
2816
  children: /* @__PURE__ */ e(
2812
- vt,
2817
+ xt,
2813
2818
  {
2814
2819
  style: { width: 20, height: 20, flexShrink: 0 },
2815
2820
  color: "var(--Grey-Strong, #2E3236)",
@@ -2841,9 +2846,9 @@ const Gn = {
2841
2846
  marginLeft: "auto"
2842
2847
  },
2843
2848
  children: [
2844
- h,
2849
+ p,
2845
2850
  " Item",
2846
- h !== 1 ? "s" : ""
2851
+ p !== 1 ? "s" : ""
2847
2852
  ]
2848
2853
  }
2849
2854
  )
@@ -2851,14 +2856,14 @@ const Gn = {
2851
2856
  }
2852
2857
  ),
2853
2858
  t.map((u, W) => /* @__PURE__ */ e(
2854
- Vn,
2859
+ Zn,
2855
2860
  {
2856
2861
  item: u,
2857
2862
  isLast: W === t.length - 1,
2858
2863
  onPlayEvidence: s,
2859
- onShowInTranscript: l,
2864
+ onShowInTranscript: o,
2860
2865
  timelinePlaying: a,
2861
- currentTimeSeconds: f
2866
+ currentTimeSeconds: g
2862
2867
  },
2863
2868
  W
2864
2869
  ))
@@ -2866,16 +2871,16 @@ const Gn = {
2866
2871
  }
2867
2872
  );
2868
2873
  }, re = ({ text: t, children: r }) => {
2869
- const [i, s] = z(!1), l = $(null), [a, f] = z({ top: 0, left: 0 });
2874
+ const [i, s] = G(!1), o = $(null), [a, g] = G({ top: 0, left: 0 });
2870
2875
  return t ? /* @__PURE__ */ n(
2871
2876
  "div",
2872
2877
  {
2873
- ref: l,
2878
+ ref: o,
2874
2879
  style: { position: "relative", display: "inline-flex" },
2875
2880
  onMouseEnter: () => {
2876
- if (l.current) {
2877
- const u = l.current.getBoundingClientRect();
2878
- f({
2881
+ if (o.current) {
2882
+ const u = o.current.getBoundingClientRect();
2883
+ g({
2879
2884
  top: u.bottom + 6,
2880
2885
  left: u.left + u.width / 2
2881
2886
  });
@@ -2908,24 +2913,24 @@ const Gn = {
2908
2913
  ]
2909
2914
  }
2910
2915
  ) : r;
2911
- }, Zn = [
2916
+ }, Jn = [
2912
2917
  { key: "overview", label: "Overview" },
2913
2918
  { key: "coaching", label: "Coaching Summary" },
2914
2919
  { key: "signals", label: "Signals & Recording" },
2915
2920
  { key: "comments", label: "Feedback" }
2916
- ], ni = ({
2921
+ ], li = ({
2917
2922
  title: t = "Wheel Stud Replacement Enquiry",
2918
2923
  onBack: r,
2919
2924
  // Data props — all optional with defaults for demo
2920
2925
  data: i,
2921
2926
  coachingData: s,
2922
- coachingLoading: l = !1,
2927
+ coachingLoading: o = !1,
2923
2928
  audioUrl: a,
2924
2929
  // Audio/playback props — pass these when the host app manages audio externally
2925
2930
  // (like InteractionDetailPanel does). If omitted, UpdatedInteractionRecording
2926
2931
  // manages its own audio element internally.
2927
- audioRef: f,
2928
- currentTimeSeconds: h,
2932
+ audioRef: g,
2933
+ currentTimeSeconds: p,
2929
2934
  timelinePlaying: u,
2930
2935
  playbackRate: W,
2931
2936
  timelineSegments: v,
@@ -2935,7 +2940,7 @@ const Gn = {
2935
2940
  onSeekForward: k,
2936
2941
  onSetPlaybackRate: w,
2937
2942
  // Speaker names
2938
- agentName: G,
2943
+ agentName: M,
2939
2944
  agentFullName: R,
2940
2945
  customerName: b,
2941
2946
  customerFullName: I,
@@ -2949,24 +2954,24 @@ const Gn = {
2949
2954
  onPlayEvidence: y,
2950
2955
  onHighlightTurns: c,
2951
2956
  // Context props — pass from host app to override block-derived defaults
2952
- callPurpose: D,
2957
+ callPurpose: z,
2953
2958
  classification: Z,
2954
2959
  outcomeQuality: Q,
2955
2960
  // Context "More Details" expandable section
2956
2961
  resolutionOutcome: J,
2957
2962
  customerIntent: X,
2958
- interactionId: oe,
2959
- moreDetails: g,
2963
+ interactionId: le,
2964
+ moreDetails: h,
2960
2965
  // Compass score props
2961
2966
  compassScore: A,
2962
2967
  // gauge meter value — compass_score, range 0.5-5
2963
2968
  compassMaxScore: U = 5,
2964
- predictedCsat: we,
2969
+ predictedCsat: Ce,
2965
2970
  // predicted objective number (e.g. compass_score) — shown as "03" top-right
2966
- predictedLabel: he = "Predicted Objective",
2967
- compassLegends: pe,
2968
- // Customer session dropdown
2969
- customerSessions: o,
2971
+ predictedLabel: pe = "Predicted Objective",
2972
+ compassLegends: ue,
2973
+ // Customer session history drawer
2974
+ customerSessions: l,
2970
2975
  customerSessionCount: K,
2971
2976
  onSessionClick: Ae,
2972
2977
  onViewAllSessions: Le,
@@ -2975,131 +2980,131 @@ const Gn = {
2975
2980
  prevSessionDisabled: ee = !1,
2976
2981
  nextSessionDesc: je,
2977
2982
  nextSessionDisabled: te = !1,
2978
- onPreviousSession: ue,
2979
- onNextSession: ye,
2983
+ onPreviousSession: ye,
2984
+ onNextSession: me,
2980
2985
  // Comments
2981
2986
  comments: Ne = [],
2982
- guidance: zt = [],
2987
+ guidance: Et = [],
2983
2988
  currentUser: j,
2984
- onSendComment: Gt,
2985
- onSendReply: Mt,
2986
- onReply: Et,
2987
- onEdit: Ht,
2988
- onEditInteraction: Tt,
2989
- onDelete: Rt,
2990
- onMenuClick: _t,
2991
- onMarkResolved: At,
2992
- commentsResolved: Lt
2989
+ onSendComment: Ht,
2990
+ onSendReply: Tt,
2991
+ onReply: Rt,
2992
+ onEdit: _t,
2993
+ onEditInteraction: At,
2994
+ onDelete: Lt,
2995
+ onMenuClick: Bt,
2996
+ onMarkResolved: jt,
2997
+ commentsResolved: Nt
2993
2998
  }) => {
2994
- var ot;
2995
- const [Ce, me] = z("overview"), [Bt, $e] = z(/* @__PURE__ */ new Set()), [Oe, Fe] = z(!1), [Pe, Ye] = z(null), [Ke, Ve] = z(!1), [qe, jt] = z(0), [Ze, Nt] = z(!1), ne = $(null), ve = $(null), We = $(null), se = $(null), Ie = $(null), $t = { overview: ve, coaching: We, signals: se, comments: Ie }, de = $(null), De = $(!1);
2996
- Te(() => {
2997
- const p = de.current;
2998
- if (!p)
2999
+ var it;
3000
+ const [Fe, ve] = G("overview"), [$t, $e] = G(/* @__PURE__ */ new Set()), [Ot, se] = G(!1), [Oe, Pe] = G(null), [Ye, Ke] = G(!1), [Ve, Pt] = G(0), [qe, Yt] = G(!1), ne = $(null), xe = $(null), We = $(null), de = $(null), Ie = $(null), Kt = { overview: xe, coaching: We, signals: de, comments: Ie }, ce = $(null), ze = $(!1);
3001
+ _e(() => {
3002
+ const f = ce.current;
3003
+ if (!f)
2999
3004
  return;
3000
- const M = ["overview", "coaching", "signals", "comments"], H = [ve, We, se, Ie], T = ((Y) => {
3005
+ const D = ["overview", "coaching", "signals", "comments"], H = [xe, We, de, Ie], T = ((Y) => {
3001
3006
  let ie = Y.parentElement;
3002
3007
  for (; ie; ) {
3003
- const { overflow: Se, overflowY: le } = window.getComputedStyle(ie);
3004
- if (/(auto|scroll)/.test(Se + le))
3008
+ const { overflow: ke, overflowY: oe } = window.getComputedStyle(ie);
3009
+ if (/(auto|scroll)/.test(ke + oe))
3005
3010
  return ie;
3006
3011
  ie = ie.parentElement;
3007
3012
  }
3008
3013
  return null;
3009
- })(p), q = () => {
3010
- var Se;
3011
- if (De.current)
3014
+ })(f), q = () => {
3015
+ var ke;
3016
+ if (ze.current)
3012
3017
  return;
3013
- let Y = M[0];
3014
- for (let le = H.length - 1; le >= 0; le--) {
3015
- const lt = H[le].current;
3016
- if (!lt)
3018
+ let Y = D[0];
3019
+ for (let oe = H.length - 1; oe >= 0; oe--) {
3020
+ const rt = H[oe].current;
3021
+ if (!rt)
3017
3022
  continue;
3018
- if (lt.getBoundingClientRect().top <= 150) {
3019
- Y = M[le];
3023
+ if (rt.getBoundingClientRect().top <= 150) {
3024
+ Y = D[oe];
3020
3025
  break;
3021
3026
  }
3022
3027
  }
3023
- me(Y);
3024
- const ie = ((Se = ve.current) == null ? void 0 : Se.getBoundingClientRect().top) ?? Number.POSITIVE_INFINITY;
3025
- Nt(ie <= 150);
3028
+ ve(Y);
3029
+ const ie = ((ke = xe.current) == null ? void 0 : ke.getBoundingClientRect().top) ?? Number.POSITIVE_INFINITY;
3030
+ Yt(ie <= 150);
3026
3031
  };
3027
- return p.addEventListener("scroll", q, { passive: !0 }), T && T !== p && T.addEventListener("scroll", q, { passive: !0 }), window.addEventListener("scroll", q, { passive: !0, capture: !0 }), q(), () => {
3028
- p.removeEventListener("scroll", q), T && T !== p && T.removeEventListener("scroll", q), window.removeEventListener("scroll", q, { capture: !0 });
3032
+ return f.addEventListener("scroll", q, { passive: !0 }), T && T !== f && T.addEventListener("scroll", q, { passive: !0 }), window.addEventListener("scroll", q, { passive: !0, capture: !0 }), q(), () => {
3033
+ f.removeEventListener("scroll", q), T && T !== f && T.removeEventListener("scroll", q), window.removeEventListener("scroll", q, { capture: !0 });
3029
3034
  };
3030
3035
  }, []);
3031
- const Qe = $(null), Ot = (p) => {
3036
+ const Ze = $(null), Vt = (f) => {
3032
3037
  var H;
3033
- me(p), De.current = !0, Qe.current = p;
3034
- const M = (H = $t[p]) == null ? void 0 : H.current;
3035
- if (M) {
3036
- const C = de.current;
3038
+ ve(f), ze.current = !0, Ze.current = f;
3039
+ const D = (H = Kt[f]) == null ? void 0 : H.current;
3040
+ if (D) {
3041
+ const C = ce.current;
3037
3042
  if (C && C.scrollHeight > C.clientHeight) {
3038
- const T = C.getBoundingClientRect().top, Y = M.getBoundingClientRect().top - T + C.scrollTop - 16;
3043
+ const T = C.getBoundingClientRect().top, Y = D.getBoundingClientRect().top - T + C.scrollTop - 16;
3039
3044
  C.scrollTo({ top: Y, behavior: "smooth" });
3040
3045
  } else {
3041
- const T = M.getBoundingClientRect().top + window.scrollY - 120;
3046
+ const T = D.getBoundingClientRect().top + window.scrollY - 120;
3042
3047
  window.scrollTo({ top: T, behavior: "smooth" });
3043
3048
  }
3044
3049
  }
3045
3050
  setTimeout(() => {
3046
- De.current = !1, Qe.current = null;
3051
+ ze.current = !1, Ze.current = null;
3047
3052
  }, 1200);
3048
- }, Je = o || [], Xe = (p) => {
3049
- me("signals");
3050
- const M = se.current;
3051
- if (M) {
3052
- const C = de.current;
3053
+ }, De = l || [], Ge = De.length > 1, Qe = (f) => {
3054
+ ve("signals");
3055
+ const D = de.current;
3056
+ if (D) {
3057
+ const C = ce.current;
3053
3058
  if (C && C.scrollHeight > C.clientHeight) {
3054
- const T = C.getBoundingClientRect().top, Y = M.getBoundingClientRect().top - T + C.scrollTop - 16;
3059
+ const T = C.getBoundingClientRect().top, Y = D.getBoundingClientRect().top - T + C.scrollTop - 16;
3055
3060
  C.scrollTo({ top: Y, behavior: "smooth" });
3056
3061
  } else {
3057
- const T = M.getBoundingClientRect().top + window.scrollY - 120;
3062
+ const T = D.getBoundingClientRect().top + window.scrollY - 120;
3058
3063
  window.scrollTo({ top: T, behavior: "smooth" });
3059
3064
  }
3060
3065
  }
3061
- const H = p / 1e3;
3066
+ const H = f / 1e3;
3062
3067
  setTimeout(() => {
3063
3068
  var C;
3064
3069
  (C = ne.current) != null && C.scrollToTranscript && ne.current.scrollToTranscript(H);
3065
3070
  }, 220);
3066
- }, Ue = (p) => {
3067
- me("signals");
3068
- const M = se.current;
3069
- if (M) {
3070
- const C = de.current;
3071
+ }, Je = (f) => {
3072
+ ve("signals");
3073
+ const D = de.current;
3074
+ if (D) {
3075
+ const C = ce.current;
3071
3076
  if (C && C.scrollHeight > C.clientHeight) {
3072
- const T = C.getBoundingClientRect().top, Y = M.getBoundingClientRect().top - T + C.scrollTop - 16;
3077
+ const T = C.getBoundingClientRect().top, Y = D.getBoundingClientRect().top - T + C.scrollTop - 16;
3073
3078
  C.scrollTo({ top: Y, behavior: "smooth" });
3074
3079
  } else {
3075
- const T = M.getBoundingClientRect().top + window.scrollY - 120;
3080
+ const T = D.getBoundingClientRect().top + window.scrollY - 120;
3076
3081
  window.scrollTo({ top: T, behavior: "smooth" });
3077
3082
  }
3078
3083
  }
3079
- const H = (p == null ? void 0 : p.start_ms) ?? (p == null ? void 0 : p.startMs);
3084
+ const H = (f == null ? void 0 : f.start_ms) ?? (f == null ? void 0 : f.startMs);
3080
3085
  setTimeout(() => {
3081
3086
  var C, T;
3082
3087
  if (H != null && ((C = ne.current) != null && C.scrollToTranscript) && ne.current.scrollToTranscript(H / 1e3), y)
3083
- y(p);
3088
+ y(f);
3084
3089
  else if (H != null && ((T = ne.current) != null && T.seekTo)) {
3085
- ne.current.seekTo(H / 1e3), Ve(!0), jt(H / 1e3);
3086
- const Y = (p.end_ms ?? p.endMs ?? H + 5e3) - H;
3087
- setTimeout(() => Ve(!1), Y);
3090
+ ne.current.seekTo(H / 1e3), Ke(!0), Pt(H / 1e3);
3091
+ const Y = (f.end_ms ?? f.endMs ?? H + 5e3) - H;
3092
+ setTimeout(() => Ke(!1), Y);
3088
3093
  }
3089
3094
  }, 220);
3090
- }, Pt = (p) => {
3091
- c && c(p);
3092
- }, Yt = (p) => {
3093
- $e((M) => {
3094
- const H = new Set(M);
3095
- return H.has(p) ? H.delete(p) : H.add(p), H;
3095
+ }, qt = (f) => {
3096
+ c && c(f);
3097
+ }, Zt = (f) => {
3098
+ $e((D) => {
3099
+ const H = new Set(D);
3100
+ return H.has(f) ? H.delete(f) : H.add(f), H;
3096
3101
  });
3097
- }, Kt = (i == null ? void 0 : i.blocks) || [], ce = (p) => {
3098
- var M;
3099
- return ((M = Kt.find((H) => H.block_id === p)) == null ? void 0 : M.payload) || {};
3100
- }, V = ce("interaction-metadata"), fe = ce("interaction-context"), xe = ce("interaction-signals"), Vt = ce("interaction-outcome-lift"), qt = ce("interaction-dimensions").dimensions || [], Zt = fe.call_purpose || {}, Qt = fe.classification || {}, et = V || {}, tt = D || Zt || {}, Jt = Z || Qt || {}, nt = Vt || {}, Xt = (nt.driver_signal_keys || []).map((p) => p.replace(/^sig\./, "").replace(/_/g, " ")), Ut = s || null, en = (ot = xe == null ? void 0 : xe.signals) != null && ot.length ? xe : { present_count: 0, total_signals_evaluated: 0, signals: [] }, it = zt || [], ze = G || V.agent_name || V.agent || fe.agent_name || "Agent", tn = R || V.agent_full_name || V.agent_name || ze, ge = b || V.customer_name || V.customer || fe.customer_name || "Customer", rt = I || V.customer_full_name || V.customer_name || ge, nn = String(
3102
+ }, Qt = (i == null ? void 0 : i.blocks) || [], fe = (f) => {
3103
+ var D;
3104
+ return ((D = Qt.find((H) => H.block_id === f)) == null ? void 0 : D.payload) || {};
3105
+ }, V = fe("interaction-metadata"), ge = fe("interaction-context"), be = fe("interaction-signals"), Jt = fe("interaction-outcome-lift"), Xt = fe("interaction-dimensions").dimensions || [], Ut = ge.call_purpose || {}, en = ge.classification || {}, Xe = V || {}, Ue = z || Ut || {}, tn = Z || en || {}, et = Jt || {}, nn = (et.driver_signal_keys || []).map((f) => f.replace(/^sig\./, "").replace(/_/g, " ")), rn = s || null, ln = (it = be == null ? void 0 : be.signals) != null && it.length ? be : { present_count: 0, total_signals_evaluated: 0, signals: [] }, tt = Et || [], Me = M || V.agent_name || V.agent || ge.agent_name || "Agent", on = R || V.agent_full_name || V.agent_name || Me, he = b || V.customer_name || V.customer || ge.customer_name || "Customer", nt = I || V.customer_full_name || V.customer_name || he, an = String(
3101
3106
  (j == null ? void 0 : j.role) ?? (j == null ? void 0 : j.userRole) ?? (j == null ? void 0 : j.user_role) ?? (j == null ? void 0 : j.roleName) ?? (j == null ? void 0 : j.role_name) ?? ""
3102
- ).toLowerCase(), rn = /(admin|superadmin|administrator)/.test(nn), Ge = K ?? Je.length, be = V.created_dt || (i == null ? void 0 : i.created_dt) || fe.created_dt || "", on = be ? new Date(/Z$|[+-]\d{2}:\d{2}$/.test(be) ? be : be + "Z").toLocaleString() : "", ln = tt.interaction_direction === "inbound" ? "Inbound" : "Outbound";
3107
+ ).toLowerCase(), sn = /(admin|superadmin|administrator)/.test(an), Ee = K ?? De.length, Se = V.created_dt || (i == null ? void 0 : i.created_dt) || ge.created_dt || "", dn = Se ? new Date(/Z$|[+-]\d{2}:\d{2}$/.test(Se) ? Se : Se + "Z").toLocaleString() : "", cn = Ue.interaction_direction === "inbound" ? "Inbound" : "Outbound";
3103
3108
  return /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", width: "100%", height: "100%", background: "var(--Grey-White, #FFF)" }, children: [
3104
3109
  /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 12, padding: "18px 24px 0" }, children: [
3105
3110
  /* @__PURE__ */ e(
@@ -3116,7 +3121,7 @@ const Gn = {
3116
3121
  padding: 0,
3117
3122
  flexShrink: 0
3118
3123
  },
3119
- children: /* @__PURE__ */ e(Ee, { size: 24, color: "var(--Grey-Strong, #2E3236)" })
3124
+ children: /* @__PURE__ */ e(Te, { size: 24, color: "var(--Grey-Strong, #2E3236)" })
3120
3125
  }
3121
3126
  ),
3122
3127
  /* @__PURE__ */ e("div", { style: { width: 1, height: 28, background: "var(--Base-absent, #D9D9D9)" } }),
@@ -3129,11 +3134,11 @@ const Gn = {
3129
3134
  margin: 0,
3130
3135
  flex: 1
3131
3136
  }, children: t }),
3132
- (ue || ye) && !Ze && /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", flexShrink: 0 }, children: [
3137
+ (ye || me) && !qe && /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", flexShrink: 0 }, children: [
3133
3138
  /* @__PURE__ */ e(re, { text: Be, children: /* @__PURE__ */ n(
3134
3139
  "button",
3135
3140
  {
3136
- onClick: ee ? void 0 : ue,
3141
+ onClick: ee ? void 0 : ye,
3137
3142
  disabled: ee,
3138
3143
  style: {
3139
3144
  display: "flex",
@@ -3146,7 +3151,7 @@ const Gn = {
3146
3151
  opacity: ee ? 0.4 : 1
3147
3152
  },
3148
3153
  children: [
3149
- /* @__PURE__ */ e(Ee, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 }),
3154
+ /* @__PURE__ */ e(Te, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 }),
3150
3155
  /* @__PURE__ */ e("span", { style: {
3151
3156
  color: "var(--Neutral-800, #323232)",
3152
3157
  fontSize: 13,
@@ -3167,7 +3172,7 @@ const Gn = {
3167
3172
  /* @__PURE__ */ e(re, { text: je, children: /* @__PURE__ */ n(
3168
3173
  "button",
3169
3174
  {
3170
- onClick: te ? void 0 : ye,
3175
+ onClick: te ? void 0 : me,
3171
3176
  disabled: te,
3172
3177
  style: {
3173
3178
  display: "flex",
@@ -3188,7 +3193,7 @@ const Gn = {
3188
3193
  fontFamily: "var(--default-font-family)",
3189
3194
  whiteSpace: "nowrap"
3190
3195
  }, children: "Next Session" }),
3191
- /* @__PURE__ */ e(dt, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 })
3196
+ /* @__PURE__ */ e(at, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 })
3192
3197
  ]
3193
3198
  }
3194
3199
  ) })
@@ -3204,10 +3209,10 @@ const Gn = {
3204
3209
  padding: "0 24px",
3205
3210
  marginTop: 8
3206
3211
  }, children: [
3207
- /* @__PURE__ */ e("div", { style: { display: "flex", alignItems: "flex-start", minWidth: 0 }, children: Zn.map((p) => /* @__PURE__ */ e(
3212
+ /* @__PURE__ */ e("div", { style: { display: "flex", alignItems: "flex-start", minWidth: 0 }, children: Jn.map((f) => /* @__PURE__ */ e(
3208
3213
  "button",
3209
3214
  {
3210
- onClick: () => Ot(p.key),
3215
+ onClick: () => Vt(f.key),
3211
3216
  style: {
3212
3217
  display: "flex",
3213
3218
  padding: 16,
@@ -3215,23 +3220,23 @@ const Gn = {
3215
3220
  gap: 10,
3216
3221
  background: "none",
3217
3222
  border: "none",
3218
- borderBottom: Ce === p.key ? "3px solid var(--Grey-Strong, #2E3236)" : "3px solid transparent",
3223
+ borderBottom: Fe === f.key ? "3px solid var(--Grey-Strong, #2E3236)" : "3px solid transparent",
3219
3224
  cursor: "pointer",
3220
3225
  fontSize: 15,
3221
- fontWeight: Ce === p.key ? 500 : 400,
3222
- color: Ce === p.key ? "var(--Grey-Strong, #2E3236)" : "var(--Grey-Muted, #808183)",
3226
+ fontWeight: Fe === f.key ? 500 : 400,
3227
+ color: Fe === f.key ? "var(--Grey-Strong, #2E3236)" : "var(--Grey-Muted, #808183)",
3223
3228
  whiteSpace: "nowrap",
3224
3229
  transition: "border-color 0.2s ease, color 0.2s ease"
3225
3230
  },
3226
- children: p.label
3231
+ children: f.label
3227
3232
  },
3228
- p.key
3233
+ f.key
3229
3234
  )) }),
3230
- (ue || ye) && Ze && /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", flexShrink: 0 }, children: [
3235
+ (ye || me) && qe && /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", flexShrink: 0 }, children: [
3231
3236
  /* @__PURE__ */ e(re, { text: Be, children: /* @__PURE__ */ n(
3232
3237
  "button",
3233
3238
  {
3234
- onClick: ee ? void 0 : ue,
3239
+ onClick: ee ? void 0 : ye,
3235
3240
  disabled: ee,
3236
3241
  style: {
3237
3242
  display: "flex",
@@ -3244,7 +3249,7 @@ const Gn = {
3244
3249
  opacity: ee ? 0.4 : 1
3245
3250
  },
3246
3251
  children: [
3247
- /* @__PURE__ */ e(Ee, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 }),
3252
+ /* @__PURE__ */ e(Te, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 }),
3248
3253
  /* @__PURE__ */ e("span", { style: {
3249
3254
  color: "var(--Neutral-800, #323232)",
3250
3255
  fontSize: 13,
@@ -3265,7 +3270,7 @@ const Gn = {
3265
3270
  /* @__PURE__ */ e(re, { text: je, children: /* @__PURE__ */ n(
3266
3271
  "button",
3267
3272
  {
3268
- onClick: te ? void 0 : ye,
3273
+ onClick: te ? void 0 : me,
3269
3274
  disabled: te,
3270
3275
  style: {
3271
3276
  display: "flex",
@@ -3286,14 +3291,14 @@ const Gn = {
3286
3291
  fontFamily: "var(--default-font-family)",
3287
3292
  whiteSpace: "nowrap"
3288
3293
  }, children: "Next Session" }),
3289
- /* @__PURE__ */ e(dt, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 })
3294
+ /* @__PURE__ */ e(at, { size: 16, color: "var(--Neutral-800, #323232)", strokeWidth: 1.5 })
3290
3295
  ]
3291
3296
  }
3292
3297
  ) })
3293
3298
  ] })
3294
3299
  ] }) }),
3295
- /* @__PURE__ */ n("div", { ref: de, style: { padding: 24, flex: 1, overflowY: "auto" }, children: [
3296
- /* @__PURE__ */ n("div", { ref: ve, style: {
3300
+ /* @__PURE__ */ n("div", { ref: ce, style: { padding: 24, flex: 1, overflowY: "auto" }, children: [
3301
+ /* @__PURE__ */ n("div", { ref: xe, style: {
3297
3302
  display: "flex",
3298
3303
  flexDirection: "column",
3299
3304
  justifyContent: "flex-end",
@@ -3309,7 +3314,7 @@ const Gn = {
3309
3314
  alignSelf: "stretch"
3310
3315
  }, children: [
3311
3316
  /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 8, flex: 1 }, children: [
3312
- /* @__PURE__ */ e(yn, { size: 24, color: "var(--rail-orange, #C98A5A)", strokeWidth: 2 }),
3317
+ /* @__PURE__ */ e(bn, { size: 24, color: "var(--rail-orange, #C98A5A)", strokeWidth: 2 }),
3313
3318
  /* @__PURE__ */ e("span", { style: {
3314
3319
  fontSize: 16,
3315
3320
  fontWeight: 600,
@@ -3320,12 +3325,12 @@ const Gn = {
3320
3325
  ] }),
3321
3326
  /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 16, flexShrink: 0 }, children: [
3322
3327
  /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 6, padding: "8px 0" }, children: [
3323
- /* @__PURE__ */ e(mn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3324
- /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", fontFamily: "var(--font-sans)", lineHeight: 1.2 }, children: on })
3328
+ /* @__PURE__ */ e(st, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3329
+ /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", fontFamily: "var(--font-sans)", lineHeight: 1.2 }, children: dn })
3325
3330
  ] }),
3326
3331
  /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 6, padding: "8px 0" }, children: [
3327
- /* @__PURE__ */ e(vn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3328
- /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", fontFamily: "var(--font-sans)", lineHeight: 1.2 }, children: ln })
3332
+ /* @__PURE__ */ e(Sn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3333
+ /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", fontFamily: "var(--font-sans)", lineHeight: 1.2 }, children: cn })
3329
3334
  ] }),
3330
3335
  /* @__PURE__ */ n("div", { style: {
3331
3336
  display: "flex",
@@ -3334,153 +3339,65 @@ const Gn = {
3334
3339
  paddingLeft: 16,
3335
3340
  borderLeft: "1px solid var(--Grey-absent, #D9D9D9)"
3336
3341
  }, children: [
3337
- /* @__PURE__ */ e(re, { text: tn, children: /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 6, padding: "8px 0", cursor: "pointer" }, children: [
3338
- /* @__PURE__ */ e(xn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3339
- /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", fontFamily: "var(--font-sans)", lineHeight: 1.2 }, children: ze })
3342
+ /* @__PURE__ */ e(re, { text: on, children: /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 6, padding: "8px 0", cursor: "pointer" }, children: [
3343
+ /* @__PURE__ */ e(dt, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3344
+ /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", fontFamily: "var(--font-sans)", lineHeight: 1.2 }, children: Me })
3340
3345
  ] }) }),
3341
- /* @__PURE__ */ e(bn, { size: 16, color: "var(--color-input-border, #ACACAD)", strokeWidth: 1.5 }),
3342
- Ge > 1 ? /* @__PURE__ */ n("div", { style: { position: "relative" }, children: [
3343
- /* @__PURE__ */ e(re, { text: rt, children: /* @__PURE__ */ n(
3344
- "button",
3345
- {
3346
- onClick: () => Fe((p) => !p),
3347
- style: {
3348
- display: "flex",
3349
- alignItems: "center",
3350
- gap: 4,
3351
- padding: "8px 0",
3352
- background: "none",
3353
- border: "none",
3354
- cursor: "pointer"
3355
- },
3356
- children: [
3357
- /* @__PURE__ */ e(He, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3358
- /* @__PURE__ */ n("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", lineHeight: 1.2 }, children: [
3359
- ge,
3360
- " (",
3361
- Ge,
3362
- " Sessions)"
3363
- ] }),
3364
- Oe ? /* @__PURE__ */ e(Re, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }) : /* @__PURE__ */ e(_e, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 })
3365
- ]
3366
- }
3367
- ) }),
3368
- Oe && /* @__PURE__ */ n("div", { style: {
3369
- position: "absolute",
3370
- top: "100%",
3371
- right: 0,
3372
- marginTop: 4,
3373
- width: 264,
3374
- background: "var(--Grey-White, #FFF)",
3375
- borderRadius: 4,
3376
- border: "1px solid var(--Grey-absent, #D9D9D9)",
3377
- boxShadow: "0 4px 16px rgba(0,0,0,0.12)",
3378
- zIndex: 50,
3379
- overflow: "hidden"
3380
- }, children: [
3381
- /* @__PURE__ */ n("div", { style: {
3346
+ Ee > 1 ? /* @__PURE__ */ e("div", { children: /* @__PURE__ */ e(re, { text: nt, children: /* @__PURE__ */ n(
3347
+ "button",
3348
+ {
3349
+ onClick: () => se(!0),
3350
+ style: {
3382
3351
  display: "flex",
3383
- alignItems: "flex-start",
3384
- gap: 8,
3385
- padding: 16
3386
- }, children: [
3387
- /* @__PURE__ */ e(He, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5, style: { marginTop: 2, flexShrink: 0 } }),
3388
- /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 4 }, children: [
3389
- /* @__PURE__ */ e("span", { style: {
3390
- fontSize: 16,
3391
- fontWeight: 600,
3392
- color: "var(--Grey-Strong, #2E3236)",
3393
- lineHeight: 1
3394
- }, children: ge }),
3395
- /* @__PURE__ */ n("span", { style: {
3396
- fontSize: 13,
3397
- fontWeight: 400,
3398
- color: "var(--Grey-Muted, #808183)",
3399
- lineHeight: 1
3400
- }, children: [
3401
- Ge,
3402
- " Sessions in past"
3352
+ alignItems: "center",
3353
+ gap: 16,
3354
+ padding: "0 16px",
3355
+ height: 34,
3356
+ borderRadius: 8,
3357
+ background: "var(--Rail-Surface-2, #E3E1D7)",
3358
+ border: "none",
3359
+ cursor: "pointer"
3360
+ },
3361
+ children: [
3362
+ /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 4, minWidth: 0 }, children: [
3363
+ /* @__PURE__ */ e(Re, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 }),
3364
+ /* @__PURE__ */ n("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", lineHeight: 1.2, whiteSpace: "nowrap" }, children: [
3365
+ /* @__PURE__ */ e("span", { style: { fontWeight: 600 }, children: he }),
3366
+ " ",
3367
+ /* @__PURE__ */ n("span", { children: [
3368
+ "(",
3369
+ Ee,
3370
+ " Sessions)"
3371
+ ] })
3403
3372
  ] })
3404
- ] })
3405
- ] }),
3406
- Je.slice(0, 5).map((p, M) => /* @__PURE__ */ n(
3407
- "div",
3408
- {
3409
- onClick: () => {
3410
- Ae && Ae(p), Fe(!1);
3411
- },
3412
- onMouseEnter: () => Ye(M),
3413
- onMouseLeave: () => Ye(null),
3414
- style: {
3415
- display: "flex",
3416
- width: 264,
3417
- padding: "12px 16px",
3418
- justifyContent: "space-between",
3419
- alignItems: "center",
3420
- background: Pe === M ? "var(--surface-hover, #F3F7F7)" : "var(--Grey-White, #FFF)",
3421
- borderTop: "1px solid var(--Grey-absent, #D9D9D9)",
3422
- cursor: "pointer",
3423
- boxSizing: "border-box",
3424
- transition: "background 0.15s"
3425
- },
3426
- children: [
3427
- /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 12 }, children: [
3428
- /* @__PURE__ */ e("span", { style: {
3429
- fontSize: 13,
3430
- fontWeight: 400,
3431
- color: "var(--Grey-Strong, #2E3236)",
3432
- lineHeight: 1
3433
- }, children: p.title }),
3434
- /* @__PURE__ */ e("span", { style: {
3435
- fontSize: 12,
3436
- fontWeight: 400,
3437
- color: "var(--Grey-Muted, #808183)",
3438
- lineHeight: 1
3439
- }, children: p.date })
3440
- ] }),
3441
- Pe === M && /* @__PURE__ */ e(Sn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1, style: { flexShrink: 0 } })
3442
- ]
3443
- },
3444
- p.id || M
3445
- )),
3446
- /* @__PURE__ */ e("div", { style: {
3447
- padding: 16,
3448
- borderTop: "1px solid var(--Grey-absent, #D9D9D9)",
3373
+ ] }),
3374
+ /* @__PURE__ */ e(ct, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.7 })
3375
+ ]
3376
+ }
3377
+ ) }) }) : /* @__PURE__ */ e(re, { text: nt, children: /* @__PURE__ */ n(
3378
+ "button",
3379
+ {
3380
+ onClick: () => se(!0),
3381
+ style: {
3449
3382
  display: "flex",
3450
- justifyContent: "center"
3451
- }, children: /* @__PURE__ */ n(
3452
- "button",
3453
- {
3454
- onClick: () => {
3455
- Le && Le(), Fe(!1);
3456
- },
3457
- style: {
3458
- display: "flex",
3459
- height: 32,
3460
- padding: "16px 16px 16px 12px",
3461
- justifyContent: "center",
3462
- alignItems: "center",
3463
- gap: 6,
3464
- background: "var(--Grey-White, #FFF)",
3465
- border: "1px solid var(--Grey-absent, #D9D9D9)",
3466
- borderRadius: 10,
3467
- cursor: "pointer"
3468
- },
3469
- children: [
3470
- /* @__PURE__ */ e(kn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3471
- /* @__PURE__ */ e("span", { style: {
3472
- fontSize: 14,
3473
- fontWeight: 600,
3474
- color: "var(--Grey-Strong, #2E3236)"
3475
- }, children: "View All Sessions" })
3476
- ]
3477
- }
3478
- ) })
3479
- ] })
3480
- ] }) : /* @__PURE__ */ e(re, { text: rt, children: /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 4, padding: "8px 0", cursor: "pointer" }, children: [
3481
- /* @__PURE__ */ e(He, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3482
- /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", lineHeight: 1.2 }, children: ge })
3483
- ] }) })
3383
+ alignItems: "center",
3384
+ gap: 16,
3385
+ padding: "0 16px",
3386
+ height: 34,
3387
+ borderRadius: 8,
3388
+ background: "var(--Rail-Surface-2, #E3E1D7)",
3389
+ border: "none",
3390
+ cursor: "pointer"
3391
+ },
3392
+ children: [
3393
+ /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 4, minWidth: 0 }, children: [
3394
+ /* @__PURE__ */ e(Re, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.5 }),
3395
+ /* @__PURE__ */ e("span", { style: { fontSize: 13, fontWeight: 600, color: "var(--Grey-Strong, #2E3236)", lineHeight: 1.2, whiteSpace: "nowrap" }, children: he })
3396
+ ] }),
3397
+ /* @__PURE__ */ e(ct, { size: 16, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.7 })
3398
+ ]
3399
+ }
3400
+ ) })
3484
3401
  ] })
3485
3402
  ] })
3486
3403
  ] }),
@@ -3491,14 +3408,14 @@ const Gn = {
3491
3408
  alignSelf: "stretch"
3492
3409
  }, children: [
3493
3410
  /* @__PURE__ */ e("div", { style: { flex: 1, minWidth: 0, display: "flex" }, children: /* @__PURE__ */ e(
3494
- Bn,
3411
+ Nn,
3495
3412
  {
3496
3413
  score: A ?? 0.5,
3497
3414
  minScore: 0,
3498
3415
  maxScore: U,
3499
- predictedScore: we ?? 0.5,
3500
- predictedLabel: he,
3501
- legends: pe
3416
+ predictedScore: Ce ?? 0.5,
3417
+ predictedLabel: pe,
3418
+ legends: ue
3502
3419
  }
3503
3420
  ) }),
3504
3421
  /* @__PURE__ */ n("div", { style: {
@@ -3511,33 +3428,33 @@ const Gn = {
3511
3428
  minWidth: 0
3512
3429
  }, children: [
3513
3430
  /* @__PURE__ */ e(
3514
- Mn,
3431
+ Hn,
3515
3432
  {
3516
- meta: et,
3517
- callPurpose: tt,
3518
- classification: Jt,
3433
+ meta: Xe,
3434
+ callPurpose: Ue,
3435
+ classification: tn,
3519
3436
  outcomeQuality: Q || "Neutral",
3520
- dimensions: qt,
3437
+ dimensions: Xt,
3521
3438
  resolutionOutcome: J,
3522
3439
  customerIntent: X,
3523
- interactionId: oe ?? V.interaction_id,
3524
- moreDetails: g,
3525
- canShowEditButton: rn,
3526
- onEditInteraction: Tt
3440
+ interactionId: le ?? V.interaction_id,
3441
+ moreDetails: h,
3442
+ canShowEditButton: sn,
3443
+ onEditInteraction: At
3527
3444
  }
3528
3445
  ),
3529
3446
  /* @__PURE__ */ e(
3530
- En,
3447
+ Tn,
3531
3448
  {
3532
- outcomeLift: nt,
3533
- driverLabels: Xt
3449
+ outcomeLift: et,
3450
+ driverLabels: nn
3534
3451
  }
3535
3452
  )
3536
3453
  ] })
3537
3454
  ] })
3538
3455
  ] }),
3539
- /* @__PURE__ */ e("div", { ref: We, style: { paddingTop: 24 }, children: /* @__PURE__ */ e(Dn, { data: l ? null : Ut, loading: l }) }),
3540
- /* @__PURE__ */ n("div", { ref: se, style: {
3456
+ /* @__PURE__ */ e("div", { ref: We, style: { paddingTop: 24 }, children: /* @__PURE__ */ e(Gn, { data: o ? null : rn, loading: o }) }),
3457
+ /* @__PURE__ */ n("div", { ref: de, style: {
3541
3458
  display: "flex",
3542
3459
  flexDirection: "column",
3543
3460
  gap: 16,
@@ -3549,7 +3466,7 @@ const Gn = {
3549
3466
  alignItems: "center",
3550
3467
  gap: 8
3551
3468
  }, children: [
3552
- /* @__PURE__ */ e(bt, { size: 24, color: "#C98A5A", strokeWidth: 2 }),
3469
+ /* @__PURE__ */ e(wt, { size: 24, color: "#C98A5A", strokeWidth: 2 }),
3553
3470
  /* @__PURE__ */ e("span", { style: {
3554
3471
  fontSize: 16,
3555
3472
  fontWeight: 600,
@@ -3567,28 +3484,28 @@ const Gn = {
3567
3484
  borderTop: "1px solid #D9D9D9"
3568
3485
  }, children: [
3569
3486
  /* @__PURE__ */ e("div", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ e(
3570
- Hn,
3487
+ Rn,
3571
3488
  {
3572
- signals: en,
3573
- expandedSignals: Bt,
3574
- toggleSignal: Yt,
3575
- playEvidence: Ue,
3576
- highlightTurns: Pt,
3577
- onShowInTranscript: Xe,
3578
- timelinePlaying: u || Ke,
3579
- currentTimeSeconds: h ?? qe
3489
+ signals: ln,
3490
+ expandedSignals: $t,
3491
+ toggleSignal: Zt,
3492
+ playEvidence: Je,
3493
+ highlightTurns: qt,
3494
+ onShowInTranscript: Qe,
3495
+ timelinePlaying: u || Ye,
3496
+ currentTimeSeconds: p ?? Ve
3580
3497
  }
3581
3498
  ) }),
3582
3499
  /* @__PURE__ */ e("div", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ e(
3583
- wn,
3500
+ Cn,
3584
3501
  {
3585
3502
  ref: ne,
3586
3503
  audioUrl: a,
3587
- durationSeconds: et.duration_seconds,
3588
- audioRef: f,
3589
- agentName: ze,
3590
- customerName: ge,
3591
- currentTimeSeconds: h,
3504
+ durationSeconds: Xe.duration_seconds,
3505
+ audioRef: g,
3506
+ agentName: Me,
3507
+ customerName: he,
3508
+ currentTimeSeconds: p,
3592
3509
  timelinePlaying: u,
3593
3510
  playbackRate: W,
3594
3511
  timelineSegments: v,
@@ -3608,51 +3525,183 @@ const Gn = {
3608
3525
  ] })
3609
3526
  ] }),
3610
3527
  /* @__PURE__ */ e("div", { ref: Ie, style: { paddingTop: 24 }, children: /* @__PURE__ */ e(
3611
- Yn,
3528
+ Vn,
3612
3529
  {
3613
3530
  comments: Ne,
3614
3531
  totalComments: Ne.length,
3615
3532
  currentUser: j,
3616
- onSendComment: Gt || (() => {
3533
+ onSendComment: Ht || (() => {
3617
3534
  }),
3618
- onSendReply: Mt || (() => {
3535
+ onSendReply: Tt || (() => {
3619
3536
  }),
3620
- onReply: Et || (() => {
3537
+ onReply: Rt || (() => {
3621
3538
  }),
3622
- onEdit: Ht || (() => {
3539
+ onEdit: _t || (() => {
3623
3540
  }),
3624
- onDelete: Rt || (() => {
3541
+ onDelete: Lt || (() => {
3625
3542
  }),
3626
- onMenuClick: _t || (() => {
3543
+ onMenuClick: Bt || (() => {
3627
3544
  }),
3628
- onMarkResolved: At || (() => {
3545
+ onMarkResolved: jt || (() => {
3629
3546
  }),
3630
- isResolved: Lt,
3547
+ isResolved: Nt,
3631
3548
  children: /* @__PURE__ */ e(
3632
- qn,
3549
+ Qn,
3633
3550
  {
3634
- items: it,
3635
- guidanceCount: it.length,
3636
- onPlayEvidence: Ue,
3637
- onShowInTranscript: Xe,
3638
- timelinePlaying: u || Ke,
3639
- currentTimeSeconds: h ?? qe
3551
+ items: tt,
3552
+ guidanceCount: tt.length,
3553
+ onPlayEvidence: Je,
3554
+ onShowInTranscript: Qe,
3555
+ timelinePlaying: u || Ye,
3556
+ currentTimeSeconds: p ?? Ve
3640
3557
  }
3641
3558
  )
3642
3559
  }
3643
3560
  ) })
3644
- ] })
3561
+ ] }),
3562
+ /* @__PURE__ */ e(
3563
+ Fn,
3564
+ {
3565
+ open: Ot,
3566
+ onClose: () => se(!1),
3567
+ title: /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 10, minWidth: 0 }, children: [
3568
+ /* @__PURE__ */ e("div", { style: {
3569
+ width: 34,
3570
+ height: 34,
3571
+ borderRadius: "50%",
3572
+ background: "var(--surface-hover, #F3F7F7)",
3573
+ display: "flex",
3574
+ alignItems: "center",
3575
+ justifyContent: "center",
3576
+ flexShrink: 0
3577
+ }, children: /* @__PURE__ */ e(Re, { size: 20, color: "var(--Grey-Strong, #2E3236)", strokeWidth: 1.7 }) }),
3578
+ /* @__PURE__ */ e("div", { style: { minWidth: 0 }, children: /* @__PURE__ */ e("div", { style: {
3579
+ fontSize: 16,
3580
+ fontWeight: 600,
3581
+ color: "var(--Grey-Strong, #2E3236)",
3582
+ lineHeight: 1.2,
3583
+ whiteSpace: "nowrap",
3584
+ overflow: "hidden",
3585
+ textOverflow: "ellipsis"
3586
+ }, children: he }) })
3587
+ ] }),
3588
+ subtitle: Ge ? /* @__PURE__ */ n("span", { style: {
3589
+ fontSize: 13,
3590
+ fontWeight: 400,
3591
+ color: "var(--Grey-Muted, #808183)",
3592
+ lineHeight: 1.5
3593
+ }, children: [
3594
+ Ee,
3595
+ " Sessions in Past"
3596
+ ] }) : null,
3597
+ width: 470,
3598
+ height: "100vh",
3599
+ topOffset: 70,
3600
+ footer: Ge ? /* @__PURE__ */ e("div", { style: { width: "100%", display: "flex", justifyContent: "center" }, children: /* @__PURE__ */ n(
3601
+ "button",
3602
+ {
3603
+ onClick: () => {
3604
+ Le && Le(), se(!1);
3605
+ },
3606
+ style: {
3607
+ display: "flex",
3608
+ height: 32,
3609
+ padding: "0 16px 0 12px",
3610
+ justifyContent: "center",
3611
+ alignItems: "center",
3612
+ gap: 6,
3613
+ background: "var(--Grey-White, #FFF)",
3614
+ border: "1px solid var(--Grey-absent, #D9D9D9)",
3615
+ borderRadius: 10,
3616
+ cursor: "pointer"
3617
+ },
3618
+ children: [
3619
+ /* @__PURE__ */ e(kn, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.5 }),
3620
+ /* @__PURE__ */ e("span", { style: { fontSize: 14, fontWeight: 600, color: "var(--Grey-Strong, #2E3236)" }, children: "View All Sessions" })
3621
+ ]
3622
+ }
3623
+ ) }) : null,
3624
+ children: /* @__PURE__ */ e(
3625
+ "div",
3626
+ {
3627
+ style: {
3628
+ borderTop: "1px solid var(--Grey-absent, #D9D9D9)",
3629
+ maxHeight: "100%",
3630
+ overflowY: "auto"
3631
+ },
3632
+ children: Ge ? De.map((f, D) => /* @__PURE__ */ n(
3633
+ "div",
3634
+ {
3635
+ onClick: () => {
3636
+ Ae && Ae(f), se(!1);
3637
+ },
3638
+ onMouseEnter: () => Pe(D),
3639
+ onMouseLeave: () => Pe(null),
3640
+ style: {
3641
+ display: "flex",
3642
+ justifyContent: "space-between",
3643
+ alignItems: "center",
3644
+ gap: 12,
3645
+ padding: "16px 12px",
3646
+ borderTop: D === 0 ? "none" : "1px solid var(--Grey-absent, #D9D9D9)",
3647
+ background: Oe === D ? "var(--surface-hover, #F3F7F7)" : "var(--Grey-White, #FFF)",
3648
+ cursor: "pointer",
3649
+ transition: "background 0.15s"
3650
+ },
3651
+ children: [
3652
+ /* @__PURE__ */ n("div", { style: { minWidth: 0 }, children: [
3653
+ /* @__PURE__ */ e("div", { style: { fontSize: 14, display: "flex", alignItems: "center", gap: 6, fontWeight: 400, color: "var(--Grey-Strong, #2E3236)", lineHeight: 1.2, marginBottom: 8, whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }, children: f.title }),
3654
+ f.status && /* @__PURE__ */ n("div", { style: { fontSize: 13, color: "var(--Grey-Strong, #2E3236)", marginBottom: 12, lineHeight: 1.2 }, children: [
3655
+ /* @__PURE__ */ e("span", { style: { fontWeight: 400 }, children: "Status: " }),
3656
+ /* @__PURE__ */ e("span", { style: { fontWeight: 400, color: "var(--Grey-Muted, #808183)" }, children: f.status })
3657
+ ] }),
3658
+ /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 14, flexWrap: "wrap" }, children: [
3659
+ /* @__PURE__ */ n("span", { style: { display: "inline-flex", alignItems: "center", gap: 6, fontSize: 13, fontWeight: 400, color: "var(--Grey-Muted, #808183)", lineHeight: 1.1 }, children: [
3660
+ /* @__PURE__ */ e(st, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.8 }),
3661
+ f.date
3662
+ ] }),
3663
+ (f.agent || f.agent_name) && /* @__PURE__ */ n("span", { style: { display: "inline-flex", alignItems: "center", gap: 6, fontSize: 13, fontWeight: 400, color: "var(--Grey-Muted, #808183)", lineHeight: 1.1 }, children: [
3664
+ /* @__PURE__ */ e(dt, { size: 16, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.8 }),
3665
+ f.agent || f.agent_name
3666
+ ] })
3667
+ ] })
3668
+ ] }),
3669
+ Oe === D && /* @__PURE__ */ e(wn, { size: 20, color: "var(--Grey-Muted, #808183)", strokeWidth: 1.7, style: { flexShrink: 0 } })
3670
+ ]
3671
+ },
3672
+ f.id || D
3673
+ )) : /* @__PURE__ */ e(
3674
+ "div",
3675
+ {
3676
+ style: {
3677
+ display: "flex",
3678
+ justifyContent: "center",
3679
+ alignItems: "center",
3680
+ minHeight: 140,
3681
+ padding: "24px 12px",
3682
+ color: "var(--Grey-Muted, #808183)",
3683
+ fontSize: 14,
3684
+ fontStyle: "italic",
3685
+ textAlign: "center"
3686
+ },
3687
+ children: "No previous sessions available"
3688
+ }
3689
+ )
3690
+ }
3691
+ )
3692
+ }
3693
+ )
3645
3694
  ] });
3646
3695
  };
3647
3696
  export {
3648
- Dn as UpdatedCoachingSynthesisCard,
3649
- Bn as UpdatedCompassScore,
3650
- qn as UpdatedGuidance,
3651
- Mn as UpdatedInteractionContext,
3652
- ni as UpdatedInteractionDetails,
3653
- wn as UpdatedInteractionRecording,
3654
- En as UpdatedInteractionScores,
3655
- Hn as UpdatedInteractionSignals,
3656
- Yn as UpdatedThreads
3697
+ Gn as UpdatedCoachingSynthesisCard,
3698
+ Nn as UpdatedCompassScore,
3699
+ Qn as UpdatedGuidance,
3700
+ Hn as UpdatedInteractionContext,
3701
+ li as UpdatedInteractionDetails,
3702
+ Cn as UpdatedInteractionRecording,
3703
+ Tn as UpdatedInteractionScores,
3704
+ Rn as UpdatedInteractionSignals,
3705
+ Vn as UpdatedThreads
3657
3706
  };
3658
3707
  //# sourceMappingURL=UpdatedInteractionDetails.es.js.map