@opencx/widget-react 4.0.36 → 4.0.38
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 +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +113 -112
- package/dist/index.js.map +1 -1
- package/dist/src/hooks/useTranslation.d.ts +1 -1
- package/dist/src/screens/chat/ChatMain.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),jt=require("@radix-ui/react-popover"),m=require("react"),l=require("@opencx/widget-react-headless"),kt=require("clsx"),Ct=require("tailwind-merge"),b=require("framer-motion"),zt=require("@radix-ui/react-slot"),St=require("class-variance-authority"),u=require("lucide-react"),Ze=require("remark-gfm"),Nt=require("react-markdown"),Je=require("rehype-raw"),I=require("@opencx/widget-core"),_t=require("@radix-ui/react-avatar"),et=require("@uiw/react-iframe"),Tt=require("@radix-ui/react-tooltip"),Ye=require("tinycolor2"),It=require("react-dropzone"),Mt=require("react-use/lib/useAsyncFn"),oe=require("zod");function ee(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const s in t)if(s!=="default"){const o=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(r,s,o.get?o:{enumerable:!0,get:()=>t[s]})}}return r.default=t,Object.freeze(r)}const te=ee(jt),B=ee(m),U=ee(_t),V=ee(Tt);function w(t){return{"data-component":t}}function p(...t){return Ct.twMerge(kt.clsx(t))}const L={x:2,y:2},O=m.memo(m.forwardRef(({children:t,className:r,scale:s=1.02,off:o=!1},n)=>{const[a,i]=m.useState(!1),[c,d]=m.useState({x:0,y:0});if(o||/translate/.test(t.props.className||""))return t;const k=f=>{var N,_;const{clientX:C,clientY:T}=f,j=f.currentTarget.getBoundingClientRect(),M=C-(j.left+j.width/2),P=T-(j.top+j.height/2),A=Math.max(-1,Math.min(1,M/(j.width/2))),W=Math.max(-1,Math.min(1,P/(j.height/2))),D=A*L.x,v=W*L.y;d({x:D,y:v}),(_=(N=t.props).onMouseMove)==null||_.call(N,f)},y=()=>{var f,C;i(!0),(C=(f=t.props).onMouseEnter)==null||C.call(f)},g=()=>{var f,C;i(!1),d({x:0,y:0}),(C=(f=t.props).onMouseLeave)==null||C.call(f)},S={"--wobble-x":a?`${c.x}px`:"0px","--wobble-y":a?`${c.y}px`:"0px","--scale":1-(s-1)};return m.cloneElement(t,{ref:n,onMouseMove:k,onMouseEnter:y,onMouseLeave:g,style:{...S,...t.props.style},className:p("translate-x-[var(--wobble-x)]","translate-y-[var(--wobble-y)]","hover:scale-[var(--scale)] active:hover:scale-[calc(var(--scale)-0.02)]",r,t.props.className,"transition-all ease-out")})}));O.displayName="Wobble";const Dt=10,Rt=(t,r,s)=>({initial:{opacity:0,x:-t,...r.initial},animate:{opacity:1,x:0,...r.animate,transition:{delay:s}},exit:{opacity:0,x:t,...r.exit}}),Et=(t,r,s)=>({initial:{opacity:0,x:t,...r.initial},animate:{opacity:1,x:0,...r.animate,transition:{delay:s}},exit:{opacity:0,x:-t,...r.exit}}),Pt=(t,r,s)=>({initial:{opacity:0,y:t,...r.initial},animate:{opacity:1,y:0,...r.animate,transition:{delay:s}},exit:{opacity:0,y:-t,...r.exit}}),At=(t,r,s)=>({initial:{opacity:0,y:-t,...r.initial},animate:{opacity:1,y:0,...r.animate,transition:{delay:s}},exit:{opacity:0,y:t,...r.exit}}),Wt={right:Rt,left:Et,up:Pt,down:At},x=m.forwardRef(({fadeIn:t="down",distance:r=Dt,children:s,snapExit:o=!1,overrides:n={},delay:a=0,...i},c)=>{const d=t?Wt[t](r,n,a):{};return o&&d.exit&&typeof d.exit=="object"&&!Array.isArray(d.exit)&&(d.exit.transition={duration:0}),e.jsx(b.motion.div,{ref:c,...i,...d,children:s})});x.displayName="MotionDiv";const Ot=St.cva(p("inline-flex shrink-0 items-center justify-center gap-2","text-sm font-medium whitespace-nowrap","ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50","active:scale-95 hover:active:scale-95","rounded-xl","transition"),{variants:{variant:{default:"bg-primary text-primary-foreground",destructive:"bg-destructive text-destructive-foreground",outline:"bg-background border",secondary:"bg-secondary text-secondary-foreground",ghost:"hover:bg-secondary",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"py-2 px-3.5 text-xs",lg:"min-h-12 px-4 rounded-[20px]",icon:"h-10 w-10",fit:"size-fit p-2",free:"p-2",selfless:"p-0"}},defaultVariants:{variant:"default",size:"default"}}),z=B.forwardRef(({className:t,variant:r="default",size:s,asChild:o=!1,...n},a)=>{const i=o?zt.Slot:"button";return e.jsx(O,{ref:a,children:e.jsx(i,{...w("ui_lib/btn"),"data-variant":r,className:p(Ot({variant:r,size:s,className:t})),...n})})});z.displayName="Button";const tt=m.createContext(null);function Ft({children:t}){const[r,s]=m.useState(!1),[o,n]=m.useState(null),a=c=>{n(c),s(!0)},i=()=>{s(!1),setTimeout(()=>{n(null)},200)};return e.jsxs(tt.Provider,{value:{open:a,close:i,isOpen:r,content:o},children:[e.jsx(Ht,{}),t]})}function se(){const t=m.useContext(tt);return t||(console.error("useDialoger must be used within a DialogerProvider"),{open:()=>{},close:()=>{},isOpen:!1,content:null})}function Ht(){const{contentIframeRef:t}=l.useWidget(),{isOpen:r,content:s,close:o}=se();return m.useEffect(()=>{var a,i;const n=c=>{c.key==="Escape"&&o()};return(i=(a=t==null?void 0:t.current)==null?void 0:a.contentWindow)==null||i.document.addEventListener("keydown",n),()=>{var c,d;return(d=(c=t==null?void 0:t.current)==null?void 0:c.contentWindow)==null?void 0:d.document.removeEventListener("keydown",n)}},[]),e.jsx(b.AnimatePresence,{mode:"wait",children:r&&s&&e.jsx(x,{overrides:{initial:{y:0},exit:{y:0}},className:"fixed inset-0 z-50 bg-black/60 backdrop-blur-sm",tabIndex:-1,onClick:o,children:s},"dialog-content")})}function st({children:t,className:r,withClose:s=!1}){const{close:o}=se();return e.jsxs("div",{className:p("fixed left-[50%] top-[50%] z-50 flex flex-col gap-4 w-full max-w-[61.8%] translate-x-[-50%] translate-y-[-50%] border bg-background p-4 rounded-3xl",r),onClick:n=>n.stopPropagation(),children:[t,s&&e.jsxs(z,{size:"fit",className:"rounded-full absolute top-4 right-4",variant:"secondary",onClick:o,children:[e.jsx(u.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})}const rt=({className:t,...r})=>e.jsx("div",{className:p("flex flex-col gap-2 text-center pt-2",t),...r});rt.displayName="DialogerHeader";const ot=({className:t,...r})=>e.jsx("div",{className:p("flex flex-col gap-2 text-center",t),...r});ot.displayName="DialogerBody";const nt=({className:t,...r})=>e.jsx("div",{className:p("flex flex-col gap-2",t),...r});nt.displayName="DialogerFooter";const it=m.forwardRef(({className:t,...r},s)=>e.jsx("p",{ref:s,className:p("text-lg font-semibold leading-none tracking-tight",t),...r}));it.displayName="DialogerTitle";const at=m.forwardRef(({className:t,...r},s)=>e.jsx("p",{ref:s,className:p("text-sm text-muted-foreground",t),...r}));at.displayName="DialogerDescription";function lt({children:t,trigger:r}){const{open:s}=se();return m.cloneElement(r,{onClick:()=>s(t)})}function ct({attachment:t}){const{name:r,size:s,type:o,url:n}=t,a=o.startsWith("image/"),i=o.startsWith("video/"),c=o.startsWith("audio/");return c?e.jsx(O,{children:e.jsx("div",{className:"w-full shrink-0 overflow-hidden",children:e.jsxs("audio",{controls:!0,className:"w-full",children:[e.jsx("source",{src:n,type:o}),"Your browser does not support the audio tag."]})})}):i?e.jsx(O,{children:e.jsx("div",{className:"w-full border shrink-0 rounded-2xl overflow-hidden",children:e.jsxs("video",{controls:!0,children:[e.jsx("source",{src:n,type:o}),"Your browser does not support the video tag."]})})}):!a&&!i&&!c?e.jsx(O,{children:e.jsx("div",{className:"size-fit border shrink-0 rounded-2xl overflow-hidden",children:e.jsxs("div",{className:"flex items-end gap-2 p-2",children:[e.jsx("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:p("text-xs text-blue-500 line-clamp-2 underline hover:text-blue-600","break-words [word-break:break-word]"),children:r}),e.jsxs("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:[(s/1024).toFixed(2)," KB"]})]})})}):e.jsx(lt,{trigger:e.jsx("div",{children:e.jsx(O,{children:e.jsx("div",{className:"size-fit border shrink-0 rounded-2xl overflow-hidden",children:a&&e.jsx("img",{src:n,className:"object-cover size-16",alt:r})})})}),children:e.jsx(st,{className:"size-full max-w-full rounded-3xl flex items-center justify-center bg-transparent border-none gap-0",withClose:!0,children:a&&e.jsx("div",{className:"size-fit shrink-0 rounded-2xl overflow-hidden max-h-full",children:e.jsx("img",{src:n,className:"object-cover size-auto",alt:r})})})})}const dt=m.memo(Nt,(t,r)=>t.children===r.children&&t.className===r.className);function ce({children:t,messageType:r,messageId:s}){const{anchorTarget:o}=l.useConfig();return e.jsx(dt,{"data-type":r,"data-id":s,remarkPlugins:[Ze],rehypePlugins:[Je],components:{a:({children:n,...a})=>e.jsx("a",{target:a.target||o||"_top",...a,children:n})},children:t})}function ne({data:t,id:r,type:s,attachments:o,isFirstInGroup:n,isLastInGroup:a,isAloneInGroup:i,dataComponentNames:c,classNames:d}){if(s!=="AI"&&s!=="AGENT")return null;const{message:h,variant:k="default"}=t;return e.jsxs("div",{...w((c==null?void 0:c.messageContainer)??"chat/agent_msg/root"),className:p("w-5/6 flex flex-col items-start gap-1",d==null?void 0:d.messageContainer),children:[o&&o.length>0&&e.jsx("div",{className:"w-full gap-1 flex flex-row flex-wrap items-center justify-start",children:o==null?void 0:o.map(y=>e.jsx(ct,{attachment:y},y.id))}),h.length>0&&e.jsx("div",{...w((c==null?void 0:c.message)??"chat/agent_msg/msg"),"data-first":n,"data-last":a,"data-alone":i,"data-variant":k,className:p("transition-all","w-fit py-3 px-4 rounded-3xl bg-secondary text-secondary-foreground","leading-snug text-sm prose prose-sm prose-a:decoration-primary prose-a:underline","break-words [word-break:break-word]",k==="error"&&"bg-destructive/15 text-destructive",n&&!i&&"rounded-bl-md",a&&!i&&"rounded-tl-md",!n&&!a&&!i&&"rounded-l-md",d==null?void 0:d.message),children:e.jsx(ce,{messageType:s,messageId:r,children:h})})]})}function qt(t){return e.jsx("div",{className:"w-full max-w-full overflow-auto shrink-0",children:e.jsx("pre",{className:"text-xs leading-tight whitespace-pre-wrap break-word",children:JSON.stringify(t,null,1)})})}const de=B.forwardRef(({className:t,...r},s)=>e.jsx(U.Root,{ref:s,className:p("relative flex size-6 aspect-square shrink-0 overflow-hidden rounded-full bg-secondary",t),...r}));de.displayName=U.Root.displayName;const pe=B.forwardRef(({className:t,...r},s)=>e.jsx(U.Image,{ref:s,className:p("aspect-square h-full w-full",t),...r}));pe.displayName=U.Image.displayName;const he=B.forwardRef(({className:t,...r},s)=>e.jsx(U.Fallback,{ref:s,className:p("flex size-full text-xs items-center justify-center rounded-lg",t),...r}));he.displayName=U.Fallback.displayName;function ie({agent:t,...r}){var s,o;return e.jsxs(de,{...r,children:[e.jsx(pe,{src:(t==null?void 0:t.avatarUrl)||(t==null?void 0:t.avatar)||"",alt:"Agent Icon"}),(t==null?void 0:t.name)&&e.jsx(he,{children:(o=(s=t==null?void 0:t.name)==null?void 0:s.slice(0,1))==null?void 0:o.toUpperCase()})]})}function $t({agent:t}){return e.jsx(b.AnimatePresence,{children:e.jsxs(x,{...w("chat/bot_loading/root"),className:"flex flex-row items-end w-full gap-2 animate-pulse",children:[e.jsx(ie,{agent:t}),e.jsxs("div",{...w("chat/bot_loading/bouncing_dots_container"),className:p("flex items-center [&_span]:bg-secondary-foreground [&_span]:size-1 gap-1 p-2 rounded-xl bg-secondary"),children:[e.jsx(b.motion.span,{className:"rounded-full animate-bounce [animation-delay:-0.3s]"}),e.jsx(b.motion.span,{className:"rounded-full animate-bounce [animation-delay:-0.15s]"}),e.jsx(b.motion.span,{className:"rounded-full animate-bounce"})]})]})})}const pt='*,: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))}',Lt=V.Provider,Bt=V.Root,Ut=V.Trigger,ht=B.forwardRef(({className:t,sideOffset:r=4,...s},o)=>e.jsx(V.Content,{ref:o,sideOffset:r,className:p("z-50 overflow-hidden max-w-xs rounded-xl bg-primary border text-primary-foreground p-2 text-center align-middle text-xs animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s}));ht.displayName=V.Content.displayName;function Y({children:t,content:r,side:s,align:o}){const{disableTooltips:n}=l.useConfig();return!r||n?t:e.jsxs(Bt,{children:[e.jsx(Ut,{asChild:!0,children:t}),e.jsx(ht,{side:s,align:o,collisionPadding:8,avoidCollisions:!0,children:r})]})}const Xe=450;function E(){const[t,r]=m.useState(()=>(window.top||window).innerWidth<Xe);return m.useEffect(()=>{const s=window.top||window,o=()=>{r(s.innerWidth<Xe)};return o(),s.addEventListener("resize",o),()=>{s.removeEventListener("resize",o)}},[]),{isSmallScreen:t}}const Q={transitionTimingFunction:"cubic-bezier(0.16, 1, 0.3, 1)",transitionDuration:"1000ms"};function q(){var y,g,S,f,C,T,j,M,P,A,W,D,v,N,_,F,K,we,fe,xe,ve,be,ye,je,ke,Ce,ze,Se,Ne,_e,Te,Ie,Me,De,Re,Ee,Pe,Ae,We,Oe,Fe,He,qe,$e,Le,Be,Ue;const{dir:t}=l.useDocumentDir(),{isSmallScreen:r}=E(),{theme:s,inline:o}=l.useConfig(),n=H=>o?"100%":H,a=(H,re)=>r?`100dv${H}`:re,i=(H,re)=>n(a(H,re)),c={zIndex:((y=s==null?void 0:s.widgetTrigger)==null?void 0:y.zIndex)??1e7,offset:{bottom:((S=(g=s==null?void 0:s.widgetTrigger)==null?void 0:g.offset)==null?void 0:S.bottom)??20,right:((C=(f=s==null?void 0:s.widgetTrigger)==null?void 0:f.offset)==null?void 0:C.right)??(t==="ltr"?20:"initial"),left:((j=(T=s==null?void 0:s.widgetTrigger)==null?void 0:T.offset)==null?void 0:j.left)??(t==="rtl"?20:"initial")},size:{button:((P=(M=s==null?void 0:s.widgetTrigger)==null?void 0:M.size)==null?void 0:P.button)??48,icon:((W=(A=s==null?void 0:s.widgetTrigger)==null?void 0:A.size)==null?void 0:W.icon)??24}},d=(()=>{const H=t==="ltr"?c.offset.right:c.offset.left;return typeof H!="number"?0:H})(),h={palette:(s==null?void 0:s.palette)??"neutral",primaryColor:(s==null?void 0:s.primaryColor)??"hsl(0 0% 9%)",widgetTrigger:c,widgetContentContainer:{borderRadius:r?"0px":((D=s==null?void 0:s.widgetContentContainer)==null?void 0:D.borderRadius)??"32px",zIndex:((v=s==null?void 0:s.widgetContentContainer)==null?void 0:v.zIndex)??c.zIndex+1,outline:((N=s==null?void 0:s.widgetContentContainer)==null?void 0:N.outline)??"none",outlineColor:((_=s==null?void 0:s.widgetContentContainer)==null?void 0:_.outlineColor)??"hsl(0 0% 50% / .5)",boxShadow:((F=s==null?void 0:s.widgetContentContainer)==null?void 0:F.boxShadow)??"0 0px 100px 0px rgb(0 0 0 / 0.25)",transitionProperty:((K=s==null?void 0:s.widgetContentContainer)==null?void 0:K.transitionProperty)??"all",transitionTimingFunction:((we=s==null?void 0:s.widgetContentContainer)==null?void 0:we.transitionTimingFunction)??Q.transitionTimingFunction,transitionDuration:((fe=s==null?void 0:s.widgetContentContainer)==null?void 0:fe.transitionDuration)??Q.transitionDuration,offset:{side:r?0:c.offset.bottom+c.size.button+L.y*2+(((ve=(xe=s==null?void 0:s.widgetContentContainer)==null?void 0:xe.offset)==null?void 0:ve.side)??10),align:r?0:d+(((ye=(be=s==null?void 0:s.widgetContentContainer)==null?void 0:be.offset)==null?void 0:ye.align)??0)}},screens:{welcome:{width:i("w",((ke=(je=s==null?void 0:s.screens)==null?void 0:je.welcome)==null?void 0:ke.width)??"400px"),minHeight:i("h",((ze=(Ce=s==null?void 0:s.screens)==null?void 0:Ce.welcome)==null?void 0:ze.minHeight)??"1px")},sessions:{width:i("w",((Ne=(Se=s==null?void 0:s.screens)==null?void 0:Se.sessions)==null?void 0:Ne.width)??"450px"),height:i("h",((Te=(_e=s==null?void 0:s.screens)==null?void 0:_e.sessions)==null?void 0:Te.height)??"600px")},chat:{width:i("w",((Me=(Ie=s==null?void 0:s.screens)==null?void 0:Ie.chat)==null?void 0:Me.width)??"525px"),height:i("h",((Re=(De=s==null?void 0:s.screens)==null?void 0:De.chat)==null?void 0:Re.height)??"700px"),withCanvas:{width:i("w",((Ae=(Pe=(Ee=s==null?void 0:s.screens)==null?void 0:Ee.chat)==null?void 0:Pe.withCanvas)==null?void 0:Ae.width)??"min(1050px, 100vw)"),height:i("h",((Fe=(Oe=(We=s==null?void 0:s.screens)==null?void 0:We.chat)==null?void 0:Oe.withCanvas)==null?void 0:Fe.height)??"min(800px, 100vh)"),transitionTimingFunction:(($e=(qe=(He=s==null?void 0:s.screens)==null?void 0:He.chat)==null?void 0:qe.withCanvas)==null?void 0:$e.transitionTimingFunction)??Q.transitionTimingFunction,transitionDuration:((Ue=(Be=(Le=s==null?void 0:s.screens)==null?void 0:Le.chat)==null?void 0:Be.withCanvas)==null?void 0:Ue.transitionDuration)??Q.transitionDuration}}}},k={maxHeight:i("h",`calc(
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),jt=require("@radix-ui/react-popover"),m=require("react"),l=require("@opencx/widget-react-headless"),kt=require("clsx"),Ct=require("tailwind-merge"),y=require("framer-motion"),zt=require("@radix-ui/react-slot"),St=require("class-variance-authority"),u=require("lucide-react"),Ze=require("remark-gfm"),Nt=require("react-markdown"),Je=require("rehype-raw"),I=require("@opencx/widget-core"),_t=require("@radix-ui/react-avatar"),et=require("@uiw/react-iframe"),Tt=require("@radix-ui/react-tooltip"),Ye=require("tinycolor2"),It=require("react-dropzone"),Mt=require("react-use/lib/useAsyncFn"),oe=require("zod");function ee(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const s in t)if(s!=="default"){const o=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(r,s,o.get?o:{enumerable:!0,get:()=>t[s]})}}return r.default=t,Object.freeze(r)}const te=ee(jt),B=ee(m),U=ee(_t),V=ee(Tt);function w(t){return{"data-component":t}}function p(...t){return Ct.twMerge(kt.clsx(t))}const L={x:2,y:2},O=m.memo(m.forwardRef(({children:t,className:r,scale:s=1.02,off:o=!1},n)=>{const[a,i]=m.useState(!1),[c,d]=m.useState({x:0,y:0});if(o||/translate/.test(t.props.className||""))return t;const k=f=>{var N,_;const{clientX:C,clientY:T}=f,v=f.currentTarget.getBoundingClientRect(),M=C-(v.left+v.width/2),P=T-(v.top+v.height/2),W=Math.max(-1,Math.min(1,M/(v.width/2))),A=Math.max(-1,Math.min(1,P/(v.height/2))),D=W*L.x,b=A*L.y;d({x:D,y:b}),(_=(N=t.props).onMouseMove)==null||_.call(N,f)},j=()=>{var f,C;i(!0),(C=(f=t.props).onMouseEnter)==null||C.call(f)},g=()=>{var f,C;i(!1),d({x:0,y:0}),(C=(f=t.props).onMouseLeave)==null||C.call(f)},S={"--wobble-x":a?`${c.x}px`:"0px","--wobble-y":a?`${c.y}px`:"0px","--scale":1-(s-1)};return m.cloneElement(t,{ref:n,onMouseMove:k,onMouseEnter:j,onMouseLeave:g,style:{...S,...t.props.style},className:p("translate-x-[var(--wobble-x)]","translate-y-[var(--wobble-y)]","hover:scale-[var(--scale)] active:hover:scale-[calc(var(--scale)-0.02)]",r,t.props.className,"transition-all ease-out")})}));O.displayName="Wobble";const Dt=10,Rt=(t,r,s)=>({initial:{opacity:0,x:-t,...r.initial},animate:{opacity:1,x:0,...r.animate,transition:{delay:s}},exit:{opacity:0,x:t,...r.exit}}),Et=(t,r,s)=>({initial:{opacity:0,x:t,...r.initial},animate:{opacity:1,x:0,...r.animate,transition:{delay:s}},exit:{opacity:0,x:-t,...r.exit}}),Pt=(t,r,s)=>({initial:{opacity:0,y:t,...r.initial},animate:{opacity:1,y:0,...r.animate,transition:{delay:s}},exit:{opacity:0,y:-t,...r.exit}}),Wt=(t,r,s)=>({initial:{opacity:0,y:-t,...r.initial},animate:{opacity:1,y:0,...r.animate,transition:{delay:s}},exit:{opacity:0,y:t,...r.exit}}),At={right:Rt,left:Et,up:Pt,down:Wt},x=m.forwardRef(({fadeIn:t="down",distance:r=Dt,children:s,snapExit:o=!1,overrides:n={},delay:a=0,...i},c)=>{const d=t?At[t](r,n,a):{};return o&&d.exit&&typeof d.exit=="object"&&!Array.isArray(d.exit)&&(d.exit.transition={duration:0}),e.jsx(y.motion.div,{ref:c,...i,...d,children:s})});x.displayName="MotionDiv";const Ot=St.cva(p("inline-flex shrink-0 items-center justify-center gap-2","text-sm font-medium whitespace-nowrap","ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50","active:scale-95 hover:active:scale-95","rounded-xl","transition"),{variants:{variant:{default:"bg-primary text-primary-foreground",destructive:"bg-destructive text-destructive-foreground",outline:"bg-background border",secondary:"bg-secondary text-secondary-foreground",ghost:"hover:bg-secondary",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"py-2 px-3.5 text-xs",lg:"min-h-12 px-4 rounded-[20px]",icon:"h-10 w-10",fit:"size-fit p-2",free:"p-2",selfless:"p-0"}},defaultVariants:{variant:"default",size:"default"}}),z=B.forwardRef(({className:t,variant:r="default",size:s,asChild:o=!1,...n},a)=>{const i=o?zt.Slot:"button";return e.jsx(O,{ref:a,children:e.jsx(i,{...w("ui_lib/btn"),"data-variant":r,className:p(Ot({variant:r,size:s,className:t})),...n})})});z.displayName="Button";const tt=m.createContext(null);function Ft({children:t}){const[r,s]=m.useState(!1),[o,n]=m.useState(null),a=c=>{n(c),s(!0)},i=()=>{s(!1),setTimeout(()=>{n(null)},200)};return e.jsxs(tt.Provider,{value:{open:a,close:i,isOpen:r,content:o},children:[e.jsx(Ht,{}),t]})}function se(){const t=m.useContext(tt);return t||(console.error("useDialoger must be used within a DialogerProvider"),{open:()=>{},close:()=>{},isOpen:!1,content:null})}function Ht(){const{contentIframeRef:t}=l.useWidget(),{isOpen:r,content:s,close:o}=se();return m.useEffect(()=>{var a,i;const n=c=>{c.key==="Escape"&&o()};return(i=(a=t==null?void 0:t.current)==null?void 0:a.contentWindow)==null||i.document.addEventListener("keydown",n),()=>{var c,d;return(d=(c=t==null?void 0:t.current)==null?void 0:c.contentWindow)==null?void 0:d.document.removeEventListener("keydown",n)}},[]),e.jsx(y.AnimatePresence,{mode:"wait",children:r&&s&&e.jsx(x,{overrides:{initial:{y:0},exit:{y:0}},className:"fixed inset-0 z-50 bg-black/60 backdrop-blur-sm",tabIndex:-1,onClick:o,children:s},"dialog-content")})}function st({children:t,className:r,withClose:s=!1}){const{close:o}=se();return e.jsxs("div",{className:p("fixed left-[50%] top-[50%] z-50 flex flex-col gap-4 w-full max-w-[61.8%] translate-x-[-50%] translate-y-[-50%] border bg-background p-4 rounded-3xl",r),onClick:n=>n.stopPropagation(),children:[t,s&&e.jsxs(z,{size:"fit",className:"rounded-full absolute top-4 right-4",variant:"secondary",onClick:o,children:[e.jsx(u.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})}const rt=({className:t,...r})=>e.jsx("div",{className:p("flex flex-col gap-2 text-center pt-2",t),...r});rt.displayName="DialogerHeader";const ot=({className:t,...r})=>e.jsx("div",{className:p("flex flex-col gap-2 text-center",t),...r});ot.displayName="DialogerBody";const nt=({className:t,...r})=>e.jsx("div",{className:p("flex flex-col gap-2",t),...r});nt.displayName="DialogerFooter";const it=m.forwardRef(({className:t,...r},s)=>e.jsx("p",{ref:s,className:p("text-lg font-semibold leading-none tracking-tight",t),...r}));it.displayName="DialogerTitle";const at=m.forwardRef(({className:t,...r},s)=>e.jsx("p",{ref:s,className:p("text-sm text-muted-foreground",t),...r}));at.displayName="DialogerDescription";function lt({children:t,trigger:r}){const{open:s}=se();return m.cloneElement(r,{onClick:()=>s(t)})}function ct({attachment:t}){const{name:r,size:s,type:o,url:n}=t,a=o.startsWith("image/"),i=o.startsWith("video/"),c=o.startsWith("audio/");return c?e.jsx(O,{children:e.jsx("div",{className:"w-full shrink-0 overflow-hidden",children:e.jsxs("audio",{controls:!0,className:"w-full",children:[e.jsx("source",{src:n,type:o}),"Your browser does not support the audio tag."]})})}):i?e.jsx(O,{children:e.jsx("div",{className:"w-full border shrink-0 rounded-2xl overflow-hidden",children:e.jsxs("video",{controls:!0,children:[e.jsx("source",{src:n,type:o}),"Your browser does not support the video tag."]})})}):!a&&!i&&!c?e.jsx(O,{children:e.jsx("div",{className:"size-fit border shrink-0 rounded-2xl overflow-hidden",children:e.jsxs("div",{className:"flex items-end gap-2 p-2",children:[e.jsx("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:p("text-xs text-blue-500 line-clamp-2 underline hover:text-blue-600","break-words [word-break:break-word]"),children:r}),e.jsxs("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:[(s/1024).toFixed(2)," KB"]})]})})}):e.jsx(lt,{trigger:e.jsx("div",{children:e.jsx(O,{children:e.jsx("div",{className:"size-fit border shrink-0 rounded-2xl overflow-hidden",children:a&&e.jsx("img",{src:n,className:"object-cover size-16",alt:r})})})}),children:e.jsx(st,{className:"size-full max-w-full rounded-3xl flex items-center justify-center bg-transparent border-none gap-0",withClose:!0,children:a&&e.jsx("div",{className:"size-fit shrink-0 rounded-2xl overflow-hidden max-h-full",children:e.jsx("img",{src:n,className:"object-cover size-auto",alt:r})})})})}const dt=m.memo(Nt,(t,r)=>t.children===r.children&&t.className===r.className);function ce({children:t,messageType:r,messageId:s}){const{anchorTarget:o}=l.useConfig();return e.jsx(dt,{"data-type":r,"data-id":s,remarkPlugins:[Ze],rehypePlugins:[Je],components:{a:({children:n,...a})=>e.jsx("a",{target:a.target||o||"_top",...a,children:n})},children:t})}function ne({data:t,id:r,type:s,attachments:o,isFirstInGroup:n,isLastInGroup:a,isAloneInGroup:i,dataComponentNames:c,classNames:d}){if(s!=="AI"&&s!=="AGENT")return null;const{message:h,variant:k="default"}=t;return e.jsxs("div",{...w((c==null?void 0:c.messageContainer)??"chat/agent_msg/root"),className:p("w-5/6 flex flex-col items-start gap-1",d==null?void 0:d.messageContainer),children:[o&&o.length>0&&e.jsx("div",{className:"w-full gap-1 flex flex-row flex-wrap items-center justify-start",children:o==null?void 0:o.map(j=>e.jsx(ct,{attachment:j},j.id))}),h.length>0&&e.jsx("div",{...w((c==null?void 0:c.message)??"chat/agent_msg/msg"),"data-first":n,"data-last":a,"data-alone":i,"data-variant":k,className:p("transition-all","w-fit py-3 px-4 rounded-3xl bg-secondary text-secondary-foreground","leading-snug text-sm prose prose-sm prose-a:decoration-primary prose-a:underline","break-words [word-break:break-word]",k==="error"&&"bg-destructive/15 text-destructive",n&&!i&&"rounded-bl-md",a&&!i&&"rounded-tl-md",!n&&!a&&!i&&"rounded-l-md",d==null?void 0:d.message),children:e.jsx(ce,{messageType:s,messageId:r,children:h})})]})}function qt(t){return e.jsx("div",{className:"w-full max-w-full overflow-auto shrink-0",children:e.jsx("pre",{className:"text-xs leading-tight whitespace-pre-wrap break-word",children:JSON.stringify(t,null,1)})})}const de=B.forwardRef(({className:t,...r},s)=>e.jsx(U.Root,{ref:s,className:p("relative flex size-6 aspect-square shrink-0 overflow-hidden rounded-full bg-secondary",t),...r}));de.displayName=U.Root.displayName;const pe=B.forwardRef(({className:t,...r},s)=>e.jsx(U.Image,{ref:s,className:p("aspect-square h-full w-full",t),...r}));pe.displayName=U.Image.displayName;const he=B.forwardRef(({className:t,...r},s)=>e.jsx(U.Fallback,{ref:s,className:p("flex size-full text-xs items-center justify-center rounded-lg",t),...r}));he.displayName=U.Fallback.displayName;function ie({agent:t,...r}){var s,o;return e.jsxs(de,{...r,children:[e.jsx(pe,{src:(t==null?void 0:t.avatarUrl)||(t==null?void 0:t.avatar)||"",alt:"Agent Icon"}),(t==null?void 0:t.name)&&e.jsx(he,{children:(o=(s=t==null?void 0:t.name)==null?void 0:s.slice(0,1))==null?void 0:o.toUpperCase()})]})}function $t({agent:t}){return e.jsx(y.AnimatePresence,{children:e.jsxs(x,{...w("chat/bot_loading/root"),className:"flex flex-row items-end w-full gap-2 animate-pulse",children:[e.jsx(ie,{agent:t}),e.jsxs("div",{...w("chat/bot_loading/bouncing_dots_container"),className:p("flex items-center [&_span]:bg-secondary-foreground [&_span]:size-1 gap-1 p-2 rounded-xl bg-secondary"),children:[e.jsx(y.motion.span,{className:"rounded-full animate-bounce [animation-delay:-0.3s]"}),e.jsx(y.motion.span,{className:"rounded-full animate-bounce [animation-delay:-0.15s]"}),e.jsx(y.motion.span,{className:"rounded-full animate-bounce"})]})]})})}const pt='*,: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))}',Lt=V.Provider,Bt=V.Root,Ut=V.Trigger,ht=B.forwardRef(({className:t,sideOffset:r=4,...s},o)=>e.jsx(V.Content,{ref:o,sideOffset:r,className:p("z-50 overflow-hidden max-w-xs rounded-xl bg-primary border text-primary-foreground p-2 text-center align-middle text-xs animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s}));ht.displayName=V.Content.displayName;function Y({children:t,content:r,side:s,align:o}){const{disableTooltips:n}=l.useConfig();return!r||n?t:e.jsxs(Bt,{children:[e.jsx(Ut,{asChild:!0,children:t}),e.jsx(ht,{side:s,align:o,collisionPadding:8,avoidCollisions:!0,children:r})]})}const Xe=450;function E(){const[t,r]=m.useState(()=>(window.top||window).innerWidth<Xe);return m.useEffect(()=>{const s=window.top||window,o=()=>{r(s.innerWidth<Xe)};return o(),s.addEventListener("resize",o),()=>{s.removeEventListener("resize",o)}},[]),{isSmallScreen:t}}const Q={transitionTimingFunction:"cubic-bezier(0.16, 1, 0.3, 1)",transitionDuration:"1000ms"};function q(){var j,g,S,f,C,T,v,M,P,W,A,D,b,N,_,F,K,we,fe,xe,ve,be,ye,je,ke,Ce,ze,Se,Ne,_e,Te,Ie,Me,De,Re,Ee,Pe,We,Ae,Oe,Fe,He,qe,$e,Le,Be,Ue;const{dir:t}=l.useDocumentDir(),{isSmallScreen:r}=E(),{theme:s,inline:o}=l.useConfig(),n=H=>o?"100%":H,a=(H,re)=>r?`100dv${H}`:re,i=(H,re)=>n(a(H,re)),c={zIndex:((j=s==null?void 0:s.widgetTrigger)==null?void 0:j.zIndex)??1e7,offset:{bottom:((S=(g=s==null?void 0:s.widgetTrigger)==null?void 0:g.offset)==null?void 0:S.bottom)??20,right:((C=(f=s==null?void 0:s.widgetTrigger)==null?void 0:f.offset)==null?void 0:C.right)??(t==="ltr"?20:"initial"),left:((v=(T=s==null?void 0:s.widgetTrigger)==null?void 0:T.offset)==null?void 0:v.left)??(t==="rtl"?20:"initial")},size:{button:((P=(M=s==null?void 0:s.widgetTrigger)==null?void 0:M.size)==null?void 0:P.button)??48,icon:((A=(W=s==null?void 0:s.widgetTrigger)==null?void 0:W.size)==null?void 0:A.icon)??24}},d=(()=>{const H=t==="ltr"?c.offset.right:c.offset.left;return typeof H!="number"?0:H})(),h={palette:(s==null?void 0:s.palette)??"neutral",primaryColor:(s==null?void 0:s.primaryColor)??"hsl(0 0% 9%)",widgetTrigger:c,widgetContentContainer:{borderRadius:r?"0px":((D=s==null?void 0:s.widgetContentContainer)==null?void 0:D.borderRadius)??"32px",zIndex:((b=s==null?void 0:s.widgetContentContainer)==null?void 0:b.zIndex)??c.zIndex+1,outline:((N=s==null?void 0:s.widgetContentContainer)==null?void 0:N.outline)??"none",outlineColor:((_=s==null?void 0:s.widgetContentContainer)==null?void 0:_.outlineColor)??"hsl(0 0% 50% / .5)",boxShadow:((F=s==null?void 0:s.widgetContentContainer)==null?void 0:F.boxShadow)??"0 0px 100px 0px rgb(0 0 0 / 0.25)",transitionProperty:((K=s==null?void 0:s.widgetContentContainer)==null?void 0:K.transitionProperty)??"all",transitionTimingFunction:((we=s==null?void 0:s.widgetContentContainer)==null?void 0:we.transitionTimingFunction)??Q.transitionTimingFunction,transitionDuration:((fe=s==null?void 0:s.widgetContentContainer)==null?void 0:fe.transitionDuration)??Q.transitionDuration,offset:{side:r?0:c.offset.bottom+c.size.button+L.y*2+(((ve=(xe=s==null?void 0:s.widgetContentContainer)==null?void 0:xe.offset)==null?void 0:ve.side)??10),align:r?0:d+(((ye=(be=s==null?void 0:s.widgetContentContainer)==null?void 0:be.offset)==null?void 0:ye.align)??0)}},screens:{welcome:{width:i("w",((ke=(je=s==null?void 0:s.screens)==null?void 0:je.welcome)==null?void 0:ke.width)??"400px"),minHeight:i("h",((ze=(Ce=s==null?void 0:s.screens)==null?void 0:Ce.welcome)==null?void 0:ze.minHeight)??"1px")},sessions:{width:i("w",((Ne=(Se=s==null?void 0:s.screens)==null?void 0:Se.sessions)==null?void 0:Ne.width)??"450px"),height:i("h",((Te=(_e=s==null?void 0:s.screens)==null?void 0:_e.sessions)==null?void 0:Te.height)??"600px")},chat:{width:i("w",((Me=(Ie=s==null?void 0:s.screens)==null?void 0:Ie.chat)==null?void 0:Me.width)??"525px"),height:i("h",((Re=(De=s==null?void 0:s.screens)==null?void 0:De.chat)==null?void 0:Re.height)??"700px"),withCanvas:{width:i("w",((We=(Pe=(Ee=s==null?void 0:s.screens)==null?void 0:Ee.chat)==null?void 0:Pe.withCanvas)==null?void 0:We.width)??"min(1050px, 100vw)"),height:i("h",((Fe=(Oe=(Ae=s==null?void 0:s.screens)==null?void 0:Ae.chat)==null?void 0:Oe.withCanvas)==null?void 0:Fe.height)??"min(800px, 100vh)"),transitionTimingFunction:(($e=(qe=(He=s==null?void 0:s.screens)==null?void 0:He.chat)==null?void 0:qe.withCanvas)==null?void 0:$e.transitionTimingFunction)??Q.transitionTimingFunction,transitionDuration:((Ue=(Be=(Le=s==null?void 0:s.screens)==null?void 0:Le.chat)==null?void 0:Be.withCanvas)==null?void 0:Ue.transitionDuration)??Q.transitionDuration}}}},k={maxHeight:i("h",`calc(
|
|
2
2
|
100vh
|
|
3
3
|
- ${h.widgetTrigger.offset.bottom}px
|
|
4
4
|
- ${h.widgetContentContainer.offset.side}px
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
${h.screens.welcome.width},
|
|
15
15
|
${h.screens.sessions.width},
|
|
16
16
|
${h.screens.chat.width}
|
|
17
|
-
)`)};return{theme:h,computed:k,cssVars:Yt({palette:h.palette,primary:h.primaryColor})}}function Yt({palette:t,primary:r}){const s=mt(t),o=Ye(r).toHsl(),n=Ye(r).isLight()?s[950]:s[50];return{"--opencx-primary":`${o.h} ${o.s*100}% ${o.l*100}%`,"--opencx-primary-foreground":n,"--opencx-background":s[100],"--opencx-foreground":s[950],"--opencx-destructive":"0 72.2% 50.6%","--opencx-destructive-foreground":s[50],"--opencx-accent":s[200],"--opencx-accent-foreground":"var(--opencx-foreground)","--opencx-secondary":s[200],"--opencx-secondary-foreground":"var(--opencx-foreground)","--opencx-muted":s[200],"--opencx-muted-foreground":s[500],"--opencx-input":s[300],"--opencx-border":s[300],"--opencx-ring":"var(--opencx-foreground)"}}function mt(t){const r={50:"0 0% 98%",100:"0 0% 96.1%",200:"0 0% 89.8%",300:"0 0% 83.1%",400:"0 0% 63.9%",500:"0 0% 45.1%",600:"0 0% 32.2%",700:"0 0% 25.1%",800:"0 0% 14.9%",900:"0 0% 9%",950:"0 0% 3.9%"},s={50:"60 9.1% 97.8%",100:"60 4.8% 95.9%",200:"20 5.9% 90%",300:"24 5.7% 82.9%",400:"24 5.4% 63.9%",500:"25 5.3% 44.7%",600:"33.3 5.5% 32.4%",700:"30 6.3% 25.1%",800:"12 6.5% 15.1%",900:"24 9.8% 10%",950:"20 14.3% 4.1%"},o={50:"0 0% 98%",100:"240 4.8% 95.9%",200:"240 5.9% 90%",300:"240 4.9% 83.9%",400:"240 5% 64.9%",500:"240 3.8% 46.1%",600:"240 5.2% 33.9%",700:"240 5.3% 26.1%",800:"240 3.7% 15.9%",900:"240 5.9% 10%",950:"240 10% 3.9%"},n={50:"210 40% 98%",100:"210 40% 96.1%",200:"214.3 31.8% 91.4%",300:"212.7 26.8% 83.9%",400:"215 20.2% 65.1%",500:"215.4 16.3% 46.9%",600:"215.3 19.3% 34.5%",700:"215.3 25% 26.7%",800:"217.2 32.6% 17.5%",900:"222.2 47.4% 11.2%",950:"222.2 84% 4.9%"};switch(t){case"neutral":return r;case"stone":return s;case"zinc":return o;case"slate":return n;default:return I.isExhaustive(t,mt.name),r}}function ut(){const{contentIframeRef:t}=l.useWidget(),{inline:r}=l.useConfig();return{setWidth:s=>{var o;(o=t==null?void 0:t.current)==null||o.style.setProperty("--opencx-widget-width",r?"100%":s)},setHeight:s=>{var o;(o=t==null?void 0:t.current)==null||o.style.setProperty("--opencx-widget-height",r?"100%":s)}}}function me({width:t,height:r}){const{isSmallScreen:s}=E(),{setWidth:o,setHeight:n}=ut();m.useEffect(()=>{t&&o(t),r&&n(r)},[s,r,t,o,n])}const Ve=u.CircleDashedIcon;function X({name:t,className:r}){const s=(()=>{switch(t){case"Check":return u.CheckIcon;case"CheckCheck":return u.CheckCheckIcon;case"CircleCheck":return u.CircleCheckIcon;case"CircleCheckBig":return u.CircleCheckBigIcon;case"CircleX":return u.CircleXIcon;case"Expand":return u.ExpandIcon;case"Maximize":return u.MaximizeIcon;case"Maximize2":return u.Maximize2Icon;case"Minimize":return u.MinimizeIcon;case"Minimize2":return u.Minimize2Icon;case"Shrink":return u.ShrinkIcon;case"SquareCheck":return u.SquareCheckIcon;case"SquareCheckBig":return u.SquareCheckBigIcon;case"SquareX":return u.SquareXIcon;case"X":return u.XIcon;case void 0:return Ve;default:return I.isExhaustive(t,X.name),Ve}})();return e.jsx(s,{className:p("size-4",r)})}function G(){const{widgetCtx:{org:t}}=l.useWidget(),{sessionState:{session:r}}=l.useSessions(),s=l.useConfig(),{messagesState:{messages:o}}=l.useMessages(),{routerState:{screen:n}}=l.useWidgetRouter();return{react:m,org:t,session:r,config:s,messages:o,currentScreen:n}}function Xt(){var s;const t=G(),r=(s=t.config.customComponents)==null?void 0:s.headerBottom;return r?e.jsx(r,{...t}):null}function Vt({fallback:t}){var o;const r=G(),s=(o=r.config.customComponents)==null?void 0:o.headerTitle;return s?e.jsx(s,{...r}):t}function ue(){const{widgetCtx:{org:t}}=l.useWidget(),{routerState:{screen:r}}=l.useWidgetRouter(),{textContent:s}=l.useConfig();return(()=>{var n,a;switch(r){case"chat":return(n=s==null?void 0:s.chatScreen)==null?void 0:n.headerTitle;case"sessions":return(a=s==null?void 0:s.sessionsScreen)==null?void 0:a.headerTitle;case"welcome":return;default:I.isExhaustive(r,ue.name);return}})()??t.name??"Chat"}function Gt(t){switch(t){case"chat":return w("chat/header");case"sessions":return w("sessions/header");case"welcome":return;default:I.isExhaustive(t,ue.name);return}}function Kt(){const{router:t}=l.useConfig(),{routerState:{screen:r},toSessionsScreen:s}=l.useWidgetRouter();return r!=="chat"||t!=null&&t.chatScreenOnly?null:e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:s,children:e.jsx(u.ChevronLeftIcon,{className:"size-4 rtl:-scale-100"})})}function Qt({button:t}){const{setIsOpen:r}=l.useWidgetTrigger(),{isSmallScreen:s}=E();if(s&&t.hideOnSmallScreen||!s&&t.hideOnLargeScreen)return null;const o=()=>{if(t.handleClick)return t.handleClick();r(!1)};return e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:o,children:e.jsx(X,{name:t.icon})})}function ae({button:t}){const[r,s]=m.useState(!1),{routerState:{screen:o}}=l.useWidgetRouter(),{isSmallScreen:n}=E(),{theme:a}=q(),{setWidth:i,setHeight:c}=ut();if(o!=="chat"&&o!=="sessions")return null;const d=(()=>{switch(o){case"chat":return a.screens.chat.height;case"sessions":return a.screens.sessions.height;default:return I.isExhaustive(o,ae.name),a.screens.chat.height}})(),h=(()=>{switch(o){case"chat":return a.screens.chat.width;case"sessions":return a.screens.sessions.width;default:return I.isExhaustive(o,ae.name),a.screens.chat.width}})(),k=()=>{s(y=>{const g=!y;return c(g?"100vh":d),i(g?`max(40vw, ${h})`:h),g})};return n&&t.hideOnSmallScreen||!n&&t.hideOnLargeScreen?null:e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:k,children:e.jsx(X,{name:t.icon||(r?t.shrinkIcon:t.expandIcon)})})}function gt({button:t}){var C,T;const{close:r}=se(),{widgetCtx:s}=l.useWidget(),{setIsOpen:o}=l.useWidgetTrigger(),{resolveSession:n,sessionState:a}=l.useSessions(),{isSmallScreen:i}=E(),c=!a.session,d=((C=a.session)==null?void 0:C.isOpened)===!1,h=t.onResolved||"stay-in-chat",k=t.behaviorBeforeSessionCreation||"disabled",y=t.behaviorIfSessionIsResolved||"disabled",g=!!(a.isResolvingSession||c&&k==="disabled"||d&&y==="disabled"),S=async()=>{const{success:j,error:M}=await n();if(r(),!j)return console.error(M);switch(h){case"stay-in-chat":return;case"close-widget":o(!1);break;case"reset-chat":s.resetChat();break;case"reset-chat-and-close-widget":o(!1),s.resetChat();break;default:I.isExhaustive(h,gt.name);break}},f=()=>{if(c)switch(k){case"disabled":return;case"close-widget":o(!1);break;default:I.isExhaustive(k,f.name)}if(d)switch(y){case"disabled":return;case"close-widget":o(!1);break;case"reset-chat":s.resetChat();break;case"reset-chat-and-close-widget":o(!1),setTimeout(()=>{s.resetChat()},200);break;default:I.isExhaustive(y,f.name)}};return i&&t.hideOnSmallScreen||!i&&t.hideOnLargeScreen?null:((T=t.confirmation)==null?void 0:T.type)==="modal"&&!d&&!c?e.jsx(lt,{trigger:e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",disabled:g,children:e.jsx(X,{name:t.icon})}),children:e.jsxs(st,{children:[e.jsx(rt,{children:e.jsx(it,{children:t.confirmation.title||"Close conversation"})}),e.jsx(ot,{children:e.jsx(at,{children:t.confirmation.description||"Are you sure you want to close this conversation?"})}),e.jsxs(nt,{children:[e.jsx(z,{variant:"secondary",onClick:r,disabled:a.isResolvingSession,children:t.confirmation.cancelButtonText||"No"}),e.jsx(z,{variant:"destructive",onClick:S,disabled:a.isResolvingSession,children:t.confirmation.confirmButtonText||"Yes"})]})]})}):e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:d||c?f:S,disabled:g,children:e.jsx(X,{name:t.icon})})}function le({button:t}){switch(t.functionality){case"close-widget":return e.jsx(Qt,{button:t});case"expand-shrink":return e.jsx(ae,{button:t});case"resolve-session":return e.jsx(gt,{button:t});default:return I.isExhaustive(t,le.name),null}}const Zt={functionality:"close-widget",hideOnLargeScreen:!0,icon:"X"};function Jt(){const{routerState:{screen:t}}=l.useWidgetRouter(),{headerButtons:r}=l.useConfig(),s=t==="chat"?r==null?void 0:r.chatScreen:t==="sessions"?r==null?void 0:r.sessionsScreen:[];return!s||s.length===0?e.jsx(le,{button:Zt}):e.jsx(e.Fragment,{children:s.map(o=>e.jsx(le,{button:o},`${o.functionality}-${o.icon}`))})}function wt(){const{routerState:{screen:t}}=l.useWidgetRouter(),r=Gt(t),s=ue();return e.jsxs("header",{...r,className:"py-2 px-4 shrink-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Kt,{}),e.jsx("div",{className:p("flex-1 h-8 flex items-center",t==="sessions"&&"ps-2"),children:e.jsx(Vt,{fallback:e.jsx("h2",{className:"font-semibold",children:s})})}),e.jsx(Jt,{})]}),e.jsx(Xt,{})]})}function ft({className:t}){return e.jsx(u.LoaderIcon,{className:p("size-4 animate-spin",t)})}function es(){const{messagesState:{isInitialFetchLoading:t}}=l.useMessages(),{isSmallScreen:r}=E(),{activeMode:s,Component:o}=l.useModes();return{isCanvasOpen:!t&&!r&&!!s&&!!o}}function ts(){const t=G(),{activeMode:r,Component:s}=l.useModes(),{sendMessage:o}=l.useMessages(),{createStateCheckpoint:n}=l.useSessions(),[a,i]=m.useState(!1),c=async d=>{try{i(!0),await o(d)}catch(h){console.error(h)}finally{i(!1)}};return!r||!s?null:e.jsx(s,{...t,mode:r,createStateCheckpoint:n,sendMessage:c,isSendingMessage:a})}const R=m.forwardRef((t,r)=>{var s,o,n;return e.jsx(x,{...t,ref:r,className:p("overflow-hidden",t.className),overrides:{initial:{height:0,opacity:0,...(s=t.overrides)==null?void 0:s.initial},animate:{height:"auto",opacity:1,...(o=t.overrides)==null?void 0:o.animate},exit:{height:0,opacity:0,...(n=t.overrides)==null?void 0:n.exit}}})});R.displayName="MotionDiv__VerticalReveal";const ss=[{label:"Terrible",value:1,emoji:"😡"},{label:"Poor",value:2,emoji:"😞"},{label:"Okay",value:3,emoji:"😐"},{label:"Good",value:4,emoji:"😊"},{label:"Great",value:5,emoji:"😍"}];function rs(){const{isSmallScreen:t}=E(),{submitCsat:r,isCsatRequested:s,isCsatSubmitted:o,submittedScore:n,submittedFeedback:a}=l.useCsat(),[i,c]=m.useState(null),[d,h]=m.useState(null),k=g=>{c(S=>S===g?null:g)},y=()=>{i&&r({score:i,feedback:d||void 0})};return!s&&!o?null:e.jsxs("div",{className:"w-1/2 min-w-80 max-w-96 mx-auto overflow-hidden",children:[e.jsx(b.AnimatePresence,{mode:"wait",children:s&&!i?e.jsx(R,{children:e.jsx("p",{className:"text-sm text-muted-foreground text-center pt-2",children:"How was your conversation?"})},"csat-requested-title"):o?e.jsx(R,{children:e.jsx("p",{className:"text-sm text-muted-foreground text-center pt-2",children:"You rated the conversation as"})},"csat-submitted-title"):null}),e.jsx("div",{className:p("flex gap-4 justify-between pt-2 px-2 pb-2","transition-all",o&&"gap-0 justify-center"),children:ss.map(g=>e.jsx(z,{variant:g.value===i?"secondary":"ghost",size:"selfless",className:p("transition-all overflow-hidden","text-2xl size-8 rounded-full","opacity-35","hover:opacity-100",!i&&"opacity-100",g.value===i&&"opacity-100",o&&g.value!==n&&"opacity-0 size-0",o&&g.value===n&&"opacity-100 size-fit text-4xl"),onClick:s?()=>k(g.value):void 0,children:g.emoji},g.value))}),e.jsx(b.AnimatePresence,{mode:"wait",children:(i||n)&&e.jsx(R,{children:e.jsxs("div",{className:"pb-2 px-2 flex items-end",children:[e.jsx("textarea",{rows:3,className:p("transition-all","max-h-40 [field-sizing:content]","w-full resize-none","bg-transparent outline-none","placeholder:text-muted-foreground",t?"text-[16px]":"text-sm",o&&"text-center"),value:o?a||"":d||"",onChange:s?g=>h(g.target.value):void 0,readOnly:o,placeholder:s?"Tell us more... (optional)":void 0}),e.jsx(z,{size:"fit",onClick:y,disabled:!i,className:p("transition-all overflow-hidden","rounded-full size-8 flex items-center justify-center p-0",o&&"opacity-0 size-0"),children:e.jsx(u.ArrowUpIcon,{className:"size-4"})})]})},"feedback-box")}),e.jsx("div",{className:p("h-0 transition-[height]",o&&"h-4")})]})}function $(){const{dir:t}=l.useDocumentDir(),r=l.useConfig();return m.useMemo(()=>{const s=I.isSupportedLanguage(r.language)?r.language:"en";return{t:o=>I.getTranslation(o,s,r.translationOverrides),language:s,dir:s==="ar"?"rtl":"ltr",hostDocumentDir:t}},[r.language,t])}function ge({suggestion:t,className:r,...s}){const{sendMessage:o}=l.useMessages(),n=()=>{const a=t.trim();a&&o({content:a})};return e.jsx(z,{...w("chat/suggested_reply_btn"),size:"sm",className:p("rounded-xl w-fit",r),...s,onClick:n,children:t})}function os(){const{t}=$(),r=[t("i_need_more_help"),t("this_was_helpful")];return e.jsx("div",{...w("chat/might_solve_user_issue_suggested_replies_container"),className:"flex items-center gap-2 p-2 pb-0 flex-wrap",children:r.map(s=>e.jsx(ge,{suggestion:s,className:"flex-1"},s))})}function Ge(){const{sessionState:t}=l.useSessions(),{chatFooterItems:r}=l.useConfig(),s=!!t.session&&!t.session.isOpened,o=!s;return e.jsx(b.AnimatePresence,{mode:"wait",children:r==null?void 0:r.map((n,a)=>n.showWhenSessionIsOpen===!1&&o||n.showWhenSessionIsResolved===!1&&s?null:e.jsx(R,{children:e.jsx("div",{className:"pb-2 text-center text-xs",children:e.jsx(ce,{children:n.message})})},`${n.message}-${a}`))})}function ns({file:{status:t,file:r,error:s},onCancel:o}){const[n,a]=m.useState(null);m.useEffect(()=>{if(!r.type.startsWith("image/"))return;const d=new FileReader;return d.onload=()=>a(d.result),d.onerror=()=>console.error("Error reading file"),d.readAsDataURL(r),()=>d.abort()},[r]);const i=()=>{switch(t){case"uploading":return e.jsx(u.Loader2,{className:"size-4 animate-spin"});case"error":return e.jsx(u.AlertCircle,{className:"size-4 text-destructive"});default:return null}},c=()=>{const d=r.type.split("/")[0];return d==="image"&&n?e.jsx("img",{src:typeof n=="string"?n:"",className:"object-cover bg-secondary size-full",alt:r.name}):d==="audio"?e.jsx(u.FileAudio2Icon,{}):d==="video"?e.jsx(u.FileVideo2Icon,{}):e.jsx(u.FileIcon,{})};return e.jsx(Y,{side:"bottom",content:t==="error"?e.jsxs("span",{className:"text-destructive",children:["Failed to upload: ",s]}):r.name,children:e.jsxs("div",{className:p(t==="uploading"&&"opacity-50","group","size-12 border rounded-2xl overflow-hidden relative","flex items-center justify-center shrink-0"),children:[e.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:i()}),e.jsx("button",{type:"button",className:p("absolute bg-black/50 inset-0 size-full z-10 opacity-0","flex items-center justify-center","opacity-0 group-hover:opacity-100 transition"),onClick:o,children:e.jsx(u.XIcon,{className:"size-4 text-primary-foreground"})}),e.jsx(c,{})]})})}function is(){var D;const{isSmallScreen:t}=E(),r=m.useRef(null),{sendMessage:s}=l.useMessages(),{sessionState:o}=l.useSessions(),{t:n}=$(),[a,i]=m.useState(""),{allFiles:c,emptyTheFiles:d,handleCancelUpload:h,appendFiles:k,isUploading:y,successFiles:g}=l.useUploadFiles(),S=!!((D=o.session)!=null&&D.isHandedOff),{isAwaitingBotReply:f}=l.useIsAwaitingBotReply(),C=v=>{k(v)},T=!a.trim()&&g.length===0,j=async()=>{if(f||T)return;y&&console.info("please wait for the file(s) to upload");const v=a.trim();s({content:v,attachments:g.flatMap(N=>N.fileUrl?[{url:N.fileUrl,type:N.file.type,name:N.file.name,id:N.id,size:N.file.size}]:[])}),i(""),d()},{getRootProps:M,getInputProps:P,open:A}=It.useDropzone({onDrop:C,noClick:!0,onDropRejected(){console.error("unsupported file type, or the file is too large")},maxSize:5*1024*1024,accept:S?{"text/*":[".txt"],"image/*":[".png",".jpg",".jpeg",".gif"],"application/pdf":[".pdf"]}:{"image/png":[".png"],"image/jpeg":[".jpg",".jpeg"],"image/gif":[".gif"],"image/webp":[".webp"]}}),W=v=>{const N=v.clipboardData;N&&N.files.length>0&&C(Array.from(N.files))};return e.jsxs("div",{...w("chat/input_box/root"),className:"p-2 relative space-y-1",...M(),children:[e.jsx("input",{...P()}),e.jsxs("div",{...w("chat/input_box/inner_root"),className:p("transition-all","bg-white","relative rounded-3xl flex flex-col gap-2 p-2","hover:border-primary focus-within:border-primary"),children:[e.jsxs("div",{...w("chat/input_box/textarea_and_attachments_container"),className:"flex flex-col gap-2",children:[c.length>0&&e.jsx("div",{...w("chat/input_box/attachments_container"),className:"flex items-center gap-1",children:e.jsx(b.AnimatePresence,{mode:"popLayout",children:c.map(v=>e.jsx(x,{snapExit:!0,children:e.jsx(ns,{onCancel:()=>h(v.id),file:v})},v.id))})}),e.jsx("textarea",{...w("chat/input_box/textarea"),onPaste:W,ref:r,id:"chat-input",value:a,rows:3,className:p("max-h-16 [field-sizing:content]","w-full resize-none px-2",c.length===0&&"pt-1","bg-transparent outline-none","placeholder:text-muted-foreground",t?"text-[16px]":"text-sm"),onChange:v=>i(v.target.value),onKeyDown:async v=>{v.key==="Enter"&&!v.shiftKey&&(v.preventDefault(),j())},placeholder:n("write_a_message_placeholder")})]}),e.jsxs("div",{className:"gap-2 flex justify-between",children:[e.jsx(Y,{side:"top",align:"start",content:"attach files, (maximum size 5mb)",children:e.jsx(z,{onClick:A,size:"fit",variant:"ghost",className:p("rounded-full size-8 flex items-center justify-center p-0 overflow-hidden"),children:e.jsx(b.AnimatePresence,{mode:"wait",children:S&&!f?e.jsx(x,{children:e.jsx(u.PaperclipIcon,{className:"size-4"})},"paper-clip"):e.jsx(x,{children:e.jsx(u.ImageIcon,{className:"size-4"})},"image-icon")})})}),e.jsx(Y,{content:"send message",side:"top",align:"end",children:e.jsx(z,{size:"fit",onClick:j,disabled:f||y||T,className:"rounded-full size-8 flex items-center justify-center p-0",children:e.jsx(b.AnimatePresence,{mode:"wait",children:f||y?e.jsx(x,{snapExit:!0,children:e.jsx(u.CircleDashed,{className:"size-4 animate-spin animate-iteration-infinite"})},"loading"):e.jsx(x,{snapExit:!0,children:e.jsx(u.ArrowUpIcon,{className:"size-4"})},"send")})})})]})]})]})}function Ke(){const{widgetCtx:t}=l.useWidget(),{router:r}=l.useConfig(),{canCreateNewSession:s}=l.useSessions(),{toSessionsScreen:o}=l.useWidgetRouter(),{t:n}=$();return e.jsx(e.Fragment,{children:s||r!=null&&r.chatScreenOnly?e.jsx(z,{onClick:t.resetChat,className:"rounded-2xl w-full",children:n("new_conversation")}):e.jsx(z,{onClick:o,className:"rounded-2xl w-full",children:n("back_to_conversations")})})}function as(){const{t}=$(),{isCsatRequested:r,isCsatSubmitted:s}=l.useCsat();return e.jsx("div",{className:"p-2",children:e.jsx("div",{className:"p-2 bg-muted rounded-3xl",children:e.jsx(b.AnimatePresence,{mode:"wait",children:r||s?e.jsxs(R,{children:[e.jsx(rs,{}),e.jsx(b.AnimatePresence,{mode:"wait",children:s&&e.jsx(R,{children:e.jsx(Ke,{})},"new-conv-or-back-to-convs-button")})]},"csat"):e.jsxs(R,{children:[e.jsxs("div",{className:"ps-2 flex items-center gap-1 pb-2",children:[e.jsx(u.CircleCheckIcon,{className:"size-4 text-emerald-600"}),e.jsx("h2",{className:"text-sm font-medium",children:t("your_issue_has_been_resolved")})]}),e.jsx(Ke,{})]},"session-closed")})})})}function ls(){var i;const{initialQuestions:t,initialQuestionsPosition:r,thisWasHelpfulOrNot:s}=l.useConfig(),{sessionState:o}=l.useSessions(),{messagesState:n}=l.useMessages(),a=n.messages.length===0;return e.jsx("footer",{children:e.jsx(b.AnimatePresence,{mode:"wait",children:o.session&&!((i=o.session)!=null&&i.isOpened)?e.jsxs(R,{children:[e.jsx(as,{}),e.jsx(Ge,{})]},"session-closed"):e.jsxs(R,{children:[n.lastAIResMightSolveUserIssue&&(s==null?void 0:s.enabled)!==!1&&e.jsx(os,{}),a&&t&&r!=="below-initial-messages"&&e.jsx("div",{className:"flex items-center flex-row justify-end gap-2 flex-wrap px-2",children:t==null?void 0:t.map((c,d)=>e.jsx(ge,{suggestion:c},`${c}-${d}`))}),e.jsx(is,{}),e.jsx(Ge,{})]},"chat-input")})})}function cs({isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s,...o}){const{componentStore:n}=l.useWidget();if(o.type!=="AGENT"&&o.type!=="AI")return null;if(o.data.action){const i=n.getComponent(o.data.action.name);if(i)return e.jsx(i,{...o,id:o.id,isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s})}const a=n.getComponent(o.component);return a?e.jsx(a,{...o,id:o.id,isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s}):e.jsx(ne,{...o,isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s})}function xt({messages:t,className:r,containerClassName:s}){var i,c;const{timestamps:o}=l.useConfig();if(!((i=o==null?void 0:o.perMessageGroup)!=null&&i.enabled))return null;const n=(c=t[t.length-1])==null?void 0:c.timestamp;if(!n)return null;const a=(()=>{try{return new Date(n).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!0})}catch(d){return console.error(d),null}})();return a?e.jsx("div",{className:s,children:e.jsx("span",{className:p("text-xs text-muted-foreground",r),children:a})}):null}function J({messages:t,agent:r,suggestedReplies:s}){return e.jsxs("div",{...w("chat/agent_msg_group/root"),className:p("flex items-end gap-2"),children:[e.jsx(Y,{content:r==null?void 0:r.name,side:"right",align:"end",children:e.jsx(ie,{...w("chat/agent_msg_group/root/avatar"),agent:r,className:"hidden"})}),e.jsxs("div",{className:p("flex-1 flex flex-col gap-1"),children:[e.jsxs("div",{...w("chat/agent_msg_group/avatar_and_msgs/root"),className:p("flex items-end gap-2"),children:[e.jsx(Y,{content:r==null?void 0:r.name,side:"right",align:"end",children:e.jsx(ie,{...w("chat/agent_msg_group/avatar_and_msgs/avatar"),agent:r})}),e.jsxs("div",{...w("chat/agent_msg_group/avatar_and_msgs/msgs"),className:p("flex-1 flex flex-col gap-1"),children:[t.map((o,n,a)=>e.jsx(cs,{isFirstInGroup:n===0,isLastInGroup:n===a.length-1,isAloneInGroup:a.length===1,...o},o.id)),e.jsx(xt,{messages:t})]})]}),s&&s.length>0&&e.jsx("div",{...w("chat/agent_msg_group/suggestions"),className:p("flex flex-col gap-1 ps-8"),children:s==null?void 0:s.map((o,n)=>e.jsx(ge,{suggestion:o},`${o}-${n}`))})]})]})}function ds(){var s,o;const t=G();if((s=t.session)!=null&&s.isOpened||!t.session)return null;const r=(o=t.config.customComponents)==null?void 0:o.onSessionResolved;return r?e.jsx(r,{...t}):null}function ps({message:t,isFirstInGroup:r,isLastInGroup:s,isAloneInGroup:o}){var n;return e.jsxs("div",{...w("chat/user_msg/root"),className:"w-5/6 flex flex-col items-end gap-1",children:[t.attachments&&t.attachments.length>0&&e.jsx("div",{className:"w-full flex gap-1 flex-wrap justify-end",children:(n=t.attachments)==null?void 0:n.map(a=>e.jsx(ct,{attachment:a},a.id))}),t.content.length>0&&e.jsx("div",{...w("chat/user_msg/msg"),"data-first":r,"data-last":s,"data-alone":o,className:p("transition-all","w-fit py-3 px-4 rounded-3xl text-sm","bg-primary text-primary-foreground","break-words [word-break:break-word]","whitespace-pre-wrap",r&&!o&&"rounded-br-md",s&&!o&&"rounded-tr-md",!r&&!s&&!o&&"rounded-r-md"),children:t.content})]})}function hs({messages:t}){return e.jsxs("div",{...w("chat/user_msg_group/root"),className:p("group","flex flex-col gap-1 justify-end items-end"),children:[t.map((r,s,o)=>e.jsx(ps,{message:r,isFirstInGroup:s===0,isLastInGroup:s===o.length-1,isAloneInGroup:o.length===1},r.id)),e.jsx(xt,{messages:t,containerClassName:"ms-auto"})]})}function ms(t){const r=[];let s=null;return t.forEach(o=>{var n,a,i,c,d,h;(((n=s==null?void 0:s[0])==null?void 0:n.type)!==o.type||((a=s[0])==null?void 0:a.type)==="AGENT"&&o.type==="AGENT"&&(((i=o.agent)==null?void 0:i.id)!==((c=s[0].agent)==null?void 0:c.id)||((d=o.agent)==null?void 0:d.name)!==((h=s[0].agent)==null?void 0:h.name)))&&(s=[],r.push(s)),s.push(o)}),r}function us(t){var r;return((r=t==null?void 0:t[0])==null?void 0:r.type)==="USER"}function gs(t){var r;return((r=t==null?void 0:t[0])==null?void 0:r.type)==="AI"}function ws(t){var r;return((r=t==null?void 0:t[0])==null?void 0:r.type)==="AGENT"}function fs(){const{messagesState:{messages:t}}=l.useMessages(),{advancedInitialMessages:r=[],initialQuestionsPosition:s,initialQuestions:o,bot:n}=l.useConfig();return e.jsx(e.Fragment,{children:t.length===0&&r.length>0&&e.jsx(J,{messages:r.map(({message:a},i)=>({component:"bot_message",data:{message:a},id:`${i}-${a}`,type:"AI",timestamp:null})),suggestedReplies:t.length===0&&s==="below-initial-messages"?o:void 0,agent:n?{...n,isAi:!0,id:null}:void 0})})}function xs(){const{messagesState:{messages:t}}=l.useMessages(),{chatBannerItems:r}=l.useConfig();return!(r!=null&&r.length)||t.length>0&&r.every(s=>!s.persistent)?null:e.jsx("div",{className:"w-full text-center text-xs",children:r.map(({message:s,persistent:o},n)=>t.length>0&&!o?null:e.jsx("div",{children:e.jsx(ce,{children:s})},`${s}-${n}`))})}function vs(){const{messagesState:{messages:t}}=l.useMessages(),r=l.useConfig(),{advancedInitialMessages:s=[],initialQuestions:o,initialQuestionsPosition:n}=r,a=(()=>{var i;return s.length?[]:t.length?[]:(i=r.initialMessages)!=null&&i.length?r.initialMessages:["Hello, how can I help you?"]})();return e.jsx(e.Fragment,{children:t.length===0&&a.length>0&&e.jsx(J,{messages:a.map((i,c)=>({component:"bot_message",data:{message:i},id:`${c}-${i}`,type:"AI",timestamp:null})),suggestedReplies:n==="below-initial-messages"?o:void 0,agent:r.bot?{...r.bot,isAi:!0,id:null}:void 0})})}function bs(){var s;const t=G(),r=(s=t.config.customComponents)==null?void 0:s.chatBottomComponents;return r?e.jsx("div",{children:r.map(({key:o,component:n})=>e.jsx(n,{...t},o))}):null}function ys(){const{messagesState:{messages:t}}=l.useMessages(),{isAwaitingBotReply:r}=l.useIsAwaitingBotReply(),{componentStore:s}=l.useWidget(),{bot:o,humanAgent:n}=l.useConfig(),a=m.useMemo(()=>ms(t),[t]),i=s.getComponent("loading"),c=m.useRef(null);function d(){setTimeout(()=>{const h=c.current;h&&(h.scrollTop=h.scrollHeight)},0)}return m.useEffect(()=>{d()},[t]),e.jsxs("div",{...w("chat/msgs/root"),ref:c,className:"max-h-full scroll-smooth relative flex-1 py-2 px-4 flex flex-col gap-2 overflow-auto",children:[e.jsx(xs,{}),e.jsx(fs,{}),e.jsx(vs,{}),a.map((h,k)=>{var S,f,C,T;const y=(S=h==null?void 0:h[0])==null?void 0:S.type,g=(f=h[0])==null?void 0:f.id;if(!y||!g)return null;if(us(h))return e.jsx(hs,{messages:h},g);if(gs(h)){const j=k===a.length-1;return r&&j?null:((C=h[0])==null||C.agent,e.jsx(J,{messages:h,agent:o?{...o,isAi:!0,id:null}:void 0},g))}if(ws(h)){const j=(T=h[0])==null?void 0:T.agent;return e.jsx(J,{messages:h,agent:j?{...j,avatarUrl:(n==null?void 0:n.avatarUrl)||j.avatarUrl||null}:n?{isAi:!1,id:null,name:"",avatarUrl:n.avatarUrl||null}:void 0},g)}return null}),r&&i&&e.jsx(i,{agent:o}),e.jsx(bs,{}),e.jsx(ds,{})]})}function js(){const{messagesState:{isInitialFetchLoading:t}}=l.useMessages(),{sessionState:{session:r}}=l.useSessions(),{isCanvasOpen:s}=es(),{theme:o}=q();me({width:s?o.screens.chat.withCanvas.width:o.screens.chat.width,height:s?o.screens.chat.withCanvas.height:o.screens.chat.height});const n=m.useRef((r==null?void 0:r.id)||"chat").current;return e.jsx("div",{...w("chat/root"),className:p("flex flex-col overflow-hidden"),style:{width:"100vw",maxWidth:"100vw",height:"100vh",maxHeight:"100vh"},children:e.jsxs("div",{className:"size-full justify-between flex flex-col",children:[e.jsx(wt,{}),e.jsx(b.AnimatePresence,{mode:"wait",children:t?e.jsx(x,{className:"flex flex-col items-center justify-center w-full flex-1",children:e.jsx(ft,{})},"loading"):e.jsxs(x,{className:"flex items-start h-full flex-1 overflow-auto",snapExit:!0,children:[e.jsxs("div",{...w("chat/main/root"),className:p("flex flex-col h-full overflow-auto transition-all",s?"w-2/5":"w-full"),style:{transitionTimingFunction:o.screens.chat.withCanvas.transitionTimingFunction,transitionDuration:o.screens.chat.withCanvas.transitionDuration},children:[e.jsx(ys,{}),e.jsx(ls,{})]}),e.jsx("div",{...w("chat/canvas/root"),className:p("h-full overflow-auto transition-all",s?"w-3/5":"w-0"),style:{transitionTimingFunction:o.screens.chat.withCanvas.transitionTimingFunction,transitionDuration:o.screens.chat.withCanvas.transitionDuration},children:e.jsx(ts,{})})]},n)})]})})}function ks({className:t,...r}){return e.jsx("div",{className:p("animate-pulse rounded-md bg-secondary",t),...r})}function Cs({className:t}){return e.jsx("svg",{width:"26",height:"32",viewBox:"0 0 26 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:p("text-primary-foreground",t),children:e.jsx("path",{d:"M1.34103 25.6132H5.44245C5.74203 25.6228 6.02673 25.7462 6.23867 25.9582C6.45062 26.1703 6.5739 26.4551 6.58348 26.7548V30.8584C6.59305 31.1581 6.71634 31.443 6.92828 31.655C7.14023 31.8671 7.42492 31.9904 7.7245 32H18.2894C18.589 31.9904 18.8737 31.8671 19.0856 31.655C19.2976 31.443 19.4209 31.1581 19.4304 30.8584V26.7548C19.4401 26.4545 19.5638 26.1692 19.7765 25.957C19.9892 25.7449 20.2748 25.6219 20.5749 25.6132H24.659C24.9586 25.6036 25.2433 25.4803 25.4552 25.2682C25.6671 25.0562 25.7904 24.7713 25.8 24.4716V7.52839C25.7904 7.22865 25.6671 6.94381 25.4552 6.73176C25.2433 6.5197 24.9586 6.39635 24.659 6.38677H20.561C20.2603 6.37802 19.9742 6.25457 19.7614 6.04169C19.5487 5.82881 19.4253 5.54261 19.4165 5.24168V1.14161C19.4072 0.84419 19.2858 0.561291 19.0768 0.349589C18.8678 0.137887 18.5865 0.0130193 18.2894 0L7.7245 0C7.42492 0.00957792 7.14023 0.132929 6.92828 0.344983C6.71634 0.557036 6.59305 0.841878 6.58348 1.14161V5.24168C6.57477 5.54203 6.45187 5.82773 6.23983 6.04052C6.0278 6.25331 5.74262 6.37715 5.44245 6.38677H1.34103C1.04144 6.39635 0.756749 6.5197 0.544805 6.73176C0.332861 6.94381 0.209574 7.22865 0.200001 7.52839V24.4716C0.209574 24.7713 0.332861 25.0562 0.544805 25.2682C0.756749 25.4803 1.04144 25.6036 1.34103 25.6132ZM6.58348 24.4716V7.52839C6.59305 7.22865 6.71634 6.94381 6.92828 6.73176C7.14023 6.5197 7.42492 6.39635 7.7245 6.38677H18.2894C18.589 6.39635 18.8737 6.5197 19.0856 6.73176C19.2976 6.94381 19.4209 7.22865 19.4304 7.52839V24.4716C19.4209 24.7713 19.2976 25.0562 19.0856 25.2682C18.8737 25.4803 18.589 25.6036 18.2894 25.6132H7.7245C7.42492 25.6036 7.14023 25.4803 6.92828 25.2682C6.71634 25.0562 6.59305 24.7713 6.58348 24.4716Z",fill:"currentColor"})})}function vt({className:t}){const{token:r}=l.useConfig();return e.jsx("div",{className:p("flex items-center justify-center gap-2 p-2 pt-0",t),children:e.jsx(O,{children:e.jsxs("a",{href:`https://open.cx/?ref=${r}`,target:"_blank",rel:"noreferrer",className:p("text-[10px] flex items-center","text-muted-foreground/70 [&_svg]:text-muted-foreground/70","hover:text-primary [&_svg]:hover:text-primary"),children:[e.jsx("span",{children:"Powered by"}),e.jsx("span",{children:" "}),e.jsxs("span",{className:"flex items-center gap-[1px]",children:[e.jsx("span",{children:e.jsx(Cs,{className:"size-3 inline-block"})}),e.jsx("span",{className:"font-semibold",children:"open"})]})]})})})}function zs({children:t}){return e.jsx("p",{className:"ps-4 text-xs text-muted-foreground/75 uppercase font-semibold tracking-tight",children:t})}function Qe({session:t,className:r}){const{bot:s,humanAgent:o}=l.useConfig(),{toChatScreen:n}=l.useWidgetRouter(),a=t.assignee.kind==="human"?t.assignee.name||"Support Agent":(s==null?void 0:s.name)||"AI Support Agent",i=t.assignee.kind==="human"?(o==null?void 0:o.avatarUrl)||t.assignee.avatarUrl||"":(s==null?void 0:s.avatarUrl)||(s==null?void 0:s.avatar)||"";return e.jsxs(z,{variant:"ghost",size:"lg",className:p("rounded-full p-2 pe-4 flex text-start justify-between w-full whitespace-normal",r),onClick:()=>n(t.id),children:[e.jsxs("div",{className:"flex-1 flex gap-2 items-center",children:[e.jsx(b.AnimatePresence,{mode:"wait",children:e.jsx(x,{snapExit:!0,children:e.jsxs(de,{className:"size-10",children:[e.jsx(pe,{src:i,alt:"Agent Icon"}),e.jsx(he,{children:e.jsx(u.UserRoundIcon,{className:"size-4"})})]})})}),e.jsxs("div",{className:"flex-1",children:[e.jsx(b.AnimatePresence,{mode:"wait",children:e.jsx(x,{snapExit:!0,children:a},a)}),e.jsx(b.AnimatePresence,{mode:"wait",children:t.lastMessage?e.jsx(x,{snapExit:!0,children:e.jsx(dt,{remarkPlugins:[Ze],rehypePlugins:[Je],className:"line-clamp-1 overflow-hidden text-ellipsis text-xs text-muted-foreground",children:t.lastMessage})},t.lastMessage||"content"):e.jsx(x,{className:"w-1/2",snapExit:!0,children:e.jsx(ks,{className:"h-4 w-full"})},"skeleton")})]})]}),e.jsx(u.ChevronRightIcon,{className:"size-4 text-muted-foreground shrink-0 rtl:-scale-100"})]})}function Ss(){const{t}=$(),{toChatScreen:r}=l.useWidgetRouter(),{sessionsState:{data:s,isInitialFetchLoading:o},openSessions:n,closedSessions:a,canCreateNewSession:i}=l.useSessions();return e.jsx("div",{className:"flex-1 flex flex-col overflow-scroll py-2 px-2",children:e.jsx(b.AnimatePresence,{mode:"wait",children:o?e.jsx(x,{className:"flex-1 flex items-center justify-center",children:e.jsx(ft,{})},"loading"):e.jsx(x,{className:"flex-1 flex flex-col gap-2 relative",children:s.length?e.jsxs(e.Fragment,{children:[e.jsxs(b.AnimatePresence,{children:[n.length>0&&e.jsx(x,{fadeIn:"up",delay:.2,className:"space-y-2",snapExit:!0,children:n.map(c=>e.jsx(Qe,{session:c},c.id))},"open-sessions"),a.length>0&&e.jsxs(x,{className:"space-y-2",delay:.2,snapExit:!0,children:[e.jsx(zs,{children:t("closed_conversations")}),a.map(c=>e.jsx(Qe,{session:c,className:"opacity-50 hover:opacity-100"},c.id))]},"closed-sessions")]}),i&&e.jsx("div",{className:"mt-auto w-full rounded-3xl sticky bottom-0 outline outline-8 outline-background bg-background",children:m.createElement(z,{...w("sessions/new_conversation_btn"),size:"lg",key:"new-session",className:"w-full",onClick:()=>r()},t("new_conversation"))})]}):e.jsxs("div",{className:"flex-1 flex flex-col gap-2 items-center",children:[e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsx("p",{className:"text-muted-foreground",children:t("no_conversations_yet")})}),m.createElement(z,{...w("sessions/new_conversation_btn"),size:"lg",key:"new-session",className:"w-full",onClick:()=>r()},t("new_conversation"))]})},"sessions")})})}function Ns(){const{theme:t}=q();return me({width:t.screens.sessions.width,height:t.screens.sessions.height}),e.jsx("div",{...w("sessions/root"),className:p("flex flex-col overflow-hidden bg-background"),style:{width:"100vw",maxWidth:"100vw",height:"100vh",maxHeight:"100vh"},children:e.jsxs("div",{className:"size-full flex flex-col",children:[e.jsx(wt,{}),e.jsx(Ss,{}),e.jsx(vt,{})]})})}const Z=B.forwardRef(({className:t,type:r,...s},o)=>{const{isSmallScreen:n}=E();return e.jsx(O,{ref:o,children:e.jsx("input",{type:r,className:p(n?"text-[16px]":"text-sm","flex w-full rounded-xl p-2 ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-primary-foreground placeholder:text-muted-foreground/75 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 transition","rounded-2xl px-4","border shadow-sm",t),...s})})});Z.displayName="Input";function _s(){const{contentIframeRef:t}=l.useWidget(),{inline:r}=l.useConfig(),s=m.useRef(null);return m.useEffect(()=>{const o=t==null?void 0:t.current;if(o&&s.current){const n=s.current;let a;const i=new ResizeObserver(()=>{a=requestAnimationFrame(()=>{const c=n.offsetHeight;o.style.setProperty("--opencx-widget-height",r?"100%":`${c.toFixed(1)}px`)})});return i.observe(n),()=>{cancelAnimationFrame(a),i.unobserve(n)}}},[t,r]),{observedElementRef:s}}const Ts=oe.z.object({name:oe.z.string().min(2),email:oe.z.string().email()});function Is(){var j,M,P,A,W,D,v,N;const{widgetCtx:{org:t}}=l.useWidget(),{setIsOpen:r}=l.useWidgetTrigger(),{createUnverifiedContact:s}=l.useContact(),{isSmallScreen:o}=E(),n=l.useConfig(),{theme:a}=q(),{t:i}=$(),{observedElementRef:c}=_s();me({height:void 0,width:a.screens.welcome.width});const[d,h]=m.useState(((j=n.prefillUserData)==null?void 0:j.name)||""),[k,y]=m.useState(((M=n.prefillUserData)==null?void 0:M.email)||""),g=(n.extraDataCollectionFields||[]).filter(_=>_!=="name"&&_!=="email"&&!!_),[S,f]=m.useState({}),[C,T]=Mt(async _=>{_.preventDefault();const F=Ts.safeParse({name:d,email:k});F.success&&await s({email:F.data.email,non_verified_name:F.data.name},Object.values(S).filter(Boolean).length?S:void 0)},[d,k,S]);return e.jsx("div",{style:{width:"100vw",maxWidth:"100vw",minHeight:a.screens.welcome.minHeight,height:"100vh",maxHeight:"100vh",overflowY:"auto"},children:e.jsxs("div",{ref:c,className:p("flex flex-col",o&&"h-full","bg-[radial-gradient(ellipse_at_top_left,hsl(var(--opencx-primary)),transparent),radial-gradient(ellipse_at_top_right,hsl(var(--opencx-primary)),transparent)]"),children:[e.jsxs("div",{className:p("flex-1 flex flex-col px-4 py-12 text-start space-y-4 relative z-10","text-primary-foreground"),children:[o&&e.jsx(x,{className:"absolute top-6 end-6",children:e.jsx(z,{size:"selfless",onClick:()=>r(!1),children:e.jsx(u.XIcon,{className:"size-4"})})}),e.jsx("div",{className:"flex items-center justify-between w-full mb-2",children:(P=n.assets)!=null&&P.organizationLogo?e.jsx("img",{src:(A=n.assets)==null?void 0:A.organizationLogo,alt:"Company Logo",className:"h-8 w-auto object-contain"}):e.jsx("h2",{className:"font-bold text-sm",children:t.name})}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h1",{className:"text-[1.75rem] font-semibold tracking-tight leading-none",children:((D=(W=n.textContent)==null?void 0:W.welcomeScreen)==null?void 0:D.title)||i("welcome_screen_title")}),e.jsx("p",{className:"text-sm",children:((N=(v=n.textContent)==null?void 0:v.welcomeScreen)==null?void 0:N.description)||i("welcome_screen_description")})]})]}),e.jsxs("div",{className:p("z-10 m-2 px-2 pt-2 bp-0 space-y-2","bg-[white]","border shadow","rounded-3xl"),children:[e.jsxs("form",{onSubmit:T,className:"space-y-2",children:[e.jsx(Z,{value:d,onChange:_=>h(_.target.value),required:!0,placeholder:i("your_name_placeholder"),name:"name"}),e.jsx(Z,{required:!0,value:k,onChange:_=>y(_.target.value),type:"email",placeholder:i("your_email_placeholder"),name:"email"}),g.map(_=>e.jsx(Z,{value:S[_],onChange:F=>f(K=>({...K,[_]:F.target.value})),placeholder:`${_} (${i("optional")})`},_)),e.jsxs(z,{disabled:C.loading,className:"w-full",size:"lg",children:[C.loading?i("start_chat_button_loading"):i("start_chat_button"),e.jsx(u.SendHorizontal,{className:"size-4 rtl:-scale-100"})]})]}),e.jsx(vt,{})]})]})})}function bt(){const{routerState:{screen:t}}=l.useWidgetRouter();return e.jsx("div",{className:"relative bg-background size-full",children:e.jsx(b.AnimatePresence,{mode:"wait",children:(()=>{switch(t){case"welcome":return e.jsx(x,{fadeIn:"right",className:"size-full",snapExit:!0,children:e.jsx(Is,{})},t);case"sessions":return e.jsx(x,{fadeIn:"right",className:"size-full",snapExit:!0,children:e.jsx(Ns,{})},t);case"chat":return e.jsx(x,{fadeIn:"right",className:"size-full",snapExit:!0,children:e.jsx(js,{})},t);default:return I.isExhaustive(t,bt.name),null}})()})})}const Ms="4.0.36",Ds=`<!DOCTYPE html>
|
|
17
|
+
)`)};return{theme:h,computed:k,cssVars:Yt({palette:h.palette,primary:h.primaryColor})}}function Yt({palette:t,primary:r}){const s=mt(t),o=Ye(r).toHsl(),n=Ye(r).isLight()?s[950]:s[50];return{"--opencx-primary":`${o.h} ${o.s*100}% ${o.l*100}%`,"--opencx-primary-foreground":n,"--opencx-background":s[100],"--opencx-foreground":s[950],"--opencx-destructive":"0 72.2% 50.6%","--opencx-destructive-foreground":s[50],"--opencx-accent":s[200],"--opencx-accent-foreground":"var(--opencx-foreground)","--opencx-secondary":s[200],"--opencx-secondary-foreground":"var(--opencx-foreground)","--opencx-muted":s[200],"--opencx-muted-foreground":s[500],"--opencx-input":s[300],"--opencx-border":s[300],"--opencx-ring":"var(--opencx-foreground)"}}function mt(t){const r={50:"0 0% 98%",100:"0 0% 96.1%",200:"0 0% 89.8%",300:"0 0% 83.1%",400:"0 0% 63.9%",500:"0 0% 45.1%",600:"0 0% 32.2%",700:"0 0% 25.1%",800:"0 0% 14.9%",900:"0 0% 9%",950:"0 0% 3.9%"},s={50:"60 9.1% 97.8%",100:"60 4.8% 95.9%",200:"20 5.9% 90%",300:"24 5.7% 82.9%",400:"24 5.4% 63.9%",500:"25 5.3% 44.7%",600:"33.3 5.5% 32.4%",700:"30 6.3% 25.1%",800:"12 6.5% 15.1%",900:"24 9.8% 10%",950:"20 14.3% 4.1%"},o={50:"0 0% 98%",100:"240 4.8% 95.9%",200:"240 5.9% 90%",300:"240 4.9% 83.9%",400:"240 5% 64.9%",500:"240 3.8% 46.1%",600:"240 5.2% 33.9%",700:"240 5.3% 26.1%",800:"240 3.7% 15.9%",900:"240 5.9% 10%",950:"240 10% 3.9%"},n={50:"210 40% 98%",100:"210 40% 96.1%",200:"214.3 31.8% 91.4%",300:"212.7 26.8% 83.9%",400:"215 20.2% 65.1%",500:"215.4 16.3% 46.9%",600:"215.3 19.3% 34.5%",700:"215.3 25% 26.7%",800:"217.2 32.6% 17.5%",900:"222.2 47.4% 11.2%",950:"222.2 84% 4.9%"};switch(t){case"neutral":return r;case"stone":return s;case"zinc":return o;case"slate":return n;default:return I.isExhaustive(t,mt.name),r}}function ut(){const{contentIframeRef:t}=l.useWidget(),{inline:r}=l.useConfig();return{setWidth:s=>{var o;(o=t==null?void 0:t.current)==null||o.style.setProperty("--opencx-widget-width",r?"100%":s)},setHeight:s=>{var o;(o=t==null?void 0:t.current)==null||o.style.setProperty("--opencx-widget-height",r?"100%":s)}}}function me({width:t,height:r}){const{isSmallScreen:s}=E(),{setWidth:o,setHeight:n}=ut();m.useEffect(()=>{t&&o(t),r&&n(r)},[s,r,t,o,n])}const Ve=u.CircleDashedIcon;function X({name:t,className:r}){const s=(()=>{switch(t){case"Check":return u.CheckIcon;case"CheckCheck":return u.CheckCheckIcon;case"CircleCheck":return u.CircleCheckIcon;case"CircleCheckBig":return u.CircleCheckBigIcon;case"CircleX":return u.CircleXIcon;case"Expand":return u.ExpandIcon;case"Maximize":return u.MaximizeIcon;case"Maximize2":return u.Maximize2Icon;case"Minimize":return u.MinimizeIcon;case"Minimize2":return u.Minimize2Icon;case"Shrink":return u.ShrinkIcon;case"SquareCheck":return u.SquareCheckIcon;case"SquareCheckBig":return u.SquareCheckBigIcon;case"SquareX":return u.SquareXIcon;case"X":return u.XIcon;case void 0:return Ve;default:return I.isExhaustive(t,X.name),Ve}})();return e.jsx(s,{className:p("size-4",r)})}function G(){const{widgetCtx:{org:t}}=l.useWidget(),{sessionState:{session:r}}=l.useSessions(),s=l.useConfig(),{messagesState:{messages:o}}=l.useMessages(),{routerState:{screen:n}}=l.useWidgetRouter();return{react:m,org:t,session:r,config:s,messages:o,currentScreen:n}}function Xt(){var s;const t=G(),r=(s=t.config.customComponents)==null?void 0:s.headerBottom;return r?e.jsx(r,{...t}):null}function Vt({fallback:t}){var o;const r=G(),s=(o=r.config.customComponents)==null?void 0:o.headerTitle;return s?e.jsx(s,{...r}):t}function ue(){const{widgetCtx:{org:t}}=l.useWidget(),{routerState:{screen:r}}=l.useWidgetRouter(),{textContent:s}=l.useConfig();return(()=>{var n,a;switch(r){case"chat":return(n=s==null?void 0:s.chatScreen)==null?void 0:n.headerTitle;case"sessions":return(a=s==null?void 0:s.sessionsScreen)==null?void 0:a.headerTitle;case"welcome":return;default:I.isExhaustive(r,ue.name);return}})()??t.name??"Chat"}function Gt(t){switch(t){case"chat":return w("chat/header");case"sessions":return w("sessions/header");case"welcome":return;default:I.isExhaustive(t,ue.name);return}}function Kt(){const{router:t}=l.useConfig(),{routerState:{screen:r},toSessionsScreen:s}=l.useWidgetRouter();return r!=="chat"||t!=null&&t.chatScreenOnly?null:e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:s,children:e.jsx(u.ChevronLeftIcon,{className:"size-4 rtl:-scale-100"})})}function Qt({button:t}){const{setIsOpen:r}=l.useWidgetTrigger(),{isSmallScreen:s}=E();if(s&&t.hideOnSmallScreen||!s&&t.hideOnLargeScreen)return null;const o=()=>{if(t.handleClick)return t.handleClick();r(!1)};return e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:o,children:e.jsx(X,{name:t.icon})})}function ae({button:t}){const[r,s]=m.useState(!1),{routerState:{screen:o}}=l.useWidgetRouter(),{isSmallScreen:n}=E(),{theme:a}=q(),{setWidth:i,setHeight:c}=ut();if(o!=="chat"&&o!=="sessions")return null;const d=(()=>{switch(o){case"chat":return a.screens.chat.height;case"sessions":return a.screens.sessions.height;default:return I.isExhaustive(o,ae.name),a.screens.chat.height}})(),h=(()=>{switch(o){case"chat":return a.screens.chat.width;case"sessions":return a.screens.sessions.width;default:return I.isExhaustive(o,ae.name),a.screens.chat.width}})(),k=()=>{s(j=>{const g=!j;return c(g?"100vh":d),i(g?`max(40vw, ${h})`:h),g})};return n&&t.hideOnSmallScreen||!n&&t.hideOnLargeScreen?null:e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:k,children:e.jsx(X,{name:t.icon||(r?t.shrinkIcon:t.expandIcon)})})}function gt({button:t}){var C,T;const{close:r}=se(),{widgetCtx:s}=l.useWidget(),{setIsOpen:o}=l.useWidgetTrigger(),{resolveSession:n,sessionState:a}=l.useSessions(),{isSmallScreen:i}=E(),c=!a.session,d=((C=a.session)==null?void 0:C.isOpened)===!1,h=t.onResolved||"stay-in-chat",k=t.behaviorBeforeSessionCreation||"disabled",j=t.behaviorIfSessionIsResolved||"disabled",g=!!(a.isResolvingSession||c&&k==="disabled"||d&&j==="disabled"),S=async()=>{const{success:v,error:M}=await n();if(r(),!v)return console.error(M);switch(h){case"stay-in-chat":return;case"close-widget":o(!1);break;case"reset-chat":s.resetChat();break;case"reset-chat-and-close-widget":o(!1),s.resetChat();break;default:I.isExhaustive(h,gt.name);break}},f=()=>{if(c)switch(k){case"disabled":return;case"close-widget":o(!1);break;default:I.isExhaustive(k,f.name)}if(d)switch(j){case"disabled":return;case"close-widget":o(!1);break;case"reset-chat":s.resetChat();break;case"reset-chat-and-close-widget":o(!1),setTimeout(()=>{s.resetChat()},200);break;default:I.isExhaustive(j,f.name)}};return i&&t.hideOnSmallScreen||!i&&t.hideOnLargeScreen?null:((T=t.confirmation)==null?void 0:T.type)==="modal"&&!d&&!c?e.jsx(lt,{trigger:e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",disabled:g,children:e.jsx(X,{name:t.icon})}),children:e.jsxs(st,{children:[e.jsx(rt,{children:e.jsx(it,{children:t.confirmation.title||"Close conversation"})}),e.jsx(ot,{children:e.jsx(at,{children:t.confirmation.description||"Are you sure you want to close this conversation?"})}),e.jsxs(nt,{children:[e.jsx(z,{variant:"secondary",onClick:r,disabled:a.isResolvingSession,children:t.confirmation.cancelButtonText||"No"}),e.jsx(z,{variant:"destructive",onClick:S,disabled:a.isResolvingSession,children:t.confirmation.confirmButtonText||"Yes"})]})]})}):e.jsx(z,{variant:"ghost",size:"fit",className:"rounded-full",onClick:d||c?f:S,disabled:g,children:e.jsx(X,{name:t.icon})})}function le({button:t}){switch(t.functionality){case"close-widget":return e.jsx(Qt,{button:t});case"expand-shrink":return e.jsx(ae,{button:t});case"resolve-session":return e.jsx(gt,{button:t});default:return I.isExhaustive(t,le.name),null}}const Zt={functionality:"close-widget",hideOnLargeScreen:!0,icon:"X"};function Jt(){const{routerState:{screen:t}}=l.useWidgetRouter(),{headerButtons:r}=l.useConfig(),s=t==="chat"?r==null?void 0:r.chatScreen:t==="sessions"?r==null?void 0:r.sessionsScreen:[];return!s||s.length===0?e.jsx(le,{button:Zt}):e.jsx(e.Fragment,{children:s.map(o=>e.jsx(le,{button:o},`${o.functionality}-${o.icon}`))})}function wt(){const{routerState:{screen:t}}=l.useWidgetRouter(),r=Gt(t),s=ue();return e.jsxs("header",{...r,className:"py-2 px-4 shrink-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Kt,{}),e.jsx("div",{className:p("flex-1 h-8 flex items-center",t==="sessions"&&"ps-2"),children:e.jsx(Vt,{fallback:e.jsx("h2",{className:"font-semibold",children:s})})}),e.jsx(Jt,{})]}),e.jsx(Xt,{})]})}function ft({className:t}){return e.jsx(u.LoaderIcon,{className:p("size-4 animate-spin",t)})}function es(){const{messagesState:{isInitialFetchLoading:t}}=l.useMessages(),{isSmallScreen:r}=E(),{activeMode:s,Component:o}=l.useModes();return{isCanvasOpen:!t&&!r&&!!s&&!!o}}function ts(){const t=G(),{activeMode:r,Component:s}=l.useModes(),{sendMessage:o}=l.useMessages(),{createStateCheckpoint:n}=l.useSessions(),[a,i]=m.useState(!1),c=async d=>{try{i(!0),await o(d)}catch(h){console.error(h)}finally{i(!1)}};return!r||!s?null:e.jsx(s,{...t,mode:r,createStateCheckpoint:n,sendMessage:c,isSendingMessage:a})}const R=m.forwardRef((t,r)=>{var s,o,n;return e.jsx(x,{...t,ref:r,className:p("overflow-hidden",t.className),overrides:{initial:{height:0,opacity:0,...(s=t.overrides)==null?void 0:s.initial},animate:{height:"auto",opacity:1,...(o=t.overrides)==null?void 0:o.animate},exit:{height:0,opacity:0,...(n=t.overrides)==null?void 0:n.exit}}})});R.displayName="MotionDiv__VerticalReveal";const ss=[{label:"Terrible",value:1,emoji:"😡"},{label:"Poor",value:2,emoji:"😞"},{label:"Okay",value:3,emoji:"😐"},{label:"Good",value:4,emoji:"😊"},{label:"Great",value:5,emoji:"😍"}];function rs(){const{isSmallScreen:t}=E(),{submitCsat:r,isCsatRequested:s,isCsatSubmitted:o,submittedScore:n,submittedFeedback:a}=l.useCsat(),[i,c]=m.useState(null),[d,h]=m.useState(null),k=g=>{c(S=>S===g?null:g)},j=()=>{i&&r({score:i,feedback:d||void 0})};return!s&&!o?null:e.jsxs("div",{className:"w-1/2 min-w-80 max-w-96 mx-auto overflow-hidden",children:[e.jsx(y.AnimatePresence,{mode:"wait",children:s&&!i?e.jsx(R,{children:e.jsx("p",{className:"text-sm text-muted-foreground text-center pt-2",children:"How was your conversation?"})},"csat-requested-title"):o?e.jsx(R,{children:e.jsx("p",{className:"text-sm text-muted-foreground text-center pt-2",children:"You rated the conversation as"})},"csat-submitted-title"):null}),e.jsx("div",{className:p("flex gap-4 justify-between pt-2 px-2 pb-2","transition-all",o&&"gap-0 justify-center"),children:ss.map(g=>e.jsx(z,{variant:g.value===i?"secondary":"ghost",size:"selfless",className:p("transition-all overflow-hidden","text-2xl size-8 rounded-full","opacity-35","hover:opacity-100",!i&&"opacity-100",g.value===i&&"opacity-100",o&&g.value!==n&&"opacity-0 size-0",o&&g.value===n&&"opacity-100 size-fit text-4xl"),onClick:s?()=>k(g.value):void 0,children:g.emoji},g.value))}),e.jsx(y.AnimatePresence,{mode:"wait",children:(i||n)&&e.jsx(R,{children:e.jsxs("div",{className:"pb-2 px-2 flex items-end",children:[e.jsx("textarea",{rows:3,className:p("transition-all","max-h-40 [field-sizing:content]","w-full resize-none","bg-transparent outline-none","placeholder:text-muted-foreground",t?"text-[16px]":"text-sm",o&&"text-center"),value:o?a||"":d||"",onChange:s?g=>h(g.target.value):void 0,readOnly:o,placeholder:s?"Tell us more... (optional)":void 0}),e.jsx(z,{size:"fit",onClick:j,disabled:!i,className:p("transition-all overflow-hidden","rounded-full size-8 flex items-center justify-center p-0",o&&"opacity-0 size-0"),children:e.jsx(u.ArrowUpIcon,{className:"size-4"})})]})},"feedback-box")}),e.jsx("div",{className:p("h-0 transition-[height]",o&&"h-4")})]})}function $(){const{dir:t}=l.useDocumentDir(),r=l.useConfig();return m.useMemo(()=>{const s=I.isSupportedLanguage(r.language)?r.language:"en";return{t:o=>I.getTranslation(o,s,r.translationOverrides),language:s,dir:s==="ar"?"rtl":"ltr",hostDocumentDir:t}},[r.language,t])}function ge({suggestion:t,className:r,...s}){const{sendMessage:o}=l.useMessages(),n=()=>{const a=t.trim();a&&o({content:a})};return e.jsx(z,{...w("chat/suggested_reply_btn"),size:"sm",className:p("rounded-xl w-fit",r),...s,onClick:n,children:t})}function os(){const{t}=$(),r=[t("i_need_more_help"),t("this_was_helpful")];return e.jsx("div",{...w("chat/might_solve_user_issue_suggested_replies_container"),className:"flex items-center gap-2 p-2 pb-0 flex-wrap",children:r.map(s=>e.jsx(ge,{suggestion:s,className:"flex-1"},s))})}function Ge(){const{sessionState:t}=l.useSessions(),{chatFooterItems:r}=l.useConfig(),s=!!t.session&&!t.session.isOpened,o=!s;return e.jsx(y.AnimatePresence,{mode:"wait",children:r==null?void 0:r.map((n,a)=>n.showWhenSessionIsOpen===!1&&o||n.showWhenSessionIsResolved===!1&&s?null:e.jsx(R,{children:e.jsx("div",{className:"pb-2 text-center text-xs",children:e.jsx(ce,{children:n.message})})},`${n.message}-${a}`))})}function ns({file:{status:t,file:r,error:s},onCancel:o}){const[n,a]=m.useState(null);m.useEffect(()=>{if(!r.type.startsWith("image/"))return;const d=new FileReader;return d.onload=()=>a(d.result),d.onerror=()=>console.error("Error reading file"),d.readAsDataURL(r),()=>d.abort()},[r]);const i=()=>{switch(t){case"uploading":return e.jsx(u.Loader2,{className:"size-4 animate-spin"});case"error":return e.jsx(u.AlertCircle,{className:"size-4 text-destructive"});default:return null}},c=()=>{const d=r.type.split("/")[0];return d==="image"&&n?e.jsx("img",{src:typeof n=="string"?n:"",className:"object-cover bg-secondary size-full",alt:r.name}):d==="audio"?e.jsx(u.FileAudio2Icon,{}):d==="video"?e.jsx(u.FileVideo2Icon,{}):e.jsx(u.FileIcon,{})};return e.jsx(Y,{side:"bottom",content:t==="error"?e.jsxs("span",{className:"text-destructive",children:["Failed to upload: ",s]}):r.name,children:e.jsxs("div",{className:p(t==="uploading"&&"opacity-50","group","size-12 border rounded-2xl overflow-hidden relative","flex items-center justify-center shrink-0"),children:[e.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:i()}),e.jsx("button",{type:"button",className:p("absolute bg-black/50 inset-0 size-full z-10 opacity-0","flex items-center justify-center","opacity-0 group-hover:opacity-100 transition"),onClick:o,children:e.jsx(u.XIcon,{className:"size-4 text-primary-foreground"})}),e.jsx(c,{})]})})}function is(){var D;const{isSmallScreen:t}=E(),r=m.useRef(null),{sendMessage:s}=l.useMessages(),{sessionState:o}=l.useSessions(),{t:n}=$(),[a,i]=m.useState(""),{allFiles:c,emptyTheFiles:d,handleCancelUpload:h,appendFiles:k,isUploading:j,successFiles:g}=l.useUploadFiles(),S=!!((D=o.session)!=null&&D.isHandedOff),{isAwaitingBotReply:f}=l.useIsAwaitingBotReply(),C=b=>{k(b)},T=!a.trim()&&g.length===0,v=async()=>{if(f||T)return;j&&console.info("please wait for the file(s) to upload");const b=a.trim();s({content:b,attachments:g.flatMap(N=>N.fileUrl?[{url:N.fileUrl,type:N.file.type,name:N.file.name,id:N.id,size:N.file.size}]:[])}),i(""),d()},{getRootProps:M,getInputProps:P,open:W}=It.useDropzone({onDrop:C,noClick:!0,onDropRejected(){console.error("unsupported file type, or the file is too large")},maxSize:5*1024*1024,accept:S?{"text/*":[".txt"],"image/*":[".png",".jpg",".jpeg",".gif"],"application/pdf":[".pdf"]}:{"image/png":[".png"],"image/jpeg":[".jpg",".jpeg"],"image/gif":[".gif"],"image/webp":[".webp"]}}),A=b=>{const N=b.clipboardData;N&&N.files.length>0&&C(Array.from(N.files))};return e.jsxs("div",{...w("chat/input_box/root"),className:"p-2 relative space-y-1",...M(),children:[e.jsx("input",{...P()}),e.jsxs("div",{...w("chat/input_box/inner_root"),className:p("transition-all","bg-white","relative rounded-3xl flex flex-col gap-2 p-2","hover:border-primary focus-within:border-primary"),children:[e.jsxs("div",{...w("chat/input_box/textarea_and_attachments_container"),className:"flex flex-col gap-2",children:[c.length>0&&e.jsx("div",{...w("chat/input_box/attachments_container"),className:"flex items-center gap-1",children:e.jsx(y.AnimatePresence,{mode:"popLayout",children:c.map(b=>e.jsx(x,{snapExit:!0,children:e.jsx(ns,{onCancel:()=>h(b.id),file:b})},b.id))})}),e.jsx("textarea",{...w("chat/input_box/textarea"),onPaste:A,ref:r,id:"chat-input",value:a,rows:3,className:p("max-h-16 [field-sizing:content]","w-full resize-none px-2",c.length===0&&"pt-1","bg-transparent outline-none","placeholder:text-muted-foreground",t?"text-[16px]":"text-sm"),onChange:b=>i(b.target.value),onKeyDown:async b=>{b.key==="Enter"&&!b.shiftKey&&(b.preventDefault(),v())},placeholder:n("write_a_message_placeholder")})]}),e.jsxs("div",{className:"gap-2 flex justify-between",children:[e.jsx(Y,{side:"top",align:"start",content:"attach files, (maximum size 5mb)",children:e.jsx(z,{onClick:W,size:"fit",variant:"ghost",className:p("rounded-full size-8 flex items-center justify-center p-0 overflow-hidden"),children:e.jsx(y.AnimatePresence,{mode:"wait",children:S&&!f?e.jsx(x,{children:e.jsx(u.PaperclipIcon,{className:"size-4"})},"paper-clip"):e.jsx(x,{children:e.jsx(u.ImageIcon,{className:"size-4"})},"image-icon")})})}),e.jsx(Y,{content:"send message",side:"top",align:"end",children:e.jsx(z,{size:"fit",onClick:v,disabled:f||j||T,className:"rounded-full size-8 flex items-center justify-center p-0",children:e.jsx(y.AnimatePresence,{mode:"wait",children:f||j?e.jsx(x,{snapExit:!0,children:e.jsx(u.CircleDashed,{className:"size-4 animate-spin animate-iteration-infinite"})},"loading"):e.jsx(x,{snapExit:!0,children:e.jsx(u.ArrowUpIcon,{className:"size-4"})},"send")})})})]})]})]})}function Ke(){const{widgetCtx:t}=l.useWidget(),{router:r}=l.useConfig(),{canCreateNewSession:s}=l.useSessions(),{toSessionsScreen:o}=l.useWidgetRouter(),{t:n}=$();return e.jsx(e.Fragment,{children:s||r!=null&&r.chatScreenOnly?e.jsx(z,{onClick:t.resetChat,className:"rounded-2xl w-full",children:n("new_conversation")}):e.jsx(z,{onClick:o,className:"rounded-2xl w-full",children:n("back_to_conversations")})})}function as(){const{t}=$(),{isCsatRequested:r,isCsatSubmitted:s}=l.useCsat();return e.jsx("div",{className:"p-2",children:e.jsx("div",{className:"p-2 bg-muted rounded-3xl",children:e.jsx(y.AnimatePresence,{mode:"wait",children:r||s?e.jsxs(R,{children:[e.jsx(rs,{}),e.jsx(y.AnimatePresence,{mode:"wait",children:s&&e.jsx(R,{children:e.jsx(Ke,{})},"new-conv-or-back-to-convs-button")})]},"csat"):e.jsxs(R,{children:[e.jsxs("div",{className:"ps-2 flex items-center gap-1 pb-2",children:[e.jsx(u.CircleCheckIcon,{className:"size-4 text-emerald-600"}),e.jsx("h2",{className:"text-sm font-medium",children:t("your_issue_has_been_resolved")})]}),e.jsx(Ke,{})]},"session-closed")})})})}function ls(){var i;const{initialQuestions:t,initialQuestionsPosition:r,thisWasHelpfulOrNot:s}=l.useConfig(),{sessionState:o}=l.useSessions(),{messagesState:n}=l.useMessages(),a=n.messages.length===0;return e.jsx("footer",{children:e.jsx(y.AnimatePresence,{mode:"wait",children:o.session&&!((i=o.session)!=null&&i.isOpened)?e.jsxs(R,{children:[e.jsx(as,{}),e.jsx(Ge,{})]},"session-closed"):e.jsxs(R,{children:[n.lastAIResMightSolveUserIssue&&(s==null?void 0:s.enabled)!==!1&&e.jsx(os,{}),a&&t&&r!=="below-initial-messages"&&e.jsx("div",{className:"flex items-center flex-row justify-end gap-2 flex-wrap px-2",children:t==null?void 0:t.map((c,d)=>e.jsx(ge,{suggestion:c},`${c}-${d}`))}),e.jsx(is,{}),e.jsx(Ge,{})]},"chat-input")})})}function cs({isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s,...o}){const{componentStore:n}=l.useWidget();if(o.type!=="AGENT"&&o.type!=="AI")return null;if(o.data.action){const i=n.getComponent(o.data.action.name);if(i)return e.jsx(i,{...o,id:o.id,isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s})}const a=n.getComponent(o.component);return a?e.jsx(a,{...o,id:o.id,isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s}):e.jsx(ne,{...o,isFirstInGroup:t,isLastInGroup:r,isAloneInGroup:s})}function xt({messages:t,className:r,containerClassName:s}){var i,c;const{timestamps:o}=l.useConfig();if(!((i=o==null?void 0:o.perMessageGroup)!=null&&i.enabled))return null;const n=(c=t[t.length-1])==null?void 0:c.timestamp;if(!n)return null;const a=(()=>{try{return new Date(n).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!0})}catch(d){return console.error(d),null}})();return a?e.jsx("div",{className:s,children:e.jsx("span",{className:p("text-xs text-muted-foreground",r),children:a})}):null}function J({messages:t,agent:r,suggestedReplies:s}){return e.jsxs("div",{...w("chat/agent_msg_group/root"),className:p("flex items-end gap-2"),children:[e.jsx(Y,{content:r==null?void 0:r.name,side:"right",align:"end",children:e.jsx(ie,{...w("chat/agent_msg_group/root/avatar"),agent:r,className:"hidden"})}),e.jsxs("div",{className:p("flex-1 flex flex-col gap-1"),children:[e.jsxs("div",{...w("chat/agent_msg_group/avatar_and_msgs/root"),className:p("flex items-end gap-2"),children:[e.jsx(Y,{content:r==null?void 0:r.name,side:"right",align:"end",children:e.jsx(ie,{...w("chat/agent_msg_group/avatar_and_msgs/avatar"),agent:r})}),e.jsxs("div",{...w("chat/agent_msg_group/avatar_and_msgs/msgs"),className:p("flex-1 flex flex-col gap-1"),children:[t.map((o,n,a)=>e.jsx(cs,{isFirstInGroup:n===0,isLastInGroup:n===a.length-1,isAloneInGroup:a.length===1,...o},o.id)),e.jsx(xt,{messages:t})]})]}),s&&s.length>0&&e.jsx("div",{...w("chat/agent_msg_group/suggestions"),className:p("flex flex-col gap-1 ps-8"),children:s==null?void 0:s.map((o,n)=>e.jsx(ge,{suggestion:o},`${o}-${n}`))})]})]})}function ds(){var s,o;const t=G();if((s=t.session)!=null&&s.isOpened||!t.session)return null;const r=(o=t.config.customComponents)==null?void 0:o.onSessionResolved;return r?e.jsx(r,{...t}):null}function ps({message:t,isFirstInGroup:r,isLastInGroup:s,isAloneInGroup:o}){var n;return e.jsxs("div",{...w("chat/user_msg/root"),className:"w-5/6 flex flex-col items-end gap-1",children:[t.attachments&&t.attachments.length>0&&e.jsx("div",{className:"w-full flex gap-1 flex-wrap justify-end",children:(n=t.attachments)==null?void 0:n.map(a=>e.jsx(ct,{attachment:a},a.id))}),t.content.length>0&&e.jsx("div",{...w("chat/user_msg/msg"),"data-first":r,"data-last":s,"data-alone":o,className:p("transition-all","w-fit py-3 px-4 rounded-3xl text-sm","bg-primary text-primary-foreground","break-words [word-break:break-word]","whitespace-pre-wrap",r&&!o&&"rounded-br-md",s&&!o&&"rounded-tr-md",!r&&!s&&!o&&"rounded-r-md"),children:t.content})]})}function hs({messages:t}){return e.jsxs("div",{...w("chat/user_msg_group/root"),className:p("group","flex flex-col gap-1 justify-end items-end"),children:[t.map((r,s,o)=>e.jsx(ps,{message:r,isFirstInGroup:s===0,isLastInGroup:s===o.length-1,isAloneInGroup:o.length===1},r.id)),e.jsx(xt,{messages:t,containerClassName:"ms-auto"})]})}function ms(t){const r=[];let s=null;return t.forEach(o=>{var n,a,i,c,d,h;(((n=s==null?void 0:s[0])==null?void 0:n.type)!==o.type||((a=s[0])==null?void 0:a.type)==="AGENT"&&o.type==="AGENT"&&(((i=o.agent)==null?void 0:i.id)!==((c=s[0].agent)==null?void 0:c.id)||((d=o.agent)==null?void 0:d.name)!==((h=s[0].agent)==null?void 0:h.name)))&&(s=[],r.push(s)),s.push(o)}),r}function us(t){var r;return((r=t==null?void 0:t[0])==null?void 0:r.type)==="USER"}function gs(t){var r;return((r=t==null?void 0:t[0])==null?void 0:r.type)==="AI"}function ws(t){var r;return((r=t==null?void 0:t[0])==null?void 0:r.type)==="AGENT"}function fs(){const{messagesState:{messages:t}}=l.useMessages(),{advancedInitialMessages:r=[],initialQuestionsPosition:s,initialQuestions:o,bot:n}=l.useConfig();return e.jsx(e.Fragment,{children:t.length===0&&r.length>0&&e.jsx(J,{messages:r.map(({message:a},i)=>({component:"bot_message",data:{message:a},id:`${i}-${a}`,type:"AI",timestamp:null})),suggestedReplies:t.length===0&&s==="below-initial-messages"?o:void 0,agent:n?{...n,isAi:!0,id:null}:void 0})})}function xs(){const{messagesState:{messages:t}}=l.useMessages(),{chatBannerItems:r}=l.useConfig();return!(r!=null&&r.length)||t.length>0&&r.every(s=>!s.persistent)?null:e.jsx("div",{className:"w-full text-center text-xs",children:r.map(({message:s,persistent:o},n)=>t.length>0&&!o?null:e.jsx("div",{children:e.jsx(ce,{children:s})},`${s}-${n}`))})}function vs(){const{messagesState:{messages:t}}=l.useMessages(),r=l.useConfig(),{advancedInitialMessages:s=[],initialQuestions:o,initialQuestionsPosition:n}=r,a=(()=>{var i;return s.length?[]:t.length?[]:(i=r.initialMessages)!=null&&i.length?r.initialMessages:["Hello, how can I help you?"]})();return e.jsx(e.Fragment,{children:t.length===0&&a.length>0&&e.jsx(J,{messages:a.map((i,c)=>({component:"bot_message",data:{message:i},id:`${c}-${i}`,type:"AI",timestamp:null})),suggestedReplies:n==="below-initial-messages"?o:void 0,agent:r.bot?{...r.bot,isAi:!0,id:null}:void 0})})}function bs(){var s;const t=G(),r=(s=t.config.customComponents)==null?void 0:s.chatBottomComponents;return r?e.jsx("div",{children:r.map(({key:o,component:n})=>e.jsx(n,{...t},o))}):null}function ys(){const{messagesState:{messages:t}}=l.useMessages(),{isAwaitingBotReply:r}=l.useIsAwaitingBotReply(),{componentStore:s}=l.useWidget(),{bot:o,humanAgent:n}=l.useConfig(),a=m.useMemo(()=>ms(t),[t]),i=s.getComponent("loading"),c=m.useRef(null);function d(){setTimeout(()=>{const h=c.current;h&&(h.scrollTop=h.scrollHeight)},0)}return m.useEffect(()=>{d()},[t]),e.jsxs("div",{...w("chat/msgs/root"),ref:c,className:"max-h-full scroll-smooth relative flex-1 py-2 px-4 flex flex-col gap-2 overflow-auto",children:[e.jsx(xs,{}),e.jsx(fs,{}),e.jsx(vs,{}),a.map((h,k)=>{var S,f,C,T;const j=(S=h==null?void 0:h[0])==null?void 0:S.type,g=(f=h[0])==null?void 0:f.id;if(!j||!g)return null;if(us(h))return e.jsx(hs,{messages:h},g);if(gs(h)){const v=k===a.length-1;return r&&v?null:((C=h[0])==null||C.agent,e.jsx(J,{messages:h,agent:o?{...o,isAi:!0,id:null}:void 0},g))}if(ws(h)){const v=(T=h[0])==null?void 0:T.agent;return e.jsx(J,{messages:h,agent:v?{...v,name:(n==null?void 0:n.name)||v.name||"",avatarUrl:(n==null?void 0:n.avatarUrl)||v.avatarUrl||null}:n?{isAi:!1,id:null,name:n.name||"",avatarUrl:n.avatarUrl||null}:void 0},g)}return null}),r&&i&&e.jsx(i,{agent:o}),e.jsx(bs,{}),e.jsx(ds,{})]})}function js(){const{messagesState:{isInitialFetchLoading:t}}=l.useMessages(),{sessionState:{session:r}}=l.useSessions(),{isCanvasOpen:s}=es(),{theme:o}=q();me({width:s?o.screens.chat.withCanvas.width:o.screens.chat.width,height:s?o.screens.chat.withCanvas.height:o.screens.chat.height});const n=m.useRef((r==null?void 0:r.id)||"chat").current;return e.jsx("div",{...w("chat/root"),className:p("flex flex-col overflow-hidden"),style:{width:"100vw",maxWidth:"100vw",height:"100vh",maxHeight:"100vh"},children:e.jsxs("div",{className:"size-full justify-between flex flex-col",children:[e.jsx(wt,{}),e.jsx(y.AnimatePresence,{mode:"wait",children:t?e.jsx(x,{className:"flex flex-col items-center justify-center w-full flex-1",children:e.jsx(ft,{})},"loading"):e.jsxs(x,{className:"flex items-start h-full flex-1 overflow-auto",snapExit:!0,children:[e.jsxs("div",{...w("chat/main/root"),className:p("flex flex-col h-full overflow-auto transition-all",s?"w-2/5":"w-full"),style:{transitionTimingFunction:o.screens.chat.withCanvas.transitionTimingFunction,transitionDuration:o.screens.chat.withCanvas.transitionDuration},children:[e.jsx(ys,{}),e.jsx(ls,{})]}),e.jsx("div",{...w("chat/canvas/root"),className:p("h-full overflow-auto transition-all",s?"w-3/5":"w-0"),style:{transitionTimingFunction:o.screens.chat.withCanvas.transitionTimingFunction,transitionDuration:o.screens.chat.withCanvas.transitionDuration},children:e.jsx(ts,{})})]},n)})]})})}function ks({className:t,...r}){return e.jsx("div",{className:p("animate-pulse rounded-md bg-secondary",t),...r})}function Cs({className:t}){return e.jsx("svg",{width:"26",height:"32",viewBox:"0 0 26 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:p("text-primary-foreground",t),children:e.jsx("path",{d:"M1.34103 25.6132H5.44245C5.74203 25.6228 6.02673 25.7462 6.23867 25.9582C6.45062 26.1703 6.5739 26.4551 6.58348 26.7548V30.8584C6.59305 31.1581 6.71634 31.443 6.92828 31.655C7.14023 31.8671 7.42492 31.9904 7.7245 32H18.2894C18.589 31.9904 18.8737 31.8671 19.0856 31.655C19.2976 31.443 19.4209 31.1581 19.4304 30.8584V26.7548C19.4401 26.4545 19.5638 26.1692 19.7765 25.957C19.9892 25.7449 20.2748 25.6219 20.5749 25.6132H24.659C24.9586 25.6036 25.2433 25.4803 25.4552 25.2682C25.6671 25.0562 25.7904 24.7713 25.8 24.4716V7.52839C25.7904 7.22865 25.6671 6.94381 25.4552 6.73176C25.2433 6.5197 24.9586 6.39635 24.659 6.38677H20.561C20.2603 6.37802 19.9742 6.25457 19.7614 6.04169C19.5487 5.82881 19.4253 5.54261 19.4165 5.24168V1.14161C19.4072 0.84419 19.2858 0.561291 19.0768 0.349589C18.8678 0.137887 18.5865 0.0130193 18.2894 0L7.7245 0C7.42492 0.00957792 7.14023 0.132929 6.92828 0.344983C6.71634 0.557036 6.59305 0.841878 6.58348 1.14161V5.24168C6.57477 5.54203 6.45187 5.82773 6.23983 6.04052C6.0278 6.25331 5.74262 6.37715 5.44245 6.38677H1.34103C1.04144 6.39635 0.756749 6.5197 0.544805 6.73176C0.332861 6.94381 0.209574 7.22865 0.200001 7.52839V24.4716C0.209574 24.7713 0.332861 25.0562 0.544805 25.2682C0.756749 25.4803 1.04144 25.6036 1.34103 25.6132ZM6.58348 24.4716V7.52839C6.59305 7.22865 6.71634 6.94381 6.92828 6.73176C7.14023 6.5197 7.42492 6.39635 7.7245 6.38677H18.2894C18.589 6.39635 18.8737 6.5197 19.0856 6.73176C19.2976 6.94381 19.4209 7.22865 19.4304 7.52839V24.4716C19.4209 24.7713 19.2976 25.0562 19.0856 25.2682C18.8737 25.4803 18.589 25.6036 18.2894 25.6132H7.7245C7.42492 25.6036 7.14023 25.4803 6.92828 25.2682C6.71634 25.0562 6.59305 24.7713 6.58348 24.4716Z",fill:"currentColor"})})}function vt({className:t}){const{token:r}=l.useConfig();return e.jsx("div",{className:p("flex items-center justify-center gap-2 p-2 pt-0",t),children:e.jsx(O,{children:e.jsxs("a",{href:`https://open.cx/?ref=${r}`,target:"_blank",rel:"noreferrer",className:p("text-[10px] flex items-center","text-muted-foreground/70 [&_svg]:text-muted-foreground/70","hover:text-primary [&_svg]:hover:text-primary"),children:[e.jsx("span",{children:"Powered by"}),e.jsx("span",{children:" "}),e.jsxs("span",{className:"flex items-center gap-[1px]",children:[e.jsx("span",{children:e.jsx(Cs,{className:"size-3 inline-block"})}),e.jsx("span",{className:"font-semibold",children:"open"})]})]})})})}function zs({children:t}){return e.jsx("p",{className:"ps-4 text-xs text-muted-foreground/75 uppercase font-semibold tracking-tight",children:t})}function Qe({session:t,className:r}){const{bot:s,humanAgent:o}=l.useConfig(),{toChatScreen:n}=l.useWidgetRouter(),a=t.assignee.kind==="human"?(o==null?void 0:o.name)||t.assignee.name||"Support Agent":(s==null?void 0:s.name)||"AI Support Agent",i=t.assignee.kind==="human"?(o==null?void 0:o.avatarUrl)||t.assignee.avatarUrl||"":(s==null?void 0:s.avatarUrl)||(s==null?void 0:s.avatar)||"";return e.jsxs(z,{variant:"ghost",size:"lg",className:p("rounded-full p-2 pe-4 flex text-start justify-between w-full whitespace-normal",r),onClick:()=>n(t.id),children:[e.jsxs("div",{className:"flex-1 flex gap-2 items-center",children:[e.jsx(y.AnimatePresence,{mode:"wait",children:e.jsx(x,{snapExit:!0,children:e.jsxs(de,{className:"size-10",children:[e.jsx(pe,{src:i,alt:"Agent Icon"}),e.jsx(he,{children:e.jsx(u.UserRoundIcon,{className:"size-4"})})]})})}),e.jsxs("div",{className:"flex-1",children:[e.jsx(y.AnimatePresence,{mode:"wait",children:e.jsx(x,{snapExit:!0,children:a},a)}),e.jsx(y.AnimatePresence,{mode:"wait",children:t.lastMessage?e.jsx(x,{snapExit:!0,children:e.jsx(dt,{remarkPlugins:[Ze],rehypePlugins:[Je],className:"line-clamp-1 overflow-hidden text-ellipsis text-xs text-muted-foreground",children:t.lastMessage})},t.lastMessage||"content"):e.jsx(x,{className:"w-1/2",snapExit:!0,children:e.jsx(ks,{className:"h-4 w-full"})},"skeleton")})]})]}),e.jsx(u.ChevronRightIcon,{className:"size-4 text-muted-foreground shrink-0 rtl:-scale-100"})]})}function Ss(){const{t}=$(),{toChatScreen:r}=l.useWidgetRouter(),{sessionsState:{data:s,isInitialFetchLoading:o},openSessions:n,closedSessions:a,canCreateNewSession:i}=l.useSessions();return e.jsx("div",{className:"flex-1 flex flex-col overflow-scroll py-2 px-2",children:e.jsx(y.AnimatePresence,{mode:"wait",children:o?e.jsx(x,{className:"flex-1 flex items-center justify-center",children:e.jsx(ft,{})},"loading"):e.jsx(x,{className:"flex-1 flex flex-col gap-2 relative",children:s.length?e.jsxs(e.Fragment,{children:[e.jsxs(y.AnimatePresence,{children:[n.length>0&&e.jsx(x,{fadeIn:"up",delay:.2,className:"space-y-2",snapExit:!0,children:n.map(c=>e.jsx(Qe,{session:c},c.id))},"open-sessions"),a.length>0&&e.jsxs(x,{className:"space-y-2",delay:.2,snapExit:!0,children:[e.jsx(zs,{children:t("closed_conversations")}),a.map(c=>e.jsx(Qe,{session:c,className:"opacity-50 hover:opacity-100"},c.id))]},"closed-sessions")]}),i&&e.jsx("div",{className:"mt-auto w-full rounded-3xl sticky bottom-0 outline outline-8 outline-background bg-background",children:m.createElement(z,{...w("sessions/new_conversation_btn"),size:"lg",key:"new-session",className:"w-full",onClick:()=>r()},t("new_conversation"))})]}):e.jsxs("div",{className:"flex-1 flex flex-col gap-2 items-center",children:[e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsx("p",{className:"text-muted-foreground",children:t("no_conversations_yet")})}),m.createElement(z,{...w("sessions/new_conversation_btn"),size:"lg",key:"new-session",className:"w-full",onClick:()=>r()},t("new_conversation"))]})},"sessions")})})}function Ns(){const{theme:t}=q();return me({width:t.screens.sessions.width,height:t.screens.sessions.height}),e.jsx("div",{...w("sessions/root"),className:p("flex flex-col overflow-hidden bg-background"),style:{width:"100vw",maxWidth:"100vw",height:"100vh",maxHeight:"100vh"},children:e.jsxs("div",{className:"size-full flex flex-col",children:[e.jsx(wt,{}),e.jsx(Ss,{}),e.jsx(vt,{})]})})}const Z=B.forwardRef(({className:t,type:r,...s},o)=>{const{isSmallScreen:n}=E();return e.jsx(O,{ref:o,children:e.jsx("input",{type:r,className:p(n?"text-[16px]":"text-sm","flex w-full rounded-xl p-2 ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-primary-foreground placeholder:text-muted-foreground/75 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 transition","rounded-2xl px-4","border shadow-sm",t),...s})})});Z.displayName="Input";function _s(){const{contentIframeRef:t}=l.useWidget(),{inline:r}=l.useConfig(),s=m.useRef(null);return m.useEffect(()=>{const o=t==null?void 0:t.current;if(o&&s.current){const n=s.current;let a;const i=new ResizeObserver(()=>{a=requestAnimationFrame(()=>{const c=n.offsetHeight;o.style.setProperty("--opencx-widget-height",r?"100%":`${c.toFixed(1)}px`)})});return i.observe(n),()=>{cancelAnimationFrame(a),i.unobserve(n)}}},[t,r]),{observedElementRef:s}}const Ts=oe.z.object({name:oe.z.string().min(2),email:oe.z.string().email()});function Is(){var v,M,P,W,A,D,b,N;const{widgetCtx:{org:t}}=l.useWidget(),{setIsOpen:r}=l.useWidgetTrigger(),{createUnverifiedContact:s}=l.useContact(),{isSmallScreen:o}=E(),n=l.useConfig(),{theme:a}=q(),{t:i}=$(),{observedElementRef:c}=_s();me({height:void 0,width:a.screens.welcome.width});const[d,h]=m.useState(((v=n.prefillUserData)==null?void 0:v.name)||""),[k,j]=m.useState(((M=n.prefillUserData)==null?void 0:M.email)||""),g=(n.extraDataCollectionFields||[]).filter(_=>_!=="name"&&_!=="email"&&!!_),[S,f]=m.useState({}),[C,T]=Mt(async _=>{_.preventDefault();const F=Ts.safeParse({name:d,email:k});F.success&&await s({email:F.data.email,non_verified_name:F.data.name},Object.values(S).filter(Boolean).length?S:void 0)},[d,k,S]);return e.jsx("div",{style:{width:"100vw",maxWidth:"100vw",minHeight:a.screens.welcome.minHeight,height:"100vh",maxHeight:"100vh",overflowY:"auto"},children:e.jsxs("div",{ref:c,className:p("flex flex-col",o&&"h-full","bg-[radial-gradient(ellipse_at_top_left,hsl(var(--opencx-primary)),transparent),radial-gradient(ellipse_at_top_right,hsl(var(--opencx-primary)),transparent)]"),children:[e.jsxs("div",{className:p("flex-1 flex flex-col px-4 py-12 text-start space-y-4 relative z-10","text-primary-foreground"),children:[o&&e.jsx(x,{className:"absolute top-6 end-6",children:e.jsx(z,{size:"selfless",onClick:()=>r(!1),children:e.jsx(u.XIcon,{className:"size-4"})})}),e.jsx("div",{className:"flex items-center justify-between w-full mb-2",children:(P=n.assets)!=null&&P.organizationLogo?e.jsx("img",{src:(W=n.assets)==null?void 0:W.organizationLogo,alt:"Company Logo",className:"h-8 w-auto object-contain"}):e.jsx("h2",{className:"font-bold text-sm",children:t.name})}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h1",{className:"text-[1.75rem] font-semibold tracking-tight leading-none",children:((D=(A=n.textContent)==null?void 0:A.welcomeScreen)==null?void 0:D.title)||i("welcome_screen_title")}),e.jsx("p",{className:"text-sm",children:((N=(b=n.textContent)==null?void 0:b.welcomeScreen)==null?void 0:N.description)||i("welcome_screen_description")})]})]}),e.jsxs("div",{className:p("z-10 m-2 px-2 pt-2 bp-0 space-y-2","bg-[white]","border shadow","rounded-3xl"),children:[e.jsxs("form",{onSubmit:T,className:"space-y-2",children:[e.jsx(Z,{value:d,onChange:_=>h(_.target.value),required:!0,placeholder:i("your_name_placeholder"),name:"name"}),e.jsx(Z,{required:!0,value:k,onChange:_=>j(_.target.value),type:"email",placeholder:i("your_email_placeholder"),name:"email"}),g.map(_=>e.jsx(Z,{value:S[_],onChange:F=>f(K=>({...K,[_]:F.target.value})),placeholder:`${_} (${i("optional")})`},_)),e.jsxs(z,{disabled:C.loading,className:"w-full",size:"lg",children:[C.loading?i("start_chat_button_loading"):i("start_chat_button"),e.jsx(u.SendHorizontal,{className:"size-4 rtl:-scale-100"})]})]}),e.jsx(vt,{})]})]})})}function bt(){const{routerState:{screen:t}}=l.useWidgetRouter();return e.jsx("div",{className:"relative bg-background size-full",children:e.jsx(y.AnimatePresence,{mode:"wait",children:(()=>{switch(t){case"welcome":return e.jsx(x,{fadeIn:"right",className:"size-full",snapExit:!0,children:e.jsx(Is,{})},t);case"sessions":return e.jsx(x,{fadeIn:"right",className:"size-full",snapExit:!0,children:e.jsx(Ns,{})},t);case"chat":return e.jsx(x,{fadeIn:"right",className:"size-full",snapExit:!0,children:e.jsx(js,{})},t);default:return I.isExhaustive(t,bt.name),null}})()})})}const Ms="4.0.38",Ds=`<!DOCTYPE html>
|
|
18
18
|
<html>
|
|
19
19
|
<head>
|
|
20
20
|
<style>
|
|
@@ -31,7 +31,7 @@ html, body {
|
|
|
31
31
|
</head>
|
|
32
32
|
<body>
|
|
33
33
|
</body>
|
|
34
|
-
</html>`;function yt(){const{isOpen:t}=l.useWidgetTrigger(),{contentIframeRef:r}=l.useWidget(),{cssOverrides:s,inline:o}=l.useConfig(),{theme:n,cssVars:a,computed:i}=q(),{dir:c}=$();return e.jsx(
|
|
34
|
+
</html>`;function yt(){const{isOpen:t}=l.useWidgetTrigger(),{contentIframeRef:r}=l.useWidget(),{cssOverrides:s,inline:o}=l.useConfig(),{theme:n,cssVars:a,computed:i}=q(),{dir:c}=$();return e.jsx(y.motion.div,{animate:t?"visible":"hidden",initial:"hidden",variants:{hidden:{opacity:0,y:8,transitionEnd:{display:"none"},transition:{duration:.15}},visible:{opacity:1,y:0,display:"block",height:o?"100%":void 0}},children:e.jsxs(et,{ref:r,initialContent:Ds,allowFullScreen:!0,title:"OpenCX Live Chat",style:{"--opencx-widget-width":i.minWidth,"--opencx-widget-height":i.minHeight,minWidth:i.minWidth,width:"var(--opencx-widget-width)",maxWidth:i.maxWidth,minHeight:i.minHeight,height:"var(--opencx-widget-height)",maxHeight:i.maxHeight,overflow:"hidden",outline:n.widgetContentContainer.outline,outlineColor:n.widgetContentContainer.outlineColor,borderRadius:n.widgetContentContainer.borderRadius,boxShadow:n.widgetContentContainer.boxShadow,transitionProperty:n.widgetContentContainer.transitionProperty,transitionTimingFunction:n.widgetContentContainer.transitionTimingFunction,transitionDuration:n.widgetContentContainer.transitionDuration,boxSizing:"border-box",borderWidth:"0px"},children:[s&&e.jsx("style",{children:s}),e.jsx("div",{style:{...a,zIndex:n.widgetContentContainer.zIndex},"data-version":Ms,className:p("antialiased font-sans size-full overflow-hidden relative text-secondary-foreground isolate"),dir:c,children:e.jsx(Lt,{delayDuration:200,disableHoverableContent:!0,children:e.jsx(Ft,{children:e.jsx(bt,{})})})})]})})}function Rs(){const{theme:t}=q();return e.jsx(te.Content,{onInteractOutside:r=>r.preventDefault(),forceMount:!0,style:{zIndex:t.widgetContentContainer.zIndex,fontSize:"16px"},side:"top",align:"end","aria-modal":"false","aria-label":"Support chat",sideOffset:t.widgetContentContainer.offset.side,alignOffset:t.widgetContentContainer.offset.align,avoidCollisions:!1,children:e.jsx(yt,{})})}function Es({className:t,style:r}){return e.jsxs("svg",{width:"32",height:"30",viewBox:"0 0 32 30",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:p("text-primary-foreground",t),style:r,children:[e.jsx("path",{d:"M0 6.94263C0 3.62892 2.68629 0.942627 6 0.942627H26C29.3137 0.942627 32 3.62892 32 6.94263V17.9426C32 21.2563 29.3137 23.9426 26 23.9426H6C2.68629 23.9426 0 21.2563 0 17.9426V6.94263Z",fill:"currentColor"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M19.9945 23.8935L26.237 23.8934C26.1982 24.3557 26.1712 25.2778 26.1704 26.2318C26.1688 28.2839 26.1376 28.7041 25.974 28.868C25.583 29.2598 25.2686 29.0967 24.0616 27.8754C23.4162 27.2222 22.1141 25.9522 21.1682 25.0531L19.9945 23.8935Z",fill:"currentColor"})]})}const Ps=`<!DOCTYPE html>
|
|
35
35
|
<html>
|
|
36
36
|
<head>
|
|
37
37
|
<style>
|
|
@@ -47,5 +47,5 @@ html, body {
|
|
|
47
47
|
</head>
|
|
48
48
|
<body>
|
|
49
49
|
</body>
|
|
50
|
-
</html>`;function
|
|
50
|
+
</html>`;function Ws(){var a,i;const{isOpen:t}=l.useWidgetTrigger(),{cssOverrides:r,assets:s}=l.useConfig(),{theme:o,cssVars:n}=q();return e.jsxs(et,{initialContent:Ps,title:"OpenCX Live Chat Trigger",style:{height:`calc(${o.widgetTrigger.size.button}px + ${L.x*2}px)`,width:`calc(${o.widgetTrigger.size.button}px + ${L.y*2}px)`,fontSize:"16px",position:"fixed",zIndex:o.widgetTrigger.zIndex,right:o.widgetTrigger.offset.right,bottom:o.widgetTrigger.offset.bottom,left:o.widgetTrigger.offset.left,boxSizing:"border-box",borderWidth:"0px",borderRadius:"100%"},children:[r&&e.jsx("style",{children:r}),e.jsx("div",{style:{...n,width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(te.PopoverTrigger,{className:p("font-sans flex items-center justify-center rounded-full"),style:{height:o.widgetTrigger.size.button,width:o.widgetTrigger.size.button},children:e.jsx(O,{children:e.jsx("div",{...w("trigger/btn"),className:p("relative size-full rounded-full","flex items-center justify-center","overflow-hidden","transition-all","bg-primary","text-primary-foreground"),children:e.jsx(y.AnimatePresence,{mode:"wait",children:t?e.jsx(x,{snapExit:!0,fadeIn:"up",overrides:{initial:{rotate:45},animate:{rotate:0}},children:(a=s==null?void 0:s.widgetTrigger)!=null&&a.closeIcon?e.jsx("img",{src:s.widgetTrigger.closeIcon,alt:"Widget trigger close icon",style:{width:o.widgetTrigger.size.icon,height:o.widgetTrigger.size.icon}}):e.jsx(u.ChevronDownIcon,{style:{width:o.widgetTrigger.size.icon,height:o.widgetTrigger.size.icon}})},"x-icon"):e.jsx(x,{snapExit:!0,overrides:{initial:{rotate:45},animate:{rotate:0}},children:(i=s==null?void 0:s.widgetTrigger)!=null&&i.openIcon?e.jsx("img",{src:s.widgetTrigger.openIcon,alt:"Widget trigger open icon",style:{width:o.widgetTrigger.size.icon,height:o.widgetTrigger.size.icon}}):e.jsx(Es,{style:{width:o.widgetTrigger.size.icon,height:o.widgetTrigger.size.icon},className:"mt-0.5 opacity-95"})},"message-icon")})})})})})]})}function As(){const{dir:t}=l.useDocumentDir();return e.jsx(te.Anchor,{style:{position:"fixed",bottom:0,right:t==="ltr"?0:void 0,left:t==="rtl"?0:void 0}})}function Os(){const{isOpen:t,setIsOpen:r}=l.useWidgetTrigger();return e.jsxs(te.Root,{open:t,onOpenChange:r,children:[e.jsx(As,{}),e.jsx(Ws,{}),e.jsx(Rs,{})]})}const Fs=[{key:"loading",component:$t},{key:"fallback",component:qt},{key:"bot_message",component:ne},{key:"agent_message",component:ne}],Hs={get:async t=>localStorage.getItem(t),set:async(t,r)=>{localStorage.setItem(t,r)},remove:async t=>{localStorage.removeItem(t)}};function qs({options:t,components:r=[],loadingComponent:s}){return e.jsx(l.WidgetProvider,{components:[...Fs,...r],options:t,storage:Hs,loadingComponent:s,children:e.jsx(l.WidgetTriggerProvider,{children:t.inline?e.jsx(yt,{}):e.jsx(Os,{})})})}exports.Widget=qs;
|
|
51
51
|
//# sourceMappingURL=index.cjs.map
|