@opencx/widget-react 4.0.38 → 4.0.40
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 +5 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +427 -416
- package/dist/index.js.map +1 -1
- package/dist/src/components/custom-components/AgentMessageDefaultComponent.d.ts +1 -1
- package/dist/src/components/custom-components/AgentMessageDefaultComponent.d.ts.map +1 -1
- package/dist/src/components/custom-components/MessageAfterComponent.d.ts +6 -0
- package/dist/src/components/custom-components/MessageAfterComponent.d.ts.map +1 -0
- package/dist/src/hooks/useTranslation.d.ts +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { jsx as r, jsxs as c, Fragment as
|
|
1
|
+
import { jsx as r, jsxs as c, Fragment as re } from "react/jsx-runtime";
|
|
2
2
|
import * as ce from "@radix-ui/react-popover";
|
|
3
3
|
import * as G from "react";
|
|
4
|
-
import U, { memo as
|
|
5
|
-
import { useWidget as j, useConfig as b,
|
|
4
|
+
import U, { memo as $t, forwardRef as dt, useState as T, cloneElement as pt, createContext as Bt, useEffect as oe, useContext as Yt, useMemo as ht, useRef as de, createElement as ot } from "react";
|
|
5
|
+
import { useWidget as j, useConfig as b, useSessions as $, useMessages as E, useWidgetRouter as A, useDocumentDir as ve, useWidgetTrigger as K, useModes as mt, useCsat as gt, useUploadFiles as Ut, useIsAwaitingBotReply as wt, useContact as qt, WidgetProvider as Xt, WidgetTriggerProvider as Vt } from "@opencx/widget-react-headless";
|
|
6
6
|
import { clsx as Gt } from "clsx";
|
|
7
7
|
import { twMerge as Kt } from "tailwind-merge";
|
|
8
|
-
import { motion as
|
|
8
|
+
import { motion as J, AnimatePresence as _ } from "framer-motion";
|
|
9
9
|
import { Slot as Qt } from "@radix-ui/react-slot";
|
|
10
10
|
import { cva as Zt } from "class-variance-authority";
|
|
11
|
-
import { X as Jt, CircleDashedIcon as er, XIcon as xe, SquareXIcon as tr, SquareCheckBigIcon as rr, SquareCheckIcon as or, ShrinkIcon as nr, Minimize2Icon as sr, MinimizeIcon as
|
|
11
|
+
import { X as Jt, CircleDashedIcon as er, XIcon as xe, SquareXIcon as tr, SquareCheckBigIcon as rr, SquareCheckIcon as or, ShrinkIcon as nr, Minimize2Icon as sr, MinimizeIcon as ar, Maximize2Icon as ir, MaximizeIcon as lr, ExpandIcon as cr, CircleXIcon as dr, CircleCheckBigIcon as pr, CircleCheckIcon as ut, CheckCheckIcon as hr, CheckIcon as mr, ChevronLeftIcon as gr, LoaderIcon as wr, ArrowUpIcon as ft, PaperclipIcon as ur, ImageIcon as fr, CircleDashed as vr, AlertCircle as xr, Loader2 as br, FileAudio2Icon as yr, FileVideo2Icon as kr, FileIcon as Cr, UserRoundIcon as zr, ChevronRightIcon as Nr, SendHorizontal as Sr, ChevronDownIcon as _r } from "lucide-react";
|
|
12
12
|
import vt from "remark-gfm";
|
|
13
13
|
import Ir from "react-markdown";
|
|
14
14
|
import xt from "rehype-raw";
|
|
15
15
|
import { isExhaustive as D, isSupportedLanguage as Tr, getTranslation as Mr } from "@opencx/widget-core";
|
|
16
16
|
import * as Q from "@radix-ui/react-avatar";
|
|
17
17
|
import bt from "@uiw/react-iframe";
|
|
18
|
-
import * as
|
|
18
|
+
import * as ne from "@radix-ui/react-tooltip";
|
|
19
19
|
import nt from "tinycolor2";
|
|
20
20
|
import { useDropzone as Dr } from "react-dropzone";
|
|
21
21
|
import jr from "react-use/lib/useAsyncFn";
|
|
@@ -29,32 +29,32 @@ function p(...e) {
|
|
|
29
29
|
const V = {
|
|
30
30
|
x: 2,
|
|
31
31
|
y: 2
|
|
32
|
-
},
|
|
32
|
+
}, L = $t(
|
|
33
33
|
dt(
|
|
34
34
|
({ children: e, className: o, scale: t = 1.02, off: n = !1 }, s) => {
|
|
35
|
-
const [
|
|
35
|
+
const [i, a] = T(!1), [l, d] = T({ x: 0, y: 0 });
|
|
36
36
|
if (n || /translate/.test(
|
|
37
37
|
e.props.className || ""
|
|
38
38
|
)) return e;
|
|
39
39
|
const y = (w) => {
|
|
40
40
|
var N, S;
|
|
41
|
-
const { clientX: k, clientY: I } = w, f = w.currentTarget.getBoundingClientRect(), M = k - (f.left + f.width / 2),
|
|
41
|
+
const { clientX: k, clientY: I } = w, f = w.currentTarget.getBoundingClientRect(), M = k - (f.left + f.width / 2), O = I - (f.top + f.height / 2), H = Math.max(
|
|
42
42
|
-1,
|
|
43
43
|
Math.min(1, M / (f.width / 2))
|
|
44
44
|
), W = Math.max(
|
|
45
45
|
-1,
|
|
46
|
-
Math.min(1,
|
|
47
|
-
), R =
|
|
46
|
+
Math.min(1, O / (f.height / 2))
|
|
47
|
+
), R = H * V.x, v = W * V.y;
|
|
48
48
|
d({ x: R, y: v }), (S = (N = e.props).onMouseMove) == null || S.call(N, w);
|
|
49
49
|
}, x = () => {
|
|
50
50
|
var w, k;
|
|
51
|
-
|
|
51
|
+
a(!0), (k = (w = e.props).onMouseEnter) == null || k.call(w);
|
|
52
52
|
}, m = () => {
|
|
53
53
|
var w, k;
|
|
54
|
-
|
|
54
|
+
a(!1), d({ x: 0, y: 0 }), (k = (w = e.props).onMouseLeave) == null || k.call(w);
|
|
55
55
|
}, z = {
|
|
56
|
-
"--wobble-x":
|
|
57
|
-
"--wobble-y":
|
|
56
|
+
"--wobble-x": i ? `${l.x}px` : "0px",
|
|
57
|
+
"--wobble-y": i ? `${l.y}px` : "0px",
|
|
58
58
|
"--scale": 1 - (t - 1)
|
|
59
59
|
};
|
|
60
60
|
return pt(e, {
|
|
@@ -78,7 +78,7 @@ const V = {
|
|
|
78
78
|
}
|
|
79
79
|
)
|
|
80
80
|
);
|
|
81
|
-
|
|
81
|
+
L.displayName = "Wobble";
|
|
82
82
|
const Er = 10, Rr = (e, o, t) => ({
|
|
83
83
|
initial: { opacity: 0, x: -e, ...o.initial },
|
|
84
84
|
animate: { opacity: 1, x: 0, ...o.animate, transition: { delay: t } },
|
|
@@ -87,19 +87,19 @@ const Er = 10, Rr = (e, o, t) => ({
|
|
|
87
87
|
initial: { opacity: 0, x: e, ...o.initial },
|
|
88
88
|
animate: { opacity: 1, x: 0, ...o.animate, transition: { delay: t } },
|
|
89
89
|
exit: { opacity: 0, x: -e, ...o.exit }
|
|
90
|
-
}),
|
|
90
|
+
}), Ar = (e, o, t) => ({
|
|
91
91
|
initial: { opacity: 0, y: e, ...o.initial },
|
|
92
92
|
animate: { opacity: 1, y: 0, ...o.animate, transition: { delay: t } },
|
|
93
93
|
exit: { opacity: 0, y: -e, ...o.exit }
|
|
94
|
-
}),
|
|
94
|
+
}), Fr = (e, o, t) => ({
|
|
95
95
|
initial: { opacity: 0, y: -e, ...o.initial },
|
|
96
96
|
animate: { opacity: 1, y: 0, ...o.animate, transition: { delay: t } },
|
|
97
97
|
exit: { opacity: 0, y: e, ...o.exit }
|
|
98
|
-
}),
|
|
98
|
+
}), Or = {
|
|
99
99
|
right: Rr,
|
|
100
100
|
left: Pr,
|
|
101
|
-
up:
|
|
102
|
-
down:
|
|
101
|
+
up: Ar,
|
|
102
|
+
down: Fr
|
|
103
103
|
}, u = dt(
|
|
104
104
|
({
|
|
105
105
|
fadeIn: e = "down",
|
|
@@ -107,15 +107,15 @@ const Er = 10, Rr = (e, o, t) => ({
|
|
|
107
107
|
children: t,
|
|
108
108
|
snapExit: n = !1,
|
|
109
109
|
overrides: s = {},
|
|
110
|
-
delay:
|
|
111
|
-
...
|
|
110
|
+
delay: i = 0,
|
|
111
|
+
...a
|
|
112
112
|
}, l) => {
|
|
113
|
-
const d = e ?
|
|
114
|
-
return n && d.exit && typeof d.exit == "object" && !Array.isArray(d.exit) && (d.exit.transition = { duration: 0 }), /* @__PURE__ */ r(
|
|
113
|
+
const d = e ? Or[e](o, s, i) : {};
|
|
114
|
+
return n && d.exit && typeof d.exit == "object" && !Array.isArray(d.exit) && (d.exit.transition = { duration: 0 }), /* @__PURE__ */ r(J.div, { ref: l, ...a, ...d, children: t });
|
|
115
115
|
}
|
|
116
116
|
);
|
|
117
117
|
u.displayName = "MotionDiv";
|
|
118
|
-
const
|
|
118
|
+
const Hr = Zt(
|
|
119
119
|
p(
|
|
120
120
|
"inline-flex shrink-0 items-center justify-center gap-2",
|
|
121
121
|
"text-sm font-medium whitespace-nowrap",
|
|
@@ -155,12 +155,12 @@ const Ar = Zt(
|
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
), C = G.forwardRef(
|
|
158
|
-
({ className: e, variant: o = "default", size: t, asChild: n = !1, ...s },
|
|
158
|
+
({ className: e, variant: o = "default", size: t, asChild: n = !1, ...s }, i) => /* @__PURE__ */ r(L, { ref: i, children: /* @__PURE__ */ r(
|
|
159
159
|
n ? Qt : "button",
|
|
160
160
|
{
|
|
161
161
|
...g("ui_lib/btn"),
|
|
162
162
|
"data-variant": o,
|
|
163
|
-
className: p(
|
|
163
|
+
className: p(Hr({ variant: o, size: t, className: e })),
|
|
164
164
|
...s
|
|
165
165
|
}
|
|
166
166
|
) })
|
|
@@ -168,9 +168,9 @@ const Ar = Zt(
|
|
|
168
168
|
C.displayName = "Button";
|
|
169
169
|
const yt = Bt(null);
|
|
170
170
|
function Wr({ children: e }) {
|
|
171
|
-
const [o, t] = T(!1), [n, s] = T(null),
|
|
171
|
+
const [o, t] = T(!1), [n, s] = T(null), i = (l) => {
|
|
172
172
|
s(l), t(!0);
|
|
173
|
-
},
|
|
173
|
+
}, a = () => {
|
|
174
174
|
t(!1), setTimeout(() => {
|
|
175
175
|
s(null);
|
|
176
176
|
}, 200);
|
|
@@ -178,9 +178,9 @@ function Wr({ children: e }) {
|
|
|
178
178
|
return /* @__PURE__ */ c(
|
|
179
179
|
yt.Provider,
|
|
180
180
|
{
|
|
181
|
-
value: { open:
|
|
181
|
+
value: { open: i, close: a, isOpen: o, content: n },
|
|
182
182
|
children: [
|
|
183
|
-
/* @__PURE__ */ r(
|
|
183
|
+
/* @__PURE__ */ r(Lr, {}),
|
|
184
184
|
e
|
|
185
185
|
]
|
|
186
186
|
}
|
|
@@ -197,14 +197,14 @@ function pe() {
|
|
|
197
197
|
content: null
|
|
198
198
|
});
|
|
199
199
|
}
|
|
200
|
-
function
|
|
200
|
+
function Lr() {
|
|
201
201
|
const { contentIframeRef: e } = j(), { isOpen: o, content: t, close: n } = pe();
|
|
202
|
-
return
|
|
203
|
-
var
|
|
202
|
+
return oe(() => {
|
|
203
|
+
var i, a;
|
|
204
204
|
const s = (l) => {
|
|
205
205
|
l.key === "Escape" && n();
|
|
206
206
|
};
|
|
207
|
-
return (
|
|
207
|
+
return (a = (i = e == null ? void 0 : e.current) == null ? void 0 : i.contentWindow) == null || a.document.addEventListener(
|
|
208
208
|
"keydown",
|
|
209
209
|
s
|
|
210
210
|
), () => {
|
|
@@ -320,14 +320,14 @@ function It({
|
|
|
320
320
|
});
|
|
321
321
|
}
|
|
322
322
|
function Tt({ attachment: e }) {
|
|
323
|
-
const { name: o, size: t, type: n, url: s } = e,
|
|
324
|
-
return l ? /* @__PURE__ */ r(
|
|
323
|
+
const { name: o, size: t, type: n, url: s } = e, i = n.startsWith("image/"), a = n.startsWith("video/"), l = n.startsWith("audio/");
|
|
324
|
+
return l ? /* @__PURE__ */ r(L, { children: /* @__PURE__ */ r("div", { className: "w-full shrink-0 overflow-hidden", children: /* @__PURE__ */ c("audio", { controls: !0, className: "w-full", children: [
|
|
325
325
|
/* @__PURE__ */ r("source", { src: s, type: n }),
|
|
326
326
|
"Your browser does not support the audio tag."
|
|
327
|
-
] }) }) }) :
|
|
327
|
+
] }) }) }) : a ? /* @__PURE__ */ r(L, { children: /* @__PURE__ */ r("div", { className: "w-full border shrink-0 rounded-2xl overflow-hidden", children: /* @__PURE__ */ c("video", { controls: !0, children: [
|
|
328
328
|
/* @__PURE__ */ r("source", { src: s, type: n }),
|
|
329
329
|
"Your browser does not support the video tag."
|
|
330
|
-
] }) }) }) : !
|
|
330
|
+
] }) }) }) : !i && !a && !l ? /* @__PURE__ */ r(L, { children: /* @__PURE__ */ r("div", { className: "size-fit border shrink-0 rounded-2xl overflow-hidden", children: /* @__PURE__ */ c("div", { className: "flex items-end gap-2 p-2", children: [
|
|
331
331
|
/* @__PURE__ */ r(
|
|
332
332
|
"a",
|
|
333
333
|
{
|
|
@@ -349,13 +349,13 @@ function Tt({ attachment: e }) {
|
|
|
349
349
|
] }) }) }) : /* @__PURE__ */ r(
|
|
350
350
|
It,
|
|
351
351
|
{
|
|
352
|
-
trigger: /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r(
|
|
352
|
+
trigger: /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r(L, { children: /* @__PURE__ */ r("div", { className: "size-fit border shrink-0 rounded-2xl overflow-hidden", children: i && /* @__PURE__ */ r("img", { src: s, className: "object-cover size-16", alt: o }) }) }) }),
|
|
353
353
|
children: /* @__PURE__ */ r(
|
|
354
354
|
kt,
|
|
355
355
|
{
|
|
356
356
|
className: "size-full max-w-full rounded-3xl flex items-center justify-center bg-transparent border-none gap-0",
|
|
357
357
|
withClose: !0,
|
|
358
|
-
children:
|
|
358
|
+
children: i && /* @__PURE__ */ r("div", { className: "size-fit shrink-0 rounded-2xl overflow-hidden max-h-full", children: /* @__PURE__ */ r("img", { src: s, className: "object-cover size-auto", alt: o }) })
|
|
359
359
|
}
|
|
360
360
|
)
|
|
361
361
|
}
|
|
@@ -379,66 +379,96 @@ function be({
|
|
|
379
379
|
remarkPlugins: [vt],
|
|
380
380
|
rehypePlugins: [xt],
|
|
381
381
|
components: {
|
|
382
|
-
a: ({ children: s, ...
|
|
382
|
+
a: ({ children: s, ...i }) => /* @__PURE__ */ r("a", { target: i.target || n || "_top", ...i, children: s })
|
|
383
383
|
},
|
|
384
384
|
children: e
|
|
385
385
|
}
|
|
386
386
|
);
|
|
387
387
|
}
|
|
388
|
-
function
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
388
|
+
function Z() {
|
|
389
|
+
const {
|
|
390
|
+
widgetCtx: { org: e }
|
|
391
|
+
} = j(), {
|
|
392
|
+
sessionState: { session: o }
|
|
393
|
+
} = $(), t = b(), {
|
|
394
|
+
messagesState: { messages: n }
|
|
395
|
+
} = E(), {
|
|
396
|
+
routerState: { screen: s }
|
|
397
|
+
} = A();
|
|
398
|
+
return {
|
|
399
|
+
react: U,
|
|
400
|
+
org: e,
|
|
401
|
+
session: o,
|
|
402
|
+
config: t,
|
|
403
|
+
messages: n,
|
|
404
|
+
currentScreen: s
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
function $r({
|
|
408
|
+
currentMessage: e
|
|
398
409
|
}) {
|
|
399
|
-
|
|
400
|
-
const
|
|
410
|
+
var n;
|
|
411
|
+
const o = Z(), t = (n = o.config.customComponents) == null ? void 0 : n["message::after"];
|
|
412
|
+
return t ? /* @__PURE__ */ r(t, { ...o, currentMessage: e }) : null;
|
|
413
|
+
}
|
|
414
|
+
function ge(e) {
|
|
415
|
+
const {
|
|
416
|
+
data: o,
|
|
417
|
+
id: t,
|
|
418
|
+
type: n,
|
|
419
|
+
attachments: s,
|
|
420
|
+
isFirstInGroup: i,
|
|
421
|
+
isLastInGroup: a,
|
|
422
|
+
isAloneInGroup: l,
|
|
423
|
+
dataComponentNames: d,
|
|
424
|
+
classNames: h
|
|
425
|
+
} = e;
|
|
426
|
+
if (n !== "AI" && n !== "AGENT") return null;
|
|
427
|
+
const { message: y, variant: x = "default" } = o;
|
|
401
428
|
return /* @__PURE__ */ c(
|
|
402
429
|
"div",
|
|
403
430
|
{
|
|
404
|
-
...g((
|
|
431
|
+
...g((d == null ? void 0 : d.messageContainer) ?? "chat/agent_msg/root"),
|
|
405
432
|
className: p(
|
|
406
433
|
"w-5/6 flex flex-col items-start gap-1",
|
|
407
|
-
|
|
434
|
+
h == null ? void 0 : h.messageContainer
|
|
408
435
|
),
|
|
409
436
|
children: [
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
+
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((m) => /* @__PURE__ */ r(Tt, { attachment: m }, m.id)) }),
|
|
438
|
+
y.length > 0 && /* @__PURE__ */ c("div", { className: "flex flex-row gap-2", children: [
|
|
439
|
+
/* @__PURE__ */ r(
|
|
440
|
+
"div",
|
|
441
|
+
{
|
|
442
|
+
...g((d == null ? void 0 : d.message) ?? "chat/agent_msg/msg"),
|
|
443
|
+
"data-first": i,
|
|
444
|
+
"data-last": a,
|
|
445
|
+
"data-alone": l,
|
|
446
|
+
"data-variant": x,
|
|
447
|
+
className: p(
|
|
448
|
+
"transition-all",
|
|
449
|
+
"w-fit py-3 px-4 rounded-3xl bg-secondary text-secondary-foreground",
|
|
450
|
+
"leading-snug text-sm prose prose-sm prose-a:decoration-primary prose-a:underline",
|
|
451
|
+
"break-words [word-break:break-word]",
|
|
452
|
+
// `[word-break:break-word]` is deprecated but works in the browser, while `break-words` which is `[overflow-wrap: break-word]` does not work
|
|
453
|
+
// 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
|
|
454
|
+
// Adding "whitespace-pre-wrap" will result in unnecessarily huge line breaks
|
|
455
|
+
x === "error" && "bg-destructive/15 text-destructive",
|
|
456
|
+
// We're using the booleans directly here, not the data attributes, to make any external styling more specific than this
|
|
457
|
+
i && !l && "rounded-bl-md",
|
|
458
|
+
a && !l && "rounded-tl-md",
|
|
459
|
+
!i && !a && !l && "rounded-l-md",
|
|
460
|
+
h == null ? void 0 : h.message
|
|
461
|
+
),
|
|
462
|
+
children: /* @__PURE__ */ r(be, { messageType: n, messageId: t, children: y })
|
|
463
|
+
}
|
|
464
|
+
),
|
|
465
|
+
/* @__PURE__ */ r($r, { currentMessage: e })
|
|
466
|
+
] })
|
|
437
467
|
]
|
|
438
468
|
}
|
|
439
469
|
);
|
|
440
470
|
}
|
|
441
|
-
function
|
|
471
|
+
function Br(e) {
|
|
442
472
|
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) }) });
|
|
443
473
|
}
|
|
444
474
|
const ye = G.forwardRef(({ className: e, ...o }, t) => /* @__PURE__ */ r(
|
|
@@ -485,7 +515,7 @@ function we({
|
|
|
485
515
|
(e == null ? void 0 : e.name) && /* @__PURE__ */ r(Ce, { children: (n = (t = e == null ? void 0 : e.name) == null ? void 0 : t.slice(0, 1)) == null ? void 0 : n.toUpperCase() })
|
|
486
516
|
] });
|
|
487
517
|
}
|
|
488
|
-
function
|
|
518
|
+
function Yr({ agent: e }) {
|
|
489
519
|
return /* @__PURE__ */ r(_, { children: /* @__PURE__ */ c(
|
|
490
520
|
u,
|
|
491
521
|
{
|
|
@@ -502,9 +532,9 @@ function Br({ agent: e }) {
|
|
|
502
532
|
// 'border',
|
|
503
533
|
),
|
|
504
534
|
children: [
|
|
505
|
-
/* @__PURE__ */ r(
|
|
506
|
-
/* @__PURE__ */ r(
|
|
507
|
-
/* @__PURE__ */ r(
|
|
535
|
+
/* @__PURE__ */ r(J.span, { className: "rounded-full animate-bounce [animation-delay:-0.3s]" }),
|
|
536
|
+
/* @__PURE__ */ r(J.span, { className: "rounded-full animate-bounce [animation-delay:-0.15s]" }),
|
|
537
|
+
/* @__PURE__ */ r(J.span, { className: "rounded-full animate-bounce" })
|
|
508
538
|
]
|
|
509
539
|
}
|
|
510
540
|
)
|
|
@@ -512,8 +542,8 @@ function Br({ agent: e }) {
|
|
|
512
542
|
}
|
|
513
543
|
) });
|
|
514
544
|
}
|
|
515
|
-
const Dt = '*,: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%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.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}.end-6{inset-inline-end:1.5rem}.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-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-4{width:1rem;height:1rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-auto{width:auto;height:auto}.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%}.min-w-80{min-width:20rem}.min-w-\\[8rem\\]{min-width:8rem}.max-w-96{max-width:24rem}.max-w-\\[61\\.8\\%\\]{max-width:61.8%}.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-\\[-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))}@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-1{gap:.25rem}.gap-2{gap:.5rem}.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-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-\\[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-2{padding:.5rem}.p-4{padding:1rem}.p-8{padding:2rem}.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\\.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-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}.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))}.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-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-secondary:hover{background-color:hsl(var(--opencx-secondary))}.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\\: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\\:opacity-50:disabled{opacity:.5}.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))}', Yr = oe.Provider, Ur = oe.Root, qr = oe.Trigger, jt = G.forwardRef(({ className: e, sideOffset: o = 4, ...t }, n) => /* @__PURE__ */ r(
|
|
516
|
-
|
|
545
|
+
const Dt = '*,: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%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.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}.end-6{inset-inline-end:1.5rem}.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-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-4{width:1rem;height:1rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-auto{width:auto;height:auto}.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%}.min-w-80{min-width:20rem}.min-w-\\[8rem\\]{min-width:8rem}.max-w-96{max-width:24rem}.max-w-\\[61\\.8\\%\\]{max-width:61.8%}.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-\\[-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))}@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-1{gap:.25rem}.gap-2{gap:.5rem}.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-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-\\[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-2{padding:.5rem}.p-4{padding:1rem}.p-8{padding:2rem}.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\\.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-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}.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))}.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-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-secondary:hover{background-color:hsl(var(--opencx-secondary))}.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\\: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\\:opacity-50:disabled{opacity:.5}.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))}', Ur = ne.Provider, qr = ne.Root, Xr = ne.Trigger, jt = G.forwardRef(({ className: e, sideOffset: o = 4, ...t }, n) => /* @__PURE__ */ r(
|
|
546
|
+
ne.Content,
|
|
517
547
|
{
|
|
518
548
|
ref: n,
|
|
519
549
|
sideOffset: o,
|
|
@@ -524,16 +554,16 @@ const Dt = '*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;-
|
|
|
524
554
|
...t
|
|
525
555
|
}
|
|
526
556
|
));
|
|
527
|
-
jt.displayName =
|
|
528
|
-
function
|
|
557
|
+
jt.displayName = ne.Content.displayName;
|
|
558
|
+
function ee({
|
|
529
559
|
children: e,
|
|
530
560
|
content: o,
|
|
531
561
|
side: t,
|
|
532
562
|
align: n
|
|
533
563
|
}) {
|
|
534
564
|
const { disableTooltips: s } = b();
|
|
535
|
-
return !o || s ? e : /* @__PURE__ */ c(
|
|
536
|
-
/* @__PURE__ */ r(
|
|
565
|
+
return !o || s ? e : /* @__PURE__ */ c(qr, { children: [
|
|
566
|
+
/* @__PURE__ */ r(Xr, { asChild: !0, children: e }),
|
|
537
567
|
/* @__PURE__ */ r(
|
|
538
568
|
jt,
|
|
539
569
|
{
|
|
@@ -547,7 +577,7 @@ function J({
|
|
|
547
577
|
] });
|
|
548
578
|
}
|
|
549
579
|
const st = 450;
|
|
550
|
-
function
|
|
580
|
+
function F() {
|
|
551
581
|
const [e, o] = U.useState(() => (window.top || window).innerWidth < st);
|
|
552
582
|
return U.useEffect(() => {
|
|
553
583
|
const t = window.top || window, n = () => {
|
|
@@ -558,13 +588,13 @@ function H() {
|
|
|
558
588
|
};
|
|
559
589
|
}, []), { isSmallScreen: e };
|
|
560
590
|
}
|
|
561
|
-
const
|
|
591
|
+
const ae = {
|
|
562
592
|
transitionTimingFunction: "cubic-bezier(0.16, 1, 0.3, 1)",
|
|
563
593
|
transitionDuration: "1000ms"
|
|
564
594
|
};
|
|
565
595
|
function q() {
|
|
566
|
-
var x, m, z, w, k, I, f, M,
|
|
567
|
-
const { dir: e } = ve(), { isSmallScreen: o } =
|
|
596
|
+
var x, m, z, w, k, I, f, M, O, H, W, R, v, N, S, B, se, _e, Ie, Te, Me, De, je, Ee, Re, Pe, Ae, Fe, Oe, He, We, Le, $e, Be, Ye, Ue, qe, Xe, Ve, Ge, Ke, Qe, Ze, Je, et, tt, rt;
|
|
597
|
+
const { dir: e } = ve(), { isSmallScreen: o } = F(), { theme: t, inline: n } = b(), s = (Y) => n ? "100%" : Y, i = (Y, he) => o ? `100dv${Y}` : he, a = (Y, he) => s(i(Y, he)), l = {
|
|
568
598
|
zIndex: ((x = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : x.zIndex) ?? 1e7,
|
|
569
599
|
offset: {
|
|
570
600
|
bottom: ((z = (m = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : m.offset) == null ? void 0 : z.bottom) ?? 20,
|
|
@@ -572,8 +602,8 @@ function q() {
|
|
|
572
602
|
left: ((f = (I = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : I.offset) == null ? void 0 : f.left) ?? (e === "rtl" ? 20 : "initial")
|
|
573
603
|
},
|
|
574
604
|
size: {
|
|
575
|
-
button: ((
|
|
576
|
-
icon: ((W = (
|
|
605
|
+
button: ((O = (M = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : M.size) == null ? void 0 : O.button) ?? 48,
|
|
606
|
+
icon: ((W = (H = t == null ? void 0 : t.widgetTrigger) == null ? void 0 : H.size) == null ? void 0 : W.icon) ?? 24
|
|
577
607
|
}
|
|
578
608
|
}, d = (() => {
|
|
579
609
|
const Y = e === "ltr" ? l.offset.right : l.offset.left;
|
|
@@ -590,8 +620,8 @@ function q() {
|
|
|
590
620
|
outlineColor: ((S = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : S.outlineColor) ?? "hsl(0 0% 50% / .5)",
|
|
591
621
|
boxShadow: ((B = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : B.boxShadow) ?? "0 0px 100px 0px rgb(0 0 0 / 0.25)",
|
|
592
622
|
transitionProperty: ((se = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : se.transitionProperty) ?? "all",
|
|
593
|
-
transitionTimingFunction: ((_e = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : _e.transitionTimingFunction) ??
|
|
594
|
-
transitionDuration: ((Ie = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Ie.transitionDuration) ??
|
|
623
|
+
transitionTimingFunction: ((_e = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : _e.transitionTimingFunction) ?? ae.transitionTimingFunction,
|
|
624
|
+
transitionDuration: ((Ie = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Ie.transitionDuration) ?? ae.transitionDuration,
|
|
595
625
|
offset: {
|
|
596
626
|
side: o ? 0 : l.offset.bottom + l.size.button + V.y * 2 + (((Me = (Te = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : Te.offset) == null ? void 0 : Me.side) ?? 10),
|
|
597
627
|
align: o ? 0 : d + (((je = (De = t == null ? void 0 : t.widgetContentContainer) == null ? void 0 : De.offset) == null ? void 0 : je.align) ?? 0)
|
|
@@ -599,31 +629,31 @@ function q() {
|
|
|
599
629
|
},
|
|
600
630
|
screens: {
|
|
601
631
|
welcome: {
|
|
602
|
-
width:
|
|
632
|
+
width: a("w", ((Re = (Ee = t == null ? void 0 : t.screens) == null ? void 0 : Ee.welcome) == null ? void 0 : Re.width) ?? "400px"),
|
|
603
633
|
// By setting minHeight to 1px, a nice animation will play from 1px to the dynamic height of the content of the screen
|
|
604
|
-
minHeight:
|
|
634
|
+
minHeight: a(
|
|
605
635
|
"h",
|
|
606
|
-
((
|
|
636
|
+
((Ae = (Pe = t == null ? void 0 : t.screens) == null ? void 0 : Pe.welcome) == null ? void 0 : Ae.minHeight) ?? "1px"
|
|
607
637
|
)
|
|
608
638
|
},
|
|
609
639
|
sessions: {
|
|
610
|
-
width:
|
|
611
|
-
height:
|
|
640
|
+
width: a("w", ((Oe = (Fe = t == null ? void 0 : t.screens) == null ? void 0 : Fe.sessions) == null ? void 0 : Oe.width) ?? "450px"),
|
|
641
|
+
height: a("h", ((We = (He = t == null ? void 0 : t.screens) == null ? void 0 : He.sessions) == null ? void 0 : We.height) ?? "600px")
|
|
612
642
|
},
|
|
613
643
|
chat: {
|
|
614
|
-
width:
|
|
615
|
-
height:
|
|
644
|
+
width: a("w", (($e = (Le = t == null ? void 0 : t.screens) == null ? void 0 : Le.chat) == null ? void 0 : $e.width) ?? "525px"),
|
|
645
|
+
height: a("h", ((Ye = (Be = t == null ? void 0 : t.screens) == null ? void 0 : Be.chat) == null ? void 0 : Ye.height) ?? "700px"),
|
|
616
646
|
withCanvas: {
|
|
617
|
-
width:
|
|
647
|
+
width: a(
|
|
618
648
|
"w",
|
|
619
649
|
((Xe = (qe = (Ue = t == null ? void 0 : t.screens) == null ? void 0 : Ue.chat) == null ? void 0 : qe.withCanvas) == null ? void 0 : Xe.width) ?? "min(1050px, 100vw)"
|
|
620
650
|
),
|
|
621
|
-
height:
|
|
651
|
+
height: a(
|
|
622
652
|
"h",
|
|
623
653
|
((Ke = (Ge = (Ve = t == null ? void 0 : t.screens) == null ? void 0 : Ve.chat) == null ? void 0 : Ge.withCanvas) == null ? void 0 : Ke.height) ?? "min(800px, 100vh)"
|
|
624
654
|
),
|
|
625
|
-
transitionTimingFunction: ((Je = (Ze = (Qe = t == null ? void 0 : t.screens) == null ? void 0 : Qe.chat) == null ? void 0 : Ze.withCanvas) == null ? void 0 : Je.transitionTimingFunction) ??
|
|
626
|
-
transitionDuration: ((rt = (tt = (et = t == null ? void 0 : t.screens) == null ? void 0 : et.chat) == null ? void 0 : tt.withCanvas) == null ? void 0 : rt.transitionDuration) ??
|
|
655
|
+
transitionTimingFunction: ((Je = (Ze = (Qe = t == null ? void 0 : t.screens) == null ? void 0 : Qe.chat) == null ? void 0 : Ze.withCanvas) == null ? void 0 : Je.transitionTimingFunction) ?? ae.transitionTimingFunction,
|
|
656
|
+
transitionDuration: ((rt = (tt = (et = t == null ? void 0 : t.screens) == null ? void 0 : et.chat) == null ? void 0 : tt.withCanvas) == null ? void 0 : rt.transitionDuration) ?? ae.transitionDuration
|
|
627
657
|
}
|
|
628
658
|
}
|
|
629
659
|
}
|
|
@@ -631,7 +661,7 @@ function q() {
|
|
|
631
661
|
// Subtract the offset.bottom twice so that it adds a bit of padding to the top
|
|
632
662
|
// Subtract the distance between the trigger and the widget content container
|
|
633
663
|
// Subtract the invisible padding of the trigger (for the wobble effect)
|
|
634
|
-
maxHeight:
|
|
664
|
+
maxHeight: a(
|
|
635
665
|
"h",
|
|
636
666
|
`calc(
|
|
637
667
|
100vh
|
|
@@ -641,14 +671,14 @@ function q() {
|
|
|
641
671
|
)`
|
|
642
672
|
),
|
|
643
673
|
// Subtract the offset.right twice so that it adds a bit of padding to the left
|
|
644
|
-
maxWidth:
|
|
674
|
+
maxWidth: a(
|
|
645
675
|
"w",
|
|
646
676
|
`calc(
|
|
647
677
|
100vw
|
|
648
678
|
- ${d * 2}px
|
|
649
679
|
)`
|
|
650
680
|
),
|
|
651
|
-
minHeight:
|
|
681
|
+
minHeight: a(
|
|
652
682
|
"h",
|
|
653
683
|
`min(
|
|
654
684
|
${h.screens.welcome.minHeight},
|
|
@@ -656,7 +686,7 @@ function q() {
|
|
|
656
686
|
${h.screens.chat.height}
|
|
657
687
|
)`
|
|
658
688
|
),
|
|
659
|
-
minWidth:
|
|
689
|
+
minWidth: a(
|
|
660
690
|
"w",
|
|
661
691
|
`min(
|
|
662
692
|
${h.screens.welcome.width},
|
|
@@ -668,13 +698,13 @@ function q() {
|
|
|
668
698
|
return {
|
|
669
699
|
theme: h,
|
|
670
700
|
computed: y,
|
|
671
|
-
cssVars:
|
|
701
|
+
cssVars: Vr({
|
|
672
702
|
palette: h.palette,
|
|
673
703
|
primary: h.primaryColor
|
|
674
704
|
})
|
|
675
705
|
};
|
|
676
706
|
}
|
|
677
|
-
function
|
|
707
|
+
function Vr({
|
|
678
708
|
palette: e,
|
|
679
709
|
primary: o
|
|
680
710
|
}) {
|
|
@@ -783,13 +813,13 @@ function ze({
|
|
|
783
813
|
width: e,
|
|
784
814
|
height: o
|
|
785
815
|
}) {
|
|
786
|
-
const { isSmallScreen: t } =
|
|
787
|
-
|
|
816
|
+
const { isSmallScreen: t } = F(), { setWidth: n, setHeight: s } = Rt();
|
|
817
|
+
oe(() => {
|
|
788
818
|
e && n(e), o && s(o);
|
|
789
819
|
}, [t, o, e, n, s]);
|
|
790
820
|
}
|
|
791
|
-
const
|
|
792
|
-
function
|
|
821
|
+
const at = er;
|
|
822
|
+
function te({
|
|
793
823
|
name: e,
|
|
794
824
|
className: o
|
|
795
825
|
}) {
|
|
@@ -810,9 +840,9 @@ function ee({
|
|
|
810
840
|
case "Maximize":
|
|
811
841
|
return lr;
|
|
812
842
|
case "Maximize2":
|
|
813
|
-
return ar;
|
|
814
|
-
case "Minimize":
|
|
815
843
|
return ir;
|
|
844
|
+
case "Minimize":
|
|
845
|
+
return ar;
|
|
816
846
|
case "Minimize2":
|
|
817
847
|
return sr;
|
|
818
848
|
case "Shrink":
|
|
@@ -826,40 +856,21 @@ function ee({
|
|
|
826
856
|
case "X":
|
|
827
857
|
return xe;
|
|
828
858
|
case void 0:
|
|
829
|
-
return
|
|
859
|
+
return at;
|
|
830
860
|
default:
|
|
831
|
-
return D(e,
|
|
861
|
+
return D(e, te.name), at;
|
|
832
862
|
}
|
|
833
863
|
})();
|
|
834
864
|
return /* @__PURE__ */ r(t, { className: p("size-4", o) });
|
|
835
865
|
}
|
|
836
|
-
function
|
|
837
|
-
const {
|
|
838
|
-
widgetCtx: { org: e }
|
|
839
|
-
} = j(), {
|
|
840
|
-
sessionState: { session: o }
|
|
841
|
-
} = L(), t = b(), {
|
|
842
|
-
messagesState: { messages: n }
|
|
843
|
-
} = E(), {
|
|
844
|
-
routerState: { screen: s }
|
|
845
|
-
} = O();
|
|
846
|
-
return {
|
|
847
|
-
react: U,
|
|
848
|
-
org: e,
|
|
849
|
-
session: o,
|
|
850
|
-
config: t,
|
|
851
|
-
messages: n,
|
|
852
|
-
currentScreen: s
|
|
853
|
-
};
|
|
854
|
-
}
|
|
855
|
-
function Vr() {
|
|
866
|
+
function Gr() {
|
|
856
867
|
var t;
|
|
857
|
-
const e =
|
|
868
|
+
const e = Z(), o = (t = e.config.customComponents) == null ? void 0 : t.headerBottom;
|
|
858
869
|
return o ? /* @__PURE__ */ r(o, { ...e }) : null;
|
|
859
870
|
}
|
|
860
|
-
function
|
|
871
|
+
function Kr({ fallback: e }) {
|
|
861
872
|
var n;
|
|
862
|
-
const o =
|
|
873
|
+
const o = Z(), t = (n = o.config.customComponents) == null ? void 0 : n.headerTitle;
|
|
863
874
|
return t ? /* @__PURE__ */ r(t, { ...o }) : e;
|
|
864
875
|
}
|
|
865
876
|
function Ne() {
|
|
@@ -867,14 +878,14 @@ function Ne() {
|
|
|
867
878
|
widgetCtx: { org: e }
|
|
868
879
|
} = j(), {
|
|
869
880
|
routerState: { screen: o }
|
|
870
|
-
} =
|
|
881
|
+
} = A(), { textContent: t } = b();
|
|
871
882
|
return (() => {
|
|
872
|
-
var s,
|
|
883
|
+
var s, i;
|
|
873
884
|
switch (o) {
|
|
874
885
|
case "chat":
|
|
875
886
|
return (s = t == null ? void 0 : t.chatScreen) == null ? void 0 : s.headerTitle;
|
|
876
887
|
case "sessions":
|
|
877
|
-
return (
|
|
888
|
+
return (i = t == null ? void 0 : t.sessionsScreen) == null ? void 0 : i.headerTitle;
|
|
878
889
|
case "welcome":
|
|
879
890
|
return;
|
|
880
891
|
default:
|
|
@@ -883,7 +894,7 @@ function Ne() {
|
|
|
883
894
|
}
|
|
884
895
|
})() ?? e.name ?? "Chat";
|
|
885
896
|
}
|
|
886
|
-
function
|
|
897
|
+
function Qr(e) {
|
|
887
898
|
switch (e) {
|
|
888
899
|
case "chat":
|
|
889
900
|
return g("chat/header");
|
|
@@ -896,11 +907,11 @@ function Kr(e) {
|
|
|
896
907
|
return;
|
|
897
908
|
}
|
|
898
909
|
}
|
|
899
|
-
function
|
|
910
|
+
function Zr() {
|
|
900
911
|
const { router: e } = b(), {
|
|
901
912
|
routerState: { screen: o },
|
|
902
913
|
toSessionsScreen: t
|
|
903
|
-
} =
|
|
914
|
+
} = A();
|
|
904
915
|
return o !== "chat" || e != null && e.chatScreenOnly ? null : /* @__PURE__ */ r(
|
|
905
916
|
C,
|
|
906
917
|
{
|
|
@@ -912,10 +923,10 @@ function Qr() {
|
|
|
912
923
|
}
|
|
913
924
|
);
|
|
914
925
|
}
|
|
915
|
-
function
|
|
926
|
+
function Jr({
|
|
916
927
|
button: e
|
|
917
928
|
}) {
|
|
918
|
-
const { setIsOpen: o } = K(), { isSmallScreen: t } =
|
|
929
|
+
const { setIsOpen: o } = K(), { isSmallScreen: t } = F();
|
|
919
930
|
return t && e.hideOnSmallScreen || !t && e.hideOnLargeScreen ? null : /* @__PURE__ */ r(
|
|
920
931
|
C,
|
|
921
932
|
{
|
|
@@ -926,7 +937,7 @@ function Zr({
|
|
|
926
937
|
if (e.handleClick) return e.handleClick();
|
|
927
938
|
o(!1);
|
|
928
939
|
},
|
|
929
|
-
children: /* @__PURE__ */ r(
|
|
940
|
+
children: /* @__PURE__ */ r(te, { name: e.icon })
|
|
930
941
|
}
|
|
931
942
|
);
|
|
932
943
|
}
|
|
@@ -935,30 +946,30 @@ function ue({
|
|
|
935
946
|
}) {
|
|
936
947
|
const [o, t] = T(!1), {
|
|
937
948
|
routerState: { screen: n }
|
|
938
|
-
} =
|
|
949
|
+
} = A(), { isSmallScreen: s } = F(), { theme: i } = q(), { setWidth: a, setHeight: l } = Rt();
|
|
939
950
|
if (n !== "chat" && n !== "sessions") return null;
|
|
940
951
|
const d = (() => {
|
|
941
952
|
switch (n) {
|
|
942
953
|
case "chat":
|
|
943
|
-
return
|
|
954
|
+
return i.screens.chat.height;
|
|
944
955
|
case "sessions":
|
|
945
|
-
return
|
|
956
|
+
return i.screens.sessions.height;
|
|
946
957
|
default:
|
|
947
|
-
return D(n, ue.name),
|
|
958
|
+
return D(n, ue.name), i.screens.chat.height;
|
|
948
959
|
}
|
|
949
960
|
})(), h = (() => {
|
|
950
961
|
switch (n) {
|
|
951
962
|
case "chat":
|
|
952
|
-
return
|
|
963
|
+
return i.screens.chat.width;
|
|
953
964
|
case "sessions":
|
|
954
|
-
return
|
|
965
|
+
return i.screens.sessions.width;
|
|
955
966
|
default:
|
|
956
|
-
return D(n, ue.name),
|
|
967
|
+
return D(n, ue.name), i.screens.chat.width;
|
|
957
968
|
}
|
|
958
969
|
})(), y = () => {
|
|
959
970
|
t((x) => {
|
|
960
971
|
const m = !x;
|
|
961
|
-
return l(m ? "100vh" : d),
|
|
972
|
+
return l(m ? "100vh" : d), a(m ? `max(40vw, ${h})` : h), m;
|
|
962
973
|
});
|
|
963
974
|
};
|
|
964
975
|
return s && e.hideOnSmallScreen || !s && e.hideOnLargeScreen ? null : /* @__PURE__ */ r(
|
|
@@ -969,7 +980,7 @@ function ue({
|
|
|
969
980
|
className: "rounded-full",
|
|
970
981
|
onClick: y,
|
|
971
982
|
children: /* @__PURE__ */ r(
|
|
972
|
-
|
|
983
|
+
te,
|
|
973
984
|
{
|
|
974
985
|
name: e.icon || (o ? e.shrinkIcon : e.expandIcon)
|
|
975
986
|
}
|
|
@@ -981,7 +992,7 @@ function Pt({
|
|
|
981
992
|
button: e
|
|
982
993
|
}) {
|
|
983
994
|
var k, I;
|
|
984
|
-
const { close: o } = pe(), { widgetCtx: t } = j(), { setIsOpen: n } = K(), { resolveSession: s, sessionState:
|
|
995
|
+
const { close: o } = pe(), { widgetCtx: t } = j(), { setIsOpen: n } = K(), { resolveSession: s, sessionState: i } = $(), { isSmallScreen: a } = F(), l = !i.session, d = ((k = i.session) == null ? void 0 : k.isOpened) === !1, h = e.onResolved || "stay-in-chat", y = e.behaviorBeforeSessionCreation || "disabled", x = e.behaviorIfSessionIsResolved || "disabled", m = !!(i.isResolvingSession || l && y === "disabled" || d && x === "disabled"), z = async () => {
|
|
985
996
|
const { success: f, error: M } = await s();
|
|
986
997
|
if (o(), !f) return console.error(M);
|
|
987
998
|
switch (h) {
|
|
@@ -1036,7 +1047,7 @@ function Pt({
|
|
|
1036
1047
|
);
|
|
1037
1048
|
}
|
|
1038
1049
|
};
|
|
1039
|
-
return
|
|
1050
|
+
return a && e.hideOnSmallScreen || !a && e.hideOnLargeScreen ? null : ((I = e.confirmation) == null ? void 0 : I.type) === "modal" && !d && !l ? /* @__PURE__ */ r(
|
|
1040
1051
|
It,
|
|
1041
1052
|
{
|
|
1042
1053
|
trigger: /* @__PURE__ */ r(
|
|
@@ -1046,7 +1057,7 @@ function Pt({
|
|
|
1046
1057
|
size: "fit",
|
|
1047
1058
|
className: "rounded-full",
|
|
1048
1059
|
disabled: m,
|
|
1049
|
-
children: /* @__PURE__ */ r(
|
|
1060
|
+
children: /* @__PURE__ */ r(te, { name: e.icon })
|
|
1050
1061
|
}
|
|
1051
1062
|
),
|
|
1052
1063
|
children: /* @__PURE__ */ c(kt, { children: [
|
|
@@ -1058,7 +1069,7 @@ function Pt({
|
|
|
1058
1069
|
{
|
|
1059
1070
|
variant: "secondary",
|
|
1060
1071
|
onClick: o,
|
|
1061
|
-
disabled:
|
|
1072
|
+
disabled: i.isResolvingSession,
|
|
1062
1073
|
children: e.confirmation.cancelButtonText || "No"
|
|
1063
1074
|
}
|
|
1064
1075
|
),
|
|
@@ -1067,7 +1078,7 @@ function Pt({
|
|
|
1067
1078
|
{
|
|
1068
1079
|
variant: "destructive",
|
|
1069
1080
|
onClick: z,
|
|
1070
|
-
disabled:
|
|
1081
|
+
disabled: i.isResolvingSession,
|
|
1071
1082
|
children: e.confirmation.confirmButtonText || "Yes"
|
|
1072
1083
|
}
|
|
1073
1084
|
)
|
|
@@ -1082,14 +1093,14 @@ function Pt({
|
|
|
1082
1093
|
className: "rounded-full",
|
|
1083
1094
|
onClick: d || l ? w : z,
|
|
1084
1095
|
disabled: m,
|
|
1085
|
-
children: /* @__PURE__ */ r(
|
|
1096
|
+
children: /* @__PURE__ */ r(te, { name: e.icon })
|
|
1086
1097
|
}
|
|
1087
1098
|
);
|
|
1088
1099
|
}
|
|
1089
1100
|
function fe({ button: e }) {
|
|
1090
1101
|
switch (e.functionality) {
|
|
1091
1102
|
case "close-widget":
|
|
1092
|
-
return /* @__PURE__ */ r(
|
|
1103
|
+
return /* @__PURE__ */ r(Jr, { button: e });
|
|
1093
1104
|
case "expand-shrink":
|
|
1094
1105
|
return /* @__PURE__ */ r(ue, { button: e });
|
|
1095
1106
|
case "resolve-session":
|
|
@@ -1098,16 +1109,16 @@ function fe({ button: e }) {
|
|
|
1098
1109
|
return D(e, fe.name), null;
|
|
1099
1110
|
}
|
|
1100
1111
|
}
|
|
1101
|
-
const
|
|
1112
|
+
const eo = {
|
|
1102
1113
|
functionality: "close-widget",
|
|
1103
1114
|
hideOnLargeScreen: !0,
|
|
1104
1115
|
icon: "X"
|
|
1105
1116
|
};
|
|
1106
|
-
function
|
|
1117
|
+
function to() {
|
|
1107
1118
|
const {
|
|
1108
1119
|
routerState: { screen: e }
|
|
1109
|
-
} =
|
|
1110
|
-
return !t || t.length === 0 ? /* @__PURE__ */ r(fe, { button:
|
|
1120
|
+
} = A(), { headerButtons: o } = b(), t = e === "chat" ? o == null ? void 0 : o.chatScreen : e === "sessions" ? o == null ? void 0 : o.sessionsScreen : [];
|
|
1121
|
+
return !t || t.length === 0 ? /* @__PURE__ */ r(fe, { button: eo }) : /* @__PURE__ */ r(re, { children: t.map((n) => /* @__PURE__ */ r(
|
|
1111
1122
|
fe,
|
|
1112
1123
|
{
|
|
1113
1124
|
button: n
|
|
@@ -1115,13 +1126,13 @@ function eo() {
|
|
|
1115
1126
|
`${n.functionality}-${n.icon}`
|
|
1116
1127
|
)) });
|
|
1117
1128
|
}
|
|
1118
|
-
function
|
|
1129
|
+
function At() {
|
|
1119
1130
|
const {
|
|
1120
1131
|
routerState: { screen: e }
|
|
1121
|
-
} =
|
|
1132
|
+
} = A(), o = Qr(e), t = Ne();
|
|
1122
1133
|
return /* @__PURE__ */ c("header", { ...o, className: "py-2 px-4 shrink-0", children: [
|
|
1123
1134
|
/* @__PURE__ */ c("div", { className: "flex items-center gap-2", children: [
|
|
1124
|
-
/* @__PURE__ */ r(
|
|
1135
|
+
/* @__PURE__ */ r(Zr, {}),
|
|
1125
1136
|
/* @__PURE__ */ r(
|
|
1126
1137
|
"div",
|
|
1127
1138
|
{
|
|
@@ -1130,37 +1141,37 @@ function Ot() {
|
|
|
1130
1141
|
e === "sessions" && "ps-2"
|
|
1131
1142
|
),
|
|
1132
1143
|
children: /* @__PURE__ */ r(
|
|
1133
|
-
|
|
1144
|
+
Kr,
|
|
1134
1145
|
{
|
|
1135
1146
|
fallback: /* @__PURE__ */ r("h2", { className: "font-semibold", children: t })
|
|
1136
1147
|
}
|
|
1137
1148
|
)
|
|
1138
1149
|
}
|
|
1139
1150
|
),
|
|
1140
|
-
/* @__PURE__ */ r(
|
|
1151
|
+
/* @__PURE__ */ r(to, {})
|
|
1141
1152
|
] }),
|
|
1142
|
-
/* @__PURE__ */ r(
|
|
1153
|
+
/* @__PURE__ */ r(Gr, {})
|
|
1143
1154
|
] });
|
|
1144
1155
|
}
|
|
1145
|
-
function
|
|
1156
|
+
function Ft({ className: e }) {
|
|
1146
1157
|
return /* @__PURE__ */ r(wr, { className: p("size-4 animate-spin", e) });
|
|
1147
1158
|
}
|
|
1148
|
-
function
|
|
1159
|
+
function ro() {
|
|
1149
1160
|
const {
|
|
1150
1161
|
messagesState: { isInitialFetchLoading: e }
|
|
1151
|
-
} = E(), { isSmallScreen: o } =
|
|
1162
|
+
} = E(), { isSmallScreen: o } = F(), { activeMode: t, Component: n } = mt();
|
|
1152
1163
|
return {
|
|
1153
1164
|
isCanvasOpen: !e && !o && !!t && !!n
|
|
1154
1165
|
};
|
|
1155
1166
|
}
|
|
1156
|
-
function
|
|
1157
|
-
const e =
|
|
1167
|
+
function oo() {
|
|
1168
|
+
const e = Z(), { activeMode: o, Component: t } = mt(), { sendMessage: n } = E(), { createStateCheckpoint: s } = $(), [i, a] = T(!1), l = async (d) => {
|
|
1158
1169
|
try {
|
|
1159
|
-
|
|
1170
|
+
a(!0), await n(d);
|
|
1160
1171
|
} catch (h) {
|
|
1161
1172
|
console.error(h);
|
|
1162
1173
|
} finally {
|
|
1163
|
-
|
|
1174
|
+
a(!1);
|
|
1164
1175
|
}
|
|
1165
1176
|
};
|
|
1166
1177
|
return !o || !t ? null : /* @__PURE__ */ r(
|
|
@@ -1170,7 +1181,7 @@ function ro() {
|
|
|
1170
1181
|
mode: o,
|
|
1171
1182
|
createStateCheckpoint: s,
|
|
1172
1183
|
sendMessage: l,
|
|
1173
|
-
isSendingMessage:
|
|
1184
|
+
isSendingMessage: i
|
|
1174
1185
|
}
|
|
1175
1186
|
);
|
|
1176
1187
|
}
|
|
@@ -1193,7 +1204,7 @@ const P = U.forwardRef(
|
|
|
1193
1204
|
}
|
|
1194
1205
|
);
|
|
1195
1206
|
P.displayName = "MotionDiv__VerticalReveal";
|
|
1196
|
-
const
|
|
1207
|
+
const no = [
|
|
1197
1208
|
{
|
|
1198
1209
|
label: "Terrible",
|
|
1199
1210
|
value: 1,
|
|
@@ -1220,23 +1231,23 @@ const oo = [
|
|
|
1220
1231
|
emoji: "😍"
|
|
1221
1232
|
}
|
|
1222
1233
|
];
|
|
1223
|
-
function
|
|
1224
|
-
const { isSmallScreen: e } =
|
|
1234
|
+
function so() {
|
|
1235
|
+
const { isSmallScreen: e } = F(), {
|
|
1225
1236
|
submitCsat: o,
|
|
1226
1237
|
isCsatRequested: t,
|
|
1227
1238
|
isCsatSubmitted: n,
|
|
1228
1239
|
submittedScore: s,
|
|
1229
|
-
submittedFeedback:
|
|
1230
|
-
} = gt(), [
|
|
1240
|
+
submittedFeedback: i
|
|
1241
|
+
} = gt(), [a, l] = T(null), [d, h] = T(null), y = (m) => {
|
|
1231
1242
|
l((z) => z === m ? null : m);
|
|
1232
1243
|
}, x = () => {
|
|
1233
|
-
|
|
1234
|
-
score:
|
|
1244
|
+
a && o({
|
|
1245
|
+
score: a,
|
|
1235
1246
|
feedback: d || void 0
|
|
1236
1247
|
});
|
|
1237
1248
|
};
|
|
1238
1249
|
return !t && !n ? null : /* @__PURE__ */ c("div", { className: "w-1/2 min-w-80 max-w-96 mx-auto overflow-hidden", children: [
|
|
1239
|
-
/* @__PURE__ */ r(_, { mode: "wait", children: t && !
|
|
1250
|
+
/* @__PURE__ */ r(_, { mode: "wait", children: t && !a ? /* @__PURE__ */ r(P, { children: /* @__PURE__ */ r("p", { className: "text-sm text-muted-foreground text-center pt-2", children: "How was your conversation?" }) }, "csat-requested-title") : n ? /* @__PURE__ */ r(P, { children: /* @__PURE__ */ r("p", { className: "text-sm text-muted-foreground text-center pt-2", children: "You rated the conversation as" }) }, "csat-submitted-title") : null }),
|
|
1240
1251
|
/* @__PURE__ */ r(
|
|
1241
1252
|
"div",
|
|
1242
1253
|
{
|
|
@@ -1245,18 +1256,18 @@ function no() {
|
|
|
1245
1256
|
"transition-all",
|
|
1246
1257
|
n && "gap-0 justify-center"
|
|
1247
1258
|
),
|
|
1248
|
-
children:
|
|
1259
|
+
children: no.map((m) => /* @__PURE__ */ r(
|
|
1249
1260
|
C,
|
|
1250
1261
|
{
|
|
1251
|
-
variant: m.value ===
|
|
1262
|
+
variant: m.value === a ? "secondary" : "ghost",
|
|
1252
1263
|
size: "selfless",
|
|
1253
1264
|
className: p(
|
|
1254
1265
|
"transition-all overflow-hidden",
|
|
1255
1266
|
"text-2xl size-8 rounded-full",
|
|
1256
1267
|
"opacity-35",
|
|
1257
1268
|
"hover:opacity-100",
|
|
1258
|
-
!
|
|
1259
|
-
m.value ===
|
|
1269
|
+
!a && "opacity-100",
|
|
1270
|
+
m.value === a && "opacity-100",
|
|
1260
1271
|
n && m.value !== s && "opacity-0 size-0",
|
|
1261
1272
|
n && m.value === s && "opacity-100 size-fit text-4xl"
|
|
1262
1273
|
),
|
|
@@ -1267,7 +1278,7 @@ function no() {
|
|
|
1267
1278
|
))
|
|
1268
1279
|
}
|
|
1269
1280
|
),
|
|
1270
|
-
/* @__PURE__ */ r(_, { mode: "wait", children: (
|
|
1281
|
+
/* @__PURE__ */ r(_, { mode: "wait", children: (a || s) && /* @__PURE__ */ r(P, { children: /* @__PURE__ */ c("div", { className: "pb-2 px-2 flex items-end", children: [
|
|
1271
1282
|
/* @__PURE__ */ r(
|
|
1272
1283
|
"textarea",
|
|
1273
1284
|
{
|
|
@@ -1282,7 +1293,7 @@ function no() {
|
|
|
1282
1293
|
e ? "text-[16px]" : "text-sm",
|
|
1283
1294
|
n && "text-center"
|
|
1284
1295
|
),
|
|
1285
|
-
value: n ?
|
|
1296
|
+
value: n ? i || "" : d || "",
|
|
1286
1297
|
onChange: t ? (m) => h(m.target.value) : void 0,
|
|
1287
1298
|
readOnly: n,
|
|
1288
1299
|
placeholder: t ? "Tell us more... (optional)" : void 0
|
|
@@ -1293,7 +1304,7 @@ function no() {
|
|
|
1293
1304
|
{
|
|
1294
1305
|
size: "fit",
|
|
1295
1306
|
onClick: x,
|
|
1296
|
-
disabled: !
|
|
1307
|
+
disabled: !a,
|
|
1297
1308
|
className: p(
|
|
1298
1309
|
"transition-all overflow-hidden",
|
|
1299
1310
|
"rounded-full size-8 flex items-center justify-center p-0",
|
|
@@ -1324,8 +1335,8 @@ function Se({
|
|
|
1324
1335
|
...t
|
|
1325
1336
|
}) {
|
|
1326
1337
|
const { sendMessage: n } = E(), s = () => {
|
|
1327
|
-
const
|
|
1328
|
-
|
|
1338
|
+
const i = e.trim();
|
|
1339
|
+
i && n({ content: i });
|
|
1329
1340
|
};
|
|
1330
1341
|
return /* @__PURE__ */ r(
|
|
1331
1342
|
C,
|
|
@@ -1339,7 +1350,7 @@ function Se({
|
|
|
1339
1350
|
}
|
|
1340
1351
|
);
|
|
1341
1352
|
}
|
|
1342
|
-
function
|
|
1353
|
+
function ao() {
|
|
1343
1354
|
const { t: e } = X(), o = [e("i_need_more_help"), e("this_was_helpful")];
|
|
1344
1355
|
return /* @__PURE__ */ r(
|
|
1345
1356
|
"div",
|
|
@@ -1357,23 +1368,23 @@ function so() {
|
|
|
1357
1368
|
}
|
|
1358
1369
|
);
|
|
1359
1370
|
}
|
|
1360
|
-
function
|
|
1361
|
-
const { sessionState: e } =
|
|
1362
|
-
return /* @__PURE__ */ r(_, { mode: "wait", children: o == null ? void 0 : o.map((s,
|
|
1371
|
+
function it() {
|
|
1372
|
+
const { sessionState: e } = $(), { chatFooterItems: o } = b(), t = !!e.session && !e.session.isOpened, n = !t;
|
|
1373
|
+
return /* @__PURE__ */ r(_, { mode: "wait", children: o == null ? void 0 : o.map((s, i) => s.showWhenSessionIsOpen === !1 && n || s.showWhenSessionIsResolved === !1 && t ? null : /* @__PURE__ */ r(P, { children: /* @__PURE__ */ r("div", { className: "pb-2 text-center text-xs", children: /* @__PURE__ */ r(be, { children: s.message }) }) }, `${s.message}-${i}`)) });
|
|
1363
1374
|
}
|
|
1364
1375
|
function io({
|
|
1365
1376
|
file: { status: e, file: o, error: t },
|
|
1366
1377
|
onCancel: n
|
|
1367
1378
|
}) {
|
|
1368
|
-
const [s,
|
|
1379
|
+
const [s, i] = T(
|
|
1369
1380
|
null
|
|
1370
1381
|
);
|
|
1371
|
-
|
|
1382
|
+
oe(() => {
|
|
1372
1383
|
if (!o.type.startsWith("image/")) return;
|
|
1373
1384
|
const d = new FileReader();
|
|
1374
|
-
return d.onload = () =>
|
|
1385
|
+
return d.onload = () => i(d.result), d.onerror = () => console.error("Error reading file"), d.readAsDataURL(o), () => d.abort();
|
|
1375
1386
|
}, [o]);
|
|
1376
|
-
const
|
|
1387
|
+
const a = () => {
|
|
1377
1388
|
switch (e) {
|
|
1378
1389
|
case "uploading":
|
|
1379
1390
|
return /* @__PURE__ */ r(br, { className: "size-4 animate-spin" });
|
|
@@ -1394,7 +1405,7 @@ function io({
|
|
|
1394
1405
|
) : d === "audio" ? /* @__PURE__ */ r(yr, {}) : d === "video" ? /* @__PURE__ */ r(kr, {}) : /* @__PURE__ */ r(Cr, {});
|
|
1395
1406
|
};
|
|
1396
1407
|
return /* @__PURE__ */ r(
|
|
1397
|
-
|
|
1408
|
+
ee,
|
|
1398
1409
|
{
|
|
1399
1410
|
side: "bottom",
|
|
1400
1411
|
content: e === "error" ? /* @__PURE__ */ c("span", { className: "text-destructive", children: [
|
|
@@ -1411,7 +1422,7 @@ function io({
|
|
|
1411
1422
|
"flex items-center justify-center shrink-0"
|
|
1412
1423
|
),
|
|
1413
1424
|
children: [
|
|
1414
|
-
/* @__PURE__ */ r("div", { className: "absolute inset-0 flex items-center justify-center", children:
|
|
1425
|
+
/* @__PURE__ */ r("div", { className: "absolute inset-0 flex items-center justify-center", children: a() }),
|
|
1415
1426
|
/* @__PURE__ */ r(
|
|
1416
1427
|
"button",
|
|
1417
1428
|
{
|
|
@@ -1432,9 +1443,9 @@ function io({
|
|
|
1432
1443
|
}
|
|
1433
1444
|
);
|
|
1434
1445
|
}
|
|
1435
|
-
function
|
|
1446
|
+
function lo() {
|
|
1436
1447
|
var R;
|
|
1437
|
-
const { isSmallScreen: e } =
|
|
1448
|
+
const { isSmallScreen: e } = F(), o = de(null), { sendMessage: t } = E(), { sessionState: n } = $(), { t: s } = X(), [i, a] = T(""), {
|
|
1438
1449
|
allFiles: l,
|
|
1439
1450
|
emptyTheFiles: d,
|
|
1440
1451
|
handleCancelUpload: h,
|
|
@@ -1443,10 +1454,10 @@ function ao() {
|
|
|
1443
1454
|
successFiles: m
|
|
1444
1455
|
} = Ut(), z = !!((R = n.session) != null && R.isHandedOff), { isAwaitingBotReply: w } = wt(), k = (v) => {
|
|
1445
1456
|
y(v);
|
|
1446
|
-
}, I = !
|
|
1457
|
+
}, I = !i.trim() && m.length === 0, f = async () => {
|
|
1447
1458
|
if (w || I) return;
|
|
1448
1459
|
x && console.info("please wait for the file(s) to upload");
|
|
1449
|
-
const v =
|
|
1460
|
+
const v = i.trim();
|
|
1450
1461
|
t({
|
|
1451
1462
|
content: v,
|
|
1452
1463
|
attachments: m.flatMap(
|
|
@@ -1460,11 +1471,11 @@ function ao() {
|
|
|
1460
1471
|
}
|
|
1461
1472
|
] : []
|
|
1462
1473
|
)
|
|
1463
|
-
}),
|
|
1474
|
+
}), a(""), d();
|
|
1464
1475
|
}, {
|
|
1465
1476
|
getRootProps: M,
|
|
1466
|
-
getInputProps:
|
|
1467
|
-
open:
|
|
1477
|
+
getInputProps: O,
|
|
1478
|
+
open: H
|
|
1468
1479
|
} = Dr({
|
|
1469
1480
|
onDrop: k,
|
|
1470
1481
|
noClick: !0,
|
|
@@ -1493,7 +1504,7 @@ function ao() {
|
|
|
1493
1504
|
className: "p-2 relative space-y-1",
|
|
1494
1505
|
...M(),
|
|
1495
1506
|
children: [
|
|
1496
|
-
/* @__PURE__ */ r("input", { ...
|
|
1507
|
+
/* @__PURE__ */ r("input", { ...O() }),
|
|
1497
1508
|
/* @__PURE__ */ c(
|
|
1498
1509
|
"div",
|
|
1499
1510
|
{
|
|
@@ -1533,7 +1544,7 @@ function ao() {
|
|
|
1533
1544
|
onPaste: W,
|
|
1534
1545
|
ref: o,
|
|
1535
1546
|
id: "chat-input",
|
|
1536
|
-
value:
|
|
1547
|
+
value: i,
|
|
1537
1548
|
rows: 3,
|
|
1538
1549
|
className: p(
|
|
1539
1550
|
/** Match the border radius of the container */
|
|
@@ -1546,7 +1557,7 @@ function ao() {
|
|
|
1546
1557
|
// 16px on mobiles prevents auto-zoom on the input when focused
|
|
1547
1558
|
e ? "text-[16px]" : "text-sm"
|
|
1548
1559
|
),
|
|
1549
|
-
onChange: (v) =>
|
|
1560
|
+
onChange: (v) => a(v.target.value),
|
|
1550
1561
|
onKeyDown: async (v) => {
|
|
1551
1562
|
v.key === "Enter" && !v.shiftKey && (v.preventDefault(), f());
|
|
1552
1563
|
},
|
|
@@ -1558,7 +1569,7 @@ function ao() {
|
|
|
1558
1569
|
),
|
|
1559
1570
|
/* @__PURE__ */ c("div", { className: "gap-2 flex justify-between", children: [
|
|
1560
1571
|
/* @__PURE__ */ r(
|
|
1561
|
-
|
|
1572
|
+
ee,
|
|
1562
1573
|
{
|
|
1563
1574
|
side: "top",
|
|
1564
1575
|
align: "start",
|
|
@@ -1566,7 +1577,7 @@ function ao() {
|
|
|
1566
1577
|
children: /* @__PURE__ */ r(
|
|
1567
1578
|
C,
|
|
1568
1579
|
{
|
|
1569
|
-
onClick:
|
|
1580
|
+
onClick: H,
|
|
1570
1581
|
size: "fit",
|
|
1571
1582
|
variant: "ghost",
|
|
1572
1583
|
className: p(
|
|
@@ -1577,7 +1588,7 @@ function ao() {
|
|
|
1577
1588
|
)
|
|
1578
1589
|
}
|
|
1579
1590
|
),
|
|
1580
|
-
/* @__PURE__ */ r(
|
|
1591
|
+
/* @__PURE__ */ r(ee, { content: "send message", side: "top", align: "end", children: /* @__PURE__ */ r(
|
|
1581
1592
|
C,
|
|
1582
1593
|
{
|
|
1583
1594
|
size: "fit",
|
|
@@ -1596,13 +1607,13 @@ function ao() {
|
|
|
1596
1607
|
);
|
|
1597
1608
|
}
|
|
1598
1609
|
function lt() {
|
|
1599
|
-
const { widgetCtx: e } = j(), { router: o } = b(), { canCreateNewSession: t } =
|
|
1600
|
-
return /* @__PURE__ */ r(
|
|
1610
|
+
const { widgetCtx: e } = j(), { router: o } = b(), { canCreateNewSession: t } = $(), { toSessionsScreen: n } = A(), { t: s } = X();
|
|
1611
|
+
return /* @__PURE__ */ r(re, { children: t || o != null && o.chatScreenOnly ? /* @__PURE__ */ r(C, { onClick: e.resetChat, className: "rounded-2xl w-full", children: s("new_conversation") }) : /* @__PURE__ */ r(C, { onClick: n, className: "rounded-2xl w-full", children: s("back_to_conversations") }) });
|
|
1601
1612
|
}
|
|
1602
|
-
function
|
|
1613
|
+
function co() {
|
|
1603
1614
|
const { t: e } = X(), { isCsatRequested: o, isCsatSubmitted: t } = gt();
|
|
1604
1615
|
return /* @__PURE__ */ r("div", { className: "p-2", children: /* @__PURE__ */ r("div", { className: "p-2 bg-muted rounded-3xl", children: /* @__PURE__ */ r(_, { mode: "wait", children: o || t ? /* @__PURE__ */ c(P, { children: [
|
|
1605
|
-
/* @__PURE__ */ r(
|
|
1616
|
+
/* @__PURE__ */ r(so, {}),
|
|
1606
1617
|
/* @__PURE__ */ r(_, { mode: "wait", children: t && /* @__PURE__ */ r(P, { children: /* @__PURE__ */ r(lt, {}) }, "new-conv-or-back-to-convs-button") })
|
|
1607
1618
|
] }, "csat") : /* @__PURE__ */ c(P, { children: [
|
|
1608
1619
|
/* @__PURE__ */ c("div", { className: "ps-2 flex items-center gap-1 pb-2", children: [
|
|
@@ -1612,26 +1623,26 @@ function lo() {
|
|
|
1612
1623
|
/* @__PURE__ */ r(lt, {})
|
|
1613
1624
|
] }, "session-closed") }) }) });
|
|
1614
1625
|
}
|
|
1615
|
-
function
|
|
1616
|
-
var
|
|
1617
|
-
const { initialQuestions: e, initialQuestionsPosition: o, thisWasHelpfulOrNot: t } = b(), { sessionState: n } =
|
|
1618
|
-
return /* @__PURE__ */ r("footer", { children: /* @__PURE__ */ r(_, { mode: "wait", children: n.session && !((
|
|
1619
|
-
/* @__PURE__ */ r(
|
|
1620
|
-
/* @__PURE__ */ r(
|
|
1626
|
+
function po() {
|
|
1627
|
+
var a;
|
|
1628
|
+
const { initialQuestions: e, initialQuestionsPosition: o, thisWasHelpfulOrNot: t } = b(), { sessionState: n } = $(), { messagesState: s } = E(), i = s.messages.length === 0;
|
|
1629
|
+
return /* @__PURE__ */ r("footer", { children: /* @__PURE__ */ r(_, { mode: "wait", children: n.session && !((a = n.session) != null && a.isOpened) ? /* @__PURE__ */ c(P, { children: [
|
|
1630
|
+
/* @__PURE__ */ r(co, {}),
|
|
1631
|
+
/* @__PURE__ */ r(it, {})
|
|
1621
1632
|
] }, "session-closed") : /* @__PURE__ */ c(P, { children: [
|
|
1622
|
-
s.lastAIResMightSolveUserIssue && (t == null ? void 0 : t.enabled) !== !1 && /* @__PURE__ */ r(
|
|
1623
|
-
|
|
1633
|
+
s.lastAIResMightSolveUserIssue && (t == null ? void 0 : t.enabled) !== !1 && /* @__PURE__ */ r(ao, {}),
|
|
1634
|
+
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, d) => /* @__PURE__ */ r(
|
|
1624
1635
|
Se,
|
|
1625
1636
|
{
|
|
1626
1637
|
suggestion: l
|
|
1627
1638
|
},
|
|
1628
1639
|
`${l}-${d}`
|
|
1629
1640
|
)) }),
|
|
1630
|
-
/* @__PURE__ */ r(
|
|
1631
|
-
/* @__PURE__ */ r(
|
|
1641
|
+
/* @__PURE__ */ r(lo, {}),
|
|
1642
|
+
/* @__PURE__ */ r(it, {})
|
|
1632
1643
|
] }, "chat-input") }) });
|
|
1633
1644
|
}
|
|
1634
|
-
function
|
|
1645
|
+
function ho({
|
|
1635
1646
|
isFirstInGroup: e,
|
|
1636
1647
|
isLastInGroup: o,
|
|
1637
1648
|
isAloneInGroup: t,
|
|
@@ -1640,10 +1651,10 @@ function po({
|
|
|
1640
1651
|
const { componentStore: s } = j();
|
|
1641
1652
|
if (n.type !== "AGENT" && n.type !== "AI") return null;
|
|
1642
1653
|
if (n.data.action) {
|
|
1643
|
-
const
|
|
1644
|
-
if (
|
|
1654
|
+
const a = s.getComponent(n.data.action.name);
|
|
1655
|
+
if (a)
|
|
1645
1656
|
return /* @__PURE__ */ r(
|
|
1646
|
-
|
|
1657
|
+
a,
|
|
1647
1658
|
{
|
|
1648
1659
|
...n,
|
|
1649
1660
|
id: n.id,
|
|
@@ -1653,9 +1664,9 @@ function po({
|
|
|
1653
1664
|
}
|
|
1654
1665
|
);
|
|
1655
1666
|
}
|
|
1656
|
-
const
|
|
1657
|
-
return
|
|
1658
|
-
|
|
1667
|
+
const i = s.getComponent(n.component);
|
|
1668
|
+
return i ? /* @__PURE__ */ r(
|
|
1669
|
+
i,
|
|
1659
1670
|
{
|
|
1660
1671
|
...n,
|
|
1661
1672
|
id: n.id,
|
|
@@ -1673,18 +1684,18 @@ function po({
|
|
|
1673
1684
|
}
|
|
1674
1685
|
);
|
|
1675
1686
|
}
|
|
1676
|
-
function
|
|
1687
|
+
function Ot({
|
|
1677
1688
|
messages: e,
|
|
1678
1689
|
className: o,
|
|
1679
1690
|
containerClassName: t
|
|
1680
1691
|
}) {
|
|
1681
|
-
var
|
|
1692
|
+
var a, l;
|
|
1682
1693
|
const { timestamps: n } = b();
|
|
1683
|
-
if (!((
|
|
1694
|
+
if (!((a = n == null ? void 0 : n.perMessageGroup) != null && a.enabled))
|
|
1684
1695
|
return null;
|
|
1685
1696
|
const s = (l = e[e.length - 1]) == null ? void 0 : l.timestamp;
|
|
1686
1697
|
if (!s) return null;
|
|
1687
|
-
const
|
|
1698
|
+
const i = (() => {
|
|
1688
1699
|
try {
|
|
1689
1700
|
return new Date(s).toLocaleTimeString([], {
|
|
1690
1701
|
hour: "2-digit",
|
|
@@ -1695,7 +1706,7 @@ function Ft({
|
|
|
1695
1706
|
return console.error(d), null;
|
|
1696
1707
|
}
|
|
1697
1708
|
})();
|
|
1698
|
-
return
|
|
1709
|
+
return i ? /* @__PURE__ */ r("div", { className: t, children: /* @__PURE__ */ r("span", { className: p("text-xs text-muted-foreground", o), children: i }) }) : null;
|
|
1699
1710
|
}
|
|
1700
1711
|
function le({
|
|
1701
1712
|
messages: e,
|
|
@@ -1708,7 +1719,7 @@ function le({
|
|
|
1708
1719
|
...g("chat/agent_msg_group/root"),
|
|
1709
1720
|
className: p("flex items-end gap-2"),
|
|
1710
1721
|
children: [
|
|
1711
|
-
/* @__PURE__ */ r(
|
|
1722
|
+
/* @__PURE__ */ r(ee, { content: o == null ? void 0 : o.name, side: "right", align: "end", children: /* @__PURE__ */ r(
|
|
1712
1723
|
we,
|
|
1713
1724
|
{
|
|
1714
1725
|
...g("chat/agent_msg_group/root/avatar"),
|
|
@@ -1723,7 +1734,7 @@ function le({
|
|
|
1723
1734
|
...g("chat/agent_msg_group/avatar_and_msgs/root"),
|
|
1724
1735
|
className: p("flex items-end gap-2"),
|
|
1725
1736
|
children: [
|
|
1726
|
-
/* @__PURE__ */ r(
|
|
1737
|
+
/* @__PURE__ */ r(ee, { content: o == null ? void 0 : o.name, side: "right", align: "end", children: /* @__PURE__ */ r(
|
|
1727
1738
|
we,
|
|
1728
1739
|
{
|
|
1729
1740
|
...g("chat/agent_msg_group/avatar_and_msgs/avatar"),
|
|
@@ -1736,17 +1747,17 @@ function le({
|
|
|
1736
1747
|
...g("chat/agent_msg_group/avatar_and_msgs/msgs"),
|
|
1737
1748
|
className: p("flex-1 flex flex-col gap-1"),
|
|
1738
1749
|
children: [
|
|
1739
|
-
e.map((n, s,
|
|
1740
|
-
|
|
1750
|
+
e.map((n, s, i) => /* @__PURE__ */ r(
|
|
1751
|
+
ho,
|
|
1741
1752
|
{
|
|
1742
1753
|
isFirstInGroup: s === 0,
|
|
1743
|
-
isLastInGroup: s ===
|
|
1744
|
-
isAloneInGroup:
|
|
1754
|
+
isLastInGroup: s === i.length - 1,
|
|
1755
|
+
isAloneInGroup: i.length === 1,
|
|
1745
1756
|
...n
|
|
1746
1757
|
},
|
|
1747
1758
|
n.id
|
|
1748
1759
|
)),
|
|
1749
|
-
/* @__PURE__ */ r(
|
|
1760
|
+
/* @__PURE__ */ r(Ot, { messages: e })
|
|
1750
1761
|
]
|
|
1751
1762
|
}
|
|
1752
1763
|
)
|
|
@@ -1772,14 +1783,14 @@ function le({
|
|
|
1772
1783
|
}
|
|
1773
1784
|
);
|
|
1774
1785
|
}
|
|
1775
|
-
function
|
|
1786
|
+
function mo() {
|
|
1776
1787
|
var t, n;
|
|
1777
|
-
const e =
|
|
1788
|
+
const e = Z();
|
|
1778
1789
|
if ((t = e.session) != null && t.isOpened || !e.session) return null;
|
|
1779
1790
|
const o = (n = e.config.customComponents) == null ? void 0 : n.onSessionResolved;
|
|
1780
1791
|
return o ? /* @__PURE__ */ r(o, { ...e }) : null;
|
|
1781
1792
|
}
|
|
1782
|
-
function
|
|
1793
|
+
function go({
|
|
1783
1794
|
message: e,
|
|
1784
1795
|
isFirstInGroup: o,
|
|
1785
1796
|
isLastInGroup: t,
|
|
@@ -1792,7 +1803,7 @@ function mo({
|
|
|
1792
1803
|
...g("chat/user_msg/root"),
|
|
1793
1804
|
className: "w-5/6 flex flex-col items-end gap-1",
|
|
1794
1805
|
children: [
|
|
1795
|
-
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((
|
|
1806
|
+
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(Tt, { attachment: i }, i.id)) }),
|
|
1796
1807
|
e.content.length > 0 && /* @__PURE__ */ r(
|
|
1797
1808
|
"div",
|
|
1798
1809
|
{
|
|
@@ -1819,7 +1830,7 @@ function mo({
|
|
|
1819
1830
|
}
|
|
1820
1831
|
);
|
|
1821
1832
|
}
|
|
1822
|
-
function
|
|
1833
|
+
function wo({
|
|
1823
1834
|
messages: e
|
|
1824
1835
|
}) {
|
|
1825
1836
|
return /* @__PURE__ */ c(
|
|
@@ -1829,7 +1840,7 @@ function go({
|
|
|
1829
1840
|
className: p("group", "flex flex-col gap-1 justify-end items-end"),
|
|
1830
1841
|
children: [
|
|
1831
1842
|
e.map((o, t, n) => /* @__PURE__ */ r(
|
|
1832
|
-
|
|
1843
|
+
go,
|
|
1833
1844
|
{
|
|
1834
1845
|
message: o,
|
|
1835
1846
|
isFirstInGroup: t === 0,
|
|
@@ -1838,34 +1849,34 @@ function go({
|
|
|
1838
1849
|
},
|
|
1839
1850
|
o.id
|
|
1840
1851
|
)),
|
|
1841
|
-
/* @__PURE__ */ r(
|
|
1852
|
+
/* @__PURE__ */ r(Ot, { messages: e, containerClassName: "ms-auto" })
|
|
1842
1853
|
]
|
|
1843
1854
|
}
|
|
1844
1855
|
);
|
|
1845
1856
|
}
|
|
1846
|
-
function
|
|
1857
|
+
function uo(e) {
|
|
1847
1858
|
const o = [];
|
|
1848
1859
|
let t = null;
|
|
1849
1860
|
return e.forEach((n) => {
|
|
1850
|
-
var s,
|
|
1861
|
+
var s, i, a, l, d, h;
|
|
1851
1862
|
// Start a new group if the type changes
|
|
1852
1863
|
(((s = t == null ? void 0 : t[0]) == null ? void 0 : s.type) !== n.type || // Start a new group if the agent changes
|
|
1853
|
-
((
|
|
1864
|
+
((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) || ((d = n.agent) == null ? void 0 : d.name) !== ((h = t[0].agent) == null ? void 0 : h.name))) && (t = [], o.push(t)), t.push(n);
|
|
1854
1865
|
}), o;
|
|
1855
1866
|
}
|
|
1856
|
-
function
|
|
1867
|
+
function fo(e) {
|
|
1857
1868
|
var o;
|
|
1858
1869
|
return ((o = e == null ? void 0 : e[0]) == null ? void 0 : o.type) === "USER";
|
|
1859
1870
|
}
|
|
1860
|
-
function
|
|
1871
|
+
function vo(e) {
|
|
1861
1872
|
var o;
|
|
1862
1873
|
return ((o = e == null ? void 0 : e[0]) == null ? void 0 : o.type) === "AI";
|
|
1863
1874
|
}
|
|
1864
|
-
function
|
|
1875
|
+
function xo(e) {
|
|
1865
1876
|
var o;
|
|
1866
1877
|
return ((o = e == null ? void 0 : e[0]) == null ? void 0 : o.type) === "AGENT";
|
|
1867
1878
|
}
|
|
1868
|
-
function
|
|
1879
|
+
function bo() {
|
|
1869
1880
|
const {
|
|
1870
1881
|
messagesState: { messages: e }
|
|
1871
1882
|
} = E(), {
|
|
@@ -1874,14 +1885,14 @@ function xo() {
|
|
|
1874
1885
|
initialQuestions: n,
|
|
1875
1886
|
bot: s
|
|
1876
1887
|
} = b();
|
|
1877
|
-
return /* @__PURE__ */ r(
|
|
1888
|
+
return /* @__PURE__ */ r(re, { children: e.length === 0 && o.length > 0 && /* @__PURE__ */ r(
|
|
1878
1889
|
le,
|
|
1879
1890
|
{
|
|
1880
1891
|
messages: o.map(
|
|
1881
|
-
({ message:
|
|
1892
|
+
({ message: i }, a) => ({
|
|
1882
1893
|
component: "bot_message",
|
|
1883
|
-
data: { message:
|
|
1884
|
-
id: `${
|
|
1894
|
+
data: { message: i },
|
|
1895
|
+
id: `${a}-${i}`,
|
|
1885
1896
|
type: "AI",
|
|
1886
1897
|
timestamp: null
|
|
1887
1898
|
})
|
|
@@ -1891,7 +1902,7 @@ function xo() {
|
|
|
1891
1902
|
}
|
|
1892
1903
|
) });
|
|
1893
1904
|
}
|
|
1894
|
-
function
|
|
1905
|
+
function yo() {
|
|
1895
1906
|
const {
|
|
1896
1907
|
messagesState: { messages: e }
|
|
1897
1908
|
} = E(), { chatBannerItems: o } = b();
|
|
@@ -1899,25 +1910,25 @@ function bo() {
|
|
|
1899
1910
|
({ message: t, persistent: n }, s) => e.length > 0 && !n ? null : /* @__PURE__ */ r("div", { children: /* @__PURE__ */ r(be, { children: t }) }, `${t}-${s}`)
|
|
1900
1911
|
) });
|
|
1901
1912
|
}
|
|
1902
|
-
function
|
|
1913
|
+
function ko() {
|
|
1903
1914
|
const {
|
|
1904
1915
|
messagesState: { messages: e }
|
|
1905
1916
|
} = E(), o = b(), {
|
|
1906
1917
|
advancedInitialMessages: t = [],
|
|
1907
1918
|
initialQuestions: n,
|
|
1908
1919
|
initialQuestionsPosition: s
|
|
1909
|
-
} = o,
|
|
1910
|
-
var
|
|
1911
|
-
return t.length ? [] : e.length ? [] : (
|
|
1920
|
+
} = o, i = (() => {
|
|
1921
|
+
var a;
|
|
1922
|
+
return t.length ? [] : e.length ? [] : (a = o.initialMessages) != null && a.length ? o.initialMessages : ["Hello, how can I help you?"];
|
|
1912
1923
|
})();
|
|
1913
|
-
return /* @__PURE__ */ r(
|
|
1924
|
+
return /* @__PURE__ */ r(re, { children: e.length === 0 && i.length > 0 && /* @__PURE__ */ r(
|
|
1914
1925
|
le,
|
|
1915
1926
|
{
|
|
1916
|
-
messages:
|
|
1917
|
-
(
|
|
1927
|
+
messages: i.map(
|
|
1928
|
+
(a, l) => ({
|
|
1918
1929
|
component: "bot_message",
|
|
1919
|
-
data: { message:
|
|
1920
|
-
id: `${l}-${
|
|
1930
|
+
data: { message: a },
|
|
1931
|
+
id: `${l}-${a}`,
|
|
1921
1932
|
type: "AI",
|
|
1922
1933
|
timestamp: null
|
|
1923
1934
|
})
|
|
@@ -1927,18 +1938,18 @@ function yo() {
|
|
|
1927
1938
|
}
|
|
1928
1939
|
) });
|
|
1929
1940
|
}
|
|
1930
|
-
function
|
|
1941
|
+
function Co() {
|
|
1931
1942
|
var t;
|
|
1932
|
-
const e =
|
|
1943
|
+
const e = Z(), o = (t = e.config.customComponents) == null ? void 0 : t.chatBottomComponents;
|
|
1933
1944
|
return o ? /* @__PURE__ */ r("div", { children: o.map(({ key: n, component: s }) => /* @__PURE__ */ r(s, { ...e }, n)) }) : null;
|
|
1934
1945
|
}
|
|
1935
|
-
function
|
|
1946
|
+
function zo() {
|
|
1936
1947
|
const {
|
|
1937
1948
|
messagesState: { messages: e }
|
|
1938
|
-
} = E(), { isAwaitingBotReply: o } = wt(), { componentStore: t } = j(), { bot: n, humanAgent: s } = b(),
|
|
1939
|
-
() =>
|
|
1949
|
+
} = E(), { isAwaitingBotReply: o } = wt(), { componentStore: t } = j(), { bot: n, humanAgent: s } = b(), i = ht(
|
|
1950
|
+
() => uo(e),
|
|
1940
1951
|
[e]
|
|
1941
|
-
),
|
|
1952
|
+
), a = t.getComponent(
|
|
1942
1953
|
"loading"
|
|
1943
1954
|
), l = de(null);
|
|
1944
1955
|
function d() {
|
|
@@ -1947,7 +1958,7 @@ function Co() {
|
|
|
1947
1958
|
h && (h.scrollTop = h.scrollHeight);
|
|
1948
1959
|
}, 0);
|
|
1949
1960
|
}
|
|
1950
|
-
return
|
|
1961
|
+
return oe(() => {
|
|
1951
1962
|
d();
|
|
1952
1963
|
}, [e]), /* @__PURE__ */ c(
|
|
1953
1964
|
"div",
|
|
@@ -1956,17 +1967,17 @@ function Co() {
|
|
|
1956
1967
|
ref: l,
|
|
1957
1968
|
className: "max-h-full scroll-smooth relative flex-1 py-2 px-4 flex flex-col gap-2 overflow-auto",
|
|
1958
1969
|
children: [
|
|
1959
|
-
/* @__PURE__ */ r(bo, {}),
|
|
1960
|
-
/* @__PURE__ */ r(xo, {}),
|
|
1961
1970
|
/* @__PURE__ */ r(yo, {}),
|
|
1962
|
-
|
|
1971
|
+
/* @__PURE__ */ r(bo, {}),
|
|
1972
|
+
/* @__PURE__ */ r(ko, {}),
|
|
1973
|
+
i.map((h, y) => {
|
|
1963
1974
|
var z, w, k, I;
|
|
1964
1975
|
const x = (z = h == null ? void 0 : h[0]) == null ? void 0 : z.type, m = (w = h[0]) == null ? void 0 : w.id;
|
|
1965
1976
|
if (!x || !m) return null;
|
|
1966
|
-
if (
|
|
1967
|
-
return /* @__PURE__ */ r(
|
|
1968
|
-
if (
|
|
1969
|
-
const f = y ===
|
|
1977
|
+
if (fo(h))
|
|
1978
|
+
return /* @__PURE__ */ r(wo, { messages: h }, m);
|
|
1979
|
+
if (vo(h)) {
|
|
1980
|
+
const f = y === i.length - 1;
|
|
1970
1981
|
return o && f ? null : ((k = h[0]) == null || k.agent, /* @__PURE__ */ r(
|
|
1971
1982
|
le,
|
|
1972
1983
|
{
|
|
@@ -1976,7 +1987,7 @@ function Co() {
|
|
|
1976
1987
|
m
|
|
1977
1988
|
));
|
|
1978
1989
|
}
|
|
1979
|
-
if (
|
|
1990
|
+
if (xo(h)) {
|
|
1980
1991
|
const f = (I = h[0]) == null ? void 0 : I.agent;
|
|
1981
1992
|
return /* @__PURE__ */ r(
|
|
1982
1993
|
le,
|
|
@@ -1998,19 +2009,19 @@ function Co() {
|
|
|
1998
2009
|
}
|
|
1999
2010
|
return null;
|
|
2000
2011
|
}),
|
|
2001
|
-
o &&
|
|
2002
|
-
/* @__PURE__ */ r(
|
|
2003
|
-
/* @__PURE__ */ r(
|
|
2012
|
+
o && a && /* @__PURE__ */ r(a, { agent: n }),
|
|
2013
|
+
/* @__PURE__ */ r(Co, {}),
|
|
2014
|
+
/* @__PURE__ */ r(mo, {})
|
|
2004
2015
|
]
|
|
2005
2016
|
}
|
|
2006
2017
|
);
|
|
2007
2018
|
}
|
|
2008
|
-
function
|
|
2019
|
+
function No() {
|
|
2009
2020
|
const {
|
|
2010
2021
|
messagesState: { isInitialFetchLoading: e }
|
|
2011
2022
|
} = E(), {
|
|
2012
2023
|
sessionState: { session: o }
|
|
2013
|
-
} =
|
|
2024
|
+
} = $(), { isCanvasOpen: t } = ro(), { theme: n } = q();
|
|
2014
2025
|
ze({
|
|
2015
2026
|
width: t ? n.screens.chat.withCanvas.width : n.screens.chat.width,
|
|
2016
2027
|
height: t ? n.screens.chat.withCanvas.height : n.screens.chat.height
|
|
@@ -2032,12 +2043,12 @@ function zo() {
|
|
|
2032
2043
|
// Relative to the iframe
|
|
2033
2044
|
},
|
|
2034
2045
|
children: /* @__PURE__ */ c("div", { className: "size-full justify-between flex flex-col", children: [
|
|
2035
|
-
/* @__PURE__ */ r(
|
|
2046
|
+
/* @__PURE__ */ r(At, {}),
|
|
2036
2047
|
/* @__PURE__ */ r(_, { mode: "wait", children: e ? /* @__PURE__ */ r(
|
|
2037
2048
|
u,
|
|
2038
2049
|
{
|
|
2039
2050
|
className: "flex flex-col items-center justify-center w-full flex-1",
|
|
2040
|
-
children: /* @__PURE__ */ r(
|
|
2051
|
+
children: /* @__PURE__ */ r(Ft, {})
|
|
2041
2052
|
},
|
|
2042
2053
|
"loading"
|
|
2043
2054
|
) : /* @__PURE__ */ c(
|
|
@@ -2059,8 +2070,8 @@ function zo() {
|
|
|
2059
2070
|
transitionDuration: n.screens.chat.withCanvas.transitionDuration
|
|
2060
2071
|
},
|
|
2061
2072
|
children: [
|
|
2062
|
-
/* @__PURE__ */ r(
|
|
2063
|
-
/* @__PURE__ */ r(
|
|
2073
|
+
/* @__PURE__ */ r(zo, {}),
|
|
2074
|
+
/* @__PURE__ */ r(po, {})
|
|
2064
2075
|
]
|
|
2065
2076
|
}
|
|
2066
2077
|
),
|
|
@@ -2076,7 +2087,7 @@ function zo() {
|
|
|
2076
2087
|
transitionTimingFunction: n.screens.chat.withCanvas.transitionTimingFunction,
|
|
2077
2088
|
transitionDuration: n.screens.chat.withCanvas.transitionDuration
|
|
2078
2089
|
},
|
|
2079
|
-
children: /* @__PURE__ */ r(
|
|
2090
|
+
children: /* @__PURE__ */ r(oo, {})
|
|
2080
2091
|
}
|
|
2081
2092
|
)
|
|
2082
2093
|
]
|
|
@@ -2087,7 +2098,7 @@ function zo() {
|
|
|
2087
2098
|
}
|
|
2088
2099
|
);
|
|
2089
2100
|
}
|
|
2090
|
-
function
|
|
2101
|
+
function So({
|
|
2091
2102
|
className: e,
|
|
2092
2103
|
...o
|
|
2093
2104
|
}) {
|
|
@@ -2099,7 +2110,7 @@ function No({
|
|
|
2099
2110
|
}
|
|
2100
2111
|
);
|
|
2101
2112
|
}
|
|
2102
|
-
function
|
|
2113
|
+
function _o({ className: e }) {
|
|
2103
2114
|
return /* @__PURE__ */ r(
|
|
2104
2115
|
"svg",
|
|
2105
2116
|
{
|
|
@@ -2119,7 +2130,7 @@ function So({ className: e }) {
|
|
|
2119
2130
|
}
|
|
2120
2131
|
);
|
|
2121
2132
|
}
|
|
2122
|
-
function
|
|
2133
|
+
function Ht({ className: e }) {
|
|
2123
2134
|
const { token: o } = b();
|
|
2124
2135
|
return /* @__PURE__ */ r(
|
|
2125
2136
|
"div",
|
|
@@ -2128,7 +2139,7 @@ function At({ className: e }) {
|
|
|
2128
2139
|
"flex items-center justify-center gap-2 p-2 pt-0",
|
|
2129
2140
|
e
|
|
2130
2141
|
),
|
|
2131
|
-
children: /* @__PURE__ */ r(
|
|
2142
|
+
children: /* @__PURE__ */ r(L, { children: /* @__PURE__ */ c(
|
|
2132
2143
|
"a",
|
|
2133
2144
|
{
|
|
2134
2145
|
href: `https://open.cx/?ref=${o}`,
|
|
@@ -2143,7 +2154,7 @@ function At({ className: e }) {
|
|
|
2143
2154
|
/* @__PURE__ */ r("span", { children: "Powered by" }),
|
|
2144
2155
|
/* @__PURE__ */ r("span", { children: " " }),
|
|
2145
2156
|
/* @__PURE__ */ c("span", { className: "flex items-center gap-[1px]", children: [
|
|
2146
|
-
/* @__PURE__ */ r("span", { children: /* @__PURE__ */ r(
|
|
2157
|
+
/* @__PURE__ */ r("span", { children: /* @__PURE__ */ r(_o, { className: "size-3 inline-block" }) }),
|
|
2147
2158
|
/* @__PURE__ */ r("span", { className: "font-semibold", children: "open" })
|
|
2148
2159
|
] })
|
|
2149
2160
|
]
|
|
@@ -2152,14 +2163,14 @@ function At({ className: e }) {
|
|
|
2152
2163
|
}
|
|
2153
2164
|
);
|
|
2154
2165
|
}
|
|
2155
|
-
function
|
|
2166
|
+
function Io({ children: e }) {
|
|
2156
2167
|
return /* @__PURE__ */ r("p", { className: "ps-4 text-xs text-muted-foreground/75 uppercase font-semibold tracking-tight", children: e });
|
|
2157
2168
|
}
|
|
2158
2169
|
function ct({
|
|
2159
2170
|
session: e,
|
|
2160
2171
|
className: o
|
|
2161
2172
|
}) {
|
|
2162
|
-
const { bot: t, humanAgent: n } = b(), { toChatScreen: s } =
|
|
2173
|
+
const { bot: t, humanAgent: n } = b(), { toChatScreen: s } = A(), i = e.assignee.kind === "human" ? (n == null ? void 0 : n.name) || e.assignee.name || "Support Agent" : (t == null ? void 0 : t.name) || "AI Support Agent", a = e.assignee.kind === "human" ? (n == null ? void 0 : n.avatarUrl) || e.assignee.avatarUrl || "" : (t == null ? void 0 : t.avatarUrl) || (t == null ? void 0 : t.avatar) || "";
|
|
2163
2174
|
return /* @__PURE__ */ c(
|
|
2164
2175
|
C,
|
|
2165
2176
|
{
|
|
@@ -2173,11 +2184,11 @@ function ct({
|
|
|
2173
2184
|
children: [
|
|
2174
2185
|
/* @__PURE__ */ c("div", { className: "flex-1 flex gap-2 items-center", children: [
|
|
2175
2186
|
/* @__PURE__ */ r(_, { mode: "wait", children: /* @__PURE__ */ r(u, { snapExit: !0, children: /* @__PURE__ */ c(ye, { className: "size-10", children: [
|
|
2176
|
-
/* @__PURE__ */ r(ke, { src:
|
|
2187
|
+
/* @__PURE__ */ r(ke, { src: a, alt: "Agent Icon" }),
|
|
2177
2188
|
/* @__PURE__ */ r(Ce, { children: /* @__PURE__ */ r(zr, { className: "size-4" }) })
|
|
2178
2189
|
] }) }) }),
|
|
2179
2190
|
/* @__PURE__ */ c("div", { className: "flex-1", children: [
|
|
2180
|
-
/* @__PURE__ */ r(_, { mode: "wait", children: /* @__PURE__ */ r(u, { snapExit: !0, children:
|
|
2191
|
+
/* @__PURE__ */ r(_, { mode: "wait", children: /* @__PURE__ */ r(u, { snapExit: !0, children: i }, i) }),
|
|
2181
2192
|
/* @__PURE__ */ r(_, { mode: "wait", children: e.lastMessage ? /* @__PURE__ */ r(u, { snapExit: !0, children: /* @__PURE__ */ r(
|
|
2182
2193
|
Mt,
|
|
2183
2194
|
{
|
|
@@ -2186,7 +2197,7 @@ function ct({
|
|
|
2186
2197
|
className: "line-clamp-1 overflow-hidden text-ellipsis text-xs text-muted-foreground",
|
|
2187
2198
|
children: e.lastMessage
|
|
2188
2199
|
}
|
|
2189
|
-
) }, e.lastMessage || "content") : /* @__PURE__ */ r(u, { className: "w-1/2", snapExit: !0, children: /* @__PURE__ */ r(
|
|
2200
|
+
) }, e.lastMessage || "content") : /* @__PURE__ */ r(u, { className: "w-1/2", snapExit: !0, children: /* @__PURE__ */ r(So, { className: "h-4 w-full" }) }, "skeleton") })
|
|
2190
2201
|
] })
|
|
2191
2202
|
] }),
|
|
2192
2203
|
/* @__PURE__ */ r(Nr, { className: "size-4 text-muted-foreground shrink-0 rtl:-scale-100" })
|
|
@@ -2194,25 +2205,25 @@ function ct({
|
|
|
2194
2205
|
}
|
|
2195
2206
|
);
|
|
2196
2207
|
}
|
|
2197
|
-
function
|
|
2198
|
-
const { t: e } = X(), { toChatScreen: o } =
|
|
2208
|
+
function To() {
|
|
2209
|
+
const { t: e } = X(), { toChatScreen: o } = A(), {
|
|
2199
2210
|
sessionsState: { data: t, isInitialFetchLoading: n },
|
|
2200
2211
|
openSessions: s,
|
|
2201
|
-
closedSessions:
|
|
2202
|
-
canCreateNewSession:
|
|
2203
|
-
} =
|
|
2212
|
+
closedSessions: i,
|
|
2213
|
+
canCreateNewSession: a
|
|
2214
|
+
} = $();
|
|
2204
2215
|
return /* @__PURE__ */ r("div", { className: "flex-1 flex flex-col overflow-scroll py-2 px-2", children: /* @__PURE__ */ r(_, { mode: "wait", children: n ? /* @__PURE__ */ r(
|
|
2205
2216
|
u,
|
|
2206
2217
|
{
|
|
2207
2218
|
className: "flex-1 flex items-center justify-center",
|
|
2208
|
-
children: /* @__PURE__ */ r(
|
|
2219
|
+
children: /* @__PURE__ */ r(Ft, {})
|
|
2209
2220
|
},
|
|
2210
2221
|
"loading"
|
|
2211
2222
|
) : /* @__PURE__ */ r(
|
|
2212
2223
|
u,
|
|
2213
2224
|
{
|
|
2214
2225
|
className: "flex-1 flex flex-col gap-2 relative",
|
|
2215
|
-
children: t.length ? /* @__PURE__ */ c(
|
|
2226
|
+
children: t.length ? /* @__PURE__ */ c(re, { children: [
|
|
2216
2227
|
/* @__PURE__ */ c(_, { children: [
|
|
2217
2228
|
s.length > 0 && /* @__PURE__ */ r(
|
|
2218
2229
|
u,
|
|
@@ -2225,15 +2236,15 @@ function Io() {
|
|
|
2225
2236
|
},
|
|
2226
2237
|
"open-sessions"
|
|
2227
2238
|
),
|
|
2228
|
-
|
|
2239
|
+
i.length > 0 && /* @__PURE__ */ c(
|
|
2229
2240
|
u,
|
|
2230
2241
|
{
|
|
2231
2242
|
className: "space-y-2",
|
|
2232
2243
|
delay: 0.2,
|
|
2233
2244
|
snapExit: !0,
|
|
2234
2245
|
children: [
|
|
2235
|
-
/* @__PURE__ */ r(
|
|
2236
|
-
|
|
2246
|
+
/* @__PURE__ */ r(Io, { children: e("closed_conversations") }),
|
|
2247
|
+
i.map((l) => /* @__PURE__ */ r(
|
|
2237
2248
|
ct,
|
|
2238
2249
|
{
|
|
2239
2250
|
session: l,
|
|
@@ -2246,7 +2257,7 @@ function Io() {
|
|
|
2246
2257
|
"closed-sessions"
|
|
2247
2258
|
)
|
|
2248
2259
|
] }),
|
|
2249
|
-
|
|
2260
|
+
a && /* @__PURE__ */ r("div", { className: "mt-auto w-full rounded-3xl sticky bottom-0 outline outline-8 outline-background bg-background", children: /* @__PURE__ */ ot(
|
|
2250
2261
|
C,
|
|
2251
2262
|
{
|
|
2252
2263
|
...g("sessions/new_conversation_btn"),
|
|
@@ -2275,7 +2286,7 @@ function Io() {
|
|
|
2275
2286
|
"sessions"
|
|
2276
2287
|
) }) });
|
|
2277
2288
|
}
|
|
2278
|
-
function
|
|
2289
|
+
function Mo() {
|
|
2279
2290
|
const { theme: e } = q();
|
|
2280
2291
|
return ze({
|
|
2281
2292
|
width: e.screens.sessions.width,
|
|
@@ -2296,17 +2307,17 @@ function To() {
|
|
|
2296
2307
|
// Relative to the iframe
|
|
2297
2308
|
},
|
|
2298
2309
|
children: /* @__PURE__ */ c("div", { className: "size-full flex flex-col", children: [
|
|
2299
|
-
/* @__PURE__ */ r(
|
|
2300
|
-
/* @__PURE__ */ r(
|
|
2301
|
-
/* @__PURE__ */ r(
|
|
2310
|
+
/* @__PURE__ */ r(At, {}),
|
|
2311
|
+
/* @__PURE__ */ r(To, {}),
|
|
2312
|
+
/* @__PURE__ */ r(Ht, {})
|
|
2302
2313
|
] })
|
|
2303
2314
|
}
|
|
2304
2315
|
);
|
|
2305
2316
|
}
|
|
2306
|
-
const
|
|
2317
|
+
const ie = G.forwardRef(
|
|
2307
2318
|
({ className: e, type: o, ...t }, n) => {
|
|
2308
|
-
const { isSmallScreen: s } =
|
|
2309
|
-
return /* @__PURE__ */ r(
|
|
2319
|
+
const { isSmallScreen: s } = F();
|
|
2320
|
+
return /* @__PURE__ */ r(L, { ref: n, children: /* @__PURE__ */ r(
|
|
2310
2321
|
"input",
|
|
2311
2322
|
{
|
|
2312
2323
|
type: o,
|
|
@@ -2323,16 +2334,16 @@ const ae = G.forwardRef(
|
|
|
2323
2334
|
) });
|
|
2324
2335
|
}
|
|
2325
2336
|
);
|
|
2326
|
-
|
|
2327
|
-
function
|
|
2337
|
+
ie.displayName = "Input";
|
|
2338
|
+
function Do() {
|
|
2328
2339
|
const { contentIframeRef: e } = j(), { inline: o } = b(), t = de(null);
|
|
2329
|
-
return
|
|
2340
|
+
return oe(() => {
|
|
2330
2341
|
const n = e == null ? void 0 : e.current;
|
|
2331
2342
|
if (n && t.current) {
|
|
2332
2343
|
const s = t.current;
|
|
2333
|
-
let
|
|
2334
|
-
const
|
|
2335
|
-
|
|
2344
|
+
let i;
|
|
2345
|
+
const a = new ResizeObserver(() => {
|
|
2346
|
+
i = requestAnimationFrame(() => {
|
|
2336
2347
|
const l = s.offsetHeight;
|
|
2337
2348
|
n.style.setProperty(
|
|
2338
2349
|
"--opencx-widget-height",
|
|
@@ -2340,31 +2351,31 @@ function Mo() {
|
|
|
2340
2351
|
);
|
|
2341
2352
|
});
|
|
2342
2353
|
});
|
|
2343
|
-
return
|
|
2344
|
-
cancelAnimationFrame(
|
|
2354
|
+
return a.observe(s), () => {
|
|
2355
|
+
cancelAnimationFrame(i), a.unobserve(s);
|
|
2345
2356
|
};
|
|
2346
2357
|
}
|
|
2347
2358
|
}, [e, o]), { observedElementRef: t };
|
|
2348
2359
|
}
|
|
2349
|
-
const
|
|
2360
|
+
const jo = me.object({
|
|
2350
2361
|
name: me.string().min(2),
|
|
2351
2362
|
email: me.string().email()
|
|
2352
2363
|
});
|
|
2353
|
-
function
|
|
2354
|
-
var f, M,
|
|
2364
|
+
function Eo() {
|
|
2365
|
+
var f, M, O, H, W, R, v, N;
|
|
2355
2366
|
const {
|
|
2356
2367
|
widgetCtx: { org: e }
|
|
2357
|
-
} = j(), { setIsOpen: o } = K(), { createUnverifiedContact: t } = qt(), { isSmallScreen: n } =
|
|
2368
|
+
} = j(), { setIsOpen: o } = K(), { createUnverifiedContact: t } = qt(), { isSmallScreen: n } = F(), s = b(), { theme: i } = q(), { t: a } = X(), { observedElementRef: l } = Do();
|
|
2358
2369
|
ze({
|
|
2359
2370
|
height: void 0,
|
|
2360
|
-
width:
|
|
2371
|
+
width: i.screens.welcome.width
|
|
2361
2372
|
});
|
|
2362
2373
|
const [d, h] = T(((f = s.prefillUserData) == null ? void 0 : f.name) || ""), [y, x] = T(((M = s.prefillUserData) == null ? void 0 : M.email) || ""), m = (s.extraDataCollectionFields || []).filter(
|
|
2363
2374
|
(S) => S !== "name" && S !== "email" && !!S
|
|
2364
2375
|
), [z, w] = T({}), [k, I] = jr(
|
|
2365
2376
|
async (S) => {
|
|
2366
2377
|
S.preventDefault();
|
|
2367
|
-
const B =
|
|
2378
|
+
const B = jo.safeParse({ name: d, email: y });
|
|
2368
2379
|
B.success && await t(
|
|
2369
2380
|
{
|
|
2370
2381
|
email: B.data.email,
|
|
@@ -2384,7 +2395,7 @@ function jo() {
|
|
|
2384
2395
|
// Relative to the iframe
|
|
2385
2396
|
maxWidth: "100vw",
|
|
2386
2397
|
// Relative to the iframe
|
|
2387
|
-
minHeight:
|
|
2398
|
+
minHeight: i.screens.welcome.minHeight,
|
|
2388
2399
|
height: "100vh",
|
|
2389
2400
|
// Relative to the iframe
|
|
2390
2401
|
maxHeight: "100vh",
|
|
@@ -2410,17 +2421,17 @@ function jo() {
|
|
|
2410
2421
|
),
|
|
2411
2422
|
children: [
|
|
2412
2423
|
n && /* @__PURE__ */ r(u, { className: "absolute top-6 end-6", children: /* @__PURE__ */ r(C, { size: "selfless", onClick: () => o(!1), children: /* @__PURE__ */ r(xe, { className: "size-4" }) }) }),
|
|
2413
|
-
/* @__PURE__ */ r("div", { className: "flex items-center justify-between w-full mb-2", children: (
|
|
2424
|
+
/* @__PURE__ */ r("div", { className: "flex items-center justify-between w-full mb-2", children: (O = s.assets) != null && O.organizationLogo ? /* @__PURE__ */ r(
|
|
2414
2425
|
"img",
|
|
2415
2426
|
{
|
|
2416
|
-
src: (
|
|
2427
|
+
src: (H = s.assets) == null ? void 0 : H.organizationLogo,
|
|
2417
2428
|
alt: "Company Logo",
|
|
2418
2429
|
className: "h-8 w-auto object-contain"
|
|
2419
2430
|
}
|
|
2420
2431
|
) : /* @__PURE__ */ r("h2", { className: "font-bold text-sm", children: e.name }) }),
|
|
2421
2432
|
/* @__PURE__ */ c("div", { className: "space-y-2", children: [
|
|
2422
|
-
/* @__PURE__ */ r("h1", { className: "text-[1.75rem] font-semibold tracking-tight leading-none", children: ((R = (W = s.textContent) == null ? void 0 : W.welcomeScreen) == null ? void 0 : R.title) ||
|
|
2423
|
-
/* @__PURE__ */ r("p", { className: "text-sm", children: ((N = (v = s.textContent) == null ? void 0 : v.welcomeScreen) == null ? void 0 : N.description) ||
|
|
2433
|
+
/* @__PURE__ */ r("h1", { className: "text-[1.75rem] font-semibold tracking-tight leading-none", children: ((R = (W = s.textContent) == null ? void 0 : W.welcomeScreen) == null ? void 0 : R.title) || a("welcome_screen_title") }),
|
|
2434
|
+
/* @__PURE__ */ r("p", { className: "text-sm", children: ((N = (v = s.textContent) == null ? void 0 : v.welcomeScreen) == null ? void 0 : N.description) || a("welcome_screen_description") })
|
|
2424
2435
|
] })
|
|
2425
2436
|
]
|
|
2426
2437
|
}
|
|
@@ -2437,35 +2448,35 @@ function jo() {
|
|
|
2437
2448
|
children: [
|
|
2438
2449
|
/* @__PURE__ */ c("form", { onSubmit: I, className: "space-y-2", children: [
|
|
2439
2450
|
/* @__PURE__ */ r(
|
|
2440
|
-
|
|
2451
|
+
ie,
|
|
2441
2452
|
{
|
|
2442
2453
|
value: d,
|
|
2443
2454
|
onChange: (S) => h(S.target.value),
|
|
2444
2455
|
required: !0,
|
|
2445
|
-
placeholder:
|
|
2456
|
+
placeholder: a("your_name_placeholder"),
|
|
2446
2457
|
name: "name"
|
|
2447
2458
|
}
|
|
2448
2459
|
),
|
|
2449
2460
|
/* @__PURE__ */ r(
|
|
2450
|
-
|
|
2461
|
+
ie,
|
|
2451
2462
|
{
|
|
2452
2463
|
required: !0,
|
|
2453
2464
|
value: y,
|
|
2454
2465
|
onChange: (S) => x(S.target.value),
|
|
2455
2466
|
type: "email",
|
|
2456
|
-
placeholder:
|
|
2467
|
+
placeholder: a("your_email_placeholder"),
|
|
2457
2468
|
name: "email"
|
|
2458
2469
|
}
|
|
2459
2470
|
),
|
|
2460
2471
|
m.map((S) => /* @__PURE__ */ r(
|
|
2461
|
-
|
|
2472
|
+
ie,
|
|
2462
2473
|
{
|
|
2463
2474
|
value: z[S],
|
|
2464
2475
|
onChange: (B) => w((se) => ({
|
|
2465
2476
|
...se,
|
|
2466
2477
|
[S]: B.target.value
|
|
2467
2478
|
})),
|
|
2468
|
-
placeholder: `${S} (${
|
|
2479
|
+
placeholder: `${S} (${a("optional")})`
|
|
2469
2480
|
},
|
|
2470
2481
|
S
|
|
2471
2482
|
)),
|
|
@@ -2476,13 +2487,13 @@ function jo() {
|
|
|
2476
2487
|
className: "w-full",
|
|
2477
2488
|
size: "lg",
|
|
2478
2489
|
children: [
|
|
2479
|
-
k.loading ?
|
|
2490
|
+
k.loading ? a("start_chat_button_loading") : a("start_chat_button"),
|
|
2480
2491
|
/* @__PURE__ */ r(Sr, { className: "size-4 rtl:-scale-100" })
|
|
2481
2492
|
]
|
|
2482
2493
|
}
|
|
2483
2494
|
)
|
|
2484
2495
|
] }),
|
|
2485
|
-
/* @__PURE__ */ r(
|
|
2496
|
+
/* @__PURE__ */ r(Ht, {})
|
|
2486
2497
|
]
|
|
2487
2498
|
}
|
|
2488
2499
|
)
|
|
@@ -2495,7 +2506,7 @@ function jo() {
|
|
|
2495
2506
|
function Wt() {
|
|
2496
2507
|
const {
|
|
2497
2508
|
routerState: { screen: e }
|
|
2498
|
-
} =
|
|
2509
|
+
} = A();
|
|
2499
2510
|
return /* @__PURE__ */ r("div", { className: "relative bg-background size-full", children: /* @__PURE__ */ r(_, { mode: "wait", children: (() => {
|
|
2500
2511
|
switch (e) {
|
|
2501
2512
|
case "welcome":
|
|
@@ -2505,7 +2516,7 @@ function Wt() {
|
|
|
2505
2516
|
fadeIn: "right",
|
|
2506
2517
|
className: "size-full",
|
|
2507
2518
|
snapExit: !0,
|
|
2508
|
-
children: /* @__PURE__ */ r(
|
|
2519
|
+
children: /* @__PURE__ */ r(Eo, {})
|
|
2509
2520
|
},
|
|
2510
2521
|
e
|
|
2511
2522
|
);
|
|
@@ -2516,7 +2527,7 @@ function Wt() {
|
|
|
2516
2527
|
fadeIn: "right",
|
|
2517
2528
|
className: "size-full",
|
|
2518
2529
|
snapExit: !0,
|
|
2519
|
-
children: /* @__PURE__ */ r(
|
|
2530
|
+
children: /* @__PURE__ */ r(Mo, {})
|
|
2520
2531
|
},
|
|
2521
2532
|
e
|
|
2522
2533
|
);
|
|
@@ -2527,7 +2538,7 @@ function Wt() {
|
|
|
2527
2538
|
fadeIn: "right",
|
|
2528
2539
|
className: "size-full",
|
|
2529
2540
|
snapExit: !0,
|
|
2530
|
-
children: /* @__PURE__ */ r(
|
|
2541
|
+
children: /* @__PURE__ */ r(No, {})
|
|
2531
2542
|
},
|
|
2532
2543
|
e
|
|
2533
2544
|
);
|
|
@@ -2536,7 +2547,7 @@ function Wt() {
|
|
|
2536
2547
|
}
|
|
2537
2548
|
})() }) });
|
|
2538
2549
|
}
|
|
2539
|
-
const
|
|
2550
|
+
const Ro = "4.0.40", Po = `<!DOCTYPE html>
|
|
2540
2551
|
<html>
|
|
2541
2552
|
<head>
|
|
2542
2553
|
<style>
|
|
@@ -2554,10 +2565,10 @@ html, body {
|
|
|
2554
2565
|
<body>
|
|
2555
2566
|
</body>
|
|
2556
2567
|
</html>`;
|
|
2557
|
-
function
|
|
2558
|
-
const { isOpen: e } = K(), { contentIframeRef: o } = j(), { cssOverrides: t, inline: n } = b(), { theme: s, cssVars:
|
|
2568
|
+
function Lt() {
|
|
2569
|
+
const { isOpen: e } = K(), { contentIframeRef: o } = j(), { cssOverrides: t, inline: n } = b(), { theme: s, cssVars: i, computed: a } = q(), { dir: l } = X();
|
|
2559
2570
|
return /* @__PURE__ */ r(
|
|
2560
|
-
|
|
2571
|
+
J.div,
|
|
2561
2572
|
{
|
|
2562
2573
|
animate: e ? "visible" : "hidden",
|
|
2563
2574
|
initial: "hidden",
|
|
@@ -2579,20 +2590,20 @@ function $t() {
|
|
|
2579
2590
|
bt,
|
|
2580
2591
|
{
|
|
2581
2592
|
ref: o,
|
|
2582
|
-
initialContent:
|
|
2593
|
+
initialContent: Po,
|
|
2583
2594
|
allowFullScreen: !0,
|
|
2584
2595
|
title: "OpenCX Live Chat",
|
|
2585
2596
|
style: {
|
|
2586
2597
|
// @ts-expect-error this is a valid css variable
|
|
2587
|
-
"--opencx-widget-width":
|
|
2588
|
-
"--opencx-widget-height":
|
|
2589
|
-
minWidth:
|
|
2598
|
+
"--opencx-widget-width": a.minWidth,
|
|
2599
|
+
"--opencx-widget-height": a.minHeight,
|
|
2600
|
+
minWidth: a.minWidth,
|
|
2590
2601
|
width: "var(--opencx-widget-width)",
|
|
2591
|
-
maxWidth:
|
|
2602
|
+
maxWidth: a.maxWidth,
|
|
2592
2603
|
// Relative to the viewport
|
|
2593
|
-
minHeight:
|
|
2604
|
+
minHeight: a.minHeight,
|
|
2594
2605
|
height: "var(--opencx-widget-height)",
|
|
2595
|
-
maxHeight:
|
|
2606
|
+
maxHeight: a.maxHeight,
|
|
2596
2607
|
// Relative to the viewport
|
|
2597
2608
|
overflow: "hidden",
|
|
2598
2609
|
/** outline is better than border because of box sizing; the outline wouldn't affect the content inside... the border will mess up how the children's border radius sits with the parent */
|
|
@@ -2613,16 +2624,16 @@ function $t() {
|
|
|
2613
2624
|
"div",
|
|
2614
2625
|
{
|
|
2615
2626
|
style: {
|
|
2616
|
-
...
|
|
2627
|
+
...i,
|
|
2617
2628
|
zIndex: s.widgetContentContainer.zIndex
|
|
2618
2629
|
},
|
|
2619
|
-
"data-version":
|
|
2630
|
+
"data-version": Ro,
|
|
2620
2631
|
className: p(
|
|
2621
2632
|
"antialiased font-sans size-full overflow-hidden relative text-secondary-foreground isolate"
|
|
2622
2633
|
),
|
|
2623
2634
|
dir: l,
|
|
2624
2635
|
children: /* @__PURE__ */ r(
|
|
2625
|
-
|
|
2636
|
+
Ur,
|
|
2626
2637
|
{
|
|
2627
2638
|
delayDuration: 200,
|
|
2628
2639
|
disableHoverableContent: !0,
|
|
@@ -2637,7 +2648,7 @@ function $t() {
|
|
|
2637
2648
|
}
|
|
2638
2649
|
);
|
|
2639
2650
|
}
|
|
2640
|
-
function
|
|
2651
|
+
function Ao() {
|
|
2641
2652
|
const { theme: e } = q();
|
|
2642
2653
|
return /* @__PURE__ */ r(
|
|
2643
2654
|
ce.Content,
|
|
@@ -2655,11 +2666,11 @@ function Po() {
|
|
|
2655
2666
|
sideOffset: e.widgetContentContainer.offset.side,
|
|
2656
2667
|
alignOffset: e.widgetContentContainer.offset.align,
|
|
2657
2668
|
avoidCollisions: !1,
|
|
2658
|
-
children: /* @__PURE__ */ r(
|
|
2669
|
+
children: /* @__PURE__ */ r(Lt, {})
|
|
2659
2670
|
}
|
|
2660
2671
|
);
|
|
2661
2672
|
}
|
|
2662
|
-
function
|
|
2673
|
+
function Fo({
|
|
2663
2674
|
className: e,
|
|
2664
2675
|
style: o
|
|
2665
2676
|
}) {
|
|
@@ -2694,7 +2705,7 @@ function Oo({
|
|
|
2694
2705
|
}
|
|
2695
2706
|
);
|
|
2696
2707
|
}
|
|
2697
|
-
const
|
|
2708
|
+
const Oo = `<!DOCTYPE html>
|
|
2698
2709
|
<html>
|
|
2699
2710
|
<head>
|
|
2700
2711
|
<style>
|
|
@@ -2711,13 +2722,13 @@ html, body {
|
|
|
2711
2722
|
<body>
|
|
2712
2723
|
</body>
|
|
2713
2724
|
</html>`;
|
|
2714
|
-
function
|
|
2715
|
-
var
|
|
2725
|
+
function Ho() {
|
|
2726
|
+
var i, a;
|
|
2716
2727
|
const { isOpen: e } = K(), { cssOverrides: o, assets: t } = b(), { theme: n, cssVars: s } = q();
|
|
2717
2728
|
return /* @__PURE__ */ c(
|
|
2718
2729
|
bt,
|
|
2719
2730
|
{
|
|
2720
|
-
initialContent:
|
|
2731
|
+
initialContent: Oo,
|
|
2721
2732
|
title: "OpenCX Live Chat Trigger",
|
|
2722
2733
|
style: {
|
|
2723
2734
|
height: `calc(${n.widgetTrigger.size.button}px + ${V.x * 2}px)`,
|
|
@@ -2757,7 +2768,7 @@ function Fo() {
|
|
|
2757
2768
|
height: n.widgetTrigger.size.button,
|
|
2758
2769
|
width: n.widgetTrigger.size.button
|
|
2759
2770
|
},
|
|
2760
|
-
children: /* @__PURE__ */ r(
|
|
2771
|
+
children: /* @__PURE__ */ r(L, { children: /* @__PURE__ */ r(
|
|
2761
2772
|
"div",
|
|
2762
2773
|
{
|
|
2763
2774
|
...g("trigger/btn"),
|
|
@@ -2778,7 +2789,7 @@ function Fo() {
|
|
|
2778
2789
|
initial: { rotate: 45 },
|
|
2779
2790
|
animate: { rotate: 0 }
|
|
2780
2791
|
},
|
|
2781
|
-
children: (
|
|
2792
|
+
children: (i = t == null ? void 0 : t.widgetTrigger) != null && i.closeIcon ? /* @__PURE__ */ r(
|
|
2782
2793
|
"img",
|
|
2783
2794
|
{
|
|
2784
2795
|
src: t.widgetTrigger.closeIcon,
|
|
@@ -2807,7 +2818,7 @@ function Fo() {
|
|
|
2807
2818
|
initial: { rotate: 45 },
|
|
2808
2819
|
animate: { rotate: 0 }
|
|
2809
2820
|
},
|
|
2810
|
-
children: (
|
|
2821
|
+
children: (a = t == null ? void 0 : t.widgetTrigger) != null && a.openIcon ? /* @__PURE__ */ r(
|
|
2811
2822
|
"img",
|
|
2812
2823
|
{
|
|
2813
2824
|
src: t.widgetTrigger.openIcon,
|
|
@@ -2818,7 +2829,7 @@ function Fo() {
|
|
|
2818
2829
|
}
|
|
2819
2830
|
}
|
|
2820
2831
|
) : /* @__PURE__ */ r(
|
|
2821
|
-
|
|
2832
|
+
Fo,
|
|
2822
2833
|
{
|
|
2823
2834
|
style: {
|
|
2824
2835
|
width: n.widgetTrigger.size.icon,
|
|
@@ -2840,7 +2851,7 @@ function Fo() {
|
|
|
2840
2851
|
}
|
|
2841
2852
|
);
|
|
2842
2853
|
}
|
|
2843
|
-
function
|
|
2854
|
+
function Wo() {
|
|
2844
2855
|
const { dir: e } = ve();
|
|
2845
2856
|
return /* @__PURE__ */ r(
|
|
2846
2857
|
ce.Anchor,
|
|
@@ -2854,22 +2865,22 @@ function Ao() {
|
|
|
2854
2865
|
}
|
|
2855
2866
|
);
|
|
2856
2867
|
}
|
|
2857
|
-
function
|
|
2868
|
+
function Lo() {
|
|
2858
2869
|
const { isOpen: e, setIsOpen: o } = K();
|
|
2859
2870
|
return /* @__PURE__ */ c(ce.Root, { open: e, onOpenChange: o, children: [
|
|
2860
|
-
/* @__PURE__ */ r(
|
|
2861
|
-
/* @__PURE__ */ r(
|
|
2862
|
-
/* @__PURE__ */ r(
|
|
2871
|
+
/* @__PURE__ */ r(Wo, {}),
|
|
2872
|
+
/* @__PURE__ */ r(Ho, {}),
|
|
2873
|
+
/* @__PURE__ */ r(Ao, {})
|
|
2863
2874
|
] });
|
|
2864
2875
|
}
|
|
2865
2876
|
const $o = [
|
|
2866
2877
|
{
|
|
2867
2878
|
key: "loading",
|
|
2868
|
-
component:
|
|
2879
|
+
component: Yr
|
|
2869
2880
|
},
|
|
2870
2881
|
{
|
|
2871
2882
|
key: "fallback",
|
|
2872
|
-
component:
|
|
2883
|
+
component: Br
|
|
2873
2884
|
},
|
|
2874
2885
|
{
|
|
2875
2886
|
key: "bot_message",
|
|
@@ -2879,7 +2890,7 @@ const $o = [
|
|
|
2879
2890
|
key: "agent_message",
|
|
2880
2891
|
component: ge
|
|
2881
2892
|
}
|
|
2882
|
-
],
|
|
2893
|
+
], Bo = {
|
|
2883
2894
|
get: async (e) => localStorage.getItem(e),
|
|
2884
2895
|
set: async (e, o) => {
|
|
2885
2896
|
localStorage.setItem(e, o);
|
|
@@ -2888,7 +2899,7 @@ const $o = [
|
|
|
2888
2899
|
localStorage.removeItem(e);
|
|
2889
2900
|
}
|
|
2890
2901
|
};
|
|
2891
|
-
function
|
|
2902
|
+
function cn({
|
|
2892
2903
|
options: e,
|
|
2893
2904
|
components: o = [],
|
|
2894
2905
|
loadingComponent: t
|
|
@@ -2898,13 +2909,13 @@ function ln({
|
|
|
2898
2909
|
{
|
|
2899
2910
|
components: [...$o, ...o],
|
|
2900
2911
|
options: e,
|
|
2901
|
-
storage:
|
|
2912
|
+
storage: Bo,
|
|
2902
2913
|
loadingComponent: t,
|
|
2903
|
-
children: /* @__PURE__ */ r(Vt, { children: e.inline ? /* @__PURE__ */ r(
|
|
2914
|
+
children: /* @__PURE__ */ r(Vt, { children: e.inline ? /* @__PURE__ */ r(Lt, {}) : /* @__PURE__ */ r(Lo, {}) })
|
|
2904
2915
|
}
|
|
2905
2916
|
);
|
|
2906
2917
|
}
|
|
2907
2918
|
export {
|
|
2908
|
-
|
|
2919
|
+
cn as Widget
|
|
2909
2920
|
};
|
|
2910
2921
|
//# sourceMappingURL=index.js.map
|