chordia-ui 3.8.7 → 3.8.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/SideDrawer.cjs.js +1 -1
- package/dist/SideDrawer.cjs.js.map +1 -1
- package/dist/SideDrawer.es.js +706 -93
- package/dist/SideDrawer.es.js.map +1 -1
- package/dist/Toast.cjs.js +2 -2
- package/dist/Toast.cjs.js.map +1 -1
- package/dist/Toast.es.js +342 -312
- package/dist/Toast.es.js.map +1 -1
- package/dist/components/UpdatedInteractionDetails.cjs.js +4 -4
- package/dist/components/UpdatedInteractionDetails.cjs.js.map +1 -1
- package/dist/components/UpdatedInteractionDetails.es.js +1164 -1112
- package/dist/components/UpdatedInteractionDetails.es.js.map +1 -1
- package/dist/components/common.cjs.js +1 -1
- package/dist/components/common.es.js +25 -24
- package/dist/components/reports.cjs.js +2 -2
- package/dist/components/reports.cjs.js.map +1 -1
- package/dist/components/reports.es.js +329 -287
- package/dist/components/reports.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +87 -86
- package/package.json +1 -1
- package/src/components/UpdatedInteractionDetails/UpdatedInteractionDetails.jsx +198 -9
- package/src/components/common/AgentLiftAnalysisCard.jsx +774 -0
- package/src/components/common/AskCompass.jsx +56 -23
- package/src/components/common/index.js +1 -0
- package/src/components/index.js +1 -1
- package/src/components/reports/ReportsDetails.jsx +45 -2
package/dist/SideDrawer.es.js
CHANGED
|
@@ -1,33 +1,645 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useRef as
|
|
3
|
-
import { X as
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { jsxs as s, jsx as e, Fragment as S } from "react/jsx-runtime";
|
|
2
|
+
import { useState as w, useRef as A, useEffect as B } from "react";
|
|
3
|
+
import { Info as D, X as L } from "lucide-react";
|
|
4
|
+
const o = {
|
|
5
|
+
strong: "var(--Grey-Strong, #2E3236)",
|
|
6
|
+
muted: "var(--Grey-Muted, #808183)",
|
|
7
|
+
faint: "var(--Grey-Faint, #ACADAD)",
|
|
8
|
+
border: "var(--Grey-absent, #D9D9D9)",
|
|
9
|
+
orange: "var(--rail-orange, #C98A5A)",
|
|
10
|
+
// Card surface — warm off-white the Figma frame uses. Falls back to a hex
|
|
11
|
+
// since this specific tone isn't in the existing token set.
|
|
12
|
+
surface: "#FAF9F5",
|
|
13
|
+
// Gauge ring (background semicircle)
|
|
14
|
+
gaugeTrack: "#E3E1D7"
|
|
15
|
+
}, d = "var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)", E = (n, t, i) => Math.max(t, Math.min(i, n)), R = (n) => {
|
|
16
|
+
const t = E(Number(n) || 0, -1, 1);
|
|
17
|
+
return t >= 0.6 ? "High" : t >= 0.15 ? "Above Average" : t <= -0.6 ? "Low" : t <= -0.15 ? "Below Average" : "Average";
|
|
18
|
+
}, H = (n) => {
|
|
19
|
+
const t = Number(n);
|
|
20
|
+
return !Number.isFinite(t) || Math.abs(t) < 0.05 ? "neutral" : t > 0 ? "positive" : "negative";
|
|
21
|
+
}, N = ({ text: n, children: t, maxWidth: i = 280 }) => {
|
|
22
|
+
const [r, l] = w(!1), a = A(null), [f, g] = w({ top: 0, left: 0 });
|
|
23
|
+
return n ? /* @__PURE__ */ s(
|
|
24
|
+
"div",
|
|
25
|
+
{
|
|
26
|
+
ref: a,
|
|
27
|
+
style: { position: "relative", display: "inline-flex" },
|
|
28
|
+
onMouseEnter: () => {
|
|
29
|
+
if (a.current) {
|
|
30
|
+
const c = a.current.getBoundingClientRect();
|
|
31
|
+
g({
|
|
32
|
+
top: c.bottom + 6,
|
|
33
|
+
left: c.left + c.width / 2
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
l(!0);
|
|
37
|
+
},
|
|
38
|
+
onMouseLeave: () => l(!1),
|
|
39
|
+
children: [
|
|
40
|
+
t,
|
|
41
|
+
r && /* @__PURE__ */ e(
|
|
42
|
+
"div",
|
|
43
|
+
{
|
|
44
|
+
style: {
|
|
45
|
+
position: "fixed",
|
|
46
|
+
top: f.top,
|
|
47
|
+
left: f.left,
|
|
48
|
+
transform: "translate(-50%, 0)",
|
|
49
|
+
maxWidth: i,
|
|
50
|
+
padding: "8px 12px",
|
|
51
|
+
borderRadius: 6,
|
|
52
|
+
border: "1px solid var(--Grey-absent, #D9D9D9)",
|
|
53
|
+
background: "var(--Grey-Strong, #2E3236)",
|
|
54
|
+
color: "#FFF",
|
|
55
|
+
fontFamily: d,
|
|
56
|
+
fontSize: 12,
|
|
57
|
+
fontWeight: 400,
|
|
58
|
+
lineHeight: 1.4,
|
|
59
|
+
boxShadow: "0 4px 12px rgba(0, 0, 0, 0.15)",
|
|
60
|
+
zIndex: 9999,
|
|
61
|
+
pointerEvents: "none",
|
|
62
|
+
whiteSpace: "normal",
|
|
63
|
+
textAlign: "left"
|
|
64
|
+
},
|
|
65
|
+
children: n
|
|
66
|
+
}
|
|
67
|
+
)
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
) : t;
|
|
71
|
+
}, _ = ({ value: n = 0, highlight: t = null }) => {
|
|
72
|
+
const p = E(Number(n) || 0, -1, 1) * (Math.PI / 2), u = 60 + 38 * Math.sin(p), m = 56 - 38 * Math.cos(p);
|
|
73
|
+
let x = null;
|
|
74
|
+
if (t != null) {
|
|
75
|
+
const b = E(Number(t) || 0, -1, 1);
|
|
76
|
+
if (b !== 0) {
|
|
77
|
+
const h = b * (Math.PI / 2), v = 60, C = 56 - 26.65, T = 60 + 26.65 * Math.sin(h), W = 56 - 26.65 * Math.cos(h), z = b > 0 ? 1 : 0;
|
|
78
|
+
x = `M ${v} ${C} A ${26.65} ${26.65} 0 0 ${z} ${T} ${W}`;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return (
|
|
82
|
+
// viewBox is 120×80 but the visible dial only occupies the top ~56px
|
|
83
|
+
// (half-circle centred at cy=56). `marginBottom: -24` pulls the
|
|
84
|
+
// following element up by the unused bottom band so the gauge column
|
|
85
|
+
// doesn't reserve that empty space in the flow — matches Figma's
|
|
86
|
+
// `mb-[-30px]` on the gauge wrapper and keeps the Outcome column's
|
|
87
|
+
// bottom-anchored percent block from being pushed too far down.
|
|
88
|
+
/* @__PURE__ */ s(
|
|
89
|
+
"svg",
|
|
90
|
+
{
|
|
91
|
+
width: "120",
|
|
92
|
+
height: "80",
|
|
93
|
+
viewBox: "0 0 120 80",
|
|
94
|
+
role: "img",
|
|
95
|
+
"aria-hidden": "true",
|
|
96
|
+
style: { marginBottom: -20, display: "block" },
|
|
97
|
+
children: [
|
|
98
|
+
/* @__PURE__ */ e(
|
|
99
|
+
"path",
|
|
100
|
+
{
|
|
101
|
+
d: `M ${60 - 26.65} 56 A ${26.65} ${26.65} 0 0 1 ${60 + 26.65} 56`,
|
|
102
|
+
fill: "none",
|
|
103
|
+
stroke: o.gaugeTrack,
|
|
104
|
+
strokeWidth: 28.7,
|
|
105
|
+
strokeLinecap: "butt"
|
|
106
|
+
}
|
|
107
|
+
),
|
|
108
|
+
x && /* @__PURE__ */ e(
|
|
109
|
+
"path",
|
|
110
|
+
{
|
|
111
|
+
d: x,
|
|
112
|
+
fill: "none",
|
|
113
|
+
stroke: o.strong,
|
|
114
|
+
strokeWidth: 28.7,
|
|
115
|
+
strokeLinecap: "butt"
|
|
116
|
+
}
|
|
117
|
+
),
|
|
118
|
+
/* @__PURE__ */ e(
|
|
119
|
+
"text",
|
|
120
|
+
{
|
|
121
|
+
x: 60,
|
|
122
|
+
y: 56 - 41 - 4,
|
|
123
|
+
textAnchor: "middle",
|
|
124
|
+
fontSize: "13",
|
|
125
|
+
fontFamily: d,
|
|
126
|
+
fill: o.orange,
|
|
127
|
+
children: "0"
|
|
128
|
+
}
|
|
129
|
+
),
|
|
130
|
+
/* @__PURE__ */ e(
|
|
131
|
+
"text",
|
|
132
|
+
{
|
|
133
|
+
x: 60 - 41 - 9,
|
|
134
|
+
y: 56 + 5,
|
|
135
|
+
textAnchor: "middle",
|
|
136
|
+
fontSize: "14",
|
|
137
|
+
fontFamily: d,
|
|
138
|
+
fill: o.strong,
|
|
139
|
+
children: "−"
|
|
140
|
+
}
|
|
141
|
+
),
|
|
142
|
+
/* @__PURE__ */ e(
|
|
143
|
+
"text",
|
|
144
|
+
{
|
|
145
|
+
x: 60 + 41 + 9,
|
|
146
|
+
y: 56 + 5,
|
|
147
|
+
textAnchor: "middle",
|
|
148
|
+
fontSize: "14",
|
|
149
|
+
fontFamily: d,
|
|
150
|
+
fill: o.strong,
|
|
151
|
+
children: "+"
|
|
152
|
+
}
|
|
153
|
+
),
|
|
154
|
+
/* @__PURE__ */ e(
|
|
155
|
+
"line",
|
|
156
|
+
{
|
|
157
|
+
x1: 60,
|
|
158
|
+
y1: 56,
|
|
159
|
+
x2: u,
|
|
160
|
+
y2: m,
|
|
161
|
+
stroke: o.orange,
|
|
162
|
+
strokeWidth: 2,
|
|
163
|
+
strokeLinecap: "round"
|
|
164
|
+
}
|
|
165
|
+
),
|
|
166
|
+
/* @__PURE__ */ e("circle", { cx: 60, cy: 56, r: 2.5, fill: o.orange })
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
)
|
|
170
|
+
);
|
|
171
|
+
}, F = ({
|
|
172
|
+
title: n,
|
|
173
|
+
value: t,
|
|
174
|
+
highlight: i,
|
|
175
|
+
centerLabel: r,
|
|
176
|
+
centerLabelColor: l,
|
|
177
|
+
sublabel: a,
|
|
178
|
+
footer: f,
|
|
179
|
+
description: g
|
|
180
|
+
}) => /* @__PURE__ */ s(
|
|
181
|
+
"div",
|
|
182
|
+
{
|
|
183
|
+
style: {
|
|
184
|
+
flex: 1,
|
|
185
|
+
minWidth: 0,
|
|
186
|
+
display: "flex",
|
|
187
|
+
flexDirection: "column",
|
|
188
|
+
alignItems: "center",
|
|
189
|
+
gap: 10
|
|
190
|
+
},
|
|
191
|
+
children: [
|
|
192
|
+
/* @__PURE__ */ e(
|
|
193
|
+
"div",
|
|
194
|
+
{
|
|
195
|
+
style: {
|
|
196
|
+
minHeight: 40,
|
|
197
|
+
display: "flex",
|
|
198
|
+
alignItems: "center",
|
|
199
|
+
justifyContent: "center",
|
|
200
|
+
width: "100%"
|
|
201
|
+
},
|
|
202
|
+
children: /* @__PURE__ */ e(
|
|
203
|
+
"span",
|
|
204
|
+
{
|
|
205
|
+
style: {
|
|
206
|
+
fontFamily: d,
|
|
207
|
+
fontSize: 14,
|
|
208
|
+
fontWeight: 400,
|
|
209
|
+
color: o.strong,
|
|
210
|
+
lineHeight: "20px",
|
|
211
|
+
textAlign: "center",
|
|
212
|
+
width: "100%"
|
|
213
|
+
},
|
|
214
|
+
children: n
|
|
215
|
+
}
|
|
216
|
+
)
|
|
217
|
+
}
|
|
218
|
+
),
|
|
219
|
+
t == null ? (
|
|
220
|
+
// Gauge swapped for an em-dash placeholder when the API ships no
|
|
221
|
+
// numeric value for this column. Same 60px height as the gauge SVG
|
|
222
|
+
// (after its -20 negative margin) so the columns stay aligned.
|
|
223
|
+
/* @__PURE__ */ e(
|
|
224
|
+
"div",
|
|
225
|
+
{
|
|
226
|
+
style: {
|
|
227
|
+
width: 120,
|
|
228
|
+
height: 60,
|
|
229
|
+
display: "flex",
|
|
230
|
+
alignItems: "center",
|
|
231
|
+
justifyContent: "center",
|
|
232
|
+
marginBottom: -20
|
|
233
|
+
},
|
|
234
|
+
children: /* @__PURE__ */ e(
|
|
235
|
+
"span",
|
|
236
|
+
{
|
|
237
|
+
style: {
|
|
238
|
+
fontFamily: d,
|
|
239
|
+
fontSize: 28,
|
|
240
|
+
fontWeight: 400,
|
|
241
|
+
color: o.muted,
|
|
242
|
+
lineHeight: 1
|
|
243
|
+
},
|
|
244
|
+
children: "—"
|
|
245
|
+
}
|
|
246
|
+
)
|
|
247
|
+
}
|
|
248
|
+
)
|
|
249
|
+
) : /* @__PURE__ */ e(_, { value: t, highlight: i }),
|
|
250
|
+
/* @__PURE__ */ s(
|
|
251
|
+
"div",
|
|
252
|
+
{
|
|
253
|
+
style: {
|
|
254
|
+
display: "flex",
|
|
255
|
+
flexDirection: "column",
|
|
256
|
+
alignItems: "center",
|
|
257
|
+
gap: 4,
|
|
258
|
+
width: "100%"
|
|
259
|
+
},
|
|
260
|
+
children: [
|
|
261
|
+
/* @__PURE__ */ e(
|
|
262
|
+
"span",
|
|
263
|
+
{
|
|
264
|
+
style: {
|
|
265
|
+
fontFamily: d,
|
|
266
|
+
// Figma 1463:4261 spec: 14px Averta-Semibold, Neutral/850
|
|
267
|
+
// (#272727) for both "Average" and "Above Average".
|
|
268
|
+
fontSize: 14,
|
|
269
|
+
fontWeight: 600,
|
|
270
|
+
color: r ? l || "#272727" : o.muted,
|
|
271
|
+
lineHeight: "normal",
|
|
272
|
+
textAlign: "center"
|
|
273
|
+
},
|
|
274
|
+
children: r || "—"
|
|
275
|
+
}
|
|
276
|
+
),
|
|
277
|
+
a && /* @__PURE__ */ e(
|
|
278
|
+
"span",
|
|
279
|
+
{
|
|
280
|
+
style: {
|
|
281
|
+
fontFamily: d,
|
|
282
|
+
fontSize: 13,
|
|
283
|
+
fontWeight: 400,
|
|
284
|
+
color: o.muted,
|
|
285
|
+
lineHeight: "normal",
|
|
286
|
+
textAlign: "center",
|
|
287
|
+
width: "100%"
|
|
288
|
+
},
|
|
289
|
+
children: a
|
|
290
|
+
}
|
|
291
|
+
),
|
|
292
|
+
/* @__PURE__ */ e(
|
|
293
|
+
"span",
|
|
294
|
+
{
|
|
295
|
+
style: {
|
|
296
|
+
fontFamily: d,
|
|
297
|
+
fontSize: 13,
|
|
298
|
+
fontWeight: 400,
|
|
299
|
+
color: f ? o.strong : o.muted,
|
|
300
|
+
lineHeight: "normal",
|
|
301
|
+
textAlign: "center",
|
|
302
|
+
width: "100%"
|
|
303
|
+
},
|
|
304
|
+
children: f || "—"
|
|
305
|
+
}
|
|
306
|
+
),
|
|
307
|
+
g && /* @__PURE__ */ e(
|
|
308
|
+
"span",
|
|
309
|
+
{
|
|
310
|
+
style: {
|
|
311
|
+
fontFamily: d,
|
|
312
|
+
fontSize: 13,
|
|
313
|
+
fontWeight: 400,
|
|
314
|
+
color: o.muted,
|
|
315
|
+
lineHeight: "normal",
|
|
316
|
+
textAlign: "center",
|
|
317
|
+
width: "100%",
|
|
318
|
+
marginTop: 4
|
|
319
|
+
},
|
|
320
|
+
children: g
|
|
321
|
+
}
|
|
322
|
+
)
|
|
323
|
+
]
|
|
324
|
+
}
|
|
325
|
+
)
|
|
326
|
+
]
|
|
327
|
+
}
|
|
328
|
+
), $ = ({
|
|
329
|
+
percent: n,
|
|
330
|
+
label: t,
|
|
331
|
+
totalLabel: i = "Total",
|
|
332
|
+
description: r,
|
|
333
|
+
status: l
|
|
334
|
+
}) => {
|
|
335
|
+
const a = (l == null ? void 0 : l.label) ?? t;
|
|
336
|
+
return (
|
|
337
|
+
// Top-aligned stack — pill → percent → Total / description, all hugging
|
|
338
|
+
// the top of the column with the root `gap: 16` between them. The row
|
|
339
|
+
// still uses `align-items: stretch` so the column visually fills the
|
|
340
|
+
// row height, but any leftover space falls to the BOTTOM of the column
|
|
341
|
+
// (after the description) rather than being distributed between the
|
|
342
|
+
// pill and the percent. This keeps the Outcome content tight even
|
|
343
|
+
// when the gauge columns are taller, matching the visual rhythm
|
|
344
|
+
// requested in the latest review.
|
|
345
|
+
/* @__PURE__ */ s(
|
|
346
|
+
"div",
|
|
347
|
+
{
|
|
348
|
+
style: {
|
|
349
|
+
flex: 1,
|
|
350
|
+
minWidth: 0,
|
|
351
|
+
display: "flex",
|
|
352
|
+
flexDirection: "column",
|
|
353
|
+
alignItems: "center",
|
|
354
|
+
justifyContent: "flex-start",
|
|
355
|
+
gap: 16
|
|
356
|
+
},
|
|
357
|
+
children: [
|
|
358
|
+
a && /* @__PURE__ */ e(
|
|
359
|
+
"div",
|
|
360
|
+
{
|
|
361
|
+
style: {
|
|
362
|
+
minHeight: 40,
|
|
363
|
+
display: "flex",
|
|
364
|
+
alignItems: "center",
|
|
365
|
+
justifyContent: "center",
|
|
366
|
+
width: "100%"
|
|
367
|
+
},
|
|
368
|
+
children: /* @__PURE__ */ e(
|
|
369
|
+
"span",
|
|
370
|
+
{
|
|
371
|
+
style: {
|
|
372
|
+
fontFamily: d,
|
|
373
|
+
fontSize: 14,
|
|
374
|
+
fontWeight: 600,
|
|
375
|
+
color: o.strong,
|
|
376
|
+
lineHeight: "normal",
|
|
377
|
+
whiteSpace: "nowrap"
|
|
378
|
+
},
|
|
379
|
+
children: a
|
|
380
|
+
}
|
|
381
|
+
)
|
|
382
|
+
}
|
|
383
|
+
),
|
|
384
|
+
/* @__PURE__ */ s(
|
|
385
|
+
"div",
|
|
386
|
+
{
|
|
387
|
+
style: {
|
|
388
|
+
display: "flex",
|
|
389
|
+
flexDirection: "column",
|
|
390
|
+
alignItems: "center",
|
|
391
|
+
gap: 20,
|
|
392
|
+
width: "100%"
|
|
393
|
+
},
|
|
394
|
+
children: [
|
|
395
|
+
/* @__PURE__ */ e(
|
|
396
|
+
"span",
|
|
397
|
+
{
|
|
398
|
+
style: {
|
|
399
|
+
fontFamily: d,
|
|
400
|
+
fontSize: 34,
|
|
401
|
+
fontWeight: 400,
|
|
402
|
+
color: o.strong,
|
|
403
|
+
lineHeight: 1.2,
|
|
404
|
+
textAlign: "center",
|
|
405
|
+
whiteSpace: "nowrap"
|
|
406
|
+
},
|
|
407
|
+
children: n != null ? `${n}%` : "—"
|
|
408
|
+
}
|
|
409
|
+
),
|
|
410
|
+
/* @__PURE__ */ s(
|
|
411
|
+
"div",
|
|
412
|
+
{
|
|
413
|
+
style: {
|
|
414
|
+
display: "flex",
|
|
415
|
+
flexDirection: "column",
|
|
416
|
+
alignItems: "center",
|
|
417
|
+
gap: 4,
|
|
418
|
+
width: "100%"
|
|
419
|
+
},
|
|
420
|
+
children: [
|
|
421
|
+
i && /* @__PURE__ */ e(
|
|
422
|
+
"span",
|
|
423
|
+
{
|
|
424
|
+
style: {
|
|
425
|
+
fontFamily: d,
|
|
426
|
+
fontSize: 14,
|
|
427
|
+
fontWeight: 600,
|
|
428
|
+
color: "#272727",
|
|
429
|
+
lineHeight: "normal",
|
|
430
|
+
textAlign: "center",
|
|
431
|
+
whiteSpace: "nowrap"
|
|
432
|
+
},
|
|
433
|
+
children: i
|
|
434
|
+
}
|
|
435
|
+
),
|
|
436
|
+
r && /* @__PURE__ */ e(
|
|
437
|
+
"span",
|
|
438
|
+
{
|
|
439
|
+
style: {
|
|
440
|
+
fontFamily: d,
|
|
441
|
+
fontSize: 13,
|
|
442
|
+
fontWeight: 400,
|
|
443
|
+
color: o.muted,
|
|
444
|
+
lineHeight: "normal",
|
|
445
|
+
textAlign: "center",
|
|
446
|
+
width: "100%"
|
|
447
|
+
},
|
|
448
|
+
children: r
|
|
449
|
+
}
|
|
450
|
+
)
|
|
451
|
+
]
|
|
452
|
+
}
|
|
453
|
+
)
|
|
454
|
+
]
|
|
455
|
+
}
|
|
456
|
+
)
|
|
457
|
+
]
|
|
458
|
+
}
|
|
459
|
+
)
|
|
460
|
+
);
|
|
461
|
+
}, k = ({ variant: n = "dashed" }) => /* @__PURE__ */ e(
|
|
462
|
+
"div",
|
|
463
|
+
{
|
|
464
|
+
"aria-hidden": "true",
|
|
465
|
+
style: {
|
|
466
|
+
width: 0,
|
|
467
|
+
alignSelf: "stretch",
|
|
468
|
+
borderLeft: `1px ${n} ${o.border}`,
|
|
469
|
+
flexShrink: 0
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
), G = ({
|
|
473
|
+
title: n = "Agent Lift Analysis",
|
|
474
|
+
status: t,
|
|
475
|
+
interactionDifficulty: i,
|
|
476
|
+
agentImpact: r,
|
|
477
|
+
outcome: l,
|
|
478
|
+
showInfoIcon: a = !0,
|
|
479
|
+
onInfoClick: f,
|
|
480
|
+
// Tooltip text rendered on hover of the (i) icon next to the card
|
|
481
|
+
// title. The default explains what this section measures; hosts can
|
|
482
|
+
// override per-context if needed.
|
|
483
|
+
infoTooltip: g = "Measures the agent's contribution to the call outcome by comparing actual performance against the expected result for similar calls."
|
|
484
|
+
}) => {
|
|
485
|
+
const y = Number(i == null ? void 0 : i.value) || 0, c = Number(r == null ? void 0 : r.value) || 0, p = (i == null ? void 0 : i.label) ?? R(y), u = (r == null ? void 0 : r.label) ?? R(c), m = "#272727", x = (() => {
|
|
486
|
+
if ((r == null ? void 0 : r.impactPercent) == null)
|
|
487
|
+
return;
|
|
488
|
+
const h = Number(r.impactPercent);
|
|
489
|
+
if (Number.isFinite(h))
|
|
490
|
+
return `${h < 0 ? "-" : ""}${Math.abs(h)}% Score impact`;
|
|
491
|
+
})(), b = t ?? {
|
|
492
|
+
label: l == null ? void 0 : l.label,
|
|
493
|
+
direction: r != null ? H(c) : "positive"
|
|
494
|
+
};
|
|
495
|
+
return /* @__PURE__ */ s(
|
|
496
|
+
"div",
|
|
497
|
+
{
|
|
498
|
+
style: {
|
|
499
|
+
display: "flex",
|
|
500
|
+
flexDirection: "column",
|
|
501
|
+
gap: 16,
|
|
502
|
+
padding: "24px 16px",
|
|
503
|
+
background: o.surface,
|
|
504
|
+
border: `1px solid ${o.border}`,
|
|
505
|
+
borderRadius: 8,
|
|
506
|
+
width: "100%",
|
|
507
|
+
boxSizing: "border-box"
|
|
508
|
+
},
|
|
509
|
+
children: [
|
|
510
|
+
/* @__PURE__ */ s(
|
|
511
|
+
"div",
|
|
512
|
+
{
|
|
513
|
+
style: {
|
|
514
|
+
display: "flex",
|
|
515
|
+
alignItems: "center",
|
|
516
|
+
gap: 6,
|
|
517
|
+
width: "100%"
|
|
518
|
+
},
|
|
519
|
+
children: [
|
|
520
|
+
/* @__PURE__ */ e(
|
|
521
|
+
"span",
|
|
522
|
+
{
|
|
523
|
+
style: {
|
|
524
|
+
fontFamily: d,
|
|
525
|
+
fontSize: 15,
|
|
526
|
+
fontWeight: 700,
|
|
527
|
+
color: o.strong,
|
|
528
|
+
lineHeight: 1.2,
|
|
529
|
+
whiteSpace: "nowrap"
|
|
530
|
+
},
|
|
531
|
+
children: n
|
|
532
|
+
}
|
|
533
|
+
),
|
|
534
|
+
/* @__PURE__ */ e(N, { text: g, children: /* @__PURE__ */ e(
|
|
535
|
+
"button",
|
|
536
|
+
{
|
|
537
|
+
type: "button",
|
|
538
|
+
onClick: f,
|
|
539
|
+
"aria-label": "About Agent Lift Analysis",
|
|
540
|
+
style: {
|
|
541
|
+
display: "inline-flex",
|
|
542
|
+
alignItems: "center",
|
|
543
|
+
justifyContent: "center",
|
|
544
|
+
width: 16,
|
|
545
|
+
height: 16,
|
|
546
|
+
padding: 0,
|
|
547
|
+
border: "none",
|
|
548
|
+
background: "transparent",
|
|
549
|
+
// Pointer cursor whenever the (i) has something to surface —
|
|
550
|
+
// a tooltip on hover or a click handler. Since `infoTooltip`
|
|
551
|
+
// defaults to a non-empty string, the icon almost always
|
|
552
|
+
// reads as interactive.
|
|
553
|
+
cursor: g || f ? "pointer" : "default",
|
|
554
|
+
color: o.muted
|
|
555
|
+
},
|
|
556
|
+
children: /* @__PURE__ */ e(D, { size: 16, strokeWidth: 1.75 })
|
|
557
|
+
}
|
|
558
|
+
) })
|
|
559
|
+
]
|
|
560
|
+
}
|
|
561
|
+
),
|
|
562
|
+
/* @__PURE__ */ s(
|
|
563
|
+
"div",
|
|
564
|
+
{
|
|
565
|
+
style: {
|
|
566
|
+
display: "flex",
|
|
567
|
+
alignItems: "stretch",
|
|
568
|
+
gap: 16,
|
|
569
|
+
width: "100%"
|
|
570
|
+
},
|
|
571
|
+
children: [
|
|
572
|
+
i && /* @__PURE__ */ e(
|
|
573
|
+
F,
|
|
574
|
+
{
|
|
575
|
+
title: "Interaction Difficulty",
|
|
576
|
+
value: y,
|
|
577
|
+
highlight: null,
|
|
578
|
+
centerLabel: p,
|
|
579
|
+
centerLabelColor: m,
|
|
580
|
+
sublabel: i.sublabel,
|
|
581
|
+
footer: i.footer
|
|
582
|
+
}
|
|
583
|
+
),
|
|
584
|
+
i && r && /* @__PURE__ */ e(k, { variant: "dashed" }),
|
|
585
|
+
r && /* @__PURE__ */ e(
|
|
586
|
+
F,
|
|
587
|
+
{
|
|
588
|
+
title: "Agent Impact",
|
|
589
|
+
value: c,
|
|
590
|
+
highlight: c,
|
|
591
|
+
centerLabel: u,
|
|
592
|
+
centerLabelColor: m,
|
|
593
|
+
sublabel: r.sublabel,
|
|
594
|
+
footer: x,
|
|
595
|
+
description: r.description
|
|
596
|
+
}
|
|
597
|
+
),
|
|
598
|
+
(i || r) && l && /* @__PURE__ */ e(k, { variant: "solid" }),
|
|
599
|
+
l && /* @__PURE__ */ e(
|
|
600
|
+
$,
|
|
601
|
+
{
|
|
602
|
+
percent: l.percent,
|
|
603
|
+
label: l.label,
|
|
604
|
+
totalLabel: l.totalLabel ?? "Total",
|
|
605
|
+
description: l.description,
|
|
606
|
+
status: b
|
|
607
|
+
}
|
|
608
|
+
)
|
|
609
|
+
]
|
|
610
|
+
}
|
|
611
|
+
)
|
|
612
|
+
]
|
|
613
|
+
}
|
|
614
|
+
);
|
|
615
|
+
};
|
|
616
|
+
function O({
|
|
617
|
+
open: n,
|
|
618
|
+
onClose: t,
|
|
619
|
+
title: i,
|
|
620
|
+
subtitle: r,
|
|
621
|
+
children: l,
|
|
10
622
|
footer: a,
|
|
11
|
-
width:
|
|
12
|
-
height:
|
|
13
|
-
toggleLabel:
|
|
14
|
-
toggleChecked:
|
|
15
|
-
onToggle:
|
|
16
|
-
topOffset:
|
|
623
|
+
width: f = 515,
|
|
624
|
+
height: g = 762,
|
|
625
|
+
toggleLabel: y,
|
|
626
|
+
toggleChecked: c,
|
|
627
|
+
onToggle: p,
|
|
628
|
+
topOffset: u
|
|
17
629
|
}) {
|
|
18
|
-
const
|
|
19
|
-
return
|
|
20
|
-
if (!
|
|
630
|
+
const m = A(null), x = u != null, b = typeof u == "number" ? `${u}px` : u;
|
|
631
|
+
return B(() => {
|
|
632
|
+
if (!n)
|
|
21
633
|
return;
|
|
22
|
-
const
|
|
23
|
-
|
|
634
|
+
const h = (v) => {
|
|
635
|
+
v.key === "Escape" && (t == null || t());
|
|
24
636
|
};
|
|
25
|
-
return document.addEventListener("keydown",
|
|
26
|
-
}, [
|
|
27
|
-
/* @__PURE__ */
|
|
637
|
+
return document.addEventListener("keydown", h), () => document.removeEventListener("keydown", h);
|
|
638
|
+
}, [n, t]), n ? /* @__PURE__ */ s(S, { children: [
|
|
639
|
+
/* @__PURE__ */ e(
|
|
28
640
|
"div",
|
|
29
641
|
{
|
|
30
|
-
onClick:
|
|
642
|
+
onClick: t,
|
|
31
643
|
style: {
|
|
32
644
|
position: "fixed",
|
|
33
645
|
inset: 0,
|
|
@@ -36,20 +648,20 @@ function B({
|
|
|
36
648
|
}
|
|
37
649
|
}
|
|
38
650
|
),
|
|
39
|
-
/* @__PURE__ */
|
|
651
|
+
/* @__PURE__ */ s(
|
|
40
652
|
"div",
|
|
41
653
|
{
|
|
42
|
-
ref:
|
|
654
|
+
ref: m,
|
|
43
655
|
style: {
|
|
44
656
|
position: "fixed",
|
|
45
|
-
top:
|
|
657
|
+
top: x ? b : "50%",
|
|
46
658
|
right: 0,
|
|
47
|
-
transform:
|
|
659
|
+
transform: x ? "none" : "translateY(-50%)",
|
|
48
660
|
zIndex: 1201,
|
|
49
661
|
display: "flex",
|
|
50
|
-
width:
|
|
51
|
-
height:
|
|
52
|
-
maxHeight:
|
|
662
|
+
width: f,
|
|
663
|
+
height: g,
|
|
664
|
+
maxHeight: x ? `calc(100vh - ${b})` : "100vh",
|
|
53
665
|
padding: "20px",
|
|
54
666
|
flexDirection: "column",
|
|
55
667
|
alignItems: "flex-start",
|
|
@@ -59,7 +671,7 @@ function B({
|
|
|
59
671
|
boxShadow: "648px 0 100px 0 rgba(0, 0, 0, 0.20)"
|
|
60
672
|
},
|
|
61
673
|
children: [
|
|
62
|
-
/* @__PURE__ */
|
|
674
|
+
/* @__PURE__ */ s(
|
|
63
675
|
"div",
|
|
64
676
|
{
|
|
65
677
|
style: {
|
|
@@ -70,7 +682,7 @@ function B({
|
|
|
70
682
|
flexShrink: 0
|
|
71
683
|
},
|
|
72
684
|
children: [
|
|
73
|
-
/* @__PURE__ */
|
|
685
|
+
/* @__PURE__ */ e(
|
|
74
686
|
"h2",
|
|
75
687
|
{
|
|
76
688
|
style: {
|
|
@@ -81,13 +693,13 @@ function B({
|
|
|
81
693
|
margin: 0,
|
|
82
694
|
lineHeight: "normal"
|
|
83
695
|
},
|
|
84
|
-
children:
|
|
696
|
+
children: i
|
|
85
697
|
}
|
|
86
698
|
),
|
|
87
|
-
/* @__PURE__ */
|
|
699
|
+
/* @__PURE__ */ e(
|
|
88
700
|
"button",
|
|
89
701
|
{
|
|
90
|
-
onClick:
|
|
702
|
+
onClick: t,
|
|
91
703
|
style: {
|
|
92
704
|
display: "flex",
|
|
93
705
|
alignItems: "center",
|
|
@@ -101,19 +713,19 @@ function B({
|
|
|
101
713
|
borderRadius: "4px",
|
|
102
714
|
transition: "background 0.15s ease"
|
|
103
715
|
},
|
|
104
|
-
onMouseEnter: (
|
|
105
|
-
|
|
716
|
+
onMouseEnter: (h) => {
|
|
717
|
+
h.currentTarget.style.background = "#ECEEF2";
|
|
106
718
|
},
|
|
107
|
-
onMouseLeave: (
|
|
108
|
-
|
|
719
|
+
onMouseLeave: (h) => {
|
|
720
|
+
h.currentTarget.style.background = "transparent";
|
|
109
721
|
},
|
|
110
|
-
children: /* @__PURE__ */
|
|
722
|
+
children: /* @__PURE__ */ e(L, { size: 20, strokeWidth: 2 })
|
|
111
723
|
}
|
|
112
724
|
)
|
|
113
725
|
]
|
|
114
726
|
}
|
|
115
727
|
),
|
|
116
|
-
/* @__PURE__ */
|
|
728
|
+
/* @__PURE__ */ e(
|
|
117
729
|
"div",
|
|
118
730
|
{
|
|
119
731
|
style: {
|
|
@@ -124,7 +736,7 @@ function B({
|
|
|
124
736
|
}
|
|
125
737
|
}
|
|
126
738
|
),
|
|
127
|
-
(
|
|
739
|
+
(r || y) && /* @__PURE__ */ s(
|
|
128
740
|
"div",
|
|
129
741
|
{
|
|
130
742
|
style: {
|
|
@@ -136,7 +748,7 @@ function B({
|
|
|
136
748
|
flexShrink: 0
|
|
137
749
|
},
|
|
138
750
|
children: [
|
|
139
|
-
|
|
751
|
+
r && /* @__PURE__ */ e(
|
|
140
752
|
"p",
|
|
141
753
|
{
|
|
142
754
|
style: {
|
|
@@ -148,10 +760,10 @@ function B({
|
|
|
148
760
|
margin: 0,
|
|
149
761
|
flex: 1
|
|
150
762
|
},
|
|
151
|
-
children:
|
|
763
|
+
children: r
|
|
152
764
|
}
|
|
153
765
|
),
|
|
154
|
-
|
|
766
|
+
y && /* @__PURE__ */ s(
|
|
155
767
|
"div",
|
|
156
768
|
{
|
|
157
769
|
style: {
|
|
@@ -161,29 +773,29 @@ function B({
|
|
|
161
773
|
flexShrink: 0
|
|
162
774
|
},
|
|
163
775
|
children: [
|
|
164
|
-
/* @__PURE__ */
|
|
776
|
+
/* @__PURE__ */ e(
|
|
165
777
|
"button",
|
|
166
778
|
{
|
|
167
|
-
onClick: () =>
|
|
779
|
+
onClick: () => p == null ? void 0 : p(!c),
|
|
168
780
|
style: {
|
|
169
781
|
position: "relative",
|
|
170
782
|
width: "40px",
|
|
171
783
|
height: "22px",
|
|
172
784
|
borderRadius: "11px",
|
|
173
785
|
border: "none",
|
|
174
|
-
background:
|
|
786
|
+
background: c ? "var(--Base-Strong, #0B0B0B)" : "var(--Base-Faint, #D9D9D9)",
|
|
175
787
|
cursor: "pointer",
|
|
176
788
|
transition: "background 0.2s ease",
|
|
177
789
|
padding: 0,
|
|
178
790
|
flexShrink: 0
|
|
179
791
|
},
|
|
180
|
-
children: /* @__PURE__ */
|
|
792
|
+
children: /* @__PURE__ */ e(
|
|
181
793
|
"div",
|
|
182
794
|
{
|
|
183
795
|
style: {
|
|
184
796
|
position: "absolute",
|
|
185
797
|
top: "2px",
|
|
186
|
-
left:
|
|
798
|
+
left: c ? "20px" : "2px",
|
|
187
799
|
width: "18px",
|
|
188
800
|
height: "18px",
|
|
189
801
|
borderRadius: "50%",
|
|
@@ -195,7 +807,7 @@ function B({
|
|
|
195
807
|
)
|
|
196
808
|
}
|
|
197
809
|
),
|
|
198
|
-
/* @__PURE__ */
|
|
810
|
+
/* @__PURE__ */ e(
|
|
199
811
|
"span",
|
|
200
812
|
{
|
|
201
813
|
style: {
|
|
@@ -204,7 +816,7 @@ function B({
|
|
|
204
816
|
color: "var(--Base-Strong, #1E1E1E)",
|
|
205
817
|
lineHeight: 1.4
|
|
206
818
|
},
|
|
207
|
-
children:
|
|
819
|
+
children: y
|
|
208
820
|
}
|
|
209
821
|
)
|
|
210
822
|
]
|
|
@@ -213,7 +825,7 @@ function B({
|
|
|
213
825
|
]
|
|
214
826
|
}
|
|
215
827
|
),
|
|
216
|
-
/* @__PURE__ */
|
|
828
|
+
/* @__PURE__ */ e(
|
|
217
829
|
"div",
|
|
218
830
|
{
|
|
219
831
|
style: {
|
|
@@ -225,11 +837,11 @@ function B({
|
|
|
225
837
|
gap: "16px",
|
|
226
838
|
minHeight: 0
|
|
227
839
|
},
|
|
228
|
-
children:
|
|
840
|
+
children: l
|
|
229
841
|
}
|
|
230
842
|
),
|
|
231
|
-
a && /* @__PURE__ */
|
|
232
|
-
/* @__PURE__ */
|
|
843
|
+
a && /* @__PURE__ */ s(S, { children: [
|
|
844
|
+
/* @__PURE__ */ e(
|
|
233
845
|
"div",
|
|
234
846
|
{
|
|
235
847
|
style: {
|
|
@@ -240,7 +852,7 @@ function B({
|
|
|
240
852
|
}
|
|
241
853
|
}
|
|
242
854
|
),
|
|
243
|
-
/* @__PURE__ */
|
|
855
|
+
/* @__PURE__ */ e(
|
|
244
856
|
"div",
|
|
245
857
|
{
|
|
246
858
|
style: {
|
|
@@ -260,18 +872,18 @@ function B({
|
|
|
260
872
|
)
|
|
261
873
|
] }) : null;
|
|
262
874
|
}
|
|
263
|
-
function
|
|
264
|
-
label:
|
|
265
|
-
variant:
|
|
266
|
-
onClick:
|
|
267
|
-
disabled:
|
|
875
|
+
function P({
|
|
876
|
+
label: n,
|
|
877
|
+
variant: t = "secondary",
|
|
878
|
+
onClick: i,
|
|
879
|
+
disabled: r
|
|
268
880
|
}) {
|
|
269
|
-
const
|
|
270
|
-
return /* @__PURE__ */
|
|
881
|
+
const l = t === "primary";
|
|
882
|
+
return /* @__PURE__ */ e(
|
|
271
883
|
"button",
|
|
272
884
|
{
|
|
273
|
-
onClick:
|
|
274
|
-
disabled:
|
|
885
|
+
onClick: i,
|
|
886
|
+
disabled: r,
|
|
275
887
|
style: {
|
|
276
888
|
display: "flex",
|
|
277
889
|
height: "36px",
|
|
@@ -280,30 +892,30 @@ function D({
|
|
|
280
892
|
alignItems: "center",
|
|
281
893
|
gap: "8px",
|
|
282
894
|
borderRadius: "6px",
|
|
283
|
-
border:
|
|
284
|
-
background:
|
|
285
|
-
color:
|
|
895
|
+
border: l ? "none" : "1px solid #D9D9D9",
|
|
896
|
+
background: l ? "var(--Base-Strong, #0B0B0B)" : "var(--Base-White, #FFF)",
|
|
897
|
+
color: l ? "#FFF" : "var(--Base-Strong, #1E1E1E)",
|
|
286
898
|
fontSize: "16px",
|
|
287
899
|
fontWeight: 600,
|
|
288
|
-
cursor:
|
|
289
|
-
opacity:
|
|
900
|
+
cursor: r ? "default" : "pointer",
|
|
901
|
+
opacity: r ? 0.5 : 1,
|
|
290
902
|
transition: "all 0.15s ease"
|
|
291
903
|
},
|
|
292
904
|
onMouseEnter: (a) => {
|
|
293
|
-
!
|
|
905
|
+
!r && !l && (a.currentTarget.style.background = "#ECEEF2");
|
|
294
906
|
},
|
|
295
907
|
onMouseLeave: (a) => {
|
|
296
|
-
!
|
|
908
|
+
!r && !l && (a.currentTarget.style.background = "var(--Base-White, #FFF)");
|
|
297
909
|
},
|
|
298
|
-
children:
|
|
910
|
+
children: n
|
|
299
911
|
}
|
|
300
912
|
);
|
|
301
913
|
}
|
|
302
|
-
function
|
|
303
|
-
return /* @__PURE__ */
|
|
914
|
+
function U({ children: n, htmlFor: t }) {
|
|
915
|
+
return /* @__PURE__ */ e(
|
|
304
916
|
"label",
|
|
305
917
|
{
|
|
306
|
-
htmlFor:
|
|
918
|
+
htmlFor: t,
|
|
307
919
|
style: {
|
|
308
920
|
display: "block",
|
|
309
921
|
color: "var(--Base-Strong, #2E3236)",
|
|
@@ -313,15 +925,15 @@ function z({ children: e, htmlFor: n }) {
|
|
|
313
925
|
lineHeight: "normal",
|
|
314
926
|
marginBottom: "6px"
|
|
315
927
|
},
|
|
316
|
-
children:
|
|
928
|
+
children: n
|
|
317
929
|
}
|
|
318
930
|
);
|
|
319
931
|
}
|
|
320
|
-
function
|
|
321
|
-
return /* @__PURE__ */
|
|
932
|
+
function Y(n) {
|
|
933
|
+
return /* @__PURE__ */ e(
|
|
322
934
|
"input",
|
|
323
935
|
{
|
|
324
|
-
...
|
|
936
|
+
...n,
|
|
325
937
|
style: {
|
|
326
938
|
width: "100%",
|
|
327
939
|
padding: "10px 12px",
|
|
@@ -336,23 +948,24 @@ function I(e) {
|
|
|
336
948
|
boxSizing: "border-box",
|
|
337
949
|
background: "#FFF",
|
|
338
950
|
transition: "border-color 0.15s ease",
|
|
339
|
-
...
|
|
951
|
+
...n.style
|
|
340
952
|
},
|
|
341
|
-
onFocus: (
|
|
342
|
-
var
|
|
343
|
-
|
|
953
|
+
onFocus: (t) => {
|
|
954
|
+
var i;
|
|
955
|
+
t.currentTarget.style.borderColor = "#808183", (i = n.onFocus) == null || i.call(n, t);
|
|
344
956
|
},
|
|
345
|
-
onBlur: (
|
|
346
|
-
var
|
|
347
|
-
|
|
957
|
+
onBlur: (t) => {
|
|
958
|
+
var i;
|
|
959
|
+
t.currentTarget.style.borderColor = "#D9D9D9", (i = n.onBlur) == null || i.call(n, t);
|
|
348
960
|
}
|
|
349
961
|
}
|
|
350
962
|
);
|
|
351
963
|
}
|
|
352
964
|
export {
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
965
|
+
G as A,
|
|
966
|
+
P as D,
|
|
967
|
+
O as S,
|
|
968
|
+
U as a,
|
|
969
|
+
Y as b
|
|
357
970
|
};
|
|
358
971
|
//# sourceMappingURL=SideDrawer.es.js.map
|