@opencx/widget-react 4.0.58 → 4.0.60
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/index.cjs +15 -15
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +633 -621
- package/dist/index.js.map +1 -1
- package/dist/src/WidgetPopoverContent.d.ts.map +1 -1
- package/dist/src/hooks/useTheme.d.ts +1 -0
- package/dist/src/hooks/useTheme.d.ts.map +1 -1
- package/dist/src/screens/chat/ChatFooter.d.ts.map +1 -1
- package/dist/src/utils/__tests__/resolve-trigger-side.spec.d.ts +2 -0
- package/dist/src/utils/__tests__/resolve-trigger-side.spec.d.ts.map +1 -0
- package/dist/src/utils/attachment-kind.d.ts +1 -0
- package/dist/src/utils/attachment-kind.d.ts.map +1 -1
- package/dist/src/utils/resolve-trigger-side.d.ts +15 -0
- package/dist/src/utils/resolve-trigger-side.d.ts.map +1 -0
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { jsx as r, jsxs as d, Fragment as J } from "react/jsx-runtime";
|
|
2
2
|
import * as me from "@radix-ui/react-popover";
|
|
3
3
|
import * as ee from "react";
|
|
4
|
-
import L, { memo as
|
|
5
|
-
import { useWidget as
|
|
6
|
-
import { X as
|
|
7
|
-
import { clsx as
|
|
8
|
-
import { twMerge as
|
|
4
|
+
import L, { memo as sr, forwardRef as zt, useState as P, cloneElement as Nt, createContext as ar, useEffect as se, useContext as ir, useRef as B, useCallback as Z, useMemo as St, createElement as pt } from "react";
|
|
5
|
+
import { useWidget as A, useConfig as z, useSessions as U, useMessages as O, useWidgetRouter as H, useDocumentDir as ke, useWidgetTrigger as K, useModes as _t, useCsat as It, useUploadFiles as lr, useIsAwaitingBotReply as Tt, useContact as Mt, WidgetProvider as cr, WidgetTriggerProvider as dr } from "@opencx/widget-react-headless";
|
|
6
|
+
import { X as pr, ZoomOut as mr, ZoomIn as hr, RotateCcw as gr, FileText as Dt, FileSpreadsheet as Et, CircleDashedIcon as ur, XIcon as Ce, SquareXIcon as wr, SquareCheckBigIcon as fr, SquareCheckIcon as xr, ShrinkIcon as vr, Minimize2Icon as br, MinimizeIcon as yr, Maximize2Icon as kr, MaximizeIcon as Cr, ExpandIcon as zr, CircleXIcon as Nr, CircleCheckBigIcon as Sr, CircleCheckIcon as Rt, CheckCheckIcon as _r, CheckIcon as Ir, ChevronLeftIcon as Tr, LoaderIcon as Mr, ArrowUpIcon as Pt, PaperclipIcon as mt, CircleDashed as Dr, AlertCircle as Er, Loader2 as Rr, FileAudio2Icon as Pr, FileVideo2Icon as jr, FileIcon as Ar, UserRoundIcon as Or, ChevronRightIcon as Fr, SendHorizontal as Hr, ChevronDownIcon as Wr } from "lucide-react";
|
|
7
|
+
import { clsx as Lr } from "clsx";
|
|
8
|
+
import { twMerge as $r } from "tailwind-merge";
|
|
9
9
|
import { motion as re, AnimatePresence as D } from "framer-motion";
|
|
10
|
-
import { Slot as
|
|
11
|
-
import { cva as
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import { isExhaustive as F, isSupportedLanguage as
|
|
10
|
+
import { Slot as Br } from "@radix-ui/react-slot";
|
|
11
|
+
import { cva as Yr } from "class-variance-authority";
|
|
12
|
+
import jt from "remark-gfm";
|
|
13
|
+
import Ur from "react-markdown";
|
|
14
|
+
import At from "rehype-raw";
|
|
15
|
+
import { isExhaustive as F, isSupportedLanguage as Xr, getTranslation as qr } from "@opencx/widget-core";
|
|
16
16
|
import * as te from "@radix-ui/react-avatar";
|
|
17
|
-
import
|
|
17
|
+
import Ot from "@uiw/react-iframe";
|
|
18
18
|
import * as ae from "@radix-ui/react-tooltip";
|
|
19
|
-
import
|
|
20
|
-
import { useDropzone as
|
|
21
|
-
import
|
|
19
|
+
import ht from "tinycolor2";
|
|
20
|
+
import { useDropzone as Vr } from "react-dropzone";
|
|
21
|
+
import Gr from "react-use/lib/useAsyncFn";
|
|
22
22
|
import { z as ue } from "zod";
|
|
23
|
-
function
|
|
23
|
+
function x(e) {
|
|
24
24
|
return { "data-component": e };
|
|
25
25
|
}
|
|
26
26
|
const fe = [
|
|
@@ -39,12 +39,16 @@ const fe = [
|
|
|
39
39
|
],
|
|
40
40
|
extensions: ["xls", "xlsx"]
|
|
41
41
|
}
|
|
42
|
-
],
|
|
42
|
+
], gt = Object.fromEntries(
|
|
43
43
|
fe.flatMap(
|
|
44
44
|
(e) => e.mimes.map((o) => [o, e.extensions.map((t) => `.${t}`)])
|
|
45
45
|
)
|
|
46
|
-
)
|
|
47
|
-
|
|
46
|
+
), ut = {
|
|
47
|
+
"video/mp4": [".mp4"],
|
|
48
|
+
"video/webm": [".webm"],
|
|
49
|
+
"video/quicktime": [".mov"]
|
|
50
|
+
};
|
|
51
|
+
function Ft({
|
|
48
52
|
type: e,
|
|
49
53
|
name: o
|
|
50
54
|
}) {
|
|
@@ -52,50 +56,50 @@ function jt({
|
|
|
52
56
|
const t = ((s = o.split(".").pop()) == null ? void 0 : s.toLowerCase()) ?? "", n = ((i = e.toLowerCase().split(";")[0]) == null ? void 0 : i.trim()) ?? "";
|
|
53
57
|
return fe.find((a) => t && a.extensions.includes(t)) ?? fe.find((a) => n && a.mimes.includes(n)) ?? null;
|
|
54
58
|
}
|
|
55
|
-
function
|
|
56
|
-
return
|
|
59
|
+
function p(...e) {
|
|
60
|
+
return $r(Lr(e));
|
|
57
61
|
}
|
|
58
62
|
const Q = {
|
|
59
63
|
x: 2,
|
|
60
64
|
y: 2
|
|
61
|
-
}, Y =
|
|
62
|
-
|
|
65
|
+
}, Y = sr(
|
|
66
|
+
zt(
|
|
63
67
|
({ children: e, className: o, scale: t = 1.02, off: n = !1 }, s) => {
|
|
64
68
|
const [i, a] = P(!1), [l, c] = P({ x: 0, y: 0 });
|
|
65
69
|
if (n || /translate/.test(
|
|
66
70
|
e.props.className || ""
|
|
67
71
|
)) return e;
|
|
68
|
-
const
|
|
69
|
-
var R,
|
|
70
|
-
const { clientX: C, clientY: T } =
|
|
72
|
+
const h = (v) => {
|
|
73
|
+
var R, u;
|
|
74
|
+
const { clientX: C, clientY: T } = v, b = v.currentTarget.getBoundingClientRect(), N = C - (b.left + b.width / 2), _ = T - (b.top + b.height / 2), E = Math.max(
|
|
71
75
|
-1,
|
|
72
|
-
Math.min(1, N / (
|
|
73
|
-
),
|
|
76
|
+
Math.min(1, N / (b.width / 2))
|
|
77
|
+
), f = Math.max(
|
|
74
78
|
-1,
|
|
75
|
-
Math.min(1, _ / (
|
|
76
|
-
), M = E * Q.x, j =
|
|
77
|
-
c({ x: M, y: j }), (
|
|
78
|
-
},
|
|
79
|
-
var
|
|
80
|
-
a(!0), (C = (
|
|
81
|
-
},
|
|
82
|
-
var
|
|
83
|
-
a(!1), c({ x: 0, y: 0 }), (C = (
|
|
84
|
-
},
|
|
79
|
+
Math.min(1, _ / (b.height / 2))
|
|
80
|
+
), M = E * Q.x, j = f * Q.y;
|
|
81
|
+
c({ x: M, y: j }), (u = (R = e.props).onMouseMove) == null || u.call(R, v);
|
|
82
|
+
}, y = () => {
|
|
83
|
+
var v, C;
|
|
84
|
+
a(!0), (C = (v = e.props).onMouseEnter) == null || C.call(v);
|
|
85
|
+
}, w = () => {
|
|
86
|
+
var v, C;
|
|
87
|
+
a(!1), c({ x: 0, y: 0 }), (C = (v = e.props).onMouseLeave) == null || C.call(v);
|
|
88
|
+
}, g = {
|
|
85
89
|
"--wobble-x": i ? `${l.x}px` : "0px",
|
|
86
90
|
"--wobble-y": i ? `${l.y}px` : "0px",
|
|
87
91
|
"--scale": 1 - (t - 1)
|
|
88
92
|
};
|
|
89
|
-
return
|
|
93
|
+
return Nt(e, {
|
|
90
94
|
ref: s,
|
|
91
|
-
onMouseMove:
|
|
92
|
-
onMouseEnter:
|
|
93
|
-
onMouseLeave:
|
|
95
|
+
onMouseMove: h,
|
|
96
|
+
onMouseEnter: y,
|
|
97
|
+
onMouseLeave: w,
|
|
94
98
|
style: {
|
|
95
|
-
...
|
|
99
|
+
...g,
|
|
96
100
|
...e.props.style
|
|
97
101
|
},
|
|
98
|
-
className:
|
|
102
|
+
className: p(
|
|
99
103
|
"translate-x-[var(--wobble-x)]",
|
|
100
104
|
"translate-y-[var(--wobble-y)]",
|
|
101
105
|
"hover:scale-[var(--scale)] active:hover:scale-[calc(var(--scale)-0.02)]",
|
|
@@ -108,44 +112,44 @@ const Q = {
|
|
|
108
112
|
)
|
|
109
113
|
);
|
|
110
114
|
Y.displayName = "Wobble";
|
|
111
|
-
const
|
|
115
|
+
const Zr = 10, Kr = (e, o, t) => ({
|
|
112
116
|
initial: { opacity: 0, x: -e, ...o.initial },
|
|
113
117
|
animate: { opacity: 1, x: 0, ...o.animate, transition: { delay: t } },
|
|
114
118
|
exit: { opacity: 0, x: e, ...o.exit }
|
|
115
|
-
}),
|
|
119
|
+
}), Qr = (e, o, t) => ({
|
|
116
120
|
initial: { opacity: 0, x: e, ...o.initial },
|
|
117
121
|
animate: { opacity: 1, x: 0, ...o.animate, transition: { delay: t } },
|
|
118
122
|
exit: { opacity: 0, x: -e, ...o.exit }
|
|
119
|
-
}),
|
|
123
|
+
}), Jr = (e, o, t) => ({
|
|
120
124
|
initial: { opacity: 0, y: e, ...o.initial },
|
|
121
125
|
animate: { opacity: 1, y: 0, ...o.animate, transition: { delay: t } },
|
|
122
126
|
exit: { opacity: 0, y: -e, ...o.exit }
|
|
123
|
-
}),
|
|
127
|
+
}), eo = (e, o, t) => ({
|
|
124
128
|
initial: { opacity: 0, y: -e, ...o.initial },
|
|
125
129
|
animate: { opacity: 1, y: 0, ...o.animate, transition: { delay: t } },
|
|
126
130
|
exit: { opacity: 0, y: e, ...o.exit }
|
|
127
|
-
}),
|
|
128
|
-
right:
|
|
129
|
-
left:
|
|
130
|
-
up:
|
|
131
|
-
down:
|
|
132
|
-
}, k =
|
|
131
|
+
}), to = {
|
|
132
|
+
right: Kr,
|
|
133
|
+
left: Qr,
|
|
134
|
+
up: Jr,
|
|
135
|
+
down: eo
|
|
136
|
+
}, k = zt(
|
|
133
137
|
({
|
|
134
138
|
fadeIn: e = "down",
|
|
135
|
-
distance: o =
|
|
139
|
+
distance: o = Zr,
|
|
136
140
|
children: t,
|
|
137
141
|
snapExit: n = !1,
|
|
138
142
|
overrides: s = {},
|
|
139
143
|
delay: i = 0,
|
|
140
144
|
...a
|
|
141
145
|
}, l) => {
|
|
142
|
-
const c = e ?
|
|
146
|
+
const c = e ? to[e](o, s, i) : {};
|
|
143
147
|
return n && c.exit && typeof c.exit == "object" && !Array.isArray(c.exit) && (c.exit.transition = { duration: 0 }), /* @__PURE__ */ r(re.div, { ref: l, ...a, ...c, children: t });
|
|
144
148
|
}
|
|
145
149
|
);
|
|
146
150
|
k.displayName = "MotionDiv";
|
|
147
|
-
const
|
|
148
|
-
|
|
151
|
+
const ro = Yr(
|
|
152
|
+
p(
|
|
149
153
|
"inline-flex shrink-0 items-center justify-center gap-2",
|
|
150
154
|
"text-sm font-medium whitespace-nowrap",
|
|
151
155
|
"ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
@@ -185,18 +189,18 @@ const Jr = Lr(
|
|
|
185
189
|
}
|
|
186
190
|
), S = ee.forwardRef(
|
|
187
191
|
({ className: e, variant: o = "default", size: t, asChild: n = !1, ...s }, i) => /* @__PURE__ */ r(Y, { ref: i, children: /* @__PURE__ */ r(
|
|
188
|
-
n ?
|
|
192
|
+
n ? Br : "button",
|
|
189
193
|
{
|
|
190
|
-
...
|
|
194
|
+
...x("ui_lib/btn"),
|
|
191
195
|
"data-variant": o,
|
|
192
|
-
className:
|
|
196
|
+
className: p(ro({ variant: o, size: t, className: e })),
|
|
193
197
|
...s
|
|
194
198
|
}
|
|
195
199
|
) })
|
|
196
200
|
);
|
|
197
201
|
S.displayName = "Button";
|
|
198
|
-
const
|
|
199
|
-
function
|
|
202
|
+
const Ht = ar(null);
|
|
203
|
+
function oo({ children: e }) {
|
|
200
204
|
const [o, t] = P(!1), [n, s] = P(null), i = (l) => {
|
|
201
205
|
s(l), t(!0);
|
|
202
206
|
}, a = () => {
|
|
@@ -205,18 +209,18 @@ function eo({ children: e }) {
|
|
|
205
209
|
}, 200);
|
|
206
210
|
};
|
|
207
211
|
return /* @__PURE__ */ d(
|
|
208
|
-
|
|
212
|
+
Ht.Provider,
|
|
209
213
|
{
|
|
210
214
|
value: { open: i, close: a, isOpen: o, content: n },
|
|
211
215
|
children: [
|
|
212
|
-
/* @__PURE__ */ r(
|
|
216
|
+
/* @__PURE__ */ r(no, {}),
|
|
213
217
|
e
|
|
214
218
|
]
|
|
215
219
|
}
|
|
216
220
|
);
|
|
217
221
|
}
|
|
218
222
|
function he() {
|
|
219
|
-
const e =
|
|
223
|
+
const e = ir(Ht);
|
|
220
224
|
return e || (console.error("useDialoger must be used within a DialogerProvider"), {
|
|
221
225
|
open: () => {
|
|
222
226
|
},
|
|
@@ -226,8 +230,8 @@ function he() {
|
|
|
226
230
|
content: null
|
|
227
231
|
});
|
|
228
232
|
}
|
|
229
|
-
function
|
|
230
|
-
const { contentIframeRef: e } =
|
|
233
|
+
function no() {
|
|
234
|
+
const { contentIframeRef: e } = A(), { isOpen: o, content: t, close: n } = he();
|
|
231
235
|
return se(() => {
|
|
232
236
|
var i, a;
|
|
233
237
|
const s = (l) => {
|
|
@@ -267,7 +271,7 @@ function ze({
|
|
|
267
271
|
return /* @__PURE__ */ d(
|
|
268
272
|
"div",
|
|
269
273
|
{
|
|
270
|
-
className:
|
|
274
|
+
className: p(
|
|
271
275
|
"fixed left-[50%] top-[50%] z-50 flex flex-col gap-4 w-full max-w-[61.8%] translate-x-[-50%] translate-y-[-50%] border bg-background p-4 rounded-3xl",
|
|
272
276
|
o
|
|
273
277
|
),
|
|
@@ -281,7 +285,7 @@ function ze({
|
|
|
281
285
|
className: "rounded-full absolute top-4 right-4 opacity-50 hover:opacity-100",
|
|
282
286
|
onClick: n,
|
|
283
287
|
children: [
|
|
284
|
-
/* @__PURE__ */ r(
|
|
288
|
+
/* @__PURE__ */ r(pr, { className: "h-4 w-4" }),
|
|
285
289
|
/* @__PURE__ */ r("span", { className: "sr-only", children: "Close" })
|
|
286
290
|
]
|
|
287
291
|
}
|
|
@@ -290,68 +294,68 @@ function ze({
|
|
|
290
294
|
}
|
|
291
295
|
);
|
|
292
296
|
}
|
|
293
|
-
const
|
|
297
|
+
const Wt = ({
|
|
294
298
|
className: e,
|
|
295
299
|
...o
|
|
296
300
|
}) => /* @__PURE__ */ r(
|
|
297
301
|
"div",
|
|
298
302
|
{
|
|
299
|
-
className:
|
|
303
|
+
className: p("flex flex-col gap-2 text-center pt-2", e),
|
|
300
304
|
...o
|
|
301
305
|
}
|
|
302
306
|
);
|
|
303
|
-
|
|
304
|
-
const
|
|
307
|
+
Wt.displayName = "DialogerHeader";
|
|
308
|
+
const Lt = ({
|
|
305
309
|
className: e,
|
|
306
310
|
...o
|
|
307
311
|
}) => /* @__PURE__ */ r(
|
|
308
312
|
"div",
|
|
309
313
|
{
|
|
310
|
-
className:
|
|
314
|
+
className: p("flex flex-col gap-2 text-center", e),
|
|
311
315
|
...o
|
|
312
316
|
}
|
|
313
317
|
);
|
|
314
|
-
|
|
315
|
-
const
|
|
318
|
+
Lt.displayName = "DialogerBody";
|
|
319
|
+
const $t = ({
|
|
316
320
|
className: e,
|
|
317
321
|
...o
|
|
318
|
-
}) => /* @__PURE__ */ r("div", { className:
|
|
319
|
-
|
|
320
|
-
const
|
|
322
|
+
}) => /* @__PURE__ */ r("div", { className: p("flex flex-col gap-2", e), ...o });
|
|
323
|
+
$t.displayName = "DialogerFooter";
|
|
324
|
+
const Bt = L.forwardRef(({ className: e, ...o }, t) => /* @__PURE__ */ r(
|
|
321
325
|
"p",
|
|
322
326
|
{
|
|
323
327
|
ref: t,
|
|
324
|
-
className:
|
|
328
|
+
className: p(
|
|
325
329
|
"text-lg font-semibold leading-none tracking-tight",
|
|
326
330
|
e
|
|
327
331
|
),
|
|
328
332
|
...o
|
|
329
333
|
}
|
|
330
334
|
));
|
|
331
|
-
|
|
332
|
-
const
|
|
335
|
+
Bt.displayName = "DialogerTitle";
|
|
336
|
+
const Yt = L.forwardRef(({ className: e, ...o }, t) => /* @__PURE__ */ r(
|
|
333
337
|
"p",
|
|
334
338
|
{
|
|
335
339
|
ref: t,
|
|
336
|
-
className:
|
|
340
|
+
className: p("text-sm text-muted-foreground", e),
|
|
337
341
|
...o
|
|
338
342
|
}
|
|
339
343
|
));
|
|
340
|
-
|
|
344
|
+
Yt.displayName = "DialogerDescription";
|
|
341
345
|
function Ne({
|
|
342
346
|
children: e,
|
|
343
347
|
trigger: o
|
|
344
348
|
}) {
|
|
345
349
|
const { open: t } = he();
|
|
346
|
-
return
|
|
350
|
+
return Nt(o, {
|
|
347
351
|
onClick: () => {
|
|
348
352
|
var s, i;
|
|
349
353
|
t(e), (i = (s = o.props).onClick) == null || i.call(s);
|
|
350
354
|
}
|
|
351
355
|
});
|
|
352
356
|
}
|
|
353
|
-
const
|
|
354
|
-
function
|
|
357
|
+
const wt = 1, ft = 5, le = 0.5, so = 2.5;
|
|
358
|
+
function ao(e, o, t, n) {
|
|
355
359
|
if (!t || !n || o <= 1) return { x: 0, y: 0 };
|
|
356
360
|
const s = t.getBoundingClientRect(), i = n.offsetWidth, a = n.offsetHeight, l = Math.max(0, (i * o - s.width) / (2 * o)), c = Math.max(
|
|
357
361
|
0,
|
|
@@ -362,66 +366,66 @@ function oo(e, o, t, n) {
|
|
|
362
366
|
y: Math.min(c, Math.max(-c, e.y))
|
|
363
367
|
};
|
|
364
368
|
}
|
|
365
|
-
function
|
|
369
|
+
function Ut({
|
|
366
370
|
src: e,
|
|
367
371
|
alt: o
|
|
368
372
|
}) {
|
|
369
|
-
const [t, n] = P(1), [s, i] = P({ x: 0, y: 0 }), [a, l] = P(!1), c = B({ x: 0, y: 0 }),
|
|
373
|
+
const [t, n] = P(1), [s, i] = P({ x: 0, y: 0 }), [a, l] = P(!1), c = B({ x: 0, y: 0 }), m = B({ x: 0, y: 0 }), h = B(null), y = B(null), w = B(!1), g = (f) => Math.min(ft, Math.max(wt, f)), v = Z(() => {
|
|
370
374
|
n(1), i({ x: 0, y: 0 });
|
|
371
|
-
}, []), C =
|
|
372
|
-
n((
|
|
373
|
-
}, []), T =
|
|
374
|
-
n((
|
|
375
|
-
const M =
|
|
375
|
+
}, []), C = Z(() => {
|
|
376
|
+
n((f) => g(f + le));
|
|
377
|
+
}, []), T = Z(() => {
|
|
378
|
+
n((f) => {
|
|
379
|
+
const M = g(f - le);
|
|
376
380
|
return M <= 1 && i({ x: 0, y: 0 }), M;
|
|
377
381
|
});
|
|
378
382
|
}, []);
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
const M =
|
|
383
|
+
Z((f) => {
|
|
384
|
+
f.preventDefault(), f.stopPropagation();
|
|
385
|
+
const M = f.deltaY > 0 ? -le : le;
|
|
382
386
|
n((j) => {
|
|
383
|
-
const R =
|
|
387
|
+
const R = g(j + M);
|
|
384
388
|
return R <= 1 && i({ x: 0, y: 0 }), R;
|
|
385
389
|
});
|
|
386
390
|
}, []);
|
|
387
|
-
const
|
|
388
|
-
(
|
|
389
|
-
|
|
391
|
+
const b = Z(
|
|
392
|
+
(f) => {
|
|
393
|
+
f.preventDefault(), w.current = !1, l(!0), c.current = { x: f.clientX, y: f.clientY }, m.current = { ...s }, f.target.setPointerCapture(f.pointerId);
|
|
390
394
|
},
|
|
391
395
|
[s]
|
|
392
|
-
), N =
|
|
393
|
-
(
|
|
396
|
+
), N = Z(
|
|
397
|
+
(f) => {
|
|
394
398
|
if (!a) return;
|
|
395
|
-
const M =
|
|
396
|
-
if ((Math.abs(M) > 3 || Math.abs(j) > 3) && (
|
|
399
|
+
const M = f.clientX - c.current.x, j = f.clientY - c.current.y;
|
|
400
|
+
if ((Math.abs(M) > 3 || Math.abs(j) > 3) && (w.current = !0), t <= 1) return;
|
|
397
401
|
const R = {
|
|
398
|
-
x:
|
|
399
|
-
y:
|
|
402
|
+
x: m.current.x + M / t,
|
|
403
|
+
y: m.current.y + j / t
|
|
400
404
|
};
|
|
401
405
|
i(
|
|
402
|
-
|
|
406
|
+
ao(R, t, h.current, y.current)
|
|
403
407
|
);
|
|
404
408
|
},
|
|
405
409
|
[a, t]
|
|
406
|
-
), _ =
|
|
407
|
-
const
|
|
408
|
-
l(!1), !
|
|
410
|
+
), _ = Z(() => {
|
|
411
|
+
const f = w.current;
|
|
412
|
+
l(!1), !f && n((M) => M > 1 ? (i({ x: 0, y: 0 }), 1) : so);
|
|
409
413
|
}, []), E = t > 1;
|
|
410
414
|
return /* @__PURE__ */ d(
|
|
411
415
|
"div",
|
|
412
416
|
{
|
|
413
417
|
className: "relative size-full flex items-center justify-center select-none",
|
|
414
|
-
onClick: (
|
|
418
|
+
onClick: (f) => f.stopPropagation(),
|
|
415
419
|
children: [
|
|
416
420
|
/* @__PURE__ */ r(
|
|
417
421
|
"div",
|
|
418
422
|
{
|
|
419
|
-
ref:
|
|
420
|
-
className:
|
|
423
|
+
ref: h,
|
|
424
|
+
className: p(
|
|
421
425
|
"overflow-hidden max-h-full max-w-full rounded-2xl flex items-center justify-center",
|
|
422
426
|
E && "size-full"
|
|
423
427
|
),
|
|
424
|
-
onPointerDown:
|
|
428
|
+
onPointerDown: b,
|
|
425
429
|
onPointerMove: N,
|
|
426
430
|
onPointerUp: _,
|
|
427
431
|
onPointerCancel: _,
|
|
@@ -432,7 +436,7 @@ function $t({
|
|
|
432
436
|
children: /* @__PURE__ */ r(
|
|
433
437
|
"img",
|
|
434
438
|
{
|
|
435
|
-
ref:
|
|
439
|
+
ref: y,
|
|
436
440
|
src: e,
|
|
437
441
|
alt: o,
|
|
438
442
|
className: "block max-w-full object-contain pointer-events-none",
|
|
@@ -448,15 +452,15 @@ function $t({
|
|
|
448
452
|
}
|
|
449
453
|
),
|
|
450
454
|
/* @__PURE__ */ d("div", { className: "absolute bottom-3 left-1/2 -translate-x-1/2 flex items-center gap-1 bg-black/60 backdrop-blur-sm rounded-full px-1.5 py-1 transition opacity-50 hover:opacity-100", children: [
|
|
451
|
-
/* @__PURE__ */ r(we, { onClick: T, label: "Zoom out", disabled: t <=
|
|
455
|
+
/* @__PURE__ */ r(we, { onClick: T, label: "Zoom out", disabled: t <= wt, children: /* @__PURE__ */ r(mr, { className: "size-3.5" }) }),
|
|
452
456
|
/* @__PURE__ */ d("span", { className: "text-white text-xs font-medium min-w-[3ch] text-center tabular-nums", children: [
|
|
453
457
|
Math.round(t * 100),
|
|
454
458
|
"%"
|
|
455
459
|
] }),
|
|
456
|
-
/* @__PURE__ */ r(we, { onClick: C, label: "Zoom in", disabled: t >=
|
|
460
|
+
/* @__PURE__ */ r(we, { onClick: C, label: "Zoom in", disabled: t >= ft, children: /* @__PURE__ */ r(hr, { className: "size-3.5" }) }),
|
|
457
461
|
E && /* @__PURE__ */ d(J, { children: [
|
|
458
462
|
/* @__PURE__ */ r("div", { className: "w-px h-4 bg-white/30 mx-0.5" }),
|
|
459
|
-
/* @__PURE__ */ r(we, { onClick:
|
|
463
|
+
/* @__PURE__ */ r(we, { onClick: v, label: "Reset zoom", children: /* @__PURE__ */ r(gr, { className: "size-3.5" }) })
|
|
460
464
|
] })
|
|
461
465
|
] })
|
|
462
466
|
]
|
|
@@ -480,7 +484,7 @@ function we({
|
|
|
480
484
|
}
|
|
481
485
|
);
|
|
482
486
|
}
|
|
483
|
-
function
|
|
487
|
+
function xt({
|
|
484
488
|
url: e,
|
|
485
489
|
name: o,
|
|
486
490
|
size: t,
|
|
@@ -493,7 +497,7 @@ function ut({
|
|
|
493
497
|
href: e,
|
|
494
498
|
target: "_blank",
|
|
495
499
|
rel: "noopener noreferrer",
|
|
496
|
-
className:
|
|
500
|
+
className: p(
|
|
497
501
|
"block size-fit max-w-[min(100%,16rem)] shrink-0 rounded-2xl border",
|
|
498
502
|
"bg-background/80 transition-colors hover:bg-accent/60",
|
|
499
503
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2"
|
|
@@ -502,7 +506,7 @@ function ut({
|
|
|
502
506
|
/* @__PURE__ */ r(
|
|
503
507
|
"div",
|
|
504
508
|
{
|
|
505
|
-
className:
|
|
509
|
+
className: p(
|
|
506
510
|
"flex size-10 shrink-0 items-center justify-center rounded-xl",
|
|
507
511
|
"bg-secondary text-muted-foreground"
|
|
508
512
|
),
|
|
@@ -514,7 +518,7 @@ function ut({
|
|
|
514
518
|
/* @__PURE__ */ r(
|
|
515
519
|
"span",
|
|
516
520
|
{
|
|
517
|
-
className:
|
|
521
|
+
className: p(
|
|
518
522
|
"text-xs font-medium text-foreground line-clamp-1",
|
|
519
523
|
"break-words [word-break:break-word]"
|
|
520
524
|
// `[word-break:break-word]` is deprecated but works in the browser, while `break-words` which is `[overflow-wrap: break-word]` does not work
|
|
@@ -532,7 +536,7 @@ function ut({
|
|
|
532
536
|
}
|
|
533
537
|
) });
|
|
534
538
|
}
|
|
535
|
-
function
|
|
539
|
+
function Xt({ attachment: e }) {
|
|
536
540
|
const { name: o, size: t, type: n, url: s } = e, i = n.startsWith("image/"), a = n.startsWith("video/"), l = n.startsWith("audio/"), c = n === "application/pdf";
|
|
537
541
|
if (l)
|
|
538
542
|
return /* @__PURE__ */ r(Y, { children: /* @__PURE__ */ r("div", { className: "w-full shrink-0 overflow-hidden", children: /* @__PURE__ */ d("audio", { controls: !0, className: "w-full", children: [
|
|
@@ -554,31 +558,31 @@ function Bt({ attachment: e }) {
|
|
|
554
558
|
{
|
|
555
559
|
className: "size-full max-w-full rounded-3xl flex items-center justify-center bg-transparent border-none gap-0",
|
|
556
560
|
withClose: !0,
|
|
557
|
-
children: /* @__PURE__ */ r(
|
|
561
|
+
children: /* @__PURE__ */ r(Ut, { src: s, alt: o })
|
|
558
562
|
}
|
|
559
563
|
)
|
|
560
564
|
}
|
|
561
565
|
);
|
|
562
566
|
if (c)
|
|
563
567
|
return /* @__PURE__ */ r(
|
|
564
|
-
|
|
568
|
+
xt,
|
|
565
569
|
{
|
|
566
570
|
url: s,
|
|
567
571
|
name: o,
|
|
568
572
|
size: t,
|
|
569
|
-
icon: /* @__PURE__ */ r(
|
|
573
|
+
icon: /* @__PURE__ */ r(Dt, { className: "size-5", strokeWidth: 1.75 }),
|
|
570
574
|
label: "PDF"
|
|
571
575
|
}
|
|
572
576
|
);
|
|
573
|
-
const
|
|
574
|
-
return
|
|
575
|
-
|
|
577
|
+
const m = Ft({ type: n, name: o });
|
|
578
|
+
return m ? /* @__PURE__ */ r(
|
|
579
|
+
xt,
|
|
576
580
|
{
|
|
577
581
|
url: s,
|
|
578
582
|
name: o,
|
|
579
583
|
size: t,
|
|
580
|
-
icon: /* @__PURE__ */ r(
|
|
581
|
-
label:
|
|
584
|
+
icon: /* @__PURE__ */ r(Et, { className: "size-5", strokeWidth: 1.75 }),
|
|
585
|
+
label: m.label
|
|
582
586
|
}
|
|
583
587
|
) : /* @__PURE__ */ r(Y, { children: /* @__PURE__ */ r("div", { className: "size-fit border shrink-0 rounded-2xl overflow-hidden", children: /* @__PURE__ */ d("div", { className: "flex items-end gap-2 p-2", children: [
|
|
584
588
|
/* @__PURE__ */ r(
|
|
@@ -587,7 +591,7 @@ function Bt({ attachment: e }) {
|
|
|
587
591
|
href: s,
|
|
588
592
|
target: "_blank",
|
|
589
593
|
rel: "noopener noreferrer",
|
|
590
|
-
className:
|
|
594
|
+
className: p(
|
|
591
595
|
"text-xs text-blue-500 line-clamp-2 underline hover:text-blue-600",
|
|
592
596
|
"break-words [word-break:break-word]"
|
|
593
597
|
// `[word-break:break-word]` is deprecated but works in the browser, while `break-words` which is `[overflow-wrap: break-word]` does not work
|
|
@@ -601,8 +605,8 @@ function Bt({ attachment: e }) {
|
|
|
601
605
|
] })
|
|
602
606
|
] }) }) });
|
|
603
607
|
}
|
|
604
|
-
const
|
|
605
|
-
|
|
608
|
+
const qt = L.memo(
|
|
609
|
+
Ur,
|
|
606
610
|
(e, o) => e.children === o.children && e.className === o.className
|
|
607
611
|
);
|
|
608
612
|
function Se({
|
|
@@ -612,12 +616,12 @@ function Se({
|
|
|
612
616
|
}) {
|
|
613
617
|
const { anchorTarget: n } = z();
|
|
614
618
|
return /* @__PURE__ */ r(
|
|
615
|
-
|
|
619
|
+
qt,
|
|
616
620
|
{
|
|
617
621
|
"data-type": o,
|
|
618
622
|
"data-id": t,
|
|
619
|
-
remarkPlugins: [
|
|
620
|
-
rehypePlugins: [
|
|
623
|
+
remarkPlugins: [jt],
|
|
624
|
+
rehypePlugins: [At],
|
|
621
625
|
components: {
|
|
622
626
|
a: ({ children: s, ...i }) => /* @__PURE__ */ r("a", { target: i.target || n || "_top", ...i, children: s }),
|
|
623
627
|
img: ({ src: s, alt: i, ...a }) => s ? /* @__PURE__ */ r(
|
|
@@ -637,7 +641,7 @@ function Se({
|
|
|
637
641
|
{
|
|
638
642
|
className: "size-full max-w-full rounded-3xl flex items-center justify-center bg-transparent border-none gap-0",
|
|
639
643
|
withClose: !0,
|
|
640
|
-
children: /* @__PURE__ */ r(
|
|
644
|
+
children: /* @__PURE__ */ r(Ut, { src: s, alt: i })
|
|
641
645
|
}
|
|
642
646
|
)
|
|
643
647
|
}
|
|
@@ -650,11 +654,11 @@ function Se({
|
|
|
650
654
|
function X() {
|
|
651
655
|
const {
|
|
652
656
|
widgetCtx: { org: e }
|
|
653
|
-
} =
|
|
657
|
+
} = A(), {
|
|
654
658
|
sessionState: { session: o }
|
|
655
659
|
} = U(), t = z(), {
|
|
656
660
|
messagesState: { messages: n }
|
|
657
|
-
} =
|
|
661
|
+
} = O(), {
|
|
658
662
|
routerState: { screen: s }
|
|
659
663
|
} = H();
|
|
660
664
|
return {
|
|
@@ -666,7 +670,7 @@ function X() {
|
|
|
666
670
|
currentScreen: s
|
|
667
671
|
};
|
|
668
672
|
}
|
|
669
|
-
function
|
|
673
|
+
function io({
|
|
670
674
|
currentMessage: e
|
|
671
675
|
}) {
|
|
672
676
|
var n;
|
|
@@ -683,30 +687,30 @@ function xe(e) {
|
|
|
683
687
|
isLastInGroup: a,
|
|
684
688
|
isAloneInGroup: l,
|
|
685
689
|
dataComponentNames: c,
|
|
686
|
-
classNames:
|
|
690
|
+
classNames: m
|
|
687
691
|
} = e;
|
|
688
692
|
if (n !== "AI" && n !== "AGENT") return null;
|
|
689
|
-
const { message:
|
|
693
|
+
const { message: h, variant: y = "default" } = o;
|
|
690
694
|
return /* @__PURE__ */ d(
|
|
691
695
|
"div",
|
|
692
696
|
{
|
|
693
|
-
...
|
|
694
|
-
className:
|
|
697
|
+
...x((c == null ? void 0 : c.messageContainer) ?? "chat/agent_msg/root"),
|
|
698
|
+
className: p(
|
|
695
699
|
"w-5/6 flex flex-col items-start gap-1",
|
|
696
|
-
|
|
700
|
+
m == null ? void 0 : m.messageContainer
|
|
697
701
|
),
|
|
698
702
|
children: [
|
|
699
|
-
s && s.length > 0 && /* @__PURE__ */ r("div", { className: "w-full gap-1 flex flex-row flex-wrap items-center justify-start", children: s == null ? void 0 : s.map((
|
|
700
|
-
|
|
703
|
+
s && s.length > 0 && /* @__PURE__ */ r("div", { className: "w-full gap-1 flex flex-row flex-wrap items-center justify-start", children: s == null ? void 0 : s.map((w) => /* @__PURE__ */ r(Xt, { attachment: w }, w.id)) }),
|
|
704
|
+
h.length > 0 && /* @__PURE__ */ d("div", { className: "flex flex-row gap-2", children: [
|
|
701
705
|
/* @__PURE__ */ r(
|
|
702
706
|
"div",
|
|
703
707
|
{
|
|
704
|
-
...
|
|
708
|
+
...x((c == null ? void 0 : c.message) ?? "chat/agent_msg/msg"),
|
|
705
709
|
"data-first": i,
|
|
706
710
|
"data-last": a,
|
|
707
711
|
"data-alone": l,
|
|
708
|
-
"data-variant":
|
|
709
|
-
className:
|
|
712
|
+
"data-variant": y,
|
|
713
|
+
className: p(
|
|
710
714
|
"transition-all",
|
|
711
715
|
"w-fit py-3 px-4 rounded-3xl bg-secondary text-secondary-foreground",
|
|
712
716
|
"leading-snug text-sm prose prose-sm prose-a:decoration-primary prose-a:underline",
|
|
@@ -714,30 +718,30 @@ function xe(e) {
|
|
|
714
718
|
// `[word-break:break-word]` is deprecated but works in the browser, while `break-words` which is `[overflow-wrap: break-word]` does not work
|
|
715
719
|
// No need to add "whitespace-pre-wrap" in the agent or bot message because it is markup and content appear on separate lines as expected
|
|
716
720
|
// Adding "whitespace-pre-wrap" will result in unnecessarily huge line breaks
|
|
717
|
-
|
|
721
|
+
y === "error" && "bg-destructive/15 text-destructive",
|
|
718
722
|
// We're using the booleans directly here, not the data attributes, to make any external styling more specific than this
|
|
719
723
|
i && !l && "rounded-bl-md",
|
|
720
724
|
a && !l && "rounded-tl-md",
|
|
721
725
|
!i && !a && !l && "rounded-l-md",
|
|
722
|
-
|
|
726
|
+
m == null ? void 0 : m.message
|
|
723
727
|
),
|
|
724
|
-
children: /* @__PURE__ */ r(Se, { messageType: n, messageId: t, children:
|
|
728
|
+
children: /* @__PURE__ */ r(Se, { messageType: n, messageId: t, children: h })
|
|
725
729
|
}
|
|
726
730
|
),
|
|
727
|
-
/* @__PURE__ */ r(
|
|
731
|
+
/* @__PURE__ */ r(io, { currentMessage: e })
|
|
728
732
|
] })
|
|
729
733
|
]
|
|
730
734
|
}
|
|
731
735
|
);
|
|
732
736
|
}
|
|
733
|
-
function
|
|
737
|
+
function lo(e) {
|
|
734
738
|
return /* @__PURE__ */ r("div", { className: "w-full max-w-full overflow-auto shrink-0", children: /* @__PURE__ */ r("pre", { className: "text-xs leading-tight whitespace-pre-wrap break-word", children: JSON.stringify(e, null, 1) }) });
|
|
735
739
|
}
|
|
736
740
|
const _e = ee.forwardRef(({ className: e, ...o }, t) => /* @__PURE__ */ r(
|
|
737
741
|
te.Root,
|
|
738
742
|
{
|
|
739
743
|
ref: t,
|
|
740
|
-
className:
|
|
744
|
+
className: p(
|
|
741
745
|
"relative flex size-6 aspect-square shrink-0 overflow-hidden rounded-full bg-secondary",
|
|
742
746
|
// 'border',
|
|
743
747
|
e
|
|
@@ -750,7 +754,7 @@ const Ie = ee.forwardRef(({ className: e, ...o }, t) => /* @__PURE__ */ r(
|
|
|
750
754
|
te.Image,
|
|
751
755
|
{
|
|
752
756
|
ref: t,
|
|
753
|
-
className:
|
|
757
|
+
className: p("aspect-square h-full w-full", e),
|
|
754
758
|
...o
|
|
755
759
|
}
|
|
756
760
|
));
|
|
@@ -759,7 +763,7 @@ const Te = ee.forwardRef(({ className: e, ...o }, t) => /* @__PURE__ */ r(
|
|
|
759
763
|
te.Fallback,
|
|
760
764
|
{
|
|
761
765
|
ref: t,
|
|
762
|
-
className:
|
|
766
|
+
className: p(
|
|
763
767
|
"flex size-full text-xs items-center justify-center rounded-lg",
|
|
764
768
|
e
|
|
765
769
|
),
|
|
@@ -777,19 +781,19 @@ function ve({
|
|
|
777
781
|
(e == null ? void 0 : e.name) && /* @__PURE__ */ r(Te, { children: (n = (t = e == null ? void 0 : e.name) == null ? void 0 : t.slice(0, 1)) == null ? void 0 : n.toUpperCase() })
|
|
778
782
|
] });
|
|
779
783
|
}
|
|
780
|
-
function
|
|
784
|
+
function co({ agent: e }) {
|
|
781
785
|
return /* @__PURE__ */ r(D, { children: /* @__PURE__ */ d(
|
|
782
786
|
k,
|
|
783
787
|
{
|
|
784
|
-
...
|
|
788
|
+
...x("chat/bot_loading/root"),
|
|
785
789
|
className: "flex flex-row items-end w-full gap-2 animate-pulse",
|
|
786
790
|
children: [
|
|
787
791
|
/* @__PURE__ */ r(ve, { agent: e }),
|
|
788
792
|
/* @__PURE__ */ d(
|
|
789
793
|
"div",
|
|
790
794
|
{
|
|
791
|
-
...
|
|
792
|
-
className:
|
|
795
|
+
...x("chat/bot_loading/bouncing_dots_container"),
|
|
796
|
+
className: p(
|
|
793
797
|
"flex items-center [&_span]:bg-secondary-foreground [&_span]:size-1 gap-1 p-2 rounded-xl bg-secondary"
|
|
794
798
|
// 'border',
|
|
795
799
|
),
|
|
@@ -804,19 +808,19 @@ function ao({ agent: e }) {
|
|
|
804
808
|
}
|
|
805
809
|
) });
|
|
806
810
|
}
|
|
807
|
-
const Ut = '*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{-ms-overflow-style:none;scrollbar-width:none}*::-webkit-scrollbar{display:none}*{border-color:hsl(var(--opencx-border))}.\\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-3{bottom:.75rem}.end-6{inset-inline-end:1.5rem}.left-1\\/2{left:50%}.left-2{left:.5rem}.left-\\[50\\%\\]{left:50%}.right-4{right:1rem}.top-4{top:1rem}.top-6{top:1.5rem}.top-\\[50\\%\\]{top:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.m-2{margin:.5rem}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-0\\.5{margin-left:.125rem;margin-right:.125rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.ms-auto{margin-inline-start:auto}.mt-0\\.5{margin-top:.125rem}.mt-auto{margin-top:auto}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.size-0{width:0px;height:0px}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-3{width:.75rem;height:.75rem}.size-3\\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-fit{width:fit-content;height:fit-content}.size-full{width:100%;height:100%}.h-0{height:0px}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3\\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.max-h-16{max-height:4rem}.max-h-40{max-height:10rem}.max-h-full{max-height:100%}.min-h-12{min-height:3rem}.w-0{width:0px}.w-1\\/2{width:50%}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\\/5{width:40%}.w-3\\.5{width:.875rem}.w-3\\/5{width:60%}.w-4{width:1rem}.w-5\\/6{width:83.333333%}.w-60{width:15rem}.w-9{width:2.25rem}.w-auto{width:auto}.w-dvw{width:100dvw}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-80{min-width:20rem}.min-w-\\[3ch\\]{min-width:3ch}.min-w-\\[8rem\\]{min-width:8rem}.max-w-96{max-width:24rem}.max-w-\\[61\\.8\\%\\]{max-width:61.8%}.max-w-\\[min\\(100\\%\\,16rem\\)\\]{max-width:min(100%,16rem)}.max-w-full{max-width:100%}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\\[2\\]{flex:2}.shrink-0{flex-shrink:0}.-translate-x-1\\/2,.translate-x-\\[-50\\%\\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\\[var\\(--wobble-x\\)\\]{--tw-translate-x: var(--wobble-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[-50\\%\\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[var\\(--wobble-y\\)\\]{--tw-translate-y: var(--wobble-y);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\\[1px\\]{gap:1px}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.scroll-smooth{scroll-behavior:smooth}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\\[20px\\]{border-radius:20px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-l-md{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-bl-md{border-bottom-left-radius:.375rem}.rounded-br-md{border-bottom-right-radius:.375rem}.rounded-tl-md{border-top-left-radius:.375rem}.rounded-tr-md{border-top-right-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-none{border-style:none}.border-transparent{border-color:transparent}.bg-\\[white\\]{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--opencx-background))}.bg-background\\/80{background-color:hsl(var(--opencx-background) / .8)}.bg-black\\/50{background-color:#00000080}.bg-black\\/60{background-color:#0009}.bg-destructive{background-color:hsl(var(--opencx-destructive))}.bg-destructive\\/15{background-color:hsl(var(--opencx-destructive) / .15)}.bg-muted{background-color:hsl(var(--opencx-muted))}.bg-primary{background-color:hsl(var(--opencx-primary))}.bg-secondary{background-color:hsl(var(--opencx-secondary))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\\/30{background-color:#ffffff4d}.bg-\\[radial-gradient\\(ellipse_at_top_left\\,hsl\\(var\\(--opencx-primary\\)\\)\\,transparent\\)\\,radial-gradient\\(ellipse_at_top_right\\,hsl\\(var\\(--opencx-primary\\)\\)\\,transparent\\)\\]{background-image:radial-gradient(ellipse at top left,hsl(var(--opencx-primary)),transparent),radial-gradient(ellipse at top right,hsl(var(--opencx-primary)),transparent)}.fill-current{fill:currentColor}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-8{padding:2rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3\\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-0{padding-bottom:0}.pb-2{padding-bottom:.5rem}.pe-2{padding-inline-end:.5rem}.pe-4{padding-inline-end:1rem}.ps-2{padding-inline-start:.5rem}.ps-4{padding-inline-start:1rem}.ps-8{padding-inline-start:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\\[1\\.75rem\\]{font-size:1.75rem}.text-\\[10px\\]{font-size:10px}.text-\\[16px\\]{font-size:16px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-destructive{color:hsl(var(--opencx-destructive))}.text-destructive-foreground{color:hsl(var(--opencx-destructive-foreground))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--opencx-foreground))}.text-muted-foreground{color:hsl(var(--opencx-muted-foreground))}.text-muted-foreground\\/70{color:hsl(var(--opencx-muted-foreground) / .7)}.text-muted-foreground\\/75{color:hsl(var(--opencx-muted-foreground) / .75)}.text-primary{color:hsl(var(--opencx-primary))}.text-primary-foreground{color:hsl(var(--opencx-primary-foreground))}.text-secondary-foreground{color:hsl(var(--opencx-secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\\/80{color:#fffc}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-35{opacity:.35}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-95{opacity:.95}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-8{outline-width:8px}.outline-background{outline-color:hsl(var(--opencx-background))}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--opencx-background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[height\\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in{--tw-enter-scale: 0}.zoom-in-95{--tw-enter-scale: .95}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\\[animation-delay\\:-0\\.15s\\]{animation-delay:-.15s}.\\[animation-delay\\:-0\\.3s\\]{animation-delay:-.3s}.\\[field-sizing\\:content\\;\\],.\\[field-sizing\\:content\\]{field-sizing:content}.\\[word-break\\:break-word\\]{word-break:break-word}.file\\:border-0::file-selector-button{border-width:0px}.file\\:bg-transparent::file-selector-button{background-color:transparent}.file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\\:font-medium::file-selector-button{font-weight:500}.file\\:text-primary-foreground::file-selector-button{color:hsl(var(--opencx-primary-foreground))}.placeholder\\:text-muted-foreground::placeholder{color:hsl(var(--opencx-muted-foreground))}.placeholder\\:text-muted-foreground\\/75::placeholder{color:hsl(var(--opencx-muted-foreground) / .75)}.focus-within\\:border-primary:focus-within{border-color:hsl(var(--opencx-primary))}.hover\\:scale-\\[var\\(--scale\\)\\]:hover{--tw-scale-x: var(--scale);--tw-scale-y: var(--scale);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\\:border-primary:hover{border-color:hsl(var(--opencx-primary))}.hover\\:bg-accent\\/60:hover{background-color:hsl(var(--opencx-accent) / .6)}.hover\\:bg-secondary:hover{background-color:hsl(var(--opencx-secondary))}.hover\\:bg-white\\/15:hover{background-color:#ffffff26}.hover\\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\\:text-primary:hover{color:hsl(var(--opencx-primary))}.hover\\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.focus\\:bg-accent:focus{background-color:hsl(var(--opencx-accent))}.focus\\:text-accent-foreground:focus{color:hsl(var(--opencx-accent-foreground))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--opencx-ring))}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--opencx-background))}.active\\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\\:hover\\:scale-\\[calc\\(var\\(--scale\\)-0\\.02\\)\\]:hover:active{--tw-scale-x: calc(var(--scale) - .02);--tw-scale-y: calc(var(--scale) - .02);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\\:active\\:scale-95:active:hover{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:text-white\\/30:disabled{color:#ffffff4d}.disabled\\:opacity-50:disabled{opacity:.5}.disabled\\:hover\\:bg-transparent:hover:disabled{background-color:transparent}.group:hover .group-hover\\:opacity-100{opacity:1}.group:hover .group-hover\\:active\\:scale-90:active,.group:active .group-active\\:scale-90{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[state\\=checked\\]\\:translate-x-4[data-state=checked]{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]{background-color:hsl(var(--opencx-primary))}.data-\\[state\\=open\\]\\:bg-accent[data-state=open]{background-color:hsl(var(--opencx-accent))}.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked]{background-color:hsl(var(--opencx-input))}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.prose-a\\:underline :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){text-decoration-line:underline}.prose-a\\:decoration-primary :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){text-decoration-color:hsl(var(--opencx-primary))}.rtl\\:-scale-100:where([dir=rtl],[dir=rtl] *){--tw-scale-x: -1;--tw-scale-y: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&_span\\]\\:size-1 span{width:.25rem;height:.25rem}.\\[\\&_span\\]\\:bg-secondary-foreground span{background-color:hsl(var(--opencx-secondary-foreground))}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:size-4 svg{width:1rem;height:1rem}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\]\\:text-muted-foreground\\/70 svg{color:hsl(var(--opencx-muted-foreground) / .7)}.\\[\\&_svg\\]\\:hover\\:text-primary:hover svg{color:hsl(var(--opencx-primary))}', io = ae.Provider, lo = ae.Root, co = ae.Trigger, Xt = ee.forwardRef(({ className: e, sideOffset: o = 4, ...t }, n) => /* @__PURE__ */ r(
|
|
811
|
+
const Vt = '*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{-ms-overflow-style:none;scrollbar-width:none}*::-webkit-scrollbar{display:none}*{border-color:hsl(var(--opencx-border))}.\\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-3{bottom:.75rem}.end-6{inset-inline-end:1.5rem}.left-1\\/2{left:50%}.left-2{left:.5rem}.left-\\[50\\%\\]{left:50%}.right-4{right:1rem}.top-4{top:1rem}.top-6{top:1.5rem}.top-\\[50\\%\\]{top:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.m-2{margin:.5rem}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-0\\.5{margin-left:.125rem;margin-right:.125rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.ms-auto{margin-inline-start:auto}.mt-0\\.5{margin-top:.125rem}.mt-auto{margin-top:auto}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.size-0{width:0px;height:0px}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-3{width:.75rem;height:.75rem}.size-3\\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-fit{width:fit-content;height:fit-content}.size-full{width:100%;height:100%}.h-0{height:0px}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3\\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.max-h-16{max-height:4rem}.max-h-40{max-height:10rem}.max-h-full{max-height:100%}.min-h-12{min-height:3rem}.w-0{width:0px}.w-1\\/2{width:50%}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\\/5{width:40%}.w-3\\.5{width:.875rem}.w-3\\/5{width:60%}.w-4{width:1rem}.w-5\\/6{width:83.333333%}.w-60{width:15rem}.w-9{width:2.25rem}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-80{min-width:20rem}.min-w-\\[3ch\\]{min-width:3ch}.min-w-\\[8rem\\]{min-width:8rem}.max-w-96{max-width:24rem}.max-w-\\[61\\.8\\%\\]{max-width:61.8%}.max-w-\\[min\\(100\\%\\,16rem\\)\\]{max-width:min(100%,16rem)}.max-w-full{max-width:100%}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.-translate-x-1\\/2,.translate-x-\\[-50\\%\\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\\[var\\(--wobble-x\\)\\]{--tw-translate-x: var(--wobble-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[-50\\%\\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[var\\(--wobble-y\\)\\]{--tw-translate-y: var(--wobble-y);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\\[1px\\]{gap:1px}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.scroll-smooth{scroll-behavior:smooth}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\\[20px\\]{border-radius:20px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-l-md{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-bl-md{border-bottom-left-radius:.375rem}.rounded-br-md{border-bottom-right-radius:.375rem}.rounded-tl-md{border-top-left-radius:.375rem}.rounded-tr-md{border-top-right-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-none{border-style:none}.border-transparent{border-color:transparent}.bg-\\[white\\]{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--opencx-background))}.bg-background\\/80{background-color:hsl(var(--opencx-background) / .8)}.bg-black\\/50{background-color:#00000080}.bg-black\\/60{background-color:#0009}.bg-destructive{background-color:hsl(var(--opencx-destructive))}.bg-destructive\\/15{background-color:hsl(var(--opencx-destructive) / .15)}.bg-muted{background-color:hsl(var(--opencx-muted))}.bg-primary{background-color:hsl(var(--opencx-primary))}.bg-secondary{background-color:hsl(var(--opencx-secondary))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\\/30{background-color:#ffffff4d}.bg-\\[radial-gradient\\(ellipse_at_top_left\\,hsl\\(var\\(--opencx-primary\\)\\)\\,transparent\\)\\,radial-gradient\\(ellipse_at_top_right\\,hsl\\(var\\(--opencx-primary\\)\\)\\,transparent\\)\\]{background-image:radial-gradient(ellipse at top left,hsl(var(--opencx-primary)),transparent),radial-gradient(ellipse at top right,hsl(var(--opencx-primary)),transparent)}.fill-current{fill:currentColor}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3\\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pb-0{padding-bottom:0}.pb-2{padding-bottom:.5rem}.pe-2{padding-inline-end:.5rem}.pe-4{padding-inline-end:1rem}.ps-2{padding-inline-start:.5rem}.ps-4{padding-inline-start:1rem}.ps-8{padding-inline-start:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\\[1\\.75rem\\]{font-size:1.75rem}.text-\\[10px\\]{font-size:10px}.text-\\[16px\\]{font-size:16px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-destructive{color:hsl(var(--opencx-destructive))}.text-destructive-foreground{color:hsl(var(--opencx-destructive-foreground))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--opencx-foreground))}.text-muted-foreground{color:hsl(var(--opencx-muted-foreground))}.text-muted-foreground\\/70{color:hsl(var(--opencx-muted-foreground) / .7)}.text-muted-foreground\\/75{color:hsl(var(--opencx-muted-foreground) / .75)}.text-primary{color:hsl(var(--opencx-primary))}.text-primary-foreground{color:hsl(var(--opencx-primary-foreground))}.text-secondary-foreground{color:hsl(var(--opencx-secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\\/80{color:#fffc}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-35{opacity:.35}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-95{opacity:.95}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-8{outline-width:8px}.outline-background{outline-color:hsl(var(--opencx-background))}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--opencx-background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[height\\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in{--tw-enter-scale: 0}.zoom-in-95{--tw-enter-scale: .95}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\\[animation-delay\\:-0\\.15s\\]{animation-delay:-.15s}.\\[animation-delay\\:-0\\.3s\\]{animation-delay:-.3s}.\\[field-sizing\\:content\\;\\],.\\[field-sizing\\:content\\]{field-sizing:content}.\\[word-break\\:break-word\\]{word-break:break-word}.file\\:border-0::file-selector-button{border-width:0px}.file\\:bg-transparent::file-selector-button{background-color:transparent}.file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\\:font-medium::file-selector-button{font-weight:500}.file\\:text-primary-foreground::file-selector-button{color:hsl(var(--opencx-primary-foreground))}.placeholder\\:text-muted-foreground::placeholder{color:hsl(var(--opencx-muted-foreground))}.placeholder\\:text-muted-foreground\\/75::placeholder{color:hsl(var(--opencx-muted-foreground) / .75)}.focus-within\\:border-primary:focus-within{border-color:hsl(var(--opencx-primary))}.hover\\:scale-\\[var\\(--scale\\)\\]:hover{--tw-scale-x: var(--scale);--tw-scale-y: var(--scale);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\\:border-primary:hover{border-color:hsl(var(--opencx-primary))}.hover\\:bg-accent\\/60:hover{background-color:hsl(var(--opencx-accent) / .6)}.hover\\:bg-secondary:hover{background-color:hsl(var(--opencx-secondary))}.hover\\:bg-white\\/15:hover{background-color:#ffffff26}.hover\\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\\:text-primary:hover{color:hsl(var(--opencx-primary))}.hover\\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.focus\\:bg-accent:focus{background-color:hsl(var(--opencx-accent))}.focus\\:text-accent-foreground:focus{color:hsl(var(--opencx-accent-foreground))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--opencx-ring))}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--opencx-background))}.active\\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\\:hover\\:scale-\\[calc\\(var\\(--scale\\)-0\\.02\\)\\]:hover:active{--tw-scale-x: calc(var(--scale) - .02);--tw-scale-y: calc(var(--scale) - .02);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\\:active\\:scale-95:active:hover{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:text-white\\/30:disabled{color:#ffffff4d}.disabled\\:opacity-50:disabled{opacity:.5}.disabled\\:hover\\:bg-transparent:hover:disabled{background-color:transparent}.group:hover .group-hover\\:opacity-100{opacity:1}.group:hover .group-hover\\:active\\:scale-90:active,.group:active .group-active\\:scale-90{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[state\\=checked\\]\\:translate-x-4[data-state=checked]{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]{background-color:hsl(var(--opencx-primary))}.data-\\[state\\=open\\]\\:bg-accent[data-state=open]{background-color:hsl(var(--opencx-accent))}.data-\\[state\\=unchecked\\]\\:bg-input[data-state=unchecked]{background-color:hsl(var(--opencx-input))}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.prose-a\\:underline :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){text-decoration-line:underline}.prose-a\\:decoration-primary :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){text-decoration-color:hsl(var(--opencx-primary))}.rtl\\:-scale-100:where([dir=rtl],[dir=rtl] *){--tw-scale-x: -1;--tw-scale-y: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&_span\\]\\:size-1 span{width:.25rem;height:.25rem}.\\[\\&_span\\]\\:bg-secondary-foreground span{background-color:hsl(var(--opencx-secondary-foreground))}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:size-4 svg{width:1rem;height:1rem}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\]\\:text-muted-foreground\\/70 svg{color:hsl(var(--opencx-muted-foreground) / .7)}.\\[\\&_svg\\]\\:hover\\:text-primary:hover svg{color:hsl(var(--opencx-primary))}', po = ae.Provider, mo = ae.Root, ho = ae.Trigger, Gt = ee.forwardRef(({ className: e, sideOffset: o = 4, ...t }, n) => /* @__PURE__ */ r(
|
|
808
812
|
ae.Content,
|
|
809
813
|
{
|
|
810
814
|
ref: n,
|
|
811
815
|
sideOffset: o,
|
|
812
|
-
className:
|
|
816
|
+
className: p(
|
|
813
817
|
"z-50 overflow-hidden max-w-xs rounded-xl bg-primary border text-primary-foreground p-2 text-center align-middle text-xs animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
814
818
|
e
|
|
815
819
|
),
|
|
816
820
|
...t
|
|
817
821
|
}
|
|
818
822
|
));
|
|
819
|
-
|
|
823
|
+
Gt.displayName = ae.Content.displayName;
|
|
820
824
|
function oe({
|
|
821
825
|
children: e,
|
|
822
826
|
content: o,
|
|
@@ -824,10 +828,10 @@ function oe({
|
|
|
824
828
|
align: n
|
|
825
829
|
}) {
|
|
826
830
|
const { disableTooltips: s } = z();
|
|
827
|
-
return !o || s ? e : /* @__PURE__ */ d(
|
|
828
|
-
/* @__PURE__ */ r(
|
|
831
|
+
return !o || s ? e : /* @__PURE__ */ d(mo, { children: [
|
|
832
|
+
/* @__PURE__ */ r(ho, { asChild: !0, children: e }),
|
|
829
833
|
/* @__PURE__ */ r(
|
|
830
|
-
|
|
834
|
+
Gt,
|
|
831
835
|
{
|
|
832
836
|
side: t,
|
|
833
837
|
align: n,
|
|
@@ -838,12 +842,16 @@ function oe({
|
|
|
838
842
|
)
|
|
839
843
|
] });
|
|
840
844
|
}
|
|
841
|
-
|
|
845
|
+
function go(e, o) {
|
|
846
|
+
const t = typeof (e == null ? void 0 : e.right) == "number", n = typeof (e == null ? void 0 : e.left) == "number";
|
|
847
|
+
return t && !n ? "right" : n && !t || o === "rtl" ? "left" : "right";
|
|
848
|
+
}
|
|
849
|
+
const vt = 450;
|
|
842
850
|
function $() {
|
|
843
|
-
const [e, o] = L.useState(() => (window.top || window).innerWidth <
|
|
851
|
+
const [e, o] = L.useState(() => (window.top || window).innerWidth < vt);
|
|
844
852
|
return L.useEffect(() => {
|
|
845
853
|
const t = window.top || window, n = () => {
|
|
846
|
-
o(t.innerWidth <
|
|
854
|
+
o(t.innerWidth < vt);
|
|
847
855
|
};
|
|
848
856
|
return n(), t.addEventListener("resize", n), () => {
|
|
849
857
|
t.removeEventListener("resize", n);
|
|
@@ -854,72 +862,72 @@ const ce = {
|
|
|
854
862
|
transitionTimingFunction: "cubic-bezier(0.16, 1, 0.3, 1)",
|
|
855
863
|
transitionDuration: "1000ms"
|
|
856
864
|
};
|
|
857
|
-
function
|
|
858
|
-
var
|
|
859
|
-
const { dir: e } = ke(), { isSmallScreen: o } = $(), { theme: t, inline: n } = z(), s = (q) => n ? "100%" : q, i = (q, ge) => o ? `100dv${q}` : ge, a = (q, ge) => s(i(q, ge)), l = {
|
|
860
|
-
zIndex: ((
|
|
865
|
+
function V() {
|
|
866
|
+
var w, g, v, C, T, b, N, _, E, f, M, j, R, u, I, ie, Re, Pe, je, Ae, Oe, Fe, He, We, Le, $e, Be, Ye, Ue, Xe, qe, Ve, Ge, Ze, Ke, Qe, Je, et, tt, rt, ot, nt, st, at, it, lt, ct, dt;
|
|
867
|
+
const { dir: e } = ke(), { isSmallScreen: o } = $(), { theme: t, inline: n } = z(), s = (q) => n ? "100%" : q, i = (q, ge) => o ? `100dv${q}` : ge, a = (q, ge) => s(i(q, ge)), l = go((w = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : w.offset, e), c = {
|
|
868
|
+
zIndex: ((g = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : g.zIndex) ?? 1e7,
|
|
861
869
|
offset: {
|
|
862
|
-
bottom: ((
|
|
863
|
-
right: ((
|
|
864
|
-
left: ((
|
|
870
|
+
bottom: ((C = (v = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : v.offset) == null ? void 0 : C.bottom) ?? 20,
|
|
871
|
+
right: ((b = (T = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : T.offset) == null ? void 0 : b.right) ?? (l === "right" ? 20 : "initial"),
|
|
872
|
+
left: ((_ = (N = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : N.offset) == null ? void 0 : _.left) ?? (l === "left" ? 20 : "initial")
|
|
865
873
|
},
|
|
866
874
|
size: {
|
|
867
|
-
button: ((
|
|
868
|
-
icon: ((
|
|
875
|
+
button: ((f = (E = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : E.size) == null ? void 0 : f.button) ?? 48,
|
|
876
|
+
icon: ((j = (M = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : M.size) == null ? void 0 : j.icon) ?? 24
|
|
869
877
|
}
|
|
870
|
-
},
|
|
871
|
-
const q =
|
|
878
|
+
}, m = (() => {
|
|
879
|
+
const q = l === "right" ? c.offset.right : c.offset.left;
|
|
872
880
|
return typeof q != "number" ? 0 : q;
|
|
873
|
-
})(),
|
|
881
|
+
})(), h = {
|
|
874
882
|
palette: (t == null ? void 0 : t.palette) ?? "neutral",
|
|
875
883
|
primaryColor: (t == null ? void 0 : t.primaryColor) ?? "hsl(0 0% 9%)",
|
|
876
|
-
widgetTrigger:
|
|
884
|
+
widgetTrigger: c,
|
|
877
885
|
widgetContentContainer: {
|
|
878
|
-
borderRadius: o ? "0px" : ((
|
|
879
|
-
zIndex: ((
|
|
880
|
-
outline: ((
|
|
886
|
+
borderRadius: o ? "0px" : ((R = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : R.borderRadius) ?? "32px",
|
|
887
|
+
zIndex: ((u = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : u.zIndex) ?? c.zIndex + 1,
|
|
888
|
+
outline: ((I = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : I.outline) ?? "none",
|
|
881
889
|
// was: '1px solid'
|
|
882
|
-
outlineColor: ((
|
|
883
|
-
boxShadow: ((
|
|
884
|
-
transitionProperty: ((
|
|
885
|
-
transitionTimingFunction: ((
|
|
886
|
-
transitionDuration: ((
|
|
890
|
+
outlineColor: ((ie = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : ie.outlineColor) ?? "hsl(0 0% 50% / .5)",
|
|
891
|
+
boxShadow: ((Re = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Re.boxShadow) ?? "0 0px 100px 0px rgb(0 0 0 / 0.25)",
|
|
892
|
+
transitionProperty: ((Pe = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Pe.transitionProperty) ?? "all",
|
|
893
|
+
transitionTimingFunction: ((je = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : je.transitionTimingFunction) ?? ce.transitionTimingFunction,
|
|
894
|
+
transitionDuration: ((Ae = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Ae.transitionDuration) ?? ce.transitionDuration,
|
|
887
895
|
offset: {
|
|
888
|
-
side: o ? 0 :
|
|
889
|
-
align: o ? 0 :
|
|
896
|
+
side: o ? 0 : c.offset.bottom + c.size.button + Q.y * 2 + (((Fe = (Oe = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Oe.offset) == null ? void 0 : Fe.side) ?? 10),
|
|
897
|
+
align: o ? 0 : m + (((We = (He = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : He.offset) == null ? void 0 : We.align) ?? 0)
|
|
890
898
|
}
|
|
891
899
|
},
|
|
892
900
|
screens: {
|
|
893
901
|
welcome: {
|
|
894
|
-
width: a("w", ((
|
|
902
|
+
width: a("w", (($e = (Le = t == null ? void 0 : t.screens) == null ? void 0 : Le.welcome) == null ? void 0 : $e.width) ?? "400px"),
|
|
895
903
|
// By setting minHeight to 1px, a nice animation will play from 1px to the dynamic height of the content of the screen
|
|
896
904
|
minHeight: a(
|
|
897
905
|
"h",
|
|
898
|
-
((
|
|
906
|
+
((Ye = (Be = t == null ? void 0 : t.screens) == null ? void 0 : Be.welcome) == null ? void 0 : Ye.minHeight) ?? "1px"
|
|
899
907
|
)
|
|
900
908
|
},
|
|
901
909
|
sessions: {
|
|
902
|
-
width: a("w", ((
|
|
903
|
-
height: a("h", ((
|
|
910
|
+
width: a("w", ((Xe = (Ue = t == null ? void 0 : t.screens) == null ? void 0 : Ue.sessions) == null ? void 0 : Xe.width) ?? "450px"),
|
|
911
|
+
height: a("h", ((Ve = (qe = t == null ? void 0 : t.screens) == null ? void 0 : qe.sessions) == null ? void 0 : Ve.height) ?? "600px")
|
|
904
912
|
},
|
|
905
913
|
chat: {
|
|
906
|
-
width: a("w", ((
|
|
907
|
-
height: a("h", ((
|
|
914
|
+
width: a("w", ((Ze = (Ge = t == null ? void 0 : t.screens) == null ? void 0 : Ge.chat) == null ? void 0 : Ze.width) ?? "525px"),
|
|
915
|
+
height: a("h", ((Qe = (Ke = t == null ? void 0 : t.screens) == null ? void 0 : Ke.chat) == null ? void 0 : Qe.height) ?? "700px"),
|
|
908
916
|
withCanvas: {
|
|
909
917
|
width: a(
|
|
910
918
|
"w",
|
|
911
|
-
((
|
|
919
|
+
((tt = (et = (Je = t == null ? void 0 : t.screens) == null ? void 0 : Je.chat) == null ? void 0 : et.withCanvas) == null ? void 0 : tt.width) ?? "min(1050px, 100vw)"
|
|
912
920
|
),
|
|
913
921
|
height: a(
|
|
914
922
|
"h",
|
|
915
|
-
((
|
|
923
|
+
((nt = (ot = (rt = t == null ? void 0 : t.screens) == null ? void 0 : rt.chat) == null ? void 0 : ot.withCanvas) == null ? void 0 : nt.height) ?? "min(800px, 100vh)"
|
|
916
924
|
),
|
|
917
|
-
transitionTimingFunction: ((
|
|
918
|
-
transitionDuration: ((
|
|
925
|
+
transitionTimingFunction: ((it = (at = (st = t == null ? void 0 : t.screens) == null ? void 0 : st.chat) == null ? void 0 : at.withCanvas) == null ? void 0 : it.transitionTimingFunction) ?? ce.transitionTimingFunction,
|
|
926
|
+
transitionDuration: ((dt = (ct = (lt = t == null ? void 0 : t.screens) == null ? void 0 : lt.chat) == null ? void 0 : ct.withCanvas) == null ? void 0 : dt.transitionDuration) ?? ce.transitionDuration
|
|
919
927
|
}
|
|
920
928
|
}
|
|
921
929
|
}
|
|
922
|
-
},
|
|
930
|
+
}, y = {
|
|
923
931
|
// Subtract the offset.bottom twice so that it adds a bit of padding to the top
|
|
924
932
|
// Subtract the distance between the trigger and the widget content container
|
|
925
933
|
// Subtract the invisible padding of the trigger (for the wobble effect)
|
|
@@ -927,8 +935,8 @@ function K() {
|
|
|
927
935
|
"h",
|
|
928
936
|
`calc(
|
|
929
937
|
100vh
|
|
930
|
-
- ${
|
|
931
|
-
- ${
|
|
938
|
+
- ${h.widgetTrigger.offset.bottom}px
|
|
939
|
+
- ${h.widgetContentContainer.offset.side}px
|
|
932
940
|
- ${Q.y * 2}px
|
|
933
941
|
)`
|
|
934
942
|
),
|
|
@@ -937,40 +945,41 @@ function K() {
|
|
|
937
945
|
"w",
|
|
938
946
|
`calc(
|
|
939
947
|
100vw
|
|
940
|
-
- ${
|
|
948
|
+
- ${m * 2}px
|
|
941
949
|
)`
|
|
942
950
|
),
|
|
943
951
|
minHeight: a(
|
|
944
952
|
"h",
|
|
945
953
|
`min(
|
|
946
|
-
${
|
|
947
|
-
${
|
|
948
|
-
${
|
|
954
|
+
${h.screens.welcome.minHeight},
|
|
955
|
+
${h.screens.sessions.height},
|
|
956
|
+
${h.screens.chat.height}
|
|
949
957
|
)`
|
|
950
958
|
),
|
|
951
959
|
minWidth: a(
|
|
952
960
|
"w",
|
|
953
961
|
`min(
|
|
954
|
-
${
|
|
955
|
-
${
|
|
956
|
-
${
|
|
962
|
+
${h.screens.welcome.width},
|
|
963
|
+
${h.screens.sessions.width},
|
|
964
|
+
${h.screens.chat.width}
|
|
957
965
|
)`
|
|
958
966
|
)
|
|
959
967
|
};
|
|
960
968
|
return {
|
|
961
|
-
theme:
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
969
|
+
theme: h,
|
|
970
|
+
triggerSide: l,
|
|
971
|
+
computed: y,
|
|
972
|
+
cssVars: uo({
|
|
973
|
+
palette: h.palette,
|
|
974
|
+
primary: h.primaryColor
|
|
966
975
|
})
|
|
967
976
|
};
|
|
968
977
|
}
|
|
969
|
-
function
|
|
978
|
+
function uo({
|
|
970
979
|
palette: e,
|
|
971
980
|
primary: o
|
|
972
981
|
}) {
|
|
973
|
-
const t =
|
|
982
|
+
const t = Zt(e), n = ht(o).toHsl(), s = ht(o).isLight() ? t[950] : t[50];
|
|
974
983
|
return {
|
|
975
984
|
"--opencx-primary": `${n.h} ${n.s * 100}% ${n.l * 100}%`,
|
|
976
985
|
"--opencx-primary-foreground": s,
|
|
@@ -989,7 +998,7 @@ function po({
|
|
|
989
998
|
"--opencx-ring": "var(--opencx-foreground)"
|
|
990
999
|
};
|
|
991
1000
|
}
|
|
992
|
-
function
|
|
1001
|
+
function Zt(e) {
|
|
993
1002
|
const o = {
|
|
994
1003
|
50: "0 0% 98%",
|
|
995
1004
|
100: "0 0% 96.1%",
|
|
@@ -1049,11 +1058,11 @@ function qt(e) {
|
|
|
1049
1058
|
case "slate":
|
|
1050
1059
|
return s;
|
|
1051
1060
|
default:
|
|
1052
|
-
return F(e,
|
|
1061
|
+
return F(e, Zt.name), o;
|
|
1053
1062
|
}
|
|
1054
1063
|
}
|
|
1055
|
-
function
|
|
1056
|
-
const { contentIframeRef: e } =
|
|
1064
|
+
function Kt() {
|
|
1065
|
+
const { contentIframeRef: e } = A(), { inline: o } = z();
|
|
1057
1066
|
return {
|
|
1058
1067
|
setWidth: (t) => {
|
|
1059
1068
|
var n;
|
|
@@ -1075,12 +1084,12 @@ function Me({
|
|
|
1075
1084
|
width: e,
|
|
1076
1085
|
height: o
|
|
1077
1086
|
}) {
|
|
1078
|
-
const { isSmallScreen: t } = $(), { setWidth: n, setHeight: s } =
|
|
1087
|
+
const { isSmallScreen: t } = $(), { setWidth: n, setHeight: s } = Kt();
|
|
1079
1088
|
se(() => {
|
|
1080
1089
|
e && n(e), o && s(o);
|
|
1081
1090
|
}, [t, o, e, n, s]);
|
|
1082
1091
|
}
|
|
1083
|
-
const
|
|
1092
|
+
const bt = ur;
|
|
1084
1093
|
function ne({
|
|
1085
1094
|
name: e,
|
|
1086
1095
|
className: o
|
|
@@ -1088,49 +1097,49 @@ function ne({
|
|
|
1088
1097
|
const t = (() => {
|
|
1089
1098
|
switch (e) {
|
|
1090
1099
|
case "Check":
|
|
1091
|
-
return
|
|
1100
|
+
return Ir;
|
|
1092
1101
|
case "CheckCheck":
|
|
1093
|
-
return
|
|
1102
|
+
return _r;
|
|
1094
1103
|
case "CircleCheck":
|
|
1095
|
-
return
|
|
1104
|
+
return Rt;
|
|
1096
1105
|
case "CircleCheckBig":
|
|
1097
|
-
return
|
|
1106
|
+
return Sr;
|
|
1098
1107
|
case "CircleX":
|
|
1099
|
-
return
|
|
1108
|
+
return Nr;
|
|
1100
1109
|
case "Expand":
|
|
1101
|
-
return
|
|
1110
|
+
return zr;
|
|
1102
1111
|
case "Maximize":
|
|
1103
|
-
return
|
|
1112
|
+
return Cr;
|
|
1104
1113
|
case "Maximize2":
|
|
1105
|
-
return
|
|
1114
|
+
return kr;
|
|
1106
1115
|
case "Minimize":
|
|
1107
|
-
return
|
|
1116
|
+
return yr;
|
|
1108
1117
|
case "Minimize2":
|
|
1109
|
-
return
|
|
1118
|
+
return br;
|
|
1110
1119
|
case "Shrink":
|
|
1111
|
-
return
|
|
1120
|
+
return vr;
|
|
1112
1121
|
case "SquareCheck":
|
|
1113
|
-
return
|
|
1122
|
+
return xr;
|
|
1114
1123
|
case "SquareCheckBig":
|
|
1115
|
-
return
|
|
1124
|
+
return fr;
|
|
1116
1125
|
case "SquareX":
|
|
1117
|
-
return
|
|
1126
|
+
return wr;
|
|
1118
1127
|
case "X":
|
|
1119
1128
|
return Ce;
|
|
1120
1129
|
case void 0:
|
|
1121
|
-
return
|
|
1130
|
+
return bt;
|
|
1122
1131
|
default:
|
|
1123
|
-
return F(e, ne.name),
|
|
1132
|
+
return F(e, ne.name), bt;
|
|
1124
1133
|
}
|
|
1125
1134
|
})();
|
|
1126
|
-
return /* @__PURE__ */ r(t, { className:
|
|
1135
|
+
return /* @__PURE__ */ r(t, { className: p("size-4", o) });
|
|
1127
1136
|
}
|
|
1128
|
-
function
|
|
1137
|
+
function wo() {
|
|
1129
1138
|
var t;
|
|
1130
1139
|
const e = X(), o = (t = e.config.customComponents) == null ? void 0 : t.headerBottom;
|
|
1131
1140
|
return o ? /* @__PURE__ */ r(o, { ...e }) : null;
|
|
1132
1141
|
}
|
|
1133
|
-
function
|
|
1142
|
+
function fo({ fallback: e }) {
|
|
1134
1143
|
var n;
|
|
1135
1144
|
const o = X(), t = (n = o.config.customComponents) == null ? void 0 : n.headerTitle;
|
|
1136
1145
|
return t ? /* @__PURE__ */ r(t, { ...o }) : e;
|
|
@@ -1138,7 +1147,7 @@ function ho({ fallback: e }) {
|
|
|
1138
1147
|
function De() {
|
|
1139
1148
|
const {
|
|
1140
1149
|
widgetCtx: { org: e }
|
|
1141
|
-
} =
|
|
1150
|
+
} = A(), {
|
|
1142
1151
|
routerState: { screen: o }
|
|
1143
1152
|
} = H(), { textContent: t } = z();
|
|
1144
1153
|
return (() => {
|
|
@@ -1156,12 +1165,12 @@ function De() {
|
|
|
1156
1165
|
}
|
|
1157
1166
|
})() ?? e.name ?? "Chat";
|
|
1158
1167
|
}
|
|
1159
|
-
function
|
|
1168
|
+
function xo(e) {
|
|
1160
1169
|
switch (e) {
|
|
1161
1170
|
case "chat":
|
|
1162
|
-
return
|
|
1171
|
+
return x("chat/header");
|
|
1163
1172
|
case "sessions":
|
|
1164
|
-
return
|
|
1173
|
+
return x("sessions/header");
|
|
1165
1174
|
case "welcome":
|
|
1166
1175
|
return;
|
|
1167
1176
|
default:
|
|
@@ -1169,7 +1178,7 @@ function go(e) {
|
|
|
1169
1178
|
return;
|
|
1170
1179
|
}
|
|
1171
1180
|
}
|
|
1172
|
-
function
|
|
1181
|
+
function vo() {
|
|
1173
1182
|
const { router: e } = z(), {
|
|
1174
1183
|
routerState: { screen: o },
|
|
1175
1184
|
toSessionsScreen: t
|
|
@@ -1181,14 +1190,14 @@ function uo() {
|
|
|
1181
1190
|
size: "fit",
|
|
1182
1191
|
className: "rounded-full",
|
|
1183
1192
|
onClick: t,
|
|
1184
|
-
children: /* @__PURE__ */ r(
|
|
1193
|
+
children: /* @__PURE__ */ r(Tr, { className: "size-4 rtl:-scale-100" })
|
|
1185
1194
|
}
|
|
1186
1195
|
);
|
|
1187
1196
|
}
|
|
1188
|
-
function
|
|
1197
|
+
function bo({
|
|
1189
1198
|
button: e
|
|
1190
1199
|
}) {
|
|
1191
|
-
const { setIsOpen: o } =
|
|
1200
|
+
const { setIsOpen: o } = K(), { isSmallScreen: t } = $(), n = X();
|
|
1192
1201
|
return t && e.hideOnSmallScreen || !t && e.hideOnLargeScreen ? null : /* @__PURE__ */ r(
|
|
1193
1202
|
S,
|
|
1194
1203
|
{
|
|
@@ -1208,9 +1217,9 @@ function be({
|
|
|
1208
1217
|
}) {
|
|
1209
1218
|
const [o, t] = P(!1), {
|
|
1210
1219
|
routerState: { screen: n }
|
|
1211
|
-
} = H(), { isSmallScreen: s } = $(), { theme: i } =
|
|
1220
|
+
} = H(), { isSmallScreen: s } = $(), { theme: i } = V(), { setWidth: a, setHeight: l } = Kt(), c = X();
|
|
1212
1221
|
if (n !== "chat" && n !== "sessions") return null;
|
|
1213
|
-
const
|
|
1222
|
+
const m = (() => {
|
|
1214
1223
|
switch (n) {
|
|
1215
1224
|
case "chat":
|
|
1216
1225
|
return i.screens.chat.height;
|
|
@@ -1219,7 +1228,7 @@ function be({
|
|
|
1219
1228
|
default:
|
|
1220
1229
|
return F(n, be.name), i.screens.chat.height;
|
|
1221
1230
|
}
|
|
1222
|
-
})(),
|
|
1231
|
+
})(), h = (() => {
|
|
1223
1232
|
switch (n) {
|
|
1224
1233
|
case "chat":
|
|
1225
1234
|
return i.screens.chat.width;
|
|
@@ -1228,12 +1237,12 @@ function be({
|
|
|
1228
1237
|
default:
|
|
1229
1238
|
return F(n, be.name), i.screens.chat.width;
|
|
1230
1239
|
}
|
|
1231
|
-
})(),
|
|
1232
|
-
var
|
|
1233
|
-
t((
|
|
1234
|
-
const
|
|
1235
|
-
return l(
|
|
1236
|
-
}), (
|
|
1240
|
+
})(), y = () => {
|
|
1241
|
+
var w;
|
|
1242
|
+
t((g) => {
|
|
1243
|
+
const v = !g;
|
|
1244
|
+
return l(v ? "100vh" : m), a(v ? `max(40vw, ${h})` : h), v;
|
|
1245
|
+
}), (w = e.onClicked) == null || w.call(e, c);
|
|
1237
1246
|
};
|
|
1238
1247
|
return s && e.hideOnSmallScreen || !s && e.hideOnLargeScreen ? null : /* @__PURE__ */ r(
|
|
1239
1248
|
S,
|
|
@@ -1241,7 +1250,7 @@ function be({
|
|
|
1241
1250
|
variant: "ghost",
|
|
1242
1251
|
size: "fit",
|
|
1243
1252
|
className: "rounded-full",
|
|
1244
|
-
onClick:
|
|
1253
|
+
onClick: y,
|
|
1245
1254
|
children: /* @__PURE__ */ r(
|
|
1246
1255
|
ne,
|
|
1247
1256
|
{
|
|
@@ -1251,15 +1260,15 @@ function be({
|
|
|
1251
1260
|
}
|
|
1252
1261
|
);
|
|
1253
1262
|
}
|
|
1254
|
-
function
|
|
1263
|
+
function Qt({
|
|
1255
1264
|
button: e
|
|
1256
1265
|
}) {
|
|
1257
|
-
var T,
|
|
1258
|
-
const { close: o } = he(), { widgetCtx: t } =
|
|
1266
|
+
var T, b;
|
|
1267
|
+
const { close: o } = he(), { widgetCtx: t } = A(), { setIsOpen: n } = K(), { resolveSession: s, sessionState: i } = U(), { isSmallScreen: a } = $(), l = X(), c = !i.session, m = ((T = i.session) == null ? void 0 : T.isOpened) === !1, h = e.onResolved || "stay-in-chat", y = e.behaviorBeforeSessionCreation || "disabled", w = e.behaviorIfSessionIsResolved || "disabled", g = !!(i.isResolvingSession || c && y === "disabled" || m && w === "disabled"), v = async () => {
|
|
1259
1268
|
const { success: N, error: _ } = await s();
|
|
1260
1269
|
if (o(), !N)
|
|
1261
1270
|
return console.error(_), !1;
|
|
1262
|
-
switch (
|
|
1271
|
+
switch (h) {
|
|
1263
1272
|
case "stay-in-chat":
|
|
1264
1273
|
break;
|
|
1265
1274
|
case "close-widget":
|
|
@@ -1272,13 +1281,13 @@ function Gt({
|
|
|
1272
1281
|
n(!1), t.resetChat();
|
|
1273
1282
|
break;
|
|
1274
1283
|
default:
|
|
1275
|
-
F(
|
|
1284
|
+
F(h, Qt.name);
|
|
1276
1285
|
break;
|
|
1277
1286
|
}
|
|
1278
1287
|
return !0;
|
|
1279
1288
|
}, C = () => {
|
|
1280
1289
|
if (c)
|
|
1281
|
-
switch (
|
|
1290
|
+
switch (y) {
|
|
1282
1291
|
case "disabled":
|
|
1283
1292
|
return;
|
|
1284
1293
|
case "close-widget":
|
|
@@ -1286,12 +1295,12 @@ function Gt({
|
|
|
1286
1295
|
break;
|
|
1287
1296
|
default:
|
|
1288
1297
|
F(
|
|
1289
|
-
|
|
1298
|
+
y,
|
|
1290
1299
|
C.name
|
|
1291
1300
|
);
|
|
1292
1301
|
}
|
|
1293
|
-
if (
|
|
1294
|
-
switch (
|
|
1302
|
+
if (m)
|
|
1303
|
+
switch (w) {
|
|
1295
1304
|
case "disabled":
|
|
1296
1305
|
return;
|
|
1297
1306
|
case "close-widget":
|
|
@@ -1307,12 +1316,12 @@ function Gt({
|
|
|
1307
1316
|
break;
|
|
1308
1317
|
default:
|
|
1309
1318
|
F(
|
|
1310
|
-
|
|
1319
|
+
w,
|
|
1311
1320
|
C.name
|
|
1312
1321
|
);
|
|
1313
1322
|
}
|
|
1314
1323
|
};
|
|
1315
|
-
return a && e.hideOnSmallScreen || !a && e.hideOnLargeScreen ? null : ((
|
|
1324
|
+
return a && e.hideOnSmallScreen || !a && e.hideOnLargeScreen ? null : ((b = e.confirmation) == null ? void 0 : b.type) === "modal" && !m && !c ? /* @__PURE__ */ r(
|
|
1316
1325
|
Ne,
|
|
1317
1326
|
{
|
|
1318
1327
|
trigger: /* @__PURE__ */ r(
|
|
@@ -1321,7 +1330,7 @@ function Gt({
|
|
|
1321
1330
|
variant: "ghost",
|
|
1322
1331
|
size: "fit",
|
|
1323
1332
|
className: "rounded-full",
|
|
1324
|
-
disabled:
|
|
1333
|
+
disabled: g,
|
|
1325
1334
|
onClick: () => {
|
|
1326
1335
|
var N;
|
|
1327
1336
|
return (N = e.onClicked) == null ? void 0 : N.call(e, l);
|
|
@@ -1330,9 +1339,9 @@ function Gt({
|
|
|
1330
1339
|
}
|
|
1331
1340
|
),
|
|
1332
1341
|
children: /* @__PURE__ */ d(ze, { children: [
|
|
1333
|
-
/* @__PURE__ */ r(
|
|
1334
|
-
/* @__PURE__ */ r(
|
|
1335
|
-
/* @__PURE__ */ d(
|
|
1342
|
+
/* @__PURE__ */ r(Wt, { children: /* @__PURE__ */ r(Bt, { children: e.confirmation.title || "Close conversation" }) }),
|
|
1343
|
+
/* @__PURE__ */ r(Lt, { children: /* @__PURE__ */ r(Yt, { children: e.confirmation.description || "Are you sure you want to close this conversation?" }) }),
|
|
1344
|
+
/* @__PURE__ */ d($t, { children: [
|
|
1336
1345
|
/* @__PURE__ */ r(
|
|
1337
1346
|
S,
|
|
1338
1347
|
{
|
|
@@ -1348,7 +1357,7 @@ function Gt({
|
|
|
1348
1357
|
variant: "destructive",
|
|
1349
1358
|
onClick: async () => {
|
|
1350
1359
|
var _, E;
|
|
1351
|
-
await
|
|
1360
|
+
await v() && ((E = (_ = e.confirmation) == null ? void 0 : _.onResolved) == null || E.call(_, l));
|
|
1352
1361
|
},
|
|
1353
1362
|
disabled: i.isResolvingSession,
|
|
1354
1363
|
children: e.confirmation.confirmButtonText || "Yes"
|
|
@@ -1365,9 +1374,9 @@ function Gt({
|
|
|
1365
1374
|
className: "rounded-full",
|
|
1366
1375
|
onClick: () => {
|
|
1367
1376
|
var N;
|
|
1368
|
-
|
|
1377
|
+
m || c ? C() : v(), (N = e.onClicked) == null || N.call(e, l);
|
|
1369
1378
|
},
|
|
1370
|
-
disabled:
|
|
1379
|
+
disabled: g,
|
|
1371
1380
|
children: /* @__PURE__ */ r(ne, { name: e.icon })
|
|
1372
1381
|
}
|
|
1373
1382
|
);
|
|
@@ -1375,25 +1384,25 @@ function Gt({
|
|
|
1375
1384
|
function ye({ button: e }) {
|
|
1376
1385
|
switch (e.functionality) {
|
|
1377
1386
|
case "close-widget":
|
|
1378
|
-
return /* @__PURE__ */ r(
|
|
1387
|
+
return /* @__PURE__ */ r(bo, { button: e });
|
|
1379
1388
|
case "expand-shrink":
|
|
1380
1389
|
return /* @__PURE__ */ r(be, { button: e });
|
|
1381
1390
|
case "resolve-session":
|
|
1382
|
-
return /* @__PURE__ */ r(
|
|
1391
|
+
return /* @__PURE__ */ r(Qt, { button: e });
|
|
1383
1392
|
default:
|
|
1384
1393
|
return F(e, ye.name), null;
|
|
1385
1394
|
}
|
|
1386
1395
|
}
|
|
1387
|
-
const
|
|
1396
|
+
const yo = {
|
|
1388
1397
|
functionality: "close-widget",
|
|
1389
1398
|
hideOnLargeScreen: !0,
|
|
1390
1399
|
icon: "X"
|
|
1391
1400
|
};
|
|
1392
|
-
function
|
|
1401
|
+
function ko() {
|
|
1393
1402
|
const {
|
|
1394
1403
|
routerState: { screen: e }
|
|
1395
1404
|
} = H(), { headerButtons: o } = z(), t = e === "chat" ? o == null ? void 0 : o.chatScreen : e === "sessions" ? o == null ? void 0 : o.sessionsScreen : [];
|
|
1396
|
-
return !t || t.length === 0 ? /* @__PURE__ */ r(ye, { button:
|
|
1405
|
+
return !t || t.length === 0 ? /* @__PURE__ */ r(ye, { button: yo }) : /* @__PURE__ */ r(J, { children: t.map((n) => /* @__PURE__ */ r(
|
|
1397
1406
|
ye,
|
|
1398
1407
|
{
|
|
1399
1408
|
button: n
|
|
@@ -1401,50 +1410,50 @@ function xo() {
|
|
|
1401
1410
|
`${n.functionality}-${n.icon}`
|
|
1402
1411
|
)) });
|
|
1403
1412
|
}
|
|
1404
|
-
function
|
|
1413
|
+
function Jt() {
|
|
1405
1414
|
const {
|
|
1406
1415
|
routerState: { screen: e }
|
|
1407
|
-
} = H(), o =
|
|
1416
|
+
} = H(), o = xo(e), t = De();
|
|
1408
1417
|
return /* @__PURE__ */ d("header", { ...o, className: "py-2 px-4 shrink-0", children: [
|
|
1409
1418
|
/* @__PURE__ */ d("div", { className: "flex items-center gap-2", children: [
|
|
1410
|
-
/* @__PURE__ */ r(
|
|
1419
|
+
/* @__PURE__ */ r(vo, {}),
|
|
1411
1420
|
/* @__PURE__ */ r(
|
|
1412
1421
|
"div",
|
|
1413
1422
|
{
|
|
1414
|
-
className:
|
|
1423
|
+
className: p(
|
|
1415
1424
|
"flex-1 h-8 flex items-center",
|
|
1416
1425
|
e === "sessions" && "ps-2"
|
|
1417
1426
|
),
|
|
1418
1427
|
children: /* @__PURE__ */ r(
|
|
1419
|
-
|
|
1428
|
+
fo,
|
|
1420
1429
|
{
|
|
1421
1430
|
fallback: /* @__PURE__ */ r("h2", { className: "font-semibold", children: t })
|
|
1422
1431
|
}
|
|
1423
1432
|
)
|
|
1424
1433
|
}
|
|
1425
1434
|
),
|
|
1426
|
-
/* @__PURE__ */ r(
|
|
1435
|
+
/* @__PURE__ */ r(ko, {})
|
|
1427
1436
|
] }),
|
|
1428
|
-
/* @__PURE__ */ r(
|
|
1437
|
+
/* @__PURE__ */ r(wo, {})
|
|
1429
1438
|
] });
|
|
1430
1439
|
}
|
|
1431
|
-
function
|
|
1432
|
-
return /* @__PURE__ */ r(
|
|
1440
|
+
function er({ className: e }) {
|
|
1441
|
+
return /* @__PURE__ */ r(Mr, { className: p("size-4 animate-spin", e) });
|
|
1433
1442
|
}
|
|
1434
|
-
function
|
|
1443
|
+
function Co() {
|
|
1435
1444
|
const {
|
|
1436
1445
|
messagesState: { isInitialFetchLoading: e }
|
|
1437
|
-
} =
|
|
1446
|
+
} = O(), { isSmallScreen: o } = $(), { activeMode: t, Component: n } = _t();
|
|
1438
1447
|
return {
|
|
1439
1448
|
isCanvasOpen: !e && !o && !!t && !!n
|
|
1440
1449
|
};
|
|
1441
1450
|
}
|
|
1442
|
-
function
|
|
1443
|
-
const e = X(), { activeMode: o, Component: t } =
|
|
1451
|
+
function zo() {
|
|
1452
|
+
const e = X(), { activeMode: o, Component: t } = _t(), { sendMessage: n } = O(), { createStateCheckpoint: s } = U(), [i, a] = P(!1), l = async (c) => {
|
|
1444
1453
|
try {
|
|
1445
1454
|
a(!0), await n(c);
|
|
1446
|
-
} catch (
|
|
1447
|
-
console.error(
|
|
1455
|
+
} catch (m) {
|
|
1456
|
+
console.error(m);
|
|
1448
1457
|
} finally {
|
|
1449
1458
|
a(!1);
|
|
1450
1459
|
}
|
|
@@ -1460,12 +1469,12 @@ function bo() {
|
|
|
1460
1469
|
}
|
|
1461
1470
|
);
|
|
1462
1471
|
}
|
|
1463
|
-
function
|
|
1472
|
+
function G() {
|
|
1464
1473
|
const { dir: e } = ke(), o = z();
|
|
1465
|
-
return
|
|
1466
|
-
const t =
|
|
1474
|
+
return St(() => {
|
|
1475
|
+
const t = Xr(o.language) ? o.language : "en";
|
|
1467
1476
|
return {
|
|
1468
|
-
t: (n) =>
|
|
1477
|
+
t: (n) => qr(n, t, o.translationOverrides),
|
|
1469
1478
|
language: t,
|
|
1470
1479
|
dir: t === "ar" ? "rtl" : "ltr",
|
|
1471
1480
|
hostDocumentDir: e
|
|
@@ -1480,7 +1489,7 @@ const W = L.forwardRef(
|
|
|
1480
1489
|
{
|
|
1481
1490
|
...e,
|
|
1482
1491
|
ref: o,
|
|
1483
|
-
className:
|
|
1492
|
+
className: p("overflow-hidden", e.className),
|
|
1484
1493
|
overrides: {
|
|
1485
1494
|
initial: { height: 0, opacity: 0, ...(t = e.overrides) == null ? void 0 : t.initial },
|
|
1486
1495
|
animate: { height: "auto", opacity: 1, ...(n = e.overrides) == null ? void 0 : n.animate },
|
|
@@ -1491,7 +1500,7 @@ const W = L.forwardRef(
|
|
|
1491
1500
|
}
|
|
1492
1501
|
);
|
|
1493
1502
|
W.displayName = "MotionDiv__VerticalReveal";
|
|
1494
|
-
const
|
|
1503
|
+
const No = [
|
|
1495
1504
|
{
|
|
1496
1505
|
label: "Terrible",
|
|
1497
1506
|
value: 1,
|
|
@@ -1518,19 +1527,19 @@ const yo = [
|
|
|
1518
1527
|
emoji: "😍"
|
|
1519
1528
|
}
|
|
1520
1529
|
];
|
|
1521
|
-
function
|
|
1522
|
-
const { isSmallScreen: e } = $(), { t: o } =
|
|
1530
|
+
function So() {
|
|
1531
|
+
const { isSmallScreen: e } = $(), { t: o } = G(), {
|
|
1523
1532
|
submitCsat: t,
|
|
1524
1533
|
isCsatRequested: n,
|
|
1525
1534
|
isCsatSubmitted: s,
|
|
1526
1535
|
submittedScore: i,
|
|
1527
1536
|
submittedFeedback: a
|
|
1528
|
-
} =
|
|
1529
|
-
c((
|
|
1530
|
-
},
|
|
1537
|
+
} = It(), [l, c] = P(null), [m, h] = P(null), y = (g) => {
|
|
1538
|
+
c((v) => v === g ? null : g);
|
|
1539
|
+
}, w = () => {
|
|
1531
1540
|
l && t({
|
|
1532
1541
|
score: l,
|
|
1533
|
-
feedback:
|
|
1542
|
+
feedback: m || void 0
|
|
1534
1543
|
});
|
|
1535
1544
|
};
|
|
1536
1545
|
return !n && !s ? null : /* @__PURE__ */ d("div", { className: "w-1/2 min-w-80 max-w-96 mx-auto overflow-hidden", children: [
|
|
@@ -1539,30 +1548,30 @@ function ko() {
|
|
|
1539
1548
|
"div",
|
|
1540
1549
|
{
|
|
1541
1550
|
dir: "ltr",
|
|
1542
|
-
className:
|
|
1551
|
+
className: p(
|
|
1543
1552
|
"flex gap-4 justify-between pt-2 px-2 pb-2",
|
|
1544
1553
|
"transition-all",
|
|
1545
1554
|
s && "gap-0 justify-center"
|
|
1546
1555
|
),
|
|
1547
|
-
children:
|
|
1556
|
+
children: No.map((g) => /* @__PURE__ */ r(
|
|
1548
1557
|
S,
|
|
1549
1558
|
{
|
|
1550
|
-
variant:
|
|
1559
|
+
variant: g.value === l ? "secondary" : "ghost",
|
|
1551
1560
|
size: "selfless",
|
|
1552
|
-
className:
|
|
1561
|
+
className: p(
|
|
1553
1562
|
"transition-all overflow-hidden",
|
|
1554
1563
|
"text-2xl size-8 rounded-full",
|
|
1555
1564
|
"opacity-35",
|
|
1556
1565
|
"hover:opacity-100",
|
|
1557
1566
|
!l && "opacity-100",
|
|
1558
|
-
|
|
1559
|
-
s &&
|
|
1560
|
-
s &&
|
|
1567
|
+
g.value === l && "opacity-100",
|
|
1568
|
+
s && g.value !== i && "opacity-0 size-0",
|
|
1569
|
+
s && g.value === i && "opacity-100 size-fit text-4xl"
|
|
1561
1570
|
),
|
|
1562
|
-
onClick: n ? () =>
|
|
1563
|
-
children:
|
|
1571
|
+
onClick: n ? () => y(g.value) : void 0,
|
|
1572
|
+
children: g.emoji
|
|
1564
1573
|
},
|
|
1565
|
-
|
|
1574
|
+
g.value
|
|
1566
1575
|
))
|
|
1567
1576
|
}
|
|
1568
1577
|
),
|
|
@@ -1571,7 +1580,7 @@ function ko() {
|
|
|
1571
1580
|
"textarea",
|
|
1572
1581
|
{
|
|
1573
1582
|
rows: 3,
|
|
1574
|
-
className:
|
|
1583
|
+
className: p(
|
|
1575
1584
|
"transition-all",
|
|
1576
1585
|
"max-h-40 [field-sizing:content]",
|
|
1577
1586
|
"w-full resize-none",
|
|
@@ -1581,8 +1590,8 @@ function ko() {
|
|
|
1581
1590
|
e ? "text-[16px]" : "text-sm",
|
|
1582
1591
|
s && "text-center"
|
|
1583
1592
|
),
|
|
1584
|
-
value: s ? a || "" :
|
|
1585
|
-
onChange: n ? (
|
|
1593
|
+
value: s ? a || "" : m || "",
|
|
1594
|
+
onChange: n ? (g) => h(g.target.value) : void 0,
|
|
1586
1595
|
readOnly: s,
|
|
1587
1596
|
placeholder: n ? o("csat_feedback_placeholder") : void 0
|
|
1588
1597
|
}
|
|
@@ -1591,21 +1600,21 @@ function ko() {
|
|
|
1591
1600
|
S,
|
|
1592
1601
|
{
|
|
1593
1602
|
size: "fit",
|
|
1594
|
-
onClick:
|
|
1603
|
+
onClick: w,
|
|
1595
1604
|
disabled: !l,
|
|
1596
|
-
className:
|
|
1605
|
+
className: p(
|
|
1597
1606
|
"transition-all overflow-hidden",
|
|
1598
1607
|
"rounded-full size-8 flex items-center justify-center p-0",
|
|
1599
1608
|
s && "opacity-0 size-0"
|
|
1600
1609
|
),
|
|
1601
|
-
children: /* @__PURE__ */ r(
|
|
1610
|
+
children: /* @__PURE__ */ r(Pt, { className: "size-4" })
|
|
1602
1611
|
}
|
|
1603
1612
|
)
|
|
1604
1613
|
] }) }, "feedback-box") }),
|
|
1605
1614
|
/* @__PURE__ */ r(
|
|
1606
1615
|
"div",
|
|
1607
1616
|
{
|
|
1608
|
-
className:
|
|
1617
|
+
className: p("h-0 transition-[height]", s && "h-4")
|
|
1609
1618
|
}
|
|
1610
1619
|
)
|
|
1611
1620
|
] });
|
|
@@ -1615,28 +1624,28 @@ function Ee({
|
|
|
1615
1624
|
className: o,
|
|
1616
1625
|
...t
|
|
1617
1626
|
}) {
|
|
1618
|
-
const { sendMessage: n } =
|
|
1627
|
+
const { sendMessage: n } = O(), s = () => {
|
|
1619
1628
|
const i = e.trim();
|
|
1620
1629
|
i && n({ content: i });
|
|
1621
1630
|
};
|
|
1622
1631
|
return /* @__PURE__ */ r(
|
|
1623
1632
|
S,
|
|
1624
1633
|
{
|
|
1625
|
-
...
|
|
1634
|
+
...x("chat/suggested_reply_btn"),
|
|
1626
1635
|
size: "sm",
|
|
1627
|
-
className:
|
|
1636
|
+
className: p("rounded-xl w-fit", o),
|
|
1628
1637
|
...t,
|
|
1629
1638
|
onClick: s,
|
|
1630
1639
|
children: e
|
|
1631
1640
|
}
|
|
1632
1641
|
);
|
|
1633
1642
|
}
|
|
1634
|
-
function
|
|
1635
|
-
const { t: e } =
|
|
1643
|
+
function _o() {
|
|
1644
|
+
const { t: e } = G(), o = [e("i_need_more_help"), e("this_was_helpful")];
|
|
1636
1645
|
return /* @__PURE__ */ r(
|
|
1637
1646
|
"div",
|
|
1638
1647
|
{
|
|
1639
|
-
...
|
|
1648
|
+
...x("chat/might_solve_user_issue_suggested_replies_container"),
|
|
1640
1649
|
className: "flex items-center gap-2 p-2 pb-0 flex-wrap",
|
|
1641
1650
|
children: o.map((t) => /* @__PURE__ */ r(
|
|
1642
1651
|
Ee,
|
|
@@ -1649,11 +1658,11 @@ function Co() {
|
|
|
1649
1658
|
}
|
|
1650
1659
|
);
|
|
1651
1660
|
}
|
|
1652
|
-
function
|
|
1661
|
+
function yt() {
|
|
1653
1662
|
const { sessionState: e } = U(), { chatFooterItems: o } = z(), t = !!e.session && !e.session.isOpened, n = !t;
|
|
1654
1663
|
return /* @__PURE__ */ r(D, { mode: "wait", children: o == null ? void 0 : o.map((s, i) => s.showWhenSessionIsOpen === !1 && n || s.showWhenSessionIsResolved === !1 && t ? null : /* @__PURE__ */ r(W, { children: /* @__PURE__ */ r("div", { className: "pb-2 text-center text-xs", children: /* @__PURE__ */ r(Se, { children: s.message }) }) }, `${s.message}-${i}`)) });
|
|
1655
1664
|
}
|
|
1656
|
-
function
|
|
1665
|
+
function Io({
|
|
1657
1666
|
file: { status: e, file: o, error: t },
|
|
1658
1667
|
onCancel: n
|
|
1659
1668
|
}) {
|
|
@@ -1668,9 +1677,9 @@ function zo({
|
|
|
1668
1677
|
const a = () => {
|
|
1669
1678
|
switch (e) {
|
|
1670
1679
|
case "uploading":
|
|
1671
|
-
return /* @__PURE__ */ r(
|
|
1680
|
+
return /* @__PURE__ */ r(Rr, { className: "size-4 animate-spin" });
|
|
1672
1681
|
case "error":
|
|
1673
|
-
return /* @__PURE__ */ r(
|
|
1682
|
+
return /* @__PURE__ */ r(Er, { className: "size-4 text-destructive" });
|
|
1674
1683
|
default:
|
|
1675
1684
|
return null;
|
|
1676
1685
|
}
|
|
@@ -1683,7 +1692,7 @@ function zo({
|
|
|
1683
1692
|
className: "object-cover bg-secondary size-full",
|
|
1684
1693
|
alt: o.name
|
|
1685
1694
|
}
|
|
1686
|
-
) : c === "audio" ? /* @__PURE__ */ r(
|
|
1695
|
+
) : c === "audio" ? /* @__PURE__ */ r(Pr, { className: "size-4 text-muted-foreground" }) : c === "video" ? /* @__PURE__ */ r(jr, { className: "size-4 text-muted-foreground" }) : o.type === "application/pdf" ? /* @__PURE__ */ r(Dt, { className: "size-4 text-muted-foreground" }) : Ft({ type: o.type, name: o.name }) ? /* @__PURE__ */ r(Et, { className: "size-4 text-muted-foreground" }) : /* @__PURE__ */ r(Ar, { className: "size-4 text-muted-foreground" });
|
|
1687
1696
|
};
|
|
1688
1697
|
return /* @__PURE__ */ r(
|
|
1689
1698
|
oe,
|
|
@@ -1696,7 +1705,7 @@ function zo({
|
|
|
1696
1705
|
children: /* @__PURE__ */ d(
|
|
1697
1706
|
"div",
|
|
1698
1707
|
{
|
|
1699
|
-
className:
|
|
1708
|
+
className: p(
|
|
1700
1709
|
e === "uploading" && "opacity-50",
|
|
1701
1710
|
"group",
|
|
1702
1711
|
"size-12 border rounded-2xl overflow-hidden relative",
|
|
@@ -1708,7 +1717,7 @@ function zo({
|
|
|
1708
1717
|
"button",
|
|
1709
1718
|
{
|
|
1710
1719
|
type: "button",
|
|
1711
|
-
className:
|
|
1720
|
+
className: p(
|
|
1712
1721
|
"absolute bg-black/50 inset-0 size-full z-10 opacity-0",
|
|
1713
1722
|
"flex items-center justify-center",
|
|
1714
1723
|
"opacity-0 group-hover:opacity-100 transition"
|
|
@@ -1724,24 +1733,25 @@ function zo({
|
|
|
1724
1733
|
}
|
|
1725
1734
|
);
|
|
1726
1735
|
}
|
|
1727
|
-
|
|
1736
|
+
const To = 25 * 1024 * 1024;
|
|
1737
|
+
function Mo() {
|
|
1728
1738
|
var R;
|
|
1729
|
-
const { isSmallScreen: e } = $(), o = B(null), { sendMessage: t } =
|
|
1739
|
+
const { isSmallScreen: e } = $(), o = B(null), { sendMessage: t } = O(), { sessionState: n } = U(), { disableSendingWhenAwaitingAIReply: s } = z(), { t: i } = G(), [a, l] = P(""), {
|
|
1730
1740
|
allFiles: c,
|
|
1731
|
-
emptyTheFiles:
|
|
1732
|
-
handleCancelUpload:
|
|
1733
|
-
appendFiles:
|
|
1734
|
-
isUploading:
|
|
1735
|
-
successFiles:
|
|
1736
|
-
} =
|
|
1737
|
-
|
|
1738
|
-
}, N = !a.trim() &&
|
|
1741
|
+
emptyTheFiles: m,
|
|
1742
|
+
handleCancelUpload: h,
|
|
1743
|
+
appendFiles: y,
|
|
1744
|
+
isUploading: w,
|
|
1745
|
+
successFiles: g
|
|
1746
|
+
} = lr(), v = !!((R = n.session) != null && R.isHandedOff), { isAwaitingBotReply: C } = Tt(), T = s !== !1 && C, b = (u) => {
|
|
1747
|
+
y(u);
|
|
1748
|
+
}, N = !a.trim() && g.length === 0, _ = async () => {
|
|
1739
1749
|
if (T || N) return;
|
|
1740
|
-
|
|
1741
|
-
const
|
|
1750
|
+
w && console.info("please wait for the file(s) to upload");
|
|
1751
|
+
const u = a.trim();
|
|
1742
1752
|
t({
|
|
1743
|
-
content:
|
|
1744
|
-
attachments:
|
|
1753
|
+
content: u,
|
|
1754
|
+
attachments: g.flatMap(
|
|
1745
1755
|
(I) => I.fileUrl ? [
|
|
1746
1756
|
{
|
|
1747
1757
|
url: I.fileUrl,
|
|
@@ -1752,48 +1762,50 @@ function No() {
|
|
|
1752
1762
|
}
|
|
1753
1763
|
] : []
|
|
1754
1764
|
)
|
|
1755
|
-
}), l(""),
|
|
1765
|
+
}), l(""), m();
|
|
1756
1766
|
}, {
|
|
1757
1767
|
getRootProps: E,
|
|
1758
|
-
getInputProps:
|
|
1768
|
+
getInputProps: f,
|
|
1759
1769
|
open: M
|
|
1760
|
-
} =
|
|
1761
|
-
onDrop:
|
|
1770
|
+
} = Vr({
|
|
1771
|
+
onDrop: b,
|
|
1762
1772
|
noClick: !0,
|
|
1763
1773
|
onDropRejected() {
|
|
1764
1774
|
console.error("unsupported file type, or the file is too large");
|
|
1765
1775
|
},
|
|
1766
|
-
maxSize:
|
|
1767
|
-
accept:
|
|
1776
|
+
maxSize: To,
|
|
1777
|
+
accept: v ? {
|
|
1768
1778
|
"text/*": [".txt"],
|
|
1769
1779
|
"image/*": [".png", ".jpg", ".jpeg", ".gif"],
|
|
1770
1780
|
"application/pdf": [".pdf"],
|
|
1771
|
-
...
|
|
1781
|
+
...gt,
|
|
1782
|
+
...ut
|
|
1772
1783
|
} : {
|
|
1773
1784
|
"image/png": [".png"],
|
|
1774
1785
|
"image/jpeg": [".jpg", ".jpeg"],
|
|
1775
1786
|
"image/gif": [".gif"],
|
|
1776
1787
|
"image/webp": [".webp"],
|
|
1777
1788
|
"application/pdf": [".pdf"],
|
|
1778
|
-
...
|
|
1789
|
+
...gt,
|
|
1790
|
+
...ut
|
|
1779
1791
|
}
|
|
1780
|
-
}), j = (
|
|
1781
|
-
const I =
|
|
1782
|
-
I && I.files.length > 0 &&
|
|
1792
|
+
}), j = (u) => {
|
|
1793
|
+
const I = u.clipboardData;
|
|
1794
|
+
I && I.files.length > 0 && b(Array.from(I.files));
|
|
1783
1795
|
};
|
|
1784
1796
|
return /* @__PURE__ */ d(
|
|
1785
1797
|
"div",
|
|
1786
1798
|
{
|
|
1787
|
-
...
|
|
1799
|
+
...x("chat/input_box/root"),
|
|
1788
1800
|
className: "p-2 relative space-y-1",
|
|
1789
1801
|
...E(),
|
|
1790
1802
|
children: [
|
|
1791
|
-
/* @__PURE__ */ r("input", { ...
|
|
1803
|
+
/* @__PURE__ */ r("input", { ...f() }),
|
|
1792
1804
|
/* @__PURE__ */ d(
|
|
1793
1805
|
"div",
|
|
1794
1806
|
{
|
|
1795
|
-
...
|
|
1796
|
-
className:
|
|
1807
|
+
...x("chat/input_box/inner_root"),
|
|
1808
|
+
className: p(
|
|
1797
1809
|
"transition-all",
|
|
1798
1810
|
"bg-white",
|
|
1799
1811
|
// 'border',
|
|
@@ -1804,33 +1816,33 @@ function No() {
|
|
|
1804
1816
|
/* @__PURE__ */ d(
|
|
1805
1817
|
"div",
|
|
1806
1818
|
{
|
|
1807
|
-
...
|
|
1819
|
+
...x("chat/input_box/textarea_and_attachments_container"),
|
|
1808
1820
|
className: "flex flex-col gap-2",
|
|
1809
1821
|
children: [
|
|
1810
1822
|
c.length > 0 && /* @__PURE__ */ r(
|
|
1811
1823
|
"div",
|
|
1812
1824
|
{
|
|
1813
|
-
...
|
|
1825
|
+
...x("chat/input_box/attachments_container"),
|
|
1814
1826
|
className: "flex items-center gap-1",
|
|
1815
|
-
children: /* @__PURE__ */ r(D, { mode: "popLayout", children: c.map((
|
|
1816
|
-
|
|
1827
|
+
children: /* @__PURE__ */ r(D, { mode: "popLayout", children: c.map((u) => /* @__PURE__ */ r(k, { snapExit: !0, children: /* @__PURE__ */ r(
|
|
1828
|
+
Io,
|
|
1817
1829
|
{
|
|
1818
|
-
onCancel: () =>
|
|
1819
|
-
file:
|
|
1830
|
+
onCancel: () => h(u.id),
|
|
1831
|
+
file: u
|
|
1820
1832
|
}
|
|
1821
|
-
) },
|
|
1833
|
+
) }, u.id)) })
|
|
1822
1834
|
}
|
|
1823
1835
|
),
|
|
1824
1836
|
/* @__PURE__ */ r(
|
|
1825
1837
|
"textarea",
|
|
1826
1838
|
{
|
|
1827
|
-
...
|
|
1839
|
+
...x("chat/input_box/textarea"),
|
|
1828
1840
|
onPaste: j,
|
|
1829
1841
|
ref: o,
|
|
1830
1842
|
id: "chat-input",
|
|
1831
1843
|
value: a,
|
|
1832
1844
|
rows: 3,
|
|
1833
|
-
className:
|
|
1845
|
+
className: p(
|
|
1834
1846
|
/** Match the border radius of the container */
|
|
1835
1847
|
// INPUT_CONTAINER_B_RADIUS,
|
|
1836
1848
|
"max-h-16 [field-sizing:content]",
|
|
@@ -1841,9 +1853,9 @@ function No() {
|
|
|
1841
1853
|
// 16px on mobiles prevents auto-zoom on the input when focused
|
|
1842
1854
|
e ? "text-[16px]" : "text-sm"
|
|
1843
1855
|
),
|
|
1844
|
-
onChange: (
|
|
1845
|
-
onKeyDown: async (
|
|
1846
|
-
|
|
1856
|
+
onChange: (u) => l(u.target.value),
|
|
1857
|
+
onKeyDown: async (u) => {
|
|
1858
|
+
u.key === "Enter" && !u.shiftKey && (u.preventDefault(), _());
|
|
1847
1859
|
},
|
|
1848
1860
|
placeholder: i("write_a_message_placeholder")
|
|
1849
1861
|
}
|
|
@@ -1857,17 +1869,17 @@ function No() {
|
|
|
1857
1869
|
{
|
|
1858
1870
|
side: "top",
|
|
1859
1871
|
align: "start",
|
|
1860
|
-
content: "attach images, PDFs, or spreadsheets (maximum size
|
|
1872
|
+
content: "attach images, videos, PDFs, or spreadsheets (maximum size 25mb)",
|
|
1861
1873
|
children: /* @__PURE__ */ r(
|
|
1862
1874
|
S,
|
|
1863
1875
|
{
|
|
1864
1876
|
onClick: M,
|
|
1865
1877
|
size: "fit",
|
|
1866
1878
|
variant: "ghost",
|
|
1867
|
-
className:
|
|
1879
|
+
className: p(
|
|
1868
1880
|
"rounded-full size-8 flex items-center justify-center p-0 overflow-hidden"
|
|
1869
1881
|
),
|
|
1870
|
-
children: /* @__PURE__ */ r(D, { mode: "wait", children: T ? /* @__PURE__ */ r(k, { children: /* @__PURE__ */ r(
|
|
1882
|
+
children: /* @__PURE__ */ r(D, { mode: "wait", children: T ? /* @__PURE__ */ r(k, { children: /* @__PURE__ */ r(mt, { className: "size-4 opacity-50" }) }, "paper-clip-disabled") : /* @__PURE__ */ r(k, { children: /* @__PURE__ */ r(mt, { className: "size-4" }) }, "paper-clip") })
|
|
1871
1883
|
}
|
|
1872
1884
|
)
|
|
1873
1885
|
}
|
|
@@ -1877,9 +1889,9 @@ function No() {
|
|
|
1877
1889
|
{
|
|
1878
1890
|
size: "fit",
|
|
1879
1891
|
onClick: _,
|
|
1880
|
-
disabled: T ||
|
|
1892
|
+
disabled: T || w || N,
|
|
1881
1893
|
className: "rounded-full size-8 flex items-center justify-center p-0",
|
|
1882
|
-
children: /* @__PURE__ */ r(D, { mode: "wait", children: T ||
|
|
1894
|
+
children: /* @__PURE__ */ r(D, { mode: "wait", children: T || w ? /* @__PURE__ */ r(k, { snapExit: !0, children: /* @__PURE__ */ r(Dr, { className: "size-4 animate-spin animate-iteration-infinite" }) }, "loading") : /* @__PURE__ */ r(k, { snapExit: !0, children: /* @__PURE__ */ r(Pt, { className: "size-4" }) }, "send") })
|
|
1883
1895
|
}
|
|
1884
1896
|
) })
|
|
1885
1897
|
] })
|
|
@@ -1890,31 +1902,31 @@ function No() {
|
|
|
1890
1902
|
}
|
|
1891
1903
|
);
|
|
1892
1904
|
}
|
|
1893
|
-
function
|
|
1894
|
-
const { widgetCtx: e } =
|
|
1905
|
+
function kt() {
|
|
1906
|
+
const { widgetCtx: e } = A(), { router: o } = z(), { canCreateNewSession: t } = U(), { toSessionsScreen: n } = H(), { t: s } = G();
|
|
1895
1907
|
return /* @__PURE__ */ r(J, { children: t || o != null && o.chatScreenOnly ? /* @__PURE__ */ r(S, { onClick: e.resetChat, className: "rounded-2xl w-full", children: s("new_conversation") }) : /* @__PURE__ */ r(S, { onClick: n, className: "rounded-2xl w-full", children: s("back_to_conversations") }) });
|
|
1896
1908
|
}
|
|
1897
|
-
function
|
|
1898
|
-
const { t: e } =
|
|
1909
|
+
function Do() {
|
|
1910
|
+
const { t: e } = G(), { isCsatRequested: o, isCsatSubmitted: t } = It();
|
|
1899
1911
|
return /* @__PURE__ */ r("div", { className: "p-2", children: /* @__PURE__ */ r("div", { className: "p-2 bg-muted rounded-3xl", children: /* @__PURE__ */ r(D, { mode: "wait", children: o || t ? /* @__PURE__ */ d(W, { children: [
|
|
1900
|
-
/* @__PURE__ */ r(
|
|
1901
|
-
/* @__PURE__ */ r(D, { mode: "wait", children: t && /* @__PURE__ */ r(W, { children: /* @__PURE__ */ r(
|
|
1912
|
+
/* @__PURE__ */ r(So, {}),
|
|
1913
|
+
/* @__PURE__ */ r(D, { mode: "wait", children: t && /* @__PURE__ */ r(W, { children: /* @__PURE__ */ r(kt, {}) }, "new-conv-or-back-to-convs-button") })
|
|
1902
1914
|
] }, "csat") : /* @__PURE__ */ d(W, { children: [
|
|
1903
1915
|
/* @__PURE__ */ d("div", { className: "ps-2 flex items-center gap-1 pb-2", children: [
|
|
1904
|
-
/* @__PURE__ */ r(
|
|
1916
|
+
/* @__PURE__ */ r(Rt, { className: "size-4 text-emerald-600" }),
|
|
1905
1917
|
/* @__PURE__ */ r("h2", { className: "text-sm font-medium", children: e("your_issue_has_been_resolved") })
|
|
1906
1918
|
] }),
|
|
1907
|
-
/* @__PURE__ */ r(
|
|
1919
|
+
/* @__PURE__ */ r(kt, {})
|
|
1908
1920
|
] }, "session-closed") }) }) });
|
|
1909
1921
|
}
|
|
1910
|
-
function
|
|
1922
|
+
function Eo() {
|
|
1911
1923
|
var a;
|
|
1912
|
-
const { initialQuestions: e, initialQuestionsPosition: o, thisWasHelpfulOrNot: t } = z(), { sessionState: n } = U(), { messagesState: s } =
|
|
1924
|
+
const { initialQuestions: e, initialQuestionsPosition: o, thisWasHelpfulOrNot: t } = z(), { sessionState: n } = U(), { messagesState: s } = O(), i = s.messages.length === 0;
|
|
1913
1925
|
return /* @__PURE__ */ r("footer", { children: /* @__PURE__ */ r(D, { mode: "wait", children: n.session && !((a = n.session) != null && a.isOpened) ? /* @__PURE__ */ d(W, { children: [
|
|
1914
|
-
/* @__PURE__ */ r(
|
|
1915
|
-
/* @__PURE__ */ r(
|
|
1926
|
+
/* @__PURE__ */ r(Do, {}),
|
|
1927
|
+
/* @__PURE__ */ r(yt, {})
|
|
1916
1928
|
] }, "session-closed") : /* @__PURE__ */ d(W, { children: [
|
|
1917
|
-
s.lastAIResMightSolveUserIssue && (t == null ? void 0 : t.enabled) !== !1 && /* @__PURE__ */ r(
|
|
1929
|
+
s.lastAIResMightSolveUserIssue && (t == null ? void 0 : t.enabled) !== !1 && /* @__PURE__ */ r(_o, {}),
|
|
1918
1930
|
i && e && o !== "below-initial-messages" && /* @__PURE__ */ r("div", { className: "flex items-center flex-row justify-end gap-2 flex-wrap px-2", children: e == null ? void 0 : e.map((l, c) => /* @__PURE__ */ r(
|
|
1919
1931
|
Ee,
|
|
1920
1932
|
{
|
|
@@ -1922,17 +1934,17 @@ function _o() {
|
|
|
1922
1934
|
},
|
|
1923
1935
|
`${l}-${c}`
|
|
1924
1936
|
)) }),
|
|
1925
|
-
/* @__PURE__ */ r(
|
|
1926
|
-
/* @__PURE__ */ r(
|
|
1937
|
+
/* @__PURE__ */ r(Mo, {}),
|
|
1938
|
+
/* @__PURE__ */ r(yt, {})
|
|
1927
1939
|
] }, "chat-input") }) });
|
|
1928
1940
|
}
|
|
1929
|
-
function
|
|
1941
|
+
function Ro({
|
|
1930
1942
|
isFirstInGroup: e,
|
|
1931
1943
|
isLastInGroup: o,
|
|
1932
1944
|
isAloneInGroup: t,
|
|
1933
1945
|
...n
|
|
1934
1946
|
}) {
|
|
1935
|
-
const { componentStore: s } =
|
|
1947
|
+
const { componentStore: s } = A();
|
|
1936
1948
|
if (n.type !== "AGENT" && n.type !== "AI") return null;
|
|
1937
1949
|
if (n.data.action) {
|
|
1938
1950
|
const a = s.getComponent(n.data.action.name);
|
|
@@ -1968,7 +1980,7 @@ function Io({
|
|
|
1968
1980
|
}
|
|
1969
1981
|
);
|
|
1970
1982
|
}
|
|
1971
|
-
function
|
|
1983
|
+
function tr({
|
|
1972
1984
|
messages: e,
|
|
1973
1985
|
className: o,
|
|
1974
1986
|
containerClassName: t
|
|
@@ -1990,7 +2002,7 @@ function Qt({
|
|
|
1990
2002
|
return console.error(c), null;
|
|
1991
2003
|
}
|
|
1992
2004
|
})();
|
|
1993
|
-
return i ? /* @__PURE__ */ r("div", { className: t, children: /* @__PURE__ */ r("span", { className:
|
|
2005
|
+
return i ? /* @__PURE__ */ r("div", { className: t, children: /* @__PURE__ */ r("span", { className: p("text-xs text-muted-foreground", o), children: i }) }) : null;
|
|
1994
2006
|
}
|
|
1995
2007
|
function pe({
|
|
1996
2008
|
messages: e,
|
|
@@ -2000,39 +2012,39 @@ function pe({
|
|
|
2000
2012
|
return /* @__PURE__ */ d(
|
|
2001
2013
|
"div",
|
|
2002
2014
|
{
|
|
2003
|
-
...
|
|
2004
|
-
className:
|
|
2015
|
+
...x("chat/agent_msg_group/root"),
|
|
2016
|
+
className: p("flex items-end gap-2"),
|
|
2005
2017
|
children: [
|
|
2006
2018
|
/* @__PURE__ */ r(oe, { content: o == null ? void 0 : o.name, side: "right", align: "end", children: /* @__PURE__ */ r(
|
|
2007
2019
|
ve,
|
|
2008
2020
|
{
|
|
2009
|
-
...
|
|
2021
|
+
...x("chat/agent_msg_group/root/avatar"),
|
|
2010
2022
|
agent: o,
|
|
2011
2023
|
className: "hidden"
|
|
2012
2024
|
}
|
|
2013
2025
|
) }),
|
|
2014
|
-
/* @__PURE__ */ d("div", { className:
|
|
2026
|
+
/* @__PURE__ */ d("div", { className: p("flex-1 flex flex-col gap-1"), children: [
|
|
2015
2027
|
/* @__PURE__ */ d(
|
|
2016
2028
|
"div",
|
|
2017
2029
|
{
|
|
2018
|
-
...
|
|
2019
|
-
className:
|
|
2030
|
+
...x("chat/agent_msg_group/avatar_and_msgs/root"),
|
|
2031
|
+
className: p("flex items-end gap-2"),
|
|
2020
2032
|
children: [
|
|
2021
2033
|
/* @__PURE__ */ r(oe, { content: o == null ? void 0 : o.name, side: "right", align: "end", children: /* @__PURE__ */ r(
|
|
2022
2034
|
ve,
|
|
2023
2035
|
{
|
|
2024
|
-
...
|
|
2036
|
+
...x("chat/agent_msg_group/avatar_and_msgs/avatar"),
|
|
2025
2037
|
agent: o
|
|
2026
2038
|
}
|
|
2027
2039
|
) }),
|
|
2028
2040
|
/* @__PURE__ */ d(
|
|
2029
2041
|
"div",
|
|
2030
2042
|
{
|
|
2031
|
-
...
|
|
2032
|
-
className:
|
|
2043
|
+
...x("chat/agent_msg_group/avatar_and_msgs/msgs"),
|
|
2044
|
+
className: p("flex-1 flex flex-col gap-1"),
|
|
2033
2045
|
children: [
|
|
2034
2046
|
e.map((n, s, i) => /* @__PURE__ */ r(
|
|
2035
|
-
|
|
2047
|
+
Ro,
|
|
2036
2048
|
{
|
|
2037
2049
|
isFirstInGroup: s === 0,
|
|
2038
2050
|
isLastInGroup: s === i.length - 1,
|
|
@@ -2041,7 +2053,7 @@ function pe({
|
|
|
2041
2053
|
},
|
|
2042
2054
|
n.id
|
|
2043
2055
|
)),
|
|
2044
|
-
/* @__PURE__ */ r(
|
|
2056
|
+
/* @__PURE__ */ r(tr, { messages: e })
|
|
2045
2057
|
]
|
|
2046
2058
|
}
|
|
2047
2059
|
)
|
|
@@ -2051,8 +2063,8 @@ function pe({
|
|
|
2051
2063
|
t && t.length > 0 && /* @__PURE__ */ r(
|
|
2052
2064
|
"div",
|
|
2053
2065
|
{
|
|
2054
|
-
...
|
|
2055
|
-
className:
|
|
2066
|
+
...x("chat/agent_msg_group/suggestions"),
|
|
2067
|
+
className: p("flex flex-col gap-1 ps-8"),
|
|
2056
2068
|
children: t == null ? void 0 : t.map((n, s) => /* @__PURE__ */ r(
|
|
2057
2069
|
Ee,
|
|
2058
2070
|
{
|
|
@@ -2067,14 +2079,14 @@ function pe({
|
|
|
2067
2079
|
}
|
|
2068
2080
|
);
|
|
2069
2081
|
}
|
|
2070
|
-
function
|
|
2082
|
+
function Po() {
|
|
2071
2083
|
var t, n;
|
|
2072
2084
|
const e = X();
|
|
2073
2085
|
if ((t = e.session) != null && t.isOpened || !e.session) return null;
|
|
2074
2086
|
const o = (n = e.config.customComponents) == null ? void 0 : n.onSessionResolved;
|
|
2075
2087
|
return o ? /* @__PURE__ */ r(o, { ...e }) : null;
|
|
2076
2088
|
}
|
|
2077
|
-
function
|
|
2089
|
+
function jo({
|
|
2078
2090
|
message: e,
|
|
2079
2091
|
isFirstInGroup: o,
|
|
2080
2092
|
isLastInGroup: t,
|
|
@@ -2084,18 +2096,18 @@ function Mo({
|
|
|
2084
2096
|
return /* @__PURE__ */ d(
|
|
2085
2097
|
"div",
|
|
2086
2098
|
{
|
|
2087
|
-
...
|
|
2099
|
+
...x("chat/user_msg/root"),
|
|
2088
2100
|
className: "w-5/6 flex flex-col items-end gap-1",
|
|
2089
2101
|
children: [
|
|
2090
|
-
e.attachments && e.attachments.length > 0 && /* @__PURE__ */ r("div", { className: "w-full flex gap-1 flex-wrap justify-end", children: (s = e.attachments) == null ? void 0 : s.map((i) => /* @__PURE__ */ r(
|
|
2102
|
+
e.attachments && e.attachments.length > 0 && /* @__PURE__ */ r("div", { className: "w-full flex gap-1 flex-wrap justify-end", children: (s = e.attachments) == null ? void 0 : s.map((i) => /* @__PURE__ */ r(Xt, { attachment: i }, i.id)) }),
|
|
2091
2103
|
e.content.length > 0 && /* @__PURE__ */ r(
|
|
2092
2104
|
"div",
|
|
2093
2105
|
{
|
|
2094
|
-
...
|
|
2106
|
+
...x("chat/user_msg/msg"),
|
|
2095
2107
|
"data-first": o,
|
|
2096
2108
|
"data-last": t,
|
|
2097
2109
|
"data-alone": n,
|
|
2098
|
-
className:
|
|
2110
|
+
className: p(
|
|
2099
2111
|
"transition-all",
|
|
2100
2112
|
"w-fit py-3 px-4 rounded-3xl text-sm",
|
|
2101
2113
|
"bg-primary text-primary-foreground",
|
|
@@ -2114,17 +2126,17 @@ function Mo({
|
|
|
2114
2126
|
}
|
|
2115
2127
|
);
|
|
2116
2128
|
}
|
|
2117
|
-
function
|
|
2129
|
+
function Ao({
|
|
2118
2130
|
messages: e
|
|
2119
2131
|
}) {
|
|
2120
2132
|
return /* @__PURE__ */ d(
|
|
2121
2133
|
"div",
|
|
2122
2134
|
{
|
|
2123
|
-
...
|
|
2124
|
-
className:
|
|
2135
|
+
...x("chat/user_msg_group/root"),
|
|
2136
|
+
className: p("group", "flex flex-col gap-1 justify-end items-end"),
|
|
2125
2137
|
children: [
|
|
2126
2138
|
e.map((o, t, n) => /* @__PURE__ */ r(
|
|
2127
|
-
|
|
2139
|
+
jo,
|
|
2128
2140
|
{
|
|
2129
2141
|
message: o,
|
|
2130
2142
|
isFirstInGroup: t === 0,
|
|
@@ -2133,37 +2145,37 @@ function Do({
|
|
|
2133
2145
|
},
|
|
2134
2146
|
o.id
|
|
2135
2147
|
)),
|
|
2136
|
-
/* @__PURE__ */ r(
|
|
2148
|
+
/* @__PURE__ */ r(tr, { messages: e, containerClassName: "ms-auto" })
|
|
2137
2149
|
]
|
|
2138
2150
|
}
|
|
2139
2151
|
);
|
|
2140
2152
|
}
|
|
2141
|
-
function
|
|
2153
|
+
function Oo(e) {
|
|
2142
2154
|
const o = [];
|
|
2143
2155
|
let t = null;
|
|
2144
2156
|
return e.forEach((n) => {
|
|
2145
|
-
var s, i, a, l, c,
|
|
2157
|
+
var s, i, a, l, c, m;
|
|
2146
2158
|
// Start a new group if the type changes
|
|
2147
2159
|
(((s = t == null ? void 0 : t[0]) == null ? void 0 : s.type) !== n.type || // Start a new group if the agent changes
|
|
2148
|
-
((i = t[0]) == null ? void 0 : i.type) === "AGENT" && n.type === "AGENT" && (((a = n.agent) == null ? void 0 : a.id) !== ((l = t[0].agent) == null ? void 0 : l.id) || ((c = n.agent) == null ? void 0 : c.name) !== ((
|
|
2160
|
+
((i = t[0]) == null ? void 0 : i.type) === "AGENT" && n.type === "AGENT" && (((a = n.agent) == null ? void 0 : a.id) !== ((l = t[0].agent) == null ? void 0 : l.id) || ((c = n.agent) == null ? void 0 : c.name) !== ((m = t[0].agent) == null ? void 0 : m.name))) && (t = [], o.push(t)), t.push(n);
|
|
2149
2161
|
}), o;
|
|
2150
2162
|
}
|
|
2151
|
-
function
|
|
2163
|
+
function Fo(e) {
|
|
2152
2164
|
var o;
|
|
2153
2165
|
return ((o = e == null ? void 0 : e[0]) == null ? void 0 : o.type) === "USER";
|
|
2154
2166
|
}
|
|
2155
|
-
function
|
|
2167
|
+
function Ho(e) {
|
|
2156
2168
|
var o;
|
|
2157
2169
|
return ((o = e == null ? void 0 : e[0]) == null ? void 0 : o.type) === "AI";
|
|
2158
2170
|
}
|
|
2159
|
-
function
|
|
2171
|
+
function Wo(e) {
|
|
2160
2172
|
var o;
|
|
2161
2173
|
return ((o = e == null ? void 0 : e[0]) == null ? void 0 : o.type) === "AGENT";
|
|
2162
2174
|
}
|
|
2163
|
-
function
|
|
2175
|
+
function Lo() {
|
|
2164
2176
|
const {
|
|
2165
2177
|
messagesState: { messages: e }
|
|
2166
|
-
} =
|
|
2178
|
+
} = O(), {
|
|
2167
2179
|
advancedInitialMessages: o = [],
|
|
2168
2180
|
initialQuestionsPosition: t,
|
|
2169
2181
|
initialQuestions: n,
|
|
@@ -2186,18 +2198,18 @@ function Oo() {
|
|
|
2186
2198
|
}
|
|
2187
2199
|
) });
|
|
2188
2200
|
}
|
|
2189
|
-
function
|
|
2201
|
+
function $o() {
|
|
2190
2202
|
const {
|
|
2191
2203
|
messagesState: { messages: e }
|
|
2192
|
-
} =
|
|
2204
|
+
} = O(), { chatBannerItems: o } = z();
|
|
2193
2205
|
return !(o != null && o.length) || e.length > 0 && o.every((t) => !t.persistent) ? null : /* @__PURE__ */ r("div", { className: "w-full text-center text-xs", children: o.map(
|
|
2194
2206
|
({ message: t, persistent: n }, s) => e.length > 0 && !n ? null : /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r(Se, { children: t }) }, `${t}-${s}`)
|
|
2195
2207
|
) });
|
|
2196
2208
|
}
|
|
2197
|
-
function
|
|
2209
|
+
function Bo() {
|
|
2198
2210
|
const {
|
|
2199
2211
|
messagesState: { messages: e }
|
|
2200
|
-
} =
|
|
2212
|
+
} = O(), o = z(), {
|
|
2201
2213
|
advancedInitialMessages: t = [],
|
|
2202
2214
|
initialQuestions: n,
|
|
2203
2215
|
initialQuestionsPosition: s
|
|
@@ -2222,24 +2234,24 @@ function Fo() {
|
|
|
2222
2234
|
}
|
|
2223
2235
|
) });
|
|
2224
2236
|
}
|
|
2225
|
-
function
|
|
2237
|
+
function Yo() {
|
|
2226
2238
|
var t;
|
|
2227
2239
|
const e = X(), o = (t = e.config.customComponents) == null ? void 0 : t.chatBottomComponents;
|
|
2228
2240
|
return o ? /* @__PURE__ */ r("div", { children: o.map(({ key: n, component: s }) => /* @__PURE__ */ r(s, { ...e }, n)) }) : null;
|
|
2229
2241
|
}
|
|
2230
|
-
function
|
|
2242
|
+
function Uo() {
|
|
2231
2243
|
const {
|
|
2232
2244
|
messagesState: { messages: e }
|
|
2233
|
-
} =
|
|
2234
|
-
() =>
|
|
2245
|
+
} = O(), { isAwaitingBotReply: o } = Tt(), { componentStore: t } = A(), { bot: n, humanAgent: s } = z(), i = St(
|
|
2246
|
+
() => Oo(e),
|
|
2235
2247
|
[e]
|
|
2236
2248
|
), a = t.getComponent(
|
|
2237
2249
|
"loading"
|
|
2238
2250
|
), l = B(null);
|
|
2239
2251
|
function c() {
|
|
2240
2252
|
setTimeout(() => {
|
|
2241
|
-
const
|
|
2242
|
-
|
|
2253
|
+
const m = l.current;
|
|
2254
|
+
m && (m.scrollTop = m.scrollHeight);
|
|
2243
2255
|
}, 0);
|
|
2244
2256
|
}
|
|
2245
2257
|
return se(() => {
|
|
@@ -2247,40 +2259,40 @@ function Wo() {
|
|
|
2247
2259
|
}, [e]), /* @__PURE__ */ d(
|
|
2248
2260
|
"div",
|
|
2249
2261
|
{
|
|
2250
|
-
...
|
|
2262
|
+
...x("chat/msgs/root"),
|
|
2251
2263
|
ref: l,
|
|
2252
2264
|
className: "max-h-full scroll-smooth relative flex-1 py-2 px-4 flex flex-col gap-2 overflow-auto",
|
|
2253
2265
|
children: [
|
|
2254
|
-
/* @__PURE__ */ r(
|
|
2255
|
-
/* @__PURE__ */ r(
|
|
2256
|
-
/* @__PURE__ */ r(
|
|
2257
|
-
i.map((
|
|
2258
|
-
var
|
|
2259
|
-
const
|
|
2260
|
-
if (!
|
|
2261
|
-
if (
|
|
2262
|
-
return /* @__PURE__ */ r(
|
|
2263
|
-
if (
|
|
2264
|
-
const
|
|
2265
|
-
return o &&
|
|
2266
|
+
/* @__PURE__ */ r($o, {}),
|
|
2267
|
+
/* @__PURE__ */ r(Lo, {}),
|
|
2268
|
+
/* @__PURE__ */ r(Bo, {}),
|
|
2269
|
+
i.map((m, h) => {
|
|
2270
|
+
var g, v, C, T;
|
|
2271
|
+
const y = (g = m == null ? void 0 : m[0]) == null ? void 0 : g.type, w = (v = m[0]) == null ? void 0 : v.id;
|
|
2272
|
+
if (!y || !w) return null;
|
|
2273
|
+
if (Fo(m))
|
|
2274
|
+
return /* @__PURE__ */ r(Ao, { messages: m }, w);
|
|
2275
|
+
if (Ho(m)) {
|
|
2276
|
+
const b = h === i.length - 1;
|
|
2277
|
+
return o && b ? null : ((C = m[0]) == null || C.agent, /* @__PURE__ */ r(
|
|
2266
2278
|
pe,
|
|
2267
2279
|
{
|
|
2268
|
-
messages:
|
|
2280
|
+
messages: m,
|
|
2269
2281
|
agent: n ? { ...n, isAi: !0, id: null } : void 0
|
|
2270
2282
|
},
|
|
2271
|
-
|
|
2283
|
+
w
|
|
2272
2284
|
));
|
|
2273
2285
|
}
|
|
2274
|
-
if (
|
|
2275
|
-
const
|
|
2286
|
+
if (Wo(m)) {
|
|
2287
|
+
const b = (T = m[0]) == null ? void 0 : T.agent;
|
|
2276
2288
|
return /* @__PURE__ */ r(
|
|
2277
2289
|
pe,
|
|
2278
2290
|
{
|
|
2279
|
-
messages:
|
|
2280
|
-
agent:
|
|
2281
|
-
...
|
|
2282
|
-
name: (s == null ? void 0 : s.name) ||
|
|
2283
|
-
avatarUrl: (s == null ? void 0 : s.avatarUrl) ||
|
|
2291
|
+
messages: m,
|
|
2292
|
+
agent: b ? {
|
|
2293
|
+
...b,
|
|
2294
|
+
name: (s == null ? void 0 : s.name) || b.name || "",
|
|
2295
|
+
avatarUrl: (s == null ? void 0 : s.avatarUrl) || b.avatarUrl || null
|
|
2284
2296
|
} : s ? {
|
|
2285
2297
|
isAi: !1,
|
|
2286
2298
|
id: null,
|
|
@@ -2288,24 +2300,24 @@ function Wo() {
|
|
|
2288
2300
|
avatarUrl: s.avatarUrl || null
|
|
2289
2301
|
} : void 0
|
|
2290
2302
|
},
|
|
2291
|
-
|
|
2303
|
+
w
|
|
2292
2304
|
);
|
|
2293
2305
|
}
|
|
2294
2306
|
return null;
|
|
2295
2307
|
}),
|
|
2296
2308
|
o && a && /* @__PURE__ */ r(a, { agent: n }),
|
|
2297
|
-
/* @__PURE__ */ r(
|
|
2298
|
-
/* @__PURE__ */ r(
|
|
2309
|
+
/* @__PURE__ */ r(Yo, {}),
|
|
2310
|
+
/* @__PURE__ */ r(Po, {})
|
|
2299
2311
|
]
|
|
2300
2312
|
}
|
|
2301
2313
|
);
|
|
2302
2314
|
}
|
|
2303
|
-
function
|
|
2315
|
+
function Xo() {
|
|
2304
2316
|
const {
|
|
2305
2317
|
messagesState: { isInitialFetchLoading: e }
|
|
2306
|
-
} =
|
|
2318
|
+
} = O(), {
|
|
2307
2319
|
sessionState: { session: o }
|
|
2308
|
-
} = U(), { isCanvasOpen: t } =
|
|
2320
|
+
} = U(), { isCanvasOpen: t } = Co(), { theme: n } = V();
|
|
2309
2321
|
Me({
|
|
2310
2322
|
width: t ? n.screens.chat.withCanvas.width : n.screens.chat.width,
|
|
2311
2323
|
height: t ? n.screens.chat.withCanvas.height : n.screens.chat.height
|
|
@@ -2314,8 +2326,8 @@ function Lo() {
|
|
|
2314
2326
|
return /* @__PURE__ */ r(
|
|
2315
2327
|
"div",
|
|
2316
2328
|
{
|
|
2317
|
-
...
|
|
2318
|
-
className:
|
|
2329
|
+
...x("chat/root"),
|
|
2330
|
+
className: p("flex flex-col overflow-hidden"),
|
|
2319
2331
|
style: {
|
|
2320
2332
|
width: "100vw",
|
|
2321
2333
|
// Relative to the iframe
|
|
@@ -2327,12 +2339,12 @@ function Lo() {
|
|
|
2327
2339
|
// Relative to the iframe
|
|
2328
2340
|
},
|
|
2329
2341
|
children: /* @__PURE__ */ d("div", { className: "size-full justify-between flex flex-col", children: [
|
|
2330
|
-
/* @__PURE__ */ r(
|
|
2342
|
+
/* @__PURE__ */ r(Jt, {}),
|
|
2331
2343
|
/* @__PURE__ */ r(D, { mode: "wait", children: e ? /* @__PURE__ */ r(
|
|
2332
2344
|
k,
|
|
2333
2345
|
{
|
|
2334
2346
|
className: "flex flex-col items-center justify-center w-full flex-1",
|
|
2335
|
-
children: /* @__PURE__ */ r(
|
|
2347
|
+
children: /* @__PURE__ */ r(er, {})
|
|
2336
2348
|
},
|
|
2337
2349
|
"loading"
|
|
2338
2350
|
) : /* @__PURE__ */ d(
|
|
@@ -2344,8 +2356,8 @@ function Lo() {
|
|
|
2344
2356
|
/* @__PURE__ */ d(
|
|
2345
2357
|
"div",
|
|
2346
2358
|
{
|
|
2347
|
-
...
|
|
2348
|
-
className:
|
|
2359
|
+
...x("chat/main/root"),
|
|
2360
|
+
className: p(
|
|
2349
2361
|
"flex flex-col h-full overflow-auto transition-all",
|
|
2350
2362
|
t ? "w-2/5" : "w-full"
|
|
2351
2363
|
),
|
|
@@ -2354,16 +2366,16 @@ function Lo() {
|
|
|
2354
2366
|
transitionDuration: n.screens.chat.withCanvas.transitionDuration
|
|
2355
2367
|
},
|
|
2356
2368
|
children: [
|
|
2357
|
-
/* @__PURE__ */ r(
|
|
2358
|
-
/* @__PURE__ */ r(
|
|
2369
|
+
/* @__PURE__ */ r(Uo, {}),
|
|
2370
|
+
/* @__PURE__ */ r(Eo, {})
|
|
2359
2371
|
]
|
|
2360
2372
|
}
|
|
2361
2373
|
),
|
|
2362
2374
|
/* @__PURE__ */ r(
|
|
2363
2375
|
"div",
|
|
2364
2376
|
{
|
|
2365
|
-
...
|
|
2366
|
-
className:
|
|
2377
|
+
...x("chat/canvas/root"),
|
|
2378
|
+
className: p(
|
|
2367
2379
|
"h-full overflow-auto transition-all",
|
|
2368
2380
|
t ? "w-3/5" : "w-0"
|
|
2369
2381
|
),
|
|
@@ -2371,7 +2383,7 @@ function Lo() {
|
|
|
2371
2383
|
transitionTimingFunction: n.screens.chat.withCanvas.transitionTimingFunction,
|
|
2372
2384
|
transitionDuration: n.screens.chat.withCanvas.transitionDuration
|
|
2373
2385
|
},
|
|
2374
|
-
children: /* @__PURE__ */ r(
|
|
2386
|
+
children: /* @__PURE__ */ r(zo, {})
|
|
2375
2387
|
}
|
|
2376
2388
|
)
|
|
2377
2389
|
]
|
|
@@ -2382,19 +2394,19 @@ function Lo() {
|
|
|
2382
2394
|
}
|
|
2383
2395
|
);
|
|
2384
2396
|
}
|
|
2385
|
-
function
|
|
2397
|
+
function qo({
|
|
2386
2398
|
className: e,
|
|
2387
2399
|
...o
|
|
2388
2400
|
}) {
|
|
2389
2401
|
return /* @__PURE__ */ r(
|
|
2390
2402
|
"div",
|
|
2391
2403
|
{
|
|
2392
|
-
className:
|
|
2404
|
+
className: p("animate-pulse rounded-md bg-secondary", e),
|
|
2393
2405
|
...o
|
|
2394
2406
|
}
|
|
2395
2407
|
);
|
|
2396
2408
|
}
|
|
2397
|
-
function
|
|
2409
|
+
function Vo({ className: e }) {
|
|
2398
2410
|
return /* @__PURE__ */ r(
|
|
2399
2411
|
"svg",
|
|
2400
2412
|
{
|
|
@@ -2403,7 +2415,7 @@ function Bo({ className: e }) {
|
|
|
2403
2415
|
viewBox: "0 0 26 32",
|
|
2404
2416
|
fill: "none",
|
|
2405
2417
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2406
|
-
className:
|
|
2418
|
+
className: p("text-primary-foreground", e),
|
|
2407
2419
|
children: /* @__PURE__ */ r(
|
|
2408
2420
|
"path",
|
|
2409
2421
|
{
|
|
@@ -2414,12 +2426,12 @@ function Bo({ className: e }) {
|
|
|
2414
2426
|
}
|
|
2415
2427
|
);
|
|
2416
2428
|
}
|
|
2417
|
-
function
|
|
2429
|
+
function rr({ className: e }) {
|
|
2418
2430
|
const { token: o } = z();
|
|
2419
2431
|
return /* @__PURE__ */ r(
|
|
2420
2432
|
"div",
|
|
2421
2433
|
{
|
|
2422
|
-
className:
|
|
2434
|
+
className: p(
|
|
2423
2435
|
"flex items-center justify-center gap-2 p-2 pt-0",
|
|
2424
2436
|
e
|
|
2425
2437
|
),
|
|
@@ -2429,7 +2441,7 @@ function Jt({ className: e }) {
|
|
|
2429
2441
|
href: `https://open.cx/?ref=${o}`,
|
|
2430
2442
|
target: "_blank",
|
|
2431
2443
|
rel: "noreferrer",
|
|
2432
|
-
className:
|
|
2444
|
+
className: p(
|
|
2433
2445
|
"text-[10px] flex items-center",
|
|
2434
2446
|
"text-muted-foreground/70 [&_svg]:text-muted-foreground/70",
|
|
2435
2447
|
"hover:text-primary [&_svg]:hover:text-primary"
|
|
@@ -2438,7 +2450,7 @@ function Jt({ className: e }) {
|
|
|
2438
2450
|
/* @__PURE__ */ r("span", { children: "Powered by" }),
|
|
2439
2451
|
/* @__PURE__ */ r("span", { children: " " }),
|
|
2440
2452
|
/* @__PURE__ */ d("span", { className: "flex items-center gap-[1px]", children: [
|
|
2441
|
-
/* @__PURE__ */ r("span", { children: /* @__PURE__ */ r(
|
|
2453
|
+
/* @__PURE__ */ r("span", { children: /* @__PURE__ */ r(Vo, { className: "size-3 inline-block" }) }),
|
|
2442
2454
|
/* @__PURE__ */ r("span", { className: "font-semibold", children: "open" })
|
|
2443
2455
|
] })
|
|
2444
2456
|
]
|
|
@@ -2447,10 +2459,10 @@ function Jt({ className: e }) {
|
|
|
2447
2459
|
}
|
|
2448
2460
|
);
|
|
2449
2461
|
}
|
|
2450
|
-
function
|
|
2462
|
+
function Go({ children: e }) {
|
|
2451
2463
|
return /* @__PURE__ */ r("p", { className: "ps-4 text-xs text-muted-foreground/75 uppercase font-semibold tracking-tight", children: e });
|
|
2452
2464
|
}
|
|
2453
|
-
function
|
|
2465
|
+
function Ct({
|
|
2454
2466
|
session: e,
|
|
2455
2467
|
className: o
|
|
2456
2468
|
}) {
|
|
@@ -2460,7 +2472,7 @@ function bt({
|
|
|
2460
2472
|
{
|
|
2461
2473
|
variant: "ghost",
|
|
2462
2474
|
size: "lg",
|
|
2463
|
-
className:
|
|
2475
|
+
className: p(
|
|
2464
2476
|
"rounded-full p-2 pe-4 flex text-start justify-between w-full whitespace-normal",
|
|
2465
2477
|
o
|
|
2466
2478
|
),
|
|
@@ -2469,28 +2481,28 @@ function bt({
|
|
|
2469
2481
|
/* @__PURE__ */ d("div", { className: "flex-1 flex gap-2 items-center", children: [
|
|
2470
2482
|
/* @__PURE__ */ r(D, { mode: "wait", children: /* @__PURE__ */ r(k, { snapExit: !0, children: /* @__PURE__ */ d(_e, { className: "size-10", children: [
|
|
2471
2483
|
/* @__PURE__ */ r(Ie, { src: a, alt: "Agent Icon" }),
|
|
2472
|
-
/* @__PURE__ */ r(Te, { children: /* @__PURE__ */ r(
|
|
2484
|
+
/* @__PURE__ */ r(Te, { children: /* @__PURE__ */ r(Or, { className: "size-4" }) })
|
|
2473
2485
|
] }) }) }),
|
|
2474
2486
|
/* @__PURE__ */ d("div", { className: "flex-1", children: [
|
|
2475
2487
|
/* @__PURE__ */ r(D, { mode: "wait", children: /* @__PURE__ */ r(k, { snapExit: !0, children: i }, i) }),
|
|
2476
2488
|
/* @__PURE__ */ r(D, { mode: "wait", children: e.lastMessage ? /* @__PURE__ */ r(k, { snapExit: !0, children: /* @__PURE__ */ r(
|
|
2477
|
-
|
|
2489
|
+
qt,
|
|
2478
2490
|
{
|
|
2479
|
-
remarkPlugins: [
|
|
2480
|
-
rehypePlugins: [
|
|
2491
|
+
remarkPlugins: [jt],
|
|
2492
|
+
rehypePlugins: [At],
|
|
2481
2493
|
className: "line-clamp-1 overflow-hidden text-ellipsis text-xs text-muted-foreground",
|
|
2482
2494
|
children: e.lastMessage
|
|
2483
2495
|
}
|
|
2484
|
-
) }, e.lastMessage || "content") : /* @__PURE__ */ r(k, { className: "w-1/2", snapExit: !0, children: /* @__PURE__ */ r(
|
|
2496
|
+
) }, e.lastMessage || "content") : /* @__PURE__ */ r(k, { className: "w-1/2", snapExit: !0, children: /* @__PURE__ */ r(qo, { className: "h-4 w-full" }) }, "skeleton") })
|
|
2485
2497
|
] })
|
|
2486
2498
|
] }),
|
|
2487
|
-
/* @__PURE__ */ r(
|
|
2499
|
+
/* @__PURE__ */ r(Fr, { className: "size-4 text-muted-foreground shrink-0 rtl:-scale-100" })
|
|
2488
2500
|
]
|
|
2489
2501
|
}
|
|
2490
2502
|
);
|
|
2491
2503
|
}
|
|
2492
|
-
function
|
|
2493
|
-
const { t: e } =
|
|
2504
|
+
function Zo() {
|
|
2505
|
+
const { t: e } = G(), { toChatScreen: o } = H(), {
|
|
2494
2506
|
sessionsState: { data: t, isInitialFetchLoading: n },
|
|
2495
2507
|
openSessions: s,
|
|
2496
2508
|
closedSessions: i,
|
|
@@ -2500,7 +2512,7 @@ function Uo() {
|
|
|
2500
2512
|
k,
|
|
2501
2513
|
{
|
|
2502
2514
|
className: "flex-1 flex items-center justify-center",
|
|
2503
|
-
children: /* @__PURE__ */ r(
|
|
2515
|
+
children: /* @__PURE__ */ r(er, {})
|
|
2504
2516
|
},
|
|
2505
2517
|
"loading"
|
|
2506
2518
|
) : /* @__PURE__ */ r(
|
|
@@ -2516,7 +2528,7 @@ function Uo() {
|
|
|
2516
2528
|
delay: 0.2,
|
|
2517
2529
|
className: "space-y-2",
|
|
2518
2530
|
snapExit: !0,
|
|
2519
|
-
children: s.map((l) => /* @__PURE__ */ r(
|
|
2531
|
+
children: s.map((l) => /* @__PURE__ */ r(Ct, { session: l }, l.id))
|
|
2520
2532
|
},
|
|
2521
2533
|
"open-sessions"
|
|
2522
2534
|
),
|
|
@@ -2527,9 +2539,9 @@ function Uo() {
|
|
|
2527
2539
|
delay: 0.2,
|
|
2528
2540
|
snapExit: !0,
|
|
2529
2541
|
children: [
|
|
2530
|
-
/* @__PURE__ */ r(
|
|
2542
|
+
/* @__PURE__ */ r(Go, { children: e("closed_conversations") }),
|
|
2531
2543
|
i.map((l) => /* @__PURE__ */ r(
|
|
2532
|
-
|
|
2544
|
+
Ct,
|
|
2533
2545
|
{
|
|
2534
2546
|
session: l,
|
|
2535
2547
|
className: "opacity-50 hover:opacity-100"
|
|
@@ -2541,10 +2553,10 @@ function Uo() {
|
|
|
2541
2553
|
"closed-sessions"
|
|
2542
2554
|
)
|
|
2543
2555
|
] }),
|
|
2544
|
-
a && /* @__PURE__ */ r("div", { className: "mt-auto w-full rounded-3xl sticky bottom-0 outline outline-8 outline-background bg-background", children: /* @__PURE__ */
|
|
2556
|
+
a && /* @__PURE__ */ r("div", { className: "mt-auto w-full rounded-3xl sticky bottom-0 outline outline-8 outline-background bg-background", children: /* @__PURE__ */ pt(
|
|
2545
2557
|
S,
|
|
2546
2558
|
{
|
|
2547
|
-
...
|
|
2559
|
+
...x("sessions/new_conversation_btn"),
|
|
2548
2560
|
size: "lg",
|
|
2549
2561
|
key: "new-session",
|
|
2550
2562
|
className: "w-full",
|
|
@@ -2554,10 +2566,10 @@ function Uo() {
|
|
|
2554
2566
|
) })
|
|
2555
2567
|
] }) : /* @__PURE__ */ d("div", { className: "flex-1 flex flex-col gap-2 items-center", children: [
|
|
2556
2568
|
/* @__PURE__ */ r("div", { className: "flex-1 flex items-center justify-center", children: /* @__PURE__ */ r("p", { className: "text-muted-foreground", children: e("no_conversations_yet") }) }),
|
|
2557
|
-
/* @__PURE__ */
|
|
2569
|
+
/* @__PURE__ */ pt(
|
|
2558
2570
|
S,
|
|
2559
2571
|
{
|
|
2560
|
-
...
|
|
2572
|
+
...x("sessions/new_conversation_btn"),
|
|
2561
2573
|
size: "lg",
|
|
2562
2574
|
key: "new-session",
|
|
2563
2575
|
className: "w-full",
|
|
@@ -2570,16 +2582,16 @@ function Uo() {
|
|
|
2570
2582
|
"sessions"
|
|
2571
2583
|
) }) });
|
|
2572
2584
|
}
|
|
2573
|
-
function
|
|
2574
|
-
const { theme: e } =
|
|
2585
|
+
function Ko() {
|
|
2586
|
+
const { theme: e } = V();
|
|
2575
2587
|
return Me({
|
|
2576
2588
|
width: e.screens.sessions.width,
|
|
2577
2589
|
height: e.screens.sessions.height
|
|
2578
2590
|
}), /* @__PURE__ */ r(
|
|
2579
2591
|
"div",
|
|
2580
2592
|
{
|
|
2581
|
-
...
|
|
2582
|
-
className:
|
|
2593
|
+
...x("sessions/root"),
|
|
2594
|
+
className: p("flex flex-col overflow-hidden bg-background"),
|
|
2583
2595
|
style: {
|
|
2584
2596
|
width: "100vw",
|
|
2585
2597
|
// Relative to the iframe
|
|
@@ -2591,9 +2603,9 @@ function Xo() {
|
|
|
2591
2603
|
// Relative to the iframe
|
|
2592
2604
|
},
|
|
2593
2605
|
children: /* @__PURE__ */ d("div", { className: "size-full flex flex-col", children: [
|
|
2594
|
-
/* @__PURE__ */ r(
|
|
2595
|
-
/* @__PURE__ */ r(
|
|
2596
|
-
/* @__PURE__ */ r(
|
|
2606
|
+
/* @__PURE__ */ r(Jt, {}),
|
|
2607
|
+
/* @__PURE__ */ r(Zo, {}),
|
|
2608
|
+
/* @__PURE__ */ r(rr, {})
|
|
2597
2609
|
] })
|
|
2598
2610
|
}
|
|
2599
2611
|
);
|
|
@@ -2606,7 +2618,7 @@ const de = ee.forwardRef(
|
|
|
2606
2618
|
{
|
|
2607
2619
|
ref: n,
|
|
2608
2620
|
type: o,
|
|
2609
|
-
className:
|
|
2621
|
+
className: p(
|
|
2610
2622
|
// 16px on mobiles prevents auto-zoom on the input when focused
|
|
2611
2623
|
s ? "text-[16px]" : "text-sm",
|
|
2612
2624
|
"flex w-full rounded-xl p-2 ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-primary-foreground placeholder:text-muted-foreground/75 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 transition",
|
|
@@ -2620,8 +2632,8 @@ const de = ee.forwardRef(
|
|
|
2620
2632
|
}
|
|
2621
2633
|
);
|
|
2622
2634
|
de.displayName = "Input";
|
|
2623
|
-
function
|
|
2624
|
-
const { contentIframeRef: e } =
|
|
2635
|
+
function Qo() {
|
|
2636
|
+
const { contentIframeRef: e } = A(), { inline: o } = z(), t = B(null);
|
|
2625
2637
|
return se(() => {
|
|
2626
2638
|
const n = e == null ? void 0 : e.current;
|
|
2627
2639
|
if (n && t.current) {
|
|
@@ -2642,35 +2654,35 @@ function qo() {
|
|
|
2642
2654
|
}
|
|
2643
2655
|
}, [e, o]), { observedElementRef: t };
|
|
2644
2656
|
}
|
|
2645
|
-
const
|
|
2657
|
+
const Jo = ue.object({
|
|
2646
2658
|
name: ue.string().min(2),
|
|
2647
2659
|
email: ue.string().email()
|
|
2648
2660
|
});
|
|
2649
|
-
function
|
|
2650
|
-
var
|
|
2661
|
+
function en() {
|
|
2662
|
+
var b, N, _, E, f, M, j, R;
|
|
2651
2663
|
const {
|
|
2652
2664
|
widgetCtx: { org: e }
|
|
2653
|
-
} =
|
|
2665
|
+
} = A(), { setIsOpen: o } = K(), { createUnverifiedContact: t } = Mt(), { isSmallScreen: n } = $(), s = z(), { theme: i } = V(), { t: a } = G(), { observedElementRef: l } = Qo();
|
|
2654
2666
|
Me({
|
|
2655
2667
|
height: void 0,
|
|
2656
2668
|
width: i.screens.welcome.width
|
|
2657
2669
|
});
|
|
2658
|
-
const [c,
|
|
2659
|
-
(
|
|
2660
|
-
), [
|
|
2661
|
-
async (
|
|
2662
|
-
|
|
2663
|
-
const I =
|
|
2670
|
+
const [c, m] = P(((b = s.prefillUserData) == null ? void 0 : b.name) || ""), [h, y] = P(((N = s.prefillUserData) == null ? void 0 : N.email) || ""), w = (s.extraDataCollectionFields || []).filter(
|
|
2671
|
+
(u) => u !== "name" && u !== "email" && !!u
|
|
2672
|
+
), [g, v] = P({}), [C, T] = Gr(
|
|
2673
|
+
async (u) => {
|
|
2674
|
+
u.preventDefault();
|
|
2675
|
+
const I = Jo.safeParse({ name: c, email: h });
|
|
2664
2676
|
I.success && await t(
|
|
2665
2677
|
{
|
|
2666
2678
|
email: I.data.email,
|
|
2667
2679
|
non_verified_name: I.data.name
|
|
2668
2680
|
},
|
|
2669
2681
|
// Only pass extra data if there is any
|
|
2670
|
-
Object.values(
|
|
2682
|
+
Object.values(g).filter(Boolean).length ? g : void 0
|
|
2671
2683
|
);
|
|
2672
2684
|
},
|
|
2673
|
-
[c,
|
|
2685
|
+
[c, h, g]
|
|
2674
2686
|
);
|
|
2675
2687
|
return /* @__PURE__ */ r(
|
|
2676
2688
|
"div",
|
|
@@ -2691,7 +2703,7 @@ function Go() {
|
|
|
2691
2703
|
"div",
|
|
2692
2704
|
{
|
|
2693
2705
|
ref: l,
|
|
2694
|
-
className:
|
|
2706
|
+
className: p(
|
|
2695
2707
|
"flex flex-col",
|
|
2696
2708
|
n && "h-full",
|
|
2697
2709
|
"bg-[radial-gradient(ellipse_at_top_left,hsl(var(--opencx-primary)),transparent),radial-gradient(ellipse_at_top_right,hsl(var(--opencx-primary)),transparent)]"
|
|
@@ -2700,7 +2712,7 @@ function Go() {
|
|
|
2700
2712
|
/* @__PURE__ */ d(
|
|
2701
2713
|
"div",
|
|
2702
2714
|
{
|
|
2703
|
-
className:
|
|
2715
|
+
className: p(
|
|
2704
2716
|
"flex-1 flex flex-col px-4 py-12 text-start space-y-4 relative z-10",
|
|
2705
2717
|
"text-primary-foreground"
|
|
2706
2718
|
),
|
|
@@ -2715,7 +2727,7 @@ function Go() {
|
|
|
2715
2727
|
}
|
|
2716
2728
|
) : /* @__PURE__ */ r("h2", { className: "font-bold text-sm", children: e.name }) }),
|
|
2717
2729
|
/* @__PURE__ */ d("div", { className: "space-y-2", children: [
|
|
2718
|
-
/* @__PURE__ */ r("h1", { className: "text-[1.75rem] font-semibold tracking-tight leading-none", children: ((M = (
|
|
2730
|
+
/* @__PURE__ */ r("h1", { className: "text-[1.75rem] font-semibold tracking-tight leading-none", children: ((M = (f = s.textContent) == null ? void 0 : f.welcomeScreen) == null ? void 0 : M.title) || a("welcome_screen_title") }),
|
|
2719
2731
|
/* @__PURE__ */ r("p", { className: "text-sm", children: ((R = (j = s.textContent) == null ? void 0 : j.welcomeScreen) == null ? void 0 : R.description) || a("welcome_screen_description") })
|
|
2720
2732
|
] })
|
|
2721
2733
|
]
|
|
@@ -2724,7 +2736,7 @@ function Go() {
|
|
|
2724
2736
|
/* @__PURE__ */ d(
|
|
2725
2737
|
"div",
|
|
2726
2738
|
{
|
|
2727
|
-
className:
|
|
2739
|
+
className: p(
|
|
2728
2740
|
"z-10 m-2 px-2 pt-2 bp-0 space-y-2",
|
|
2729
2741
|
"bg-[white]",
|
|
2730
2742
|
"border shadow",
|
|
@@ -2736,7 +2748,7 @@ function Go() {
|
|
|
2736
2748
|
de,
|
|
2737
2749
|
{
|
|
2738
2750
|
value: c,
|
|
2739
|
-
onChange: (
|
|
2751
|
+
onChange: (u) => m(u.target.value),
|
|
2740
2752
|
required: !0,
|
|
2741
2753
|
placeholder: a("your_name_placeholder"),
|
|
2742
2754
|
name: "name"
|
|
@@ -2746,24 +2758,24 @@ function Go() {
|
|
|
2746
2758
|
de,
|
|
2747
2759
|
{
|
|
2748
2760
|
required: !0,
|
|
2749
|
-
value:
|
|
2750
|
-
onChange: (
|
|
2761
|
+
value: h,
|
|
2762
|
+
onChange: (u) => y(u.target.value),
|
|
2751
2763
|
type: "email",
|
|
2752
2764
|
placeholder: a("your_email_placeholder"),
|
|
2753
2765
|
name: "email"
|
|
2754
2766
|
}
|
|
2755
2767
|
),
|
|
2756
|
-
|
|
2768
|
+
w.map((u) => /* @__PURE__ */ r(
|
|
2757
2769
|
de,
|
|
2758
2770
|
{
|
|
2759
|
-
value:
|
|
2760
|
-
onChange: (I) =>
|
|
2771
|
+
value: g[u],
|
|
2772
|
+
onChange: (I) => v((ie) => ({
|
|
2761
2773
|
...ie,
|
|
2762
|
-
[
|
|
2774
|
+
[u]: I.target.value
|
|
2763
2775
|
})),
|
|
2764
|
-
placeholder: `${
|
|
2776
|
+
placeholder: `${u} (${a("optional")})`
|
|
2765
2777
|
},
|
|
2766
|
-
|
|
2778
|
+
u
|
|
2767
2779
|
)),
|
|
2768
2780
|
/* @__PURE__ */ d(
|
|
2769
2781
|
S,
|
|
@@ -2773,12 +2785,12 @@ function Go() {
|
|
|
2773
2785
|
size: "lg",
|
|
2774
2786
|
children: [
|
|
2775
2787
|
C.loading ? a("start_chat_button_loading") : a("start_chat_button"),
|
|
2776
|
-
/* @__PURE__ */ r(
|
|
2788
|
+
/* @__PURE__ */ r(Hr, { className: "size-4 rtl:-scale-100" })
|
|
2777
2789
|
]
|
|
2778
2790
|
}
|
|
2779
2791
|
)
|
|
2780
2792
|
] }),
|
|
2781
|
-
/* @__PURE__ */ r(
|
|
2793
|
+
/* @__PURE__ */ r(rr, {})
|
|
2782
2794
|
]
|
|
2783
2795
|
}
|
|
2784
2796
|
)
|
|
@@ -2788,7 +2800,7 @@ function Go() {
|
|
|
2788
2800
|
}
|
|
2789
2801
|
);
|
|
2790
2802
|
}
|
|
2791
|
-
function
|
|
2803
|
+
function or() {
|
|
2792
2804
|
const {
|
|
2793
2805
|
routerState: { screen: e }
|
|
2794
2806
|
} = H();
|
|
@@ -2801,7 +2813,7 @@ function er() {
|
|
|
2801
2813
|
fadeIn: "right",
|
|
2802
2814
|
className: "size-full",
|
|
2803
2815
|
snapExit: !0,
|
|
2804
|
-
children: /* @__PURE__ */ r(
|
|
2816
|
+
children: /* @__PURE__ */ r(en, {})
|
|
2805
2817
|
},
|
|
2806
2818
|
e
|
|
2807
2819
|
);
|
|
@@ -2812,7 +2824,7 @@ function er() {
|
|
|
2812
2824
|
fadeIn: "right",
|
|
2813
2825
|
className: "size-full",
|
|
2814
2826
|
snapExit: !0,
|
|
2815
|
-
children: /* @__PURE__ */ r(
|
|
2827
|
+
children: /* @__PURE__ */ r(Ko, {})
|
|
2816
2828
|
},
|
|
2817
2829
|
e
|
|
2818
2830
|
);
|
|
@@ -2823,20 +2835,20 @@ function er() {
|
|
|
2823
2835
|
fadeIn: "right",
|
|
2824
2836
|
className: "size-full",
|
|
2825
2837
|
snapExit: !0,
|
|
2826
|
-
children: /* @__PURE__ */ r(
|
|
2838
|
+
children: /* @__PURE__ */ r(Xo, {})
|
|
2827
2839
|
},
|
|
2828
2840
|
e
|
|
2829
2841
|
);
|
|
2830
2842
|
default:
|
|
2831
|
-
return F(e,
|
|
2843
|
+
return F(e, or.name), null;
|
|
2832
2844
|
}
|
|
2833
2845
|
})() }) });
|
|
2834
2846
|
}
|
|
2835
|
-
const
|
|
2847
|
+
const tn = "4.0.60", rn = `<!DOCTYPE html>
|
|
2836
2848
|
<html>
|
|
2837
2849
|
<head>
|
|
2838
2850
|
<style>
|
|
2839
|
-
${
|
|
2851
|
+
${Vt}
|
|
2840
2852
|
html, body {
|
|
2841
2853
|
height: 100%;
|
|
2842
2854
|
width: 100%;
|
|
@@ -2850,8 +2862,8 @@ html, body {
|
|
|
2850
2862
|
<body>
|
|
2851
2863
|
</body>
|
|
2852
2864
|
</html>`;
|
|
2853
|
-
function
|
|
2854
|
-
const { isOpen: e } =
|
|
2865
|
+
function nr() {
|
|
2866
|
+
const { isOpen: e } = K(), { contentIframeRef: o } = A(), { cssOverrides: t, inline: n } = z(), { theme: s, cssVars: i, computed: a } = V(), { dir: l } = G();
|
|
2855
2867
|
return /* @__PURE__ */ r(
|
|
2856
2868
|
re.div,
|
|
2857
2869
|
{
|
|
@@ -2872,10 +2884,10 @@ function tr() {
|
|
|
2872
2884
|
}
|
|
2873
2885
|
},
|
|
2874
2886
|
children: /* @__PURE__ */ d(
|
|
2875
|
-
|
|
2887
|
+
Ot,
|
|
2876
2888
|
{
|
|
2877
2889
|
ref: o,
|
|
2878
|
-
initialContent:
|
|
2890
|
+
initialContent: rn,
|
|
2879
2891
|
allowFullScreen: !0,
|
|
2880
2892
|
title: "OpenCX Live Chat",
|
|
2881
2893
|
style: {
|
|
@@ -2912,17 +2924,17 @@ function tr() {
|
|
|
2912
2924
|
...i,
|
|
2913
2925
|
zIndex: s.widgetContentContainer.zIndex
|
|
2914
2926
|
},
|
|
2915
|
-
"data-version":
|
|
2916
|
-
className:
|
|
2927
|
+
"data-version": tn,
|
|
2928
|
+
className: p(
|
|
2917
2929
|
"antialiased font-sans size-full overflow-hidden relative text-secondary-foreground isolate"
|
|
2918
2930
|
),
|
|
2919
2931
|
dir: l,
|
|
2920
2932
|
children: /* @__PURE__ */ r(
|
|
2921
|
-
|
|
2933
|
+
po,
|
|
2922
2934
|
{
|
|
2923
2935
|
delayDuration: 200,
|
|
2924
2936
|
disableHoverableContent: !0,
|
|
2925
|
-
children: /* @__PURE__ */ r(
|
|
2937
|
+
children: /* @__PURE__ */ r(oo, { children: /* @__PURE__ */ r(or, {}) })
|
|
2926
2938
|
}
|
|
2927
2939
|
)
|
|
2928
2940
|
}
|
|
@@ -2933,29 +2945,29 @@ function tr() {
|
|
|
2933
2945
|
}
|
|
2934
2946
|
);
|
|
2935
2947
|
}
|
|
2936
|
-
function
|
|
2937
|
-
const { theme: e } =
|
|
2948
|
+
function on() {
|
|
2949
|
+
const { theme: e, triggerSide: o } = V(), { dir: t } = ke(), n = (t === "rtl" ? o === "left" : o === "right") ? "end" : "start";
|
|
2938
2950
|
return /* @__PURE__ */ r(
|
|
2939
2951
|
me.Content,
|
|
2940
2952
|
{
|
|
2941
|
-
onInteractOutside: (
|
|
2953
|
+
onInteractOutside: (s) => s.preventDefault(),
|
|
2942
2954
|
forceMount: !0,
|
|
2943
2955
|
style: {
|
|
2944
2956
|
zIndex: e.widgetContentContainer.zIndex,
|
|
2945
2957
|
fontSize: "16px"
|
|
2946
2958
|
},
|
|
2947
2959
|
side: "top",
|
|
2948
|
-
align:
|
|
2960
|
+
align: n,
|
|
2949
2961
|
"aria-modal": "false",
|
|
2950
2962
|
"aria-label": "Support chat",
|
|
2951
2963
|
sideOffset: e.widgetContentContainer.offset.side,
|
|
2952
2964
|
alignOffset: e.widgetContentContainer.offset.align,
|
|
2953
2965
|
avoidCollisions: !1,
|
|
2954
|
-
children: /* @__PURE__ */ r(
|
|
2966
|
+
children: /* @__PURE__ */ r(nr, {})
|
|
2955
2967
|
}
|
|
2956
2968
|
);
|
|
2957
2969
|
}
|
|
2958
|
-
function
|
|
2970
|
+
function nn({
|
|
2959
2971
|
className: e,
|
|
2960
2972
|
style: o
|
|
2961
2973
|
}) {
|
|
@@ -2967,7 +2979,7 @@ function Jo({
|
|
|
2967
2979
|
viewBox: "0 0 32 30",
|
|
2968
2980
|
fill: "none",
|
|
2969
2981
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2970
|
-
className:
|
|
2982
|
+
className: p("text-primary-foreground", e),
|
|
2971
2983
|
style: o,
|
|
2972
2984
|
children: [
|
|
2973
2985
|
/* @__PURE__ */ r(
|
|
@@ -2990,11 +3002,11 @@ function Jo({
|
|
|
2990
3002
|
}
|
|
2991
3003
|
);
|
|
2992
3004
|
}
|
|
2993
|
-
const
|
|
3005
|
+
const sn = `<!DOCTYPE html>
|
|
2994
3006
|
<html>
|
|
2995
3007
|
<head>
|
|
2996
3008
|
<style>
|
|
2997
|
-
${
|
|
3009
|
+
${Vt}
|
|
2998
3010
|
html, body {
|
|
2999
3011
|
height: 100%;
|
|
3000
3012
|
width: 100%;
|
|
@@ -3007,17 +3019,17 @@ html, body {
|
|
|
3007
3019
|
<body>
|
|
3008
3020
|
</body>
|
|
3009
3021
|
</html>`;
|
|
3010
|
-
function
|
|
3011
|
-
var
|
|
3012
|
-
const { isOpen: e, setIsOpen: o } =
|
|
3022
|
+
function an() {
|
|
3023
|
+
var m, h, y;
|
|
3024
|
+
const { isOpen: e, setIsOpen: o } = K(), { cssOverrides: t, assets: n, customComponents: s, accessibility: i } = z(), { theme: a, cssVars: l } = V(), c = ((m = i == null ? void 0 : i.widgetTriggerButton) == null ? void 0 : m.label) ?? "Chat with us";
|
|
3013
3025
|
return s != null && s.widgetTrigger ? s.widgetTrigger({
|
|
3014
3026
|
react: L,
|
|
3015
3027
|
isOpen: e,
|
|
3016
|
-
setIsOpen: (
|
|
3028
|
+
setIsOpen: (w) => o(w)
|
|
3017
3029
|
}) : /* @__PURE__ */ d(
|
|
3018
|
-
|
|
3030
|
+
Ot,
|
|
3019
3031
|
{
|
|
3020
|
-
initialContent:
|
|
3032
|
+
initialContent: sn,
|
|
3021
3033
|
title: "OpenCX Live Chat Trigger",
|
|
3022
3034
|
style: {
|
|
3023
3035
|
height: `calc(${a.widgetTrigger.size.button}px + ${Q.x * 2}px)`,
|
|
@@ -3052,7 +3064,7 @@ function tn() {
|
|
|
3052
3064
|
{
|
|
3053
3065
|
"aria-label": c,
|
|
3054
3066
|
title: c,
|
|
3055
|
-
className:
|
|
3067
|
+
className: p(
|
|
3056
3068
|
"font-sans flex items-center justify-center rounded-full"
|
|
3057
3069
|
),
|
|
3058
3070
|
style: {
|
|
@@ -3062,8 +3074,8 @@ function tn() {
|
|
|
3062
3074
|
children: /* @__PURE__ */ r(Y, { children: /* @__PURE__ */ r(
|
|
3063
3075
|
"div",
|
|
3064
3076
|
{
|
|
3065
|
-
...
|
|
3066
|
-
className:
|
|
3077
|
+
...x("trigger/btn"),
|
|
3078
|
+
className: p(
|
|
3067
3079
|
"relative size-full rounded-full",
|
|
3068
3080
|
"flex items-center justify-center",
|
|
3069
3081
|
"overflow-hidden",
|
|
@@ -3080,7 +3092,7 @@ function tn() {
|
|
|
3080
3092
|
initial: { rotate: 45 },
|
|
3081
3093
|
animate: { rotate: 0 }
|
|
3082
3094
|
},
|
|
3083
|
-
children: (
|
|
3095
|
+
children: (h = n == null ? void 0 : n.widgetTrigger) != null && h.closeIcon ? /* @__PURE__ */ r(
|
|
3084
3096
|
"img",
|
|
3085
3097
|
{
|
|
3086
3098
|
src: n.widgetTrigger.closeIcon,
|
|
@@ -3091,7 +3103,7 @@ function tn() {
|
|
|
3091
3103
|
}
|
|
3092
3104
|
}
|
|
3093
3105
|
) : /* @__PURE__ */ r(
|
|
3094
|
-
|
|
3106
|
+
Wr,
|
|
3095
3107
|
{
|
|
3096
3108
|
style: {
|
|
3097
3109
|
width: a.widgetTrigger.size.icon,
|
|
@@ -3109,7 +3121,7 @@ function tn() {
|
|
|
3109
3121
|
initial: { rotate: 45 },
|
|
3110
3122
|
animate: { rotate: 0 }
|
|
3111
3123
|
},
|
|
3112
|
-
children: (
|
|
3124
|
+
children: (y = n == null ? void 0 : n.widgetTrigger) != null && y.openIcon ? /* @__PURE__ */ r(
|
|
3113
3125
|
"img",
|
|
3114
3126
|
{
|
|
3115
3127
|
src: n.widgetTrigger.openIcon,
|
|
@@ -3120,7 +3132,7 @@ function tn() {
|
|
|
3120
3132
|
}
|
|
3121
3133
|
}
|
|
3122
3134
|
) : /* @__PURE__ */ r(
|
|
3123
|
-
|
|
3135
|
+
nn,
|
|
3124
3136
|
{
|
|
3125
3137
|
style: {
|
|
3126
3138
|
width: a.widgetTrigger.size.icon,
|
|
@@ -3142,33 +3154,33 @@ function tn() {
|
|
|
3142
3154
|
}
|
|
3143
3155
|
);
|
|
3144
3156
|
}
|
|
3145
|
-
function
|
|
3146
|
-
const {
|
|
3157
|
+
function ln() {
|
|
3158
|
+
const { triggerSide: e } = V();
|
|
3147
3159
|
return /* @__PURE__ */ r(
|
|
3148
3160
|
me.Anchor,
|
|
3149
3161
|
{
|
|
3150
3162
|
style: {
|
|
3151
3163
|
position: "fixed",
|
|
3152
3164
|
bottom: 0,
|
|
3153
|
-
right: e === "
|
|
3154
|
-
left: e === "
|
|
3165
|
+
right: e === "right" ? 0 : void 0,
|
|
3166
|
+
left: e === "left" ? 0 : void 0
|
|
3155
3167
|
}
|
|
3156
3168
|
}
|
|
3157
3169
|
);
|
|
3158
3170
|
}
|
|
3159
|
-
function
|
|
3171
|
+
function cn({
|
|
3160
3172
|
widgetRef: e
|
|
3161
3173
|
}) {
|
|
3162
|
-
const { widgetCtx: o } =
|
|
3174
|
+
const { widgetCtx: o } = A(), { contactState: t } = Mt(), { setIsOpen: n, isOpen: s } = K(), {
|
|
3163
3175
|
toChatScreen: i,
|
|
3164
3176
|
routerState: { screen: a }
|
|
3165
|
-
} = H(), { sendMessage: l } =
|
|
3177
|
+
} = H(), { sendMessage: l } = O();
|
|
3166
3178
|
return L.useImperativeHandle(
|
|
3167
3179
|
e,
|
|
3168
3180
|
() => ({
|
|
3169
3181
|
newChat: async (c) => {
|
|
3170
|
-
var
|
|
3171
|
-
if (!((
|
|
3182
|
+
var m;
|
|
3183
|
+
if (!((m = t.contact) != null && m.token)) {
|
|
3172
3184
|
console.warn("Cannot start a new chat: contact not yet initialized.");
|
|
3173
3185
|
return;
|
|
3174
3186
|
}
|
|
@@ -3186,22 +3198,22 @@ function on({
|
|
|
3186
3198
|
]
|
|
3187
3199
|
), null;
|
|
3188
3200
|
}
|
|
3189
|
-
function
|
|
3190
|
-
const { isOpen: e, setIsOpen: o } =
|
|
3201
|
+
function dn() {
|
|
3202
|
+
const { isOpen: e, setIsOpen: o } = K();
|
|
3191
3203
|
return /* @__PURE__ */ d(me.Root, { open: e, onOpenChange: o, children: [
|
|
3192
|
-
/* @__PURE__ */ r(
|
|
3193
|
-
/* @__PURE__ */ r(
|
|
3194
|
-
/* @__PURE__ */ r(
|
|
3204
|
+
/* @__PURE__ */ r(ln, {}),
|
|
3205
|
+
/* @__PURE__ */ r(an, {}),
|
|
3206
|
+
/* @__PURE__ */ r(on, {})
|
|
3195
3207
|
] });
|
|
3196
3208
|
}
|
|
3197
|
-
const
|
|
3209
|
+
const pn = [
|
|
3198
3210
|
{
|
|
3199
3211
|
key: "loading",
|
|
3200
|
-
component:
|
|
3212
|
+
component: co
|
|
3201
3213
|
},
|
|
3202
3214
|
{
|
|
3203
3215
|
key: "fallback",
|
|
3204
|
-
component:
|
|
3216
|
+
component: lo
|
|
3205
3217
|
},
|
|
3206
3218
|
{
|
|
3207
3219
|
key: "bot_message",
|
|
@@ -3211,7 +3223,7 @@ const sn = [
|
|
|
3211
3223
|
key: "agent_message",
|
|
3212
3224
|
component: xe
|
|
3213
3225
|
}
|
|
3214
|
-
],
|
|
3226
|
+
], mn = {
|
|
3215
3227
|
get: async (e) => localStorage.getItem(e),
|
|
3216
3228
|
set: async (e, o) => {
|
|
3217
3229
|
localStorage.setItem(e, o);
|
|
@@ -3219,23 +3231,23 @@ const sn = [
|
|
|
3219
3231
|
remove: async (e) => {
|
|
3220
3232
|
localStorage.removeItem(e);
|
|
3221
3233
|
}
|
|
3222
|
-
},
|
|
3234
|
+
}, hn = L.forwardRef(function({ options: o, components: t = [], loadingComponent: n }, s) {
|
|
3223
3235
|
return /* @__PURE__ */ r(
|
|
3224
|
-
|
|
3236
|
+
cr,
|
|
3225
3237
|
{
|
|
3226
|
-
components: [...
|
|
3238
|
+
components: [...pn, ...t],
|
|
3227
3239
|
options: o,
|
|
3228
|
-
storage:
|
|
3240
|
+
storage: mn,
|
|
3229
3241
|
loadingComponent: n,
|
|
3230
|
-
children: /* @__PURE__ */ d(
|
|
3231
|
-
/* @__PURE__ */ r(
|
|
3232
|
-
o.inline ? /* @__PURE__ */ r(
|
|
3242
|
+
children: /* @__PURE__ */ d(dr, { children: [
|
|
3243
|
+
/* @__PURE__ */ r(cn, { widgetRef: s }),
|
|
3244
|
+
o.inline ? /* @__PURE__ */ r(nr, {}) : /* @__PURE__ */ r(dn, {})
|
|
3233
3245
|
] })
|
|
3234
3246
|
}
|
|
3235
3247
|
);
|
|
3236
3248
|
});
|
|
3237
|
-
|
|
3249
|
+
hn.displayName = "Widget";
|
|
3238
3250
|
export {
|
|
3239
|
-
|
|
3251
|
+
hn as Widget
|
|
3240
3252
|
};
|
|
3241
3253
|
//# sourceMappingURL=index.js.map
|