@customer-agent/sdk 0.5.9-test.b11d65cb70ee → 0.6.0-test.67b72921d3c0
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/chunks/{App-BFC_4NQI.js → App-B4dn3hns.js} +2 -2
- package/chunks/InterviewChatScreen-D37bCE1R.js +2 -0
- package/chunks/{Panel-C_wIej4W.js → Panel-XDrfFRK4.js} +3 -3
- package/chunks/{WidgetComposer-CJtPQVbr.js → WidgetComposer-C_Y7bwhP.js} +1 -1
- package/chunks/{constants-BNPzMhE-.js → constants-Do-S47mc.js} +1 -1
- package/chunks/{controller-BlTGr3y8.js → controller-DsoiXsWM.js} +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- package/react.js +1 -1
- package/runtime.es.js +1 -1
- package/sdk.js +1 -1
- package/types/sdk/public-types.d.ts +2 -1
- package/types/types.d.ts +4 -0
- package/types/ui/screens/interview/InterviewChatScreen.d.ts +2 -1
- package/chunks/InterviewChatScreen-BOpE-M55.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./constants-BNPzMhE-.js";import{i as t,t as n}from"./launcherAnchorStore-JMTZZGKC.js";import{t as r}from"./i18n-Q8u2wtW4.js";import{r as i}from"../runtime.es.js";import{t as a}from"./react-CKmEJ8Ba.js";import{t as o}from"./client-duvjg9sB.js";import{t as s}from"./createLucideIcon-B1BLVEeA.js";import{n as c,t as l}from"./WidgetGlobalLoading-B_z-6_yk.js";import{t as u}from"./x-CcuT5rCV.js";import{t as d}from"./jsx-runtime-S2ZBQkZm.js";import{t as f}from"./classNames-3q0x02_x.js";var p=i(a(),1),m=Object.freeze({EXPAND_CHANGE:`expand-change`,MEMORY_ROUTE_CHANGE:`memory-route-change`,OPEN_CHANGE:`open-change`}),h=Object.freeze({ACTION:`customer-agent:frame-action`,STATE:`customer-agent:frame-state`});function g(e,t,n){return{action:n,surface:t,type:h.ACTION,widgetId:e}}function _(e){return typeof e==`object`&&!!e&&`type`in e&&e.type===h.ACTION}var v=`#customer-agent-widget{position:var(--customer-agent-host-container-position);inset:var(--customer-agent-host-container-inset);pointer-events:var(--customer-agent-host-container-pointer-events);z-index:var(--customer-agent-host-container-z-index)}#customer-agent-widget .customer-agent-app{position:var(--customer-agent-host-app-position);inset:var(--customer-agent-host-app-inset);pointer-events:none}#customer-agent-widget div.customer-agent-messenger-frame,:where(#customer-agent-widget .customer-agent-launcher-container){box-sizing:border-box;color-scheme:normal;background:0 0;border:0;margin:0;padding:0}#customer-agent-widget iframe.customer-agent-frame[data-customer-agent-surface]{border-radius:inherit;color-scheme:normal;visibility:visible;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;display:block;position:absolute;inset:0;overflow:hidden}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel]{position:var(--customer-agent-host-frame-position);left:var(--customer-agent-host-panel-left);right:var(--customer-agent-host-panel-right);bottom:var(--customer-agent-host-panel-bottom);background:var(--customer-agent-host-panel-bg);border:1px solid var(--customer-agent-host-panel-border);border-radius:var(--customer-agent-host-panel-radius);width:0;height:0;box-shadow:var(--customer-agent-host-panel-shadow);opacity:0;pointer-events:none;transform:var(--customer-agent-host-panel-closed-transform);transform-origin:var(--customer-agent-host-panel-transform-origin);visibility:hidden;z-index:2147483646;transition:width .22s,height .22s,left .22s,right .22s,top .22s,bottom .22s,border-radius .22s,opacity .16s,transform .22s,visibility .16s;overflow:hidden}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating]{left:var(--customer-agent-anchor-panel-left);right:auto;top:var(--customer-agent-anchor-panel-top);width:var(--customer-agent-anchor-panel-width,var(--customer-agent-host-panel-size-width));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-size-height));transform-origin:top;bottom:auto;transform:translateY(16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-anchor-placement=top]{transform-origin:bottom;transform:translateY(-16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-anchor-placement=left]{transform-origin:100%;transform:translate(-16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-anchor-placement=right]{transform-origin:0;transform:translate(16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-state=open]{width:var(--customer-agent-anchor-panel-width,var(--customer-agent-host-panel-size-width));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-size-height));opacity:1;pointer-events:auto;visibility:visible;transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-state=open]{transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-state=open][data-expanded=true]{width:var(--customer-agent-anchor-panel-width,var(--customer-agent-host-panel-expanded-size-width));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-expanded-size-height-legacy));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-expanded-size-height))}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen]{border:0}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-state=open]{top:auto;left:0;right:0;bottom:var(--customer-agent-host-fullscreen-bottom,0px);width:var(--customer-agent-host-fullscreen-width);max-width:100%;height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-height-legacy));max-height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-max-height-legacy));z-index:2147483647;border-radius:0;transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-state=open][data-viewport-settling=true]{transition:bottom .22s,opacity .16s,visibility .16s}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-mobile-origin=launcher]:not([data-state=open]){left:var(--customer-agent-mobile-origin-left);right:auto;top:var(--customer-agent-mobile-origin-top);width:var(--customer-agent-mobile-origin-width);height:var(--customer-agent-mobile-origin-height);transform-origin:50%;border-radius:0;bottom:auto;transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=bottom-sheet]{left:var(--customer-agent-host-bottom-sheet-left);right:var(--customer-agent-host-bottom-sheet-right);border:0;border-radius:14px 14px 0 0;bottom:0;transform:translateY(32px)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=bottom-sheet][data-state=open]{width:var(--customer-agent-host-bottom-sheet-width);z-index:2147483647;max-width:100%;height:min(640px,100dvh - 72px);max-height:calc(100dvh - 72px);transform:translate(0)scale(1)}:where(#customer-agent-widget .customer-agent-launcher-container){position:var(--customer-agent-host-frame-position);left:var(--customer-agent-host-launcher-left);right:var(--customer-agent-host-launcher-right);bottom:var(--customer-agent-host-launcher-bottom);width:var(--customer-agent-host-launcher-size);height:var(--customer-agent-host-launcher-size);background:var(--customer-agent-host-launcher-bg);box-shadow:var(--customer-agent-host-launcher-shadow);pointer-events:auto;z-index:2147483647;border-radius:9999px;transition:box-shadow .15s,transform .15s;animation:.18s ease-out both customer-agent-launcher-enter;overflow:visible}:where(#customer-agent-widget .customer-agent-launcher-container:hover){box-shadow:var(--customer-agent-host-launcher-shadow);transform:scale(1.1)}:where(#customer-agent-widget .customer-agent-launcher-container:active){transform:scale(.9)}:where(#customer-agent-widget .customer-agent-launcher-container[data-state=open]){box-shadow:var(--customer-agent-host-launcher-shadow)}:where(#customer-agent-widget .customer-agent-launcher-container[data-mobile-presentation=fullscreen][data-state=open]){z-index:2147483646}:where(#customer-agent-widget .customer-agent-launcher-container[data-mobile-presentation=bottom-sheet][data-state=open]){opacity:0;pointer-events:none;visibility:hidden;display:none;transform:scale(.88)}@keyframes customer-agent-launcher-enter{0%{opacity:0}to{opacity:1}}@media (width<=640px){#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel]{border:0}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-state=open]{width:var(--customer-agent-host-fullscreen-width);max-width:100%;height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-height-legacy));max-height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-max-height-legacy));transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=bottom-sheet][data-state=open]{height:min(640px,100dvh - 72px)}:where(#customer-agent-widget .customer-agent-launcher-container),#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen]:not([data-mobile-origin=launcher]){left:var(--customer-agent-host-mobile-inline-left);right:var(--customer-agent-host-mobile-inline-right);bottom:var(--customer-agent-host-mobile-bottom)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-mobile-origin=launcher]:not([data-state=open]){left:var(--customer-agent-mobile-origin-left);right:auto;top:var(--customer-agent-mobile-origin-top);bottom:auto}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-state=open]{top:auto;left:0;right:0;bottom:var(--customer-agent-host-fullscreen-bottom,0px)}}`,ee=16,y=20,b=48;function x(e){return e.position===`bottom-left`?`translate(-16px, 24px) scale(0.96)`:`translate(16px, 24px) scale(0.96)`}function S(e){let t=e.position===`bottom-left`,n=e.position===`bottom-left`?`left bottom`:`right bottom`,r=x(e),i=e.embedded?`absolute`:`fixed`,a=t?`${y}px`:`auto`,o=t?`auto`:`${y}px`,s=t?`max(${y}px, env(safe-area-inset-left))`:`auto`,c=t?`auto`:`max(${y}px, env(safe-area-inset-right))`,l=e.embedded?`min(var(--customer-agent-host-panel-width), calc(100% - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`:`min(var(--customer-agent-host-panel-width), calc(100vw - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`,u=e.embedded?`min(var(--customer-agent-host-panel-max-height), calc(100% - var(--customer-agent-host-panel-expanded-height-offset)))`:`min(var(--customer-agent-host-panel-max-height), calc(100vh - var(--customer-agent-host-panel-expanded-height-offset)))`,d=e.embedded?`min(var(--customer-agent-host-panel-expanded-width), calc(100% - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`:`min(var(--customer-agent-host-panel-expanded-width), calc(100dvw - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`,f=e.embedded?`calc(100% - var(--customer-agent-host-panel-expanded-height-offset))`:`calc(100dvh - var(--customer-agent-host-panel-expanded-height-offset))`,p=e.embedded?`100%`:`100vh`,m=e.embedded?`100%`:`100dvh`;return`#customer-agent-widget{${[`--customer-agent-host-container-position: ${e.embedded?`absolute`:`static`};`,`--customer-agent-host-container-inset: ${e.embedded?`0`:`auto`};`,`--customer-agent-host-container-pointer-events: ${e.embedded?`none`:`auto`};`,`--customer-agent-host-container-z-index: ${e.embedded?`10`:`auto`};`,`--customer-agent-host-app-position: ${e.embedded?`absolute`:`static`};`,`--customer-agent-host-app-inset: ${e.embedded?`0`:`auto`};`,`--customer-agent-host-frame-position: ${i};`,`--customer-agent-host-panel-left: ${a};`,`--customer-agent-host-panel-right: ${o};`,`--customer-agent-host-panel-bottom: ${y+b+ee}px;`,`--customer-agent-host-panel-width: 460px;`,`--customer-agent-host-panel-expanded-width: 716px;`,`--customer-agent-host-panel-expanded-height-offset: 104px;`,`--customer-agent-host-panel-max-height: 704px;`,`--customer-agent-host-panel-safe-margin: 20px;`,`--customer-agent-host-panel-size-width: ${l};`,`--customer-agent-host-panel-size-height: ${u};`,`--customer-agent-host-panel-expanded-size-width: ${d};`,`--customer-agent-host-panel-expanded-size-height-legacy: ${e.embedded?f:`calc(100vh - var(--customer-agent-host-panel-expanded-height-offset))`};`,`--customer-agent-host-panel-expanded-size-height: ${f};`,`--customer-agent-host-panel-bg: #ffffff;`,`--customer-agent-host-panel-border: #e5e5e5;`,`--customer-agent-host-panel-radius: 24px;`,`--customer-agent-host-panel-shadow: 0 1px 6px rgba(9, 14, 21, 0.06), 0 2px 32px rgba(9, 14, 21, 0.16);`,`--customer-agent-host-panel-closed-transform: ${r};`,`--customer-agent-host-panel-transform-origin: ${n};`,`--customer-agent-host-fullscreen-width: 100%;`,`--customer-agent-host-fullscreen-height-legacy: ${p};`,`--customer-agent-host-fullscreen-height: ${m};`,`--customer-agent-host-fullscreen-max-height-legacy: ${p};`,`--customer-agent-host-fullscreen-max-height: ${m};`,`--customer-agent-host-bottom-sheet-left: ${t?`0`:`auto`};`,`--customer-agent-host-bottom-sheet-right: ${t?`auto`:`0`};`,`--customer-agent-host-bottom-sheet-width: 100%;`,`--customer-agent-host-launcher-left: ${a};`,`--customer-agent-host-launcher-right: ${o};`,`--customer-agent-host-launcher-bottom: ${y}px;`,`--customer-agent-host-launcher-size: ${b}px;`,`--customer-agent-host-launcher-bg: #14161a;`,`--customer-agent-host-launcher-shadow: 0 4px 12px rgba(9, 14, 21, 0.1);`,`--customer-agent-host-mobile-inline-left: ${s};`,`--customer-agent-host-mobile-inline-right: ${c};`,`--customer-agent-host-mobile-bottom: max(${y}px, env(safe-area-inset-bottom));`].join(` `)}}`}function te(e,t){return`${v}\n${S(t)}`.trim()}var ne=s(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),C=o(),w=d();function T({closeLabel:e,onClose:t}){return(0,w.jsx)(`button`,{className:`relative z-[calc(var(--z-overlay)+1)] grid h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)] cursor-pointer place-items-center rounded-[var(--messenger-header-button-radius)] border-0 bg-transparent text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none`,"aria-label":e,"data-customer-agent-panel-close":``,"data-overlay-exempt":`true`,title:e,type:`button`,onClick:t,children:(0,w.jsx)(u,{size:16})})}var re=`/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
|
|
2
|
-
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-ease:initial}}}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-\\[calc\\(100\\%\\+0\\.5rem\\)\\]{top:calc(100% + .5rem)}.top-\\[var\\(--messenger-header-padding-y\\)\\]{top:var(--messenger-header-padding-y)}.right-\\[var\\(--messenger-header-button-size\\)\\]{right:var(--messenger-header-button-size)}.right-\\[var\\(--messenger-header-padding-x\\)\\]{right:var(--messenger-header-padding-x)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-\\[1\\]{z-index:1}.z-\\[4\\]{z-index:4}.z-\\[calc\\(var\\(--z-overlay\\)\\+1\\)\\]{z-index:calc(var(--z-overlay) + 1)}.z-\\[var\\(--z-composer\\)\\]{z-index:var(--z-composer)}.z-\\[var\\(--z-dropdown\\)\\]{z-index:var(--z-dropdown)}.z-\\[var\\(--z-overlay\\)\\]{z-index:var(--z-overlay)}.container{width:100%}.mx-auto{margin-inline:auto}.-mt-\\[var\\(--messenger-radius\\)\\]{margin-top:calc(var(--messenger-radius) * -1)}.mt-\\[var\\(--messenger-composer-actions-margin-top\\)\\]{margin-top:var(--messenger-composer-actions-margin-top)}.mt-\\[var\\(--messenger-conversation-part-group-gap\\)\\]{margin-top:var(--messenger-conversation-part-group-gap)}.mt-\\[var\\(--messenger-conversation-part-stack-gap\\)\\]{margin-top:var(--messenger-conversation-part-stack-gap)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-\\[18px\\]{height:18px}.h-\\[var\\(--messenger-composer-actions-height\\)\\]{height:var(--messenger-composer-actions-height)}.h-\\[var\\(--messenger-header-avatar-size\\)\\]{height:var(--messenger-header-avatar-size)}.h-\\[var\\(--messenger-header-button-size\\)\\]{height:var(--messenger-header-button-size)}.h-full{height:100%}.h-px{height:1px}.min-h-\\[304px\\]{min-height:304px}.min-h-\\[var\\(--messenger-composer-actions-height\\)\\]{min-height:var(--messenger-composer-actions-height)}.min-h-\\[var\\(--messenger-composer-height\\)\\]{min-height:var(--messenger-composer-height)}.min-h-full{min-height:100%}.w-\\[18px\\]{width:18px}.w-\\[280px\\]{width:280px}.w-\\[min\\(360px\\,100\\%\\)\\]{width:min(360px,100%)}.w-\\[min\\(360px\\,calc\\(100vw-2\\.5rem\\)\\)\\]{width:min(360px,100vw - 2.5rem)}.w-\\[var\\(--messenger-header-avatar-size\\)\\]{width:var(--messenger-header-avatar-size)}.w-\\[var\\(--messenger-header-button-size\\)\\]{width:var(--messenger-header-button-size)}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\\[min\\(100\\%\\,var\\(--messenger-conversation-part-max-width\\)\\)\\]{max-width:min(100%, var(--messenger-conversation-part-max-width))}.max-w-\\[var\\(--messenger-conversation-part-max-width\\)\\]{max-width:var(--messenger-conversation-part-max-width)}.max-w-full{max-width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-separate{border-collapse:separate}.origin-\\[var\\(--radix-popover-content-transform-origin\\)\\]{transform-origin:var(--radix-popover-content-transform-origin)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\\[customer-agent-chat-route-in_var\\(--duration-fast\\)_var\\(--ease-emphasis\\)_both\\]{animation:customer-agent-chat-route-in var(--duration-fast) var(--ease-emphasis) both}.animate-\\[customer-agent-entry-in_180ms_ease-out\\]{animation:.18s ease-out customer-agent-entry-in}.animate-\\[customer-agent-invite-mask-in_140ms_ease-out_both\\]{animation:.14s ease-out both customer-agent-invite-mask-in}.animate-\\[customer-agent-mobile-dock-in_180ms_var\\(--ease-emphasis\\)_both\\]{animation:customer-agent-mobile-dock-in .18s var(--ease-emphasis) both}.animate-\\[customer-agent-typing-dot-bounce_1\\.05s_ease-in-out_infinite\\]{animation:1.05s ease-in-out infinite customer-agent-typing-dot-bounce}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.\\[scrollbar-width\\:none\\]{scrollbar-width:none}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-\\[32px_minmax\\(0\\,1fr\\)\\]{grid-template-columns:32px minmax(0,1fr)}.grid-cols-\\[36px_minmax\\(0\\,1fr\\)\\]{grid-template-columns:36px minmax(0,1fr)}.grid-cols-\\[auto_1fr_auto\\]{grid-template-columns:auto 1fr auto}.grid-cols-\\[auto_auto_1fr_auto\\]{grid-template-columns:auto auto 1fr auto}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-\\[var\\(--messenger-composer-actions-gap\\)\\]{gap:var(--messenger-composer-actions-gap)}.gap-\\[var\\(--messenger-header-action-gap\\)\\]{gap:var(--messenger-header-action-gap)}.gap-\\[var\\(--messenger-header-gap\\)\\]{gap:var(--messenger-header-gap)}.self-center{align-self:center}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded-\\[10px\\]{border-radius:10px}.rounded-\\[var\\(--messenger-header-button-radius\\)\\]{border-radius:var(--messenger-header-button-radius)}.rounded-\\[var\\(--messenger-radius\\)\\]{border-radius:var(--messenger-radius)}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-messenger{border-radius:var(--messenger-radius)}.rounded-messenger-composer{border-radius:var(--messenger-composer-radius)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-l-\\[28px\\]{border-top-left-radius:28px;border-bottom-left-radius:28px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-\\[var\\(--gray-4\\)\\]{border-color:var(--gray-4)}.border-border-default{border-color:var(--border-default)}.border-border-divider{border-color:var(--border-divider)}.border-gray-1\\/70{border-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.border-gray-1\\/70{border-color:color-mix(in oklab, var(--gray-1) 70%, transparent)}}.border-gray-12{border-color:var(--gray-12)}.border-transparent{border-color:#0000}.border-t-\\[var\\(--customer-agent-primary\\)\\]{border-top-color:var(--customer-agent-primary)}.bg-\\[var\\(--bg-canvas\\)\\]{background-color:var(--bg-canvas)}.bg-\\[var\\(--customer-agent-primary\\)\\]{background-color:var(--customer-agent-primary)}.bg-bg-canvas{background-color:var(--bg-canvas)}.bg-bg-elevated{background-color:var(--bg-elevated)}.bg-current{background-color:currentColor}.bg-gray-1\\/15{background-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.bg-gray-1\\/15{background-color:color-mix(in oklab, var(--gray-1) 15%, transparent)}}.bg-gray-1\\/20{background-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.bg-gray-1\\/20{background-color:color-mix(in oklab, var(--gray-1) 20%, transparent)}}.bg-gray-3{background-color:var(--gray-3)}.bg-gray-4{background-color:var(--gray-4)}.bg-gray-12,.bg-gray-12\\/35{background-color:var(--gray-12)}@supports (color:color-mix(in lab, red, red)){.bg-gray-12\\/35{background-color:color-mix(in oklab, var(--gray-12) 35%, transparent)}}.bg-transparent{background-color:#0000}.fill-bg-elevated{fill:var(--bg-elevated)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.\\[padding\\:var\\(--messenger-composer-actions-padding-top\\)_var\\(--messenger-composer-actions-padding-right\\)_var\\(--messenger-composer-actions-padding-bottom\\)_var\\(--messenger-composer-actions-padding-left\\)\\]{padding:var(--messenger-composer-actions-padding-top) var(--messenger-composer-actions-padding-right) var(--messenger-composer-actions-padding-bottom) var(--messenger-composer-actions-padding-left)}.\\[padding\\:var\\(--messenger-composer-attachments-padding-top\\)_var\\(--messenger-composer-attachments-padding-right\\)_var\\(--messenger-composer-attachments-padding-bottom\\)_var\\(--messenger-composer-attachments-padding-left\\)\\]{padding:var(--messenger-composer-attachments-padding-top) var(--messenger-composer-attachments-padding-right) var(--messenger-composer-attachments-padding-bottom) var(--messenger-composer-attachments-padding-left)}.\\[padding\\:var\\(--messenger-composer-input-padding-top\\)_var\\(--messenger-composer-input-padding-right\\)_var\\(--messenger-composer-input-padding-bottom\\)_var\\(--messenger-composer-input-padding-left\\)\\]{padding:var(--messenger-composer-input-padding-top) var(--messenger-composer-input-padding-right) var(--messenger-composer-input-padding-bottom) var(--messenger-composer-input-padding-left)}.px-\\[var\\(--messenger-conversation-horizontal-padding\\)\\]{padding-inline:var(--messenger-conversation-horizontal-padding)}.px-\\[var\\(--messenger-conversation-part-padding-x\\)\\]{padding-inline:var(--messenger-conversation-part-padding-x)}.px-\\[var\\(--messenger-header-padding-x\\)\\]{padding-inline:var(--messenger-header-padding-x)}.py-\\[var\\(--messenger-conversation-part-padding-y\\)\\]{padding-block:var(--messenger-conversation-part-padding-y)}.py-\\[var\\(--messenger-header-padding-y\\)\\]{padding-block:var(--messenger-header-padding-y)}.pr-\\[var\\(--messenger-header-button-size\\)\\]{padding-right:var(--messenger-header-button-size)}.pb-\\[max\\(1rem\\,calc\\(1rem\\+var\\(--customer-agent-bottom-inset\\)\\)\\)\\]{padding-bottom:max(1rem, calc(1rem + var(--customer-agent-bottom-inset)))}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base-line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm-line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs-line-height))}.text-\\[0\\.9em\\]{font-size:.9em}.text-\\[length\\:var\\(--messenger-composer-text-size\\)\\]{font-size:var(--messenger-composer-text-size)}.text-\\[length\\:var\\(--messenger-header-subtitle-size\\)\\]{font-size:var(--messenger-header-subtitle-size)}.text-\\[length\\:var\\(--messenger-header-title-size\\)\\]{font-size:var(--messenger-header-title-size)}.leading-\\[var\\(--messenger-composer-text-line-height\\)\\]{--tw-leading:var(--messenger-composer-text-line-height);line-height:var(--messenger-composer-text-line-height)}.leading-\\[var\\(--messenger-header-subtitle-line-height\\)\\]{--tw-leading:var(--messenger-header-subtitle-line-height);line-height:var(--messenger-header-subtitle-line-height)}.leading-\\[var\\(--messenger-header-title-line-height\\)\\]{--tw-leading:var(--messenger-header-title-line-height);line-height:var(--messenger-header-title-line-height)}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--customer-agent-primary\\,var\\(--gray-12\\)\\)\\]{color:var(--customer-agent-primary,var(--gray-12))}.text-\\[var\\(--customer-agent-primary\\,var\\(--text-quaternary\\)\\)\\]{color:var(--customer-agent-primary,var(--text-quaternary))}.text-\\[var\\(--gray-1\\)\\]{color:var(--gray-1)}.text-\\[var\\(--text-primary\\)\\]{color:var(--text-primary)}.text-gray-1,.text-gray-1\\/70{color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.text-gray-1\\/70{color:color-mix(in oklab, var(--gray-1) 70%, transparent)}}.text-inherit{color:inherit}.text-text-primary{color:var(--text-primary)}.text-text-quaternary{color:var(--text-quaternary)}.text-text-secondary{color:var(--text-secondary)}.text-text-tertiary{color:var(--text-tertiary)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow-\\[-6px_0_18px_rgba\\(9\\,14\\,21\\,0\\.035\\)\\]{--tw-shadow:-6px 0 18px var(--tw-shadow-color,#090e1509);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_0_0_1px_var\\(--border-default\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--border-default));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(9\\,14\\,21\\,0\\.08\\)\\,0_3px_10px_rgba\\(9\\,14\\,21\\,0\\.09\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#090e1514), 0 3px 10px var(--tw-shadow-color,#090e1517);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-card{--tw-shadow:var(--shadow-card);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-circle{--tw-shadow:var(--shadow-circle);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-popover{--tw-shadow:var(--shadow-popover);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-bg-canvas{--tw-ring-color:var(--bg-canvas)}.\\[outline\\:0_solid_var\\(--border-strong\\)\\]{outline:0 solid var(--border-strong)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[background-color\\,box-shadow\\,color\\]{transition-property:background-color,box-shadow,color;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[border-color\\,outline-width\\]{transition-property:border-color,outline-width;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[max-height\\,opacity\\,transform\\,margin\\]{transition-property:max-height,opacity,transform,margin;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[rotate\\,scale\\]{transition-property:rotate,scale;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-\\[var\\(--ease-standard\\)\\]{--tw-ease:var(--ease-standard);transition-timing-function:var(--ease-standard)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\\[animation-delay\\:140ms\\]{animation-delay:.14s}.\\[animation-delay\\:280ms\\]{animation-delay:.28s}.\\[clip\\:rect\\(0\\,0\\,0\\,0\\)\\]{clip:rect(0,0,0,0)}.placeholder\\:text-text-placeholder::placeholder{color:var(--text-placeholder)}.first\\:rounded-tl-lg:first-child{border-top-left-radius:var(--radius-lg)}.last\\:rounded-tr-lg:last-child{border-top-right-radius:var(--radius-lg)}.focus-within\\:border-border-strong:focus-within{border-color:var(--border-strong)}.focus-within\\:\\[outline-width\\:var\\(--messenger-composer-focus-outline-width\\)\\]:focus-within{outline-width:var(--messenger-composer-focus-outline-width)}.focus-within\\:\\[outline-color\\:var\\(--customer-agent-primary\\,var\\(--primary\\)\\)\\]:focus-within{outline-color:var(--customer-agent-primary,var(--primary))}@media (hover:hover){.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-border-strong:hover{border-color:var(--border-strong)}.hover\\:bg-bg-canvas:hover{background-color:var(--bg-canvas)}.hover\\:bg-gray-1\\/20:hover{background-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-gray-1\\/20:hover{background-color:color-mix(in oklab, var(--gray-1) 20%, transparent)}}.hover\\:bg-gray-2:hover{background-color:var(--gray-2)}.hover\\:bg-gray-3:hover{background-color:var(--gray-3)}.hover\\:bg-gray-4:hover{background-color:var(--gray-4)}.hover\\:bg-gray-10:hover{background-color:var(--gray-10)}.hover\\:text-text-primary:hover{color:var(--text-primary)}.hover\\:text-text-secondary:hover{color:var(--text-secondary)}.hover\\:shadow-\\[0_1px_2px_rgba\\(9\\,14\\,21\\,0\\.06\\)\\,0_2px_8px_rgba\\(9\\,14\\,21\\,0\\.08\\)\\]:hover{--tw-shadow:0 1px 2px var(--tw-shadow-color,#090e150f), 0 2px 8px var(--tw-shadow-color,#090e1514);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus-visible\\:shadow-\\[inset_0_0_0_2px_rgba\\(255\\,255\\,255\\,0\\.95\\)\\]:focus-visible{--tw-shadow:inset 0 0 0 2px var(--tw-shadow-color,#fffffff2);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:shadow-\\[var\\(--shadow-circle\\)\\,var\\(--shadow-focus\\)\\]:focus-visible{--tw-shadow:var(--shadow-circle), var(--shadow-focus);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:shadow-\\[var\\(--shadow-focus\\)\\]:focus-visible{--tw-shadow:var(--shadow-focus);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:shadow-none:focus-visible{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\\:bg-gray-12:active{background-color:var(--gray-12)}.enabled\\:cursor-pointer:enabled{cursor:pointer}.enabled\\:bg-\\[var\\(--customer-agent-primary\\,var\\(--gray-12\\)\\)\\]:enabled{background-color:var(--customer-agent-primary,var(--gray-12))}.enabled\\:text-gray-1:enabled{color:var(--gray-1)}@media (hover:hover){.enabled\\:hover\\:bg-gray-12:enabled:hover{background-color:var(--gray-12)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-gray-3:disabled{background-color:var(--gray-3)}.disabled\\:text-gray-7:disabled{color:var(--gray-7)}.disabled\\:opacity-40:disabled{opacity:.4}.data-\\[active\\=true\\]\\:border-border-strong[data-active=true]{border-color:var(--border-strong)}.data-\\[active\\=true\\]\\:\\[outline-width\\:var\\(--messenger-composer-focus-outline-width\\)\\][data-active=true]{outline-width:var(--messenger-composer-focus-outline-width)}.data-\\[active\\=true\\]\\:\\[outline-color\\:var\\(--customer-agent-primary\\,var\\(--primary\\)\\)\\][data-active=true]{outline-color:var(--customer-agent-primary,var(--primary))}.data-\\[expanded\\=true\\]\\:\\[--messenger-conversation-part-max-width\\:520px\\][data-expanded=true]{--messenger-conversation-part-max-width:520px}.data-\\[state\\=open\\]\\:animate-\\[customer-agent-invite-popover-in_180ms_var\\(--ease-emphasis\\)_both\\][data-state=open]{animation:customer-agent-invite-popover-in .18s var(--ease-emphasis) both}.data-\\[state\\=open\\]\\:animate-\\[customer-agent-mobile-dock-in_180ms_var\\(--ease-emphasis\\)_both\\][data-state=open]{animation:customer-agent-mobile-dock-in .18s var(--ease-emphasis) both}.data-\\[state\\=open\\]\\:animate-\\[customer-agent-mobile-dock-overlay-in_160ms_ease-out_both\\][data-state=open]{animation:.16s ease-out both customer-agent-mobile-dock-overlay-in}.data-\\[state\\=open\\]\\:bg-gray-3[data-state=open]{background-color:var(--gray-3)}.data-\\[state\\=open\\]\\:text-\\[var\\(--customer-agent-primary\\,var\\(--gray-12\\)\\)\\][data-state=open]{color:var(--customer-agent-primary,var(--gray-12))}.data-\\[state\\=open\\]\\:text-text-primary[data-state=open]{color:var(--text-primary)}.data-\\[viewport-mode\\=mobile\\]\\:h-\\[var\\(--customer-agent-visual-height\\)\\][data-viewport-mode=mobile]{height:var(--customer-agent-visual-height)}.data-\\[viewport-mode\\=mobile\\]\\:rounded-none[data-viewport-mode=mobile]{border-radius:0}.data-\\[viewport-mode\\=mobile\\]\\:border-l-0[data-viewport-mode=mobile]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\\[viewport-mode\\=mobile\\]\\:shadow-none[data-viewport-mode=mobile]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (prefers-reduced-motion:reduce){.motion-reduce\\:animate-none{animation:none}.motion-reduce\\:will-change-auto{will-change:auto}}.\\[\\&\\:\\:-webkit-scrollbar\\]\\:hidden::-webkit-scrollbar{display:none}.\\[\\&\\:placeholder-shown\\]\\:\\!\\[height\\:calc\\(var\\(--messenger-composer-text-line-height\\)\\+var\\(--messenger-composer-input-padding-top\\)\\+var\\(--messenger-composer-input-padding-bottom\\)\\)\\]:placeholder-shown{height:calc(var(--messenger-composer-text-line-height) + var(--messenger-composer-input-padding-top) + var(--messenger-composer-input-padding-bottom))!important}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:flex>[data-radix-scroll-area-content]{display:flex}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:min-h-full>[data-radix-scroll-area-content]{min-height:100%}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:flex-col>[data-radix-scroll-area-content]{flex-direction:column}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:self-stretch>[data-radix-scroll-area-content]{align-self:stretch}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:bg-inherit>[data-radix-scroll-area-content]{background-color:inherit}.\\[\\&\\>div\\]\\:flex>div{display:flex}.\\[\\&\\>div\\]\\:min-h-full>div{min-height:100%}.\\[\\&\\>div\\]\\:flex-col>div{flex-direction:column}.\\[\\&\\>div\\]\\:self-stretch>div{align-self:stretch}.\\[\\&\\>div\\]\\:bg-inherit>div{background-color:inherit}:root{--brand-50:#f0eefe;--brand-100:#dcd8fd;--brand-200:#bdb5fb;--brand-300:#9388f8;--brand-400:#6457f4;--brand-500:#3a2bf0;--brand-600:#1f11ed;--brand-700:#1a0dc4;--brand-800:#170b99;--brand-900:#120873;--brand-950:#0b044a;--brand-a-04:#1f11ed0a;--brand-a-06:#1f11ed0f;--brand-a-08:#1f11ed14;--brand-a-12:#1f11ed1f;--brand-a-20:#1f11ed33;--brand-a-32:#1f11ed52;--brand-a-48:#1f11ed7a;--gray-1:#fff;--gray-2:#fafafa;--gray-3:#f7f7f7;--gray-4:#f5f5f5;--gray-5:#ededed;--gray-6:#e5e5e5;--gray-7:#d6d6d6;--gray-8:#a0a2a6;--gray-9:#6c6f74;--gray-10:#4e5155;--gray-11:#14161a;--gray-12:#090e15;--text-placeholder:#6c6f74;--text-muted-warm:#6c6f74;--bg-app:#f5f5f5;--bg-app-2:#fafafa;--bg-canvas:#fff;--bg-surface:#f5f5f5;--bg-elevated:#fff;--bg-pill-neutral:#f5f5f5;--text-primary:#14161a;--text-secondary:#14161a;--text-tertiary:#6c6f74;--text-quaternary:#a0a2a6;--text-muted:#6c6f74;--success-bg:#22c55e1a;--success-fg:#16a34a;--error-bg:#dc26261a;--error-fg:#dc2626;--warning-bg:#eab3081f;--warning-fg:#b45309;--info-bg:#f5f5f5;--info-fg:#14161a;--border-subtle:#f5f5f5;--border-default:#ededed;--border-strong:#e5e5e5;--border-divider:#ededed;--font-sans:"Inter", "PingFang SC", system-ui, sans-serif;--font-display:"Playfair Display", "Songti SC", serif;--font-display-2:"Poppins", system-ui, sans-serif;--font-content:var(--font-sans);--font-nav:var(--font-display-2);--font-num:var(--font-display-2);--font-mono:"Geist Mono", ui-monospace, Menlo, monospace;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-14:14px;--radius-lg:16px;--radius-18:18px;--radius-xl:20px;--radius-2xl:24px;--radius-3xl:28px;--radius-32:32px;--radius-40:40px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--shadow-card:0 1px 2px #090e150f;--shadow-card-lg:0 1px 6px #090e150f, 0 2px 32px #090e1529;--shadow-cta:none;--shadow-popover:0 1px 15px #090e151a;--shadow-dialog:0 1px 6px #090e150f, 0 2px 32px #090e1529;--shadow-circle:0 1px 2px #090e150f;--shadow-error-ring:0 0 0 3px #dc26262e;--shadow-focus:0 0 0 3px var(--border-default);--messenger-width:400px;--messenger-expanded-width:688px;--messenger-max-height:704px;--messenger-radius:24px;--messenger-iframe-padding:10px;--messenger-global-horizontal-padding:20px;--messenger-conversation-horizontal-padding:16px;--messenger-header-padding-x:13px;--messenger-header-padding-y:8px;--messenger-header-gap:8px;--messenger-header-action-gap:0px;--messenger-header-avatar-size:32px;--messenger-header-button-size:38px;--messenger-header-button-radius:10px;--messenger-header-icon-size:16px;--messenger-header-title-size:14px;--messenger-header-title-line-height:1.1em;--messenger-header-subtitle-size:13px;--messenger-header-subtitle-line-height:19px;--messenger-composer-height:52px;--messenger-composer-radius:16px;--messenger-chat-composer-radius:10px;--messenger-conversation-part-radius:20px;--messenger-conversation-part-adjacent-radius:4px;--messenger-conversation-part-padding-x:16px;--messenger-conversation-part-padding-y:12px;--messenger-conversation-part-max-width:280px;--messenger-conversation-part-group-gap:4px;--messenger-conversation-part-stack-gap:16px;--messenger-typing-indicator-radius:16px;--messenger-composer-text-size:14px;--messenger-composer-text-line-height:20px;--messenger-composer-input-padding-top:0px;--messenger-composer-input-padding-right:8px;--messenger-composer-input-padding-bottom:2px;--messenger-composer-input-padding-left:16px;--messenger-composer-attachments-padding-top:0px;--messenger-composer-attachments-padding-right:8px;--messenger-composer-attachments-padding-bottom:0px;--messenger-composer-attachments-padding-left:12px;--messenger-composer-actions-height:32px;--messenger-composer-actions-gap:8px;--messenger-composer-actions-padding-top:4px;--messenger-composer-actions-padding-right:8px;--messenger-composer-actions-padding-bottom:0px;--messenger-composer-actions-padding-left:12px;--messenger-composer-actions-margin-top:8px;--messenger-composer-focus-outline-width:2px;--text-xs:.75rem;--text-xs-line-height:.875rem;--text-sm:.8125rem;--text-sm-line-height:1.1875rem;--text-base:.875rem;--text-base-line-height:1.25rem;--text-lg:1rem;--text-lg-line-height:1.5rem;--text-xl:1.125rem;--text-xl-line-height:1.125rem;--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-emphasis:cubic-bezier(.2, 0, 0, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--duration-instant:.1s;--duration-fast:.16s;--duration-base:.24s;--duration-slow:.32s;--z-base:0;--z-glow:1;--z-composer:2;--z-sticky:10;--z-sidebar:20;--z-dropdown:40;--z-overlay:60;--z-dialog:61;--z-toast:80;--z-debug:999;--background:var(--bg-app);--foreground:var(--text-primary);--card:var(--bg-canvas);--card-foreground:var(--text-primary);--popover:var(--bg-elevated);--popover-foreground:var(--text-primary);--primary:var(--gray-12);--primary-foreground:var(--gray-1);--secondary:var(--bg-canvas);--secondary-foreground:var(--text-secondary);--muted:var(--gray-4);--muted-foreground:var(--text-tertiary);--accent:var(--bg-pill-neutral);--accent-foreground:var(--text-primary);--destructive:var(--error-fg);--border:var(--border-default);--input:var(--bg-canvas);--ring:var(--border-default)}:root,:host{--radius-xs:var(--radius-xs);--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--radius-3xl:var(--radius-3xl);--radius-full:var(--radius-full);--shadow-card:var(--shadow-card);--shadow-card-lg:var(--shadow-card-lg);--shadow-cta:var(--shadow-cta);--shadow-popover:var(--shadow-popover);--shadow-dialog:var(--shadow-dialog);--shadow-circle:var(--shadow-circle);--text-xs:var(--text-xs);--text-sm:var(--text-sm);--text-base:var(--text-base);--text-lg:var(--text-lg);--text-xl:var(--text-xl);--font-sans:var(--font-sans);--font-display:var(--font-display);--font-content:var(--font-content);--font-mono:var(--font-mono)}html,body,#root{background:0 0;width:100%;height:100%;margin:0;overflow:hidden}*{box-sizing:border-box}button,input,textarea{font:inherit}.customer-agent-launcher-button{background-color:var(--customer-agent-launcher-bg-color,transparent);border-color:var(--customer-agent-launcher-border-color,transparent);border-radius:var(--customer-agent-launcher-border-radius,9999px);border-style:var(--customer-agent-launcher-border-style,solid);border-width:var(--customer-agent-launcher-border-width,0);box-shadow:var(--customer-agent-launcher-box-shadow,none);color:var(--customer-agent-launcher-color,var(--gray-1))}.customer-agent-launcher-button:hover{background-color:var(--customer-agent-launcher-hover-bg-color,var(--customer-agent-launcher-bg-color,transparent));border-color:var(--customer-agent-launcher-hover-border-color,var(--customer-agent-launcher-border-color,transparent));border-radius:var(--customer-agent-launcher-hover-border-radius,var(--customer-agent-launcher-border-radius,9999px));border-style:var(--customer-agent-launcher-hover-border-style,var(--customer-agent-launcher-border-style,solid));border-width:var(--customer-agent-launcher-hover-border-width,var(--customer-agent-launcher-border-width,0));box-shadow:var(--customer-agent-launcher-hover-box-shadow,var(--customer-agent-launcher-box-shadow,none));color:var(--customer-agent-launcher-hover-color,var(--customer-agent-launcher-color,var(--gray-1)))}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}`,E=null,D=null;function O(){return E?Promise.resolve(E):(D??=import(`./panel-BEfk8hPY.js`).then(e=>(E=e.default,E)).catch(e=>{throw D=null,e}),D)}function k(e,t,n){let r=e.createElement(`style`);r.dataset.customerAgentStyle=t,r.textContent=n,e.head.appendChild(r)}function A(e,t,n){let r=e.contentDocument;if(!r)throw Error(`CustomerAgent could not initialize iframe document.`);r.documentElement.dir=t.locale.dir,r.documentElement.lang=t.locale.locale,r.head.replaceChildren(),k(r,`frame`,re),n===`panel`&&E&&k(r,`panel`,E);let i=r.createElement(`div`);return i.id=`root`,i.style.position=`relative`,i.style.width=`100%`,i.style.height=`100%`,r.body.replaceChildren(i),{mount:i,stylesReady:n!==`panel`||!!E}}function j(e,t){let n=e.contentDocument;!n||n.head.querySelector(`[data-customer-agent-style='panel']`)||k(n,`panel`,t)}function M({children:e,loadingFallback:t,state:n,stylesReady:r,surface:i,targetWindow:a,widgetId:o}){function s(e){a.parent.postMessage(g(o,i,e),`*`)}let c=!r&&t?t({dispatch:s,state:n}):e({dispatch:s,state:n});return i===`panel`?(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(`div`,{className:`absolute top-[var(--messenger-header-padding-y)] right-[var(--messenger-header-padding-x)] z-[calc(var(--z-overlay)+1)] flex items-center gap-[var(--messenger-header-action-gap)]`,children:(0,w.jsx)(T,{closeLabel:n.locale.messages.close_chat,onClose:()=>s({open:!1,type:m.OPEN_CHANGE})})}),c]}):c}function N({children:e,loadingFallback:t,state:n,surface:r,title:i,widgetId:a}){let[o,s]=(0,p.useState)(null),[c,l]=(0,p.useState)(r!==`panel`),u=(0,p.useRef)(null),d=r===`panel`?`customer-agent-messenger-frame`:`customer-agent-launcher-frame`;return(0,p.useEffect)(()=>{if(r!==`panel`||!o)return;let e=!1;return O().then(t=>{e||(j(o,t),l(!0))}).catch(()=>{e||l(!0)}),()=>{e=!0}},[o,r]),(0,p.useEffect)(()=>{if(o?.contentWindow){if(u.current)o.contentDocument?.documentElement.setAttribute(`lang`,n.locale.locale),o.contentDocument?.documentElement.setAttribute(`dir`,n.locale.dir);else{let e=A(o,n,r);l(e.stylesReady),u.current=(0,C.createRoot)(e.mount)}u.current.render((0,p.createElement)(M,{children:e,loadingFallback:t,state:n,stylesReady:c,surface:r,targetWindow:o.contentWindow,widgetId:a}))}}),(0,p.useEffect)(()=>()=>{u.current?.unmount(),u.current=null},[]),(0,w.jsx)(`iframe`,{allow:`clipboard-write`,allowFullScreen:!0,className:`${d} customer-agent-frame customer-agent-with-namespace-${a}`,"data-customer-agent-frame":`true`,"data-customer-agent-surface":r,id:`customer-agent-widget-${a}-${r}`,ref:s,title:i})}function P(e){return e?.brand?.name??`Customer Agent`}function F(e,t){let n=e?.launcher?.style?.color,r={...t};return(typeof n==`number`||typeof n==`string`)&&(r.color=String(n)),Object.keys(r).length>0?r:void 0}function ie({bootOptions:e,isOpen:t,launcherVariableStyle:n,locale:i,onOpenChange:a,onPanelPreload:o}){let s=P(e),l=F(e,n),u=r(t?i.messages.launcher_close:i.messages.launcher_open,{title:s});return(0,w.jsxs)(`button`,{className:`customer-agent-launcher-button relative grid h-full w-full cursor-pointer place-items-center rounded-full border-0 bg-transparent text-[var(--gray-1)] outline-none focus-visible:shadow-[inset_0_0_0_2px_rgba(255,255,255,0.95)]`,"aria-label":u,title:u,"data-state":t?`open`:`closed`,style:l,onFocus:o,onClick:()=>a(!t),onPointerDown:o,onPointerEnter:o,children:[(0,w.jsx)(c,{className:f(`absolute h-6 w-6 transition-[rotate,scale] duration-150 ease-out`,t?`scale-0 rotate-90`:`scale-100 rotate-0`),"aria-hidden":`true`}),(0,w.jsx)(ne,{className:f(`absolute h-6 w-6 transition-[rotate,scale] duration-150 ease-out`,t?`scale-100 rotate-0`:`scale-0 -rotate-90`),"aria-hidden":`true`}),(0,w.jsx)(`span`,{className:`absolute h-px w-px overflow-hidden whitespace-nowrap [clip:rect(0,0,0,0)]`,children:u})]})}var ae=16,oe=20,I=Object.freeze({IDLE:`idle`,READY:`ready`,UNAVAILABLE:`unavailable`}),L=null,R=null;function se(){return R??=import(`./floating-ui.dom-Cs9alM6A.js`).then(e=>e.a).catch(e=>{throw R=null,e}),R}function z(){return L??=Promise.all([O(),import(`./Panel-C_wIej4W.js`)]).then(([,e])=>e).catch(e=>{throw L=null,e}),L}function ce(){z()}async function B(){await Promise.all([O(),se()])}function V(e){return e.position===`bottom-left`?`top-start`:`top-end`}function le(e,t){return e.launcher?.placement??(t?`top`:V(e))}function H(e,t,n){let r=e.embedded?t.offsetParent:null,i=r instanceof HTMLElement?r.getBoundingClientRect():null;return{height:i?.height??n.height,width:i?.width??n.width}}function U(e){return Math.max(0,e)}function ue({isExpanded:e,options:t,panelElement:n,viewport:r}){let i=H(t,n,r);return e?{height:U(i.height-104),width:U(Math.min(716,i.width-40))}:{height:U(Math.min(704,i.height-104)),width:U(Math.min(460,i.width-40))}}function W(e){return{contextElement:e,getBoundingClientRect(){let t=e.getBoundingClientRect(),n=e.offsetWidth||t.width,r=e.offsetHeight||t.height,i=t.left+(t.width-n)/2,a=t.top+(t.height-r)/2;return{bottom:a+r,height:r,left:i,right:i+n,top:a,width:n,x:i,y:a}}}}var de=(0,p.lazy)(async()=>({default:(await z()).WidgetPanel})),G=.55,K={"bg-color":{cssProperty:`backgroundColor`,cssVariable:`--customer-agent-launcher-bg-color`},"border-color":{cssProperty:`borderColor`,cssVariable:`--customer-agent-launcher-border-color`},"border-radius":{cssProperty:`borderRadius`,cssVariable:`--customer-agent-launcher-border-radius`},"border-style":{cssProperty:`borderStyle`,cssVariable:`--customer-agent-launcher-border-style`},"border-width":{cssProperty:`borderWidth`,cssVariable:`--customer-agent-launcher-border-width`},"box-shadow":{cssProperty:`boxShadow`,cssVariable:`--customer-agent-launcher-box-shadow`},color:{cssProperty:`color`,cssVariable:`--customer-agent-launcher-color`},"hover-bg-color":{cssProperty:`backgroundColor`,cssVariable:`--customer-agent-launcher-hover-bg-color`},"hover-border-color":{cssProperty:`borderColor`,cssVariable:`--customer-agent-launcher-hover-border-color`},"hover-border-radius":{cssProperty:`borderRadius`,cssVariable:`--customer-agent-launcher-hover-border-radius`},"hover-border-style":{cssProperty:`borderStyle`,cssVariable:`--customer-agent-launcher-hover-border-style`},"hover-border-width":{cssProperty:`borderWidth`,cssVariable:`--customer-agent-launcher-hover-border-width`},"hover-box-shadow":{cssProperty:`boxShadow`,cssVariable:`--customer-agent-launcher-hover-box-shadow`},"hover-color":{cssProperty:`color`,cssVariable:`--customer-agent-launcher-hover-color`}};function fe({isExpanded:e,isOpen:t,options:n,resolvedLocale:i,viewport:a}){let o=n?.brand?.name??`Customer Agent`,s=r(i.messages.support_chat_label,{title:o}),c=!!n?.embedded,u=a.mode===`mobile`&&a.presentation===`fullscreen`&&!c?a.height:a.visualHeight,d={"--customer-agent-primary":n?.theme?.primaryColor??`var(--gray-12)`,"--customer-agent-visual-height":`${u}px`};return(0,w.jsx)(`section`,{className:`customer-agent-panel relative flex h-full w-full flex-col overflow-hidden rounded-[var(--messenger-radius)] bg-[var(--bg-canvas)] text-[var(--text-primary)] outline-none data-[viewport-mode=mobile]:h-[var(--customer-agent-visual-height)] data-[viewport-mode=mobile]:rounded-none`,"aria-hidden":!t,"aria-label":s,"data-expanded":e?`true`:`false`,"data-state":t?`open`:`closed`,"data-viewport-mode":a.mode,style:d,children:(0,w.jsx)(l,{label:`Loading conversations`})})}function q(e){return Object.entries(K).flatMap(([t,n])=>{let r=e?.[t];return typeof r!=`number`&&typeof r!=`string`?[]:[{definition:n,value:String(r)}]})}function pe(e,t=e.height){if(e.mode!==`mobile`)return 0;let n=Math.round(t*G);return Math.min(e.keyboardInset,n)}function J(e){return q(e).map(({definition:e,value:t})=>`${e.cssVariable}:${t}`).join(`;`)}function Y(e){return e?Object.entries(e).map(([e,t])=>`${e}:${String(t)}`).sort().join(`;`):``}function me(e){let t=document.createElement(`div`);return t.dataset.customerAgentLauncherVariableProbe=`true`,t.setAttribute(`aria-hidden`,`true`),t.style.position=`fixed`,t.style.left=`-9999px`,t.style.top=`0`,t.style.width=`1px`,t.style.height=`1px`,t.style.opacity=`0`,t.style.overflow=`hidden`,t.style.pointerEvents=`none`,e.appendChild(t),t}function X({launcherElement:e,variables:t}){let n=q(t);if(n.length===0)return;let r=me(e);for(let{definition:e,value:t}of n)r.style.setProperty(e.cssVariable,t);let i={};for(let{definition:e}of n){r.style[e.cssProperty]=`var(${e.cssVariable})`;let t=window.getComputedStyle(r),n=String(t[e.cssProperty]??``).trim();r.style[e.cssProperty]=``,n&&(i[e.cssVariable]=n)}return r.remove(),Object.keys(i).length>0?i:void 0}function he({launcherElement:e,variables:t}){let[n,r]=(0,p.useState)(),i=(0,p.useRef)(``),a=J(t);return(0,p.useLayoutEffect)(()=>{if(!e||!a){i.current=``,r(void 0);return}let n=e,o=null,s=!1;function c(){if(o=null,s||!n.isConnected)return;let e=X({launcherElement:n,variables:t}),a=Y(e);a!==i.current&&(i.current=a,r(e))}function l(){o===null&&(o=window.requestAnimationFrame(c))}c();let u=typeof MutationObserver>`u`?null:new MutationObserver(l);return u?.observe(document.documentElement,{attributes:!0}),document.body&&u?.observe(document.body,{attributes:!0}),document.head&&u?.observe(document.head,{childList:!0}),document.addEventListener(`load`,l,!0),()=>{s=!0,o!==null&&window.cancelAnimationFrame(o),u?.disconnect(),document.removeEventListener(`load`,l,!0)}},[e,a]),n}function Z({activeTarget:r,eventBus:i,hasPanel:a,hasCustomLauncher:o,isOpen:s,isViewportSettling:c=!1,memoryRoute:l,interviewRuntime:u,launcherTargetElement:d,onMemoryRouteChange:f,onOpenChange:h,options:g,resolvedLocale:v,runtimeState:ee,supportRuntime:y,viewport:b,widgetId:x}){let[S,ne]=(0,p.useState)(!1),C=(0,p.useRef)(!1),[T,re]=(0,p.useState)(0),[E,D]=(0,p.useState)(null),[O,k]=(0,p.useState)(null),[A,j]=(0,p.useState)({status:I.IDLE}),[M,P]=(0,p.useState)(null),F=(0,p.useRef)(null),L=(0,p.useRef)({height:b.height,width:b.width}),[R,z]=(0,p.useState)({hasRenderedOpen:s,isOpen:s}),B=(0,p.useRef)(null),V=R.hasRenderedOpen;if(R.isOpen!==s){let e={hasRenderedOpen:!1,isOpen:s};z(e),V=e.hasRenderedOpen}let H=g.brand?.name??`Customer Agent`,U=d??M,G=!!(U&&b.presentation===`desktop`),K=G?O?.isExpanded??!1:S,q=!!(U&&b.presentation===`fullscreen`),J=O?.anchor&&b.presentation===`desktop`?O.anchor:null,Y=q&&A.status===I.READY?A:null,me=!!J,X=!!Y||A.status===I.UNAVAILABLE,Z=G||q,ge=G?me:!q||X,_e=s&&Z&&!V,Q=(s&&G&&J&&!_e?T:null)??(s&&q&&X&&!_e?T:null),ve=s&&(!Z||ge&&Q!==null&&E===Q)?`open`:`closed`,ye=he({launcherElement:o?null:M,variables:g.launcher?.variables}),be=!g.embedded&&b.mode===`mobile`&&b.presentation===`fullscreen`;(!be||b.width!==L.current.width||b.height>L.current.height)&&(L.current={height:b.height,width:b.width});let $=be?L.current.height:b.height,xe=$===b.height?b:{...b,height:$},Se=(0,p.useCallback)(e=>{let r=F.current;r!==e&&(r&&n(r),F.current=e,P(e),e&&t(e))},[]),Ce=!g.embedded&&b.presentation===`fullscreen`?{"--customer-agent-host-fullscreen-bottom":`${pe(b,$)}px`,"--customer-agent-host-fullscreen-layout-height":`${$}px`}:null,we=G||Y||Ce?{...G?{"--customer-agent-anchor-panel-height":`${J?.panelHeight??0}px`,"--customer-agent-anchor-panel-left":`${J?.panelLeft??-9999}px`,"--customer-agent-anchor-panel-top":`${J?.panelTop??-9999}px`,"--customer-agent-anchor-panel-width":`${J?.panelWidth??0}px`}:null,...Y?{"--customer-agent-mobile-origin-height":`${Y.height}px`,"--customer-agent-mobile-origin-left":`${Y.left}px`,"--customer-agent-mobile-origin-top":`${Y.top}px`,"--customer-agent-mobile-origin-width":`${Y.width}px`}:null,...Ce}:void 0,Te={activeTarget:r,bootOptions:g,isExpanded:K,isOpen:s,locale:v,memoryRoute:l,runtimeState:ee,viewport:xe};return(0,p.useEffect)(()=>{function t(t){if(_(t.data)&&t.data.widgetId===x)if(t.data.action.type===m.OPEN_CHANGE)h(t.data.action.open);else if(t.data.action.type===m.EXPAND_CHANGE){let n=t.data.action.expanded;C.current!==n&&(C.current=n,i?.emit(n?e.WIDGET_EXPANDED:e.WIDGET_COLLAPSED)),ne(n)}else t.data.action.type===m.MEMORY_ROUTE_CHANGE&&f?.(t.data.action.route)}return window.addEventListener(`message`,t),()=>window.removeEventListener(`message`,t)},[i,f,h,x]),(0,p.useEffect)(()=>{if(!s||V)return;let e=window.requestAnimationFrame(()=>{z({hasRenderedOpen:!0,isOpen:!0}),re(e=>e+1)});return()=>window.cancelAnimationFrame(e)},[V,s]),(0,p.useEffect)(()=>{if(Q===null)return;let e=window.requestAnimationFrame(()=>{D(Q)});return()=>window.cancelAnimationFrame(e)},[Q]),(0,p.useLayoutEffect)(()=>{if(!U||b.presentation!==`fullscreen`){let e=window.requestAnimationFrame(()=>{j({status:I.IDLE})});return()=>window.cancelAnimationFrame(e)}let e=U,t=!1,n=null;function r(){if(t)return;if(!e.isConnected){j({status:I.UNAVAILABLE});return}let n=e.getBoundingClientRect();if(!Number.isFinite(n.left)||!Number.isFinite(n.top)||!Number.isFinite(n.width)||!Number.isFinite(n.height)||n.width<=0||n.height<=0){j({status:I.UNAVAILABLE});return}let r=B.current,i=g.embedded?r?.offsetParent:null,a=i instanceof HTMLElement?i.getBoundingClientRect():null;j({height:n.height,left:n.left-(a?.left??0),status:I.READY,top:n.top-(a?.top??0),width:n.width})}function i(){n!==null&&window.cancelAnimationFrame(n),n=window.requestAnimationFrame(()=>{n=null,r()})}r(),window.addEventListener(`resize`,i),window.addEventListener(`scroll`,i,!0);let a=typeof ResizeObserver>`u`?null:new ResizeObserver(i);return a?.observe(e),()=>{t=!0,n!==null&&window.cancelAnimationFrame(n),a?.disconnect(),window.removeEventListener(`resize`,i),window.removeEventListener(`scroll`,i,!0)}},[U,g.embedded,b.presentation]),(0,p.useLayoutEffect)(()=>{if(!U||!B.current||b.presentation!==`desktop`){k(null);return}let e=U,t,n=!1;async function r(){let{autoUpdate:r,computePosition:i,flip:a,offset:s,platform:c,shift:l}=await se();if(n||!B.current)return;let u=B.current,d=W(e),f=le(g,o),p=S,m=typeof g.launcher?.offset==`number`&&Number.isFinite(g.launcher.offset)?Math.max(0,g.launcher.offset):ae;async function h(){let e=ue({isExpanded:p,options:g,panelElement:u,viewport:b}),{x:t,y:r,placement:o}=await i(d,u,{middleware:[s(m),a({padding:oe}),l({padding:oe})],placement:f,platform:{...c,getDimensions(t){return t===u?e:c.getDimensions(t)}},strategy:`fixed`});if(n)return;let h=g.embedded?u.offsetParent:null,_=h instanceof HTMLElement?h.getBoundingClientRect():null,v=o.split(`-`)[0];k({anchor:{panelHeight:e.height,panelLeft:t-(_?.left??0),panelTop:r-(_?.top??0),panelWidth:e.width,placement:v},isExpanded:p})}t=r(d,u,()=>{h()})}return r(),()=>{n=!0,t?.()}},[o,U,g,g.embedded,g.launcher?.offset,g.launcher?.placement,g.position,S,b,b.presentation]),(0,w.jsxs)(p.Fragment,{children:[(0,w.jsx)(`style`,{"data-customer-agent":`styles`,children:te(x,g)}),(0,w.jsxs)(`div`,{"aria-live":`polite`,className:`customer-agent-app`,children:[(0,w.jsx)(`div`,{ref:B,className:`customer-agent-messenger-frame customer-agent-with-namespace-${x}`,"data-anchor-mode":G?`floating`:`default`,"data-anchor-placement":J?.placement,"data-mobile-origin":Y?`launcher`:void 0,"data-mobile-presentation":b.presentation,"data-viewport-settling":c?`true`:void 0,"data-customer-agent-surface-host":`panel`,"data-expanded":K?`true`:`false`,"data-state":ve,style:we,children:a?(0,w.jsx)(N,{loadingFallback:({state:e})=>(0,w.jsx)(fe,{isOpen:e.isOpen,isExpanded:e.isExpanded,options:e.bootOptions,resolvedLocale:e.locale,viewport:e.viewport}),state:Te,surface:`panel`,title:`${H} support chat`,widgetId:x,children:({dispatch:e,state:t})=>(0,w.jsx)(p.Suspense,{fallback:(0,w.jsx)(fe,{isOpen:t.isOpen,isExpanded:t.isExpanded,options:t.bootOptions,resolvedLocale:t.locale,viewport:t.viewport}),children:(0,w.jsx)(de,{bootOptions:t.bootOptions,memoryRoute:t.memoryRoute,activeTarget:t.activeTarget,eventBus:i,interviewRuntime:u,isOpen:t.isOpen,isExpanded:t.isExpanded,locale:t.locale,runtimeState:t.runtimeState,supportRuntime:y,viewport:t.viewport,onMemoryRouteChange:t=>e({route:t,type:m.MEMORY_ROUTE_CHANGE}),onExpandedChange:t=>e({expanded:t,type:m.EXPAND_CHANGE}),onOpenChange:t=>e({open:t,type:m.OPEN_CHANGE})})})}):null}),o?null:(0,w.jsx)(`div`,{ref:Se,className:`customer-agent-launcher-container customer-agent-with-namespace-${x}`,"data-mobile-presentation":b.presentation,"data-customer-agent-surface-host":`launcher`,"data-state":ve,style:g.launcher?.style,children:(0,w.jsx)(N,{state:Te,surface:`launcher`,title:`${H} chat launcher`,widgetId:x,children:({dispatch:e,state:t})=>(0,w.jsx)(ie,{bootOptions:t.bootOptions,isOpen:t.isOpen,launcherVariableStyle:ye,locale:t.locale,onPanelPreload:ce,onOpenChange:t=>e({open:t,type:m.OPEN_CHANGE})})})})]})]})}export{Z as WidgetApp,W as createStableLauncherReference,B as preloadWidgetPanelShell};
|
|
1
|
+
import{t as e}from"./constants-Do-S47mc.js";import{i as t,t as n}from"./launcherAnchorStore-JMTZZGKC.js";import{t as r}from"./i18n-Q8u2wtW4.js";import{r as i}from"../runtime.es.js";import{t as a}from"./react-CKmEJ8Ba.js";import{t as o}from"./client-duvjg9sB.js";import{t as s}from"./createLucideIcon-B1BLVEeA.js";import{n as c,t as l}from"./WidgetGlobalLoading-B_z-6_yk.js";import{t as u}from"./x-CcuT5rCV.js";import{t as d}from"./jsx-runtime-S2ZBQkZm.js";import{t as f}from"./classNames-3q0x02_x.js";var p=i(a(),1),m=Object.freeze({EXPAND_CHANGE:`expand-change`,MEMORY_ROUTE_CHANGE:`memory-route-change`,OPEN_CHANGE:`open-change`}),h=Object.freeze({ACTION:`customer-agent:frame-action`,STATE:`customer-agent:frame-state`});function g(e,t,n){return{action:n,surface:t,type:h.ACTION,widgetId:e}}function _(e){return typeof e==`object`&&!!e&&`type`in e&&e.type===h.ACTION}var v=`#customer-agent-widget{position:var(--customer-agent-host-container-position);inset:var(--customer-agent-host-container-inset);pointer-events:var(--customer-agent-host-container-pointer-events);z-index:var(--customer-agent-host-container-z-index)}#customer-agent-widget .customer-agent-app{position:var(--customer-agent-host-app-position);inset:var(--customer-agent-host-app-inset);pointer-events:none}#customer-agent-widget div.customer-agent-messenger-frame,:where(#customer-agent-widget .customer-agent-launcher-container){box-sizing:border-box;color-scheme:normal;background:0 0;border:0;margin:0;padding:0}#customer-agent-widget iframe.customer-agent-frame[data-customer-agent-surface]{border-radius:inherit;color-scheme:normal;visibility:visible;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;display:block;position:absolute;inset:0;overflow:hidden}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel]{position:var(--customer-agent-host-frame-position);left:var(--customer-agent-host-panel-left);right:var(--customer-agent-host-panel-right);bottom:var(--customer-agent-host-panel-bottom);background:var(--customer-agent-host-panel-bg);border:1px solid var(--customer-agent-host-panel-border);border-radius:var(--customer-agent-host-panel-radius);width:0;height:0;box-shadow:var(--customer-agent-host-panel-shadow);opacity:0;pointer-events:none;transform:var(--customer-agent-host-panel-closed-transform);transform-origin:var(--customer-agent-host-panel-transform-origin);visibility:hidden;z-index:2147483646;transition:width .22s,height .22s,left .22s,right .22s,top .22s,bottom .22s,border-radius .22s,opacity .16s,transform .22s,visibility .16s;overflow:hidden}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating]{left:var(--customer-agent-anchor-panel-left);right:auto;top:var(--customer-agent-anchor-panel-top);width:var(--customer-agent-anchor-panel-width,var(--customer-agent-host-panel-size-width));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-size-height));transform-origin:top;bottom:auto;transform:translateY(16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-anchor-placement=top]{transform-origin:bottom;transform:translateY(-16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-anchor-placement=left]{transform-origin:100%;transform:translate(-16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-anchor-placement=right]{transform-origin:0;transform:translate(16px)scale(.96)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-state=open]{width:var(--customer-agent-anchor-panel-width,var(--customer-agent-host-panel-size-width));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-size-height));opacity:1;pointer-events:auto;visibility:visible;transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-anchor-mode=floating][data-state=open]{transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-state=open][data-expanded=true]{width:var(--customer-agent-anchor-panel-width,var(--customer-agent-host-panel-expanded-size-width));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-expanded-size-height-legacy));height:var(--customer-agent-anchor-panel-height,var(--customer-agent-host-panel-expanded-size-height))}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen]{border:0}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-state=open]{top:auto;left:0;right:0;bottom:var(--customer-agent-host-fullscreen-bottom,0px);width:var(--customer-agent-host-fullscreen-width);max-width:100%;height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-height-legacy));max-height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-max-height-legacy));z-index:2147483647;border-radius:0;transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-state=open][data-viewport-settling=true]{transition:bottom .22s,opacity .16s,visibility .16s}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-mobile-origin=launcher]:not([data-state=open]){left:var(--customer-agent-mobile-origin-left);right:auto;top:var(--customer-agent-mobile-origin-top);width:var(--customer-agent-mobile-origin-width);height:var(--customer-agent-mobile-origin-height);transform-origin:50%;border-radius:0;bottom:auto;transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=bottom-sheet]{left:var(--customer-agent-host-bottom-sheet-left);right:var(--customer-agent-host-bottom-sheet-right);border:0;border-radius:14px 14px 0 0;bottom:0;transform:translateY(32px)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=bottom-sheet][data-state=open]{width:var(--customer-agent-host-bottom-sheet-width);z-index:2147483647;max-width:100%;height:min(640px,100dvh - 72px);max-height:calc(100dvh - 72px);transform:translate(0)scale(1)}:where(#customer-agent-widget .customer-agent-launcher-container){position:var(--customer-agent-host-frame-position);left:var(--customer-agent-host-launcher-left);right:var(--customer-agent-host-launcher-right);bottom:var(--customer-agent-host-launcher-bottom);width:var(--customer-agent-host-launcher-size);height:var(--customer-agent-host-launcher-size);background:var(--customer-agent-host-launcher-bg);box-shadow:var(--customer-agent-host-launcher-shadow);pointer-events:auto;z-index:2147483647;border-radius:9999px;transition:box-shadow .15s,transform .15s;animation:.18s ease-out both customer-agent-launcher-enter;overflow:visible}:where(#customer-agent-widget .customer-agent-launcher-container:hover){box-shadow:var(--customer-agent-host-launcher-shadow);transform:scale(1.1)}:where(#customer-agent-widget .customer-agent-launcher-container:active){transform:scale(.9)}:where(#customer-agent-widget .customer-agent-launcher-container[data-state=open]){box-shadow:var(--customer-agent-host-launcher-shadow)}:where(#customer-agent-widget .customer-agent-launcher-container[data-mobile-presentation=fullscreen][data-state=open]){z-index:2147483646}:where(#customer-agent-widget .customer-agent-launcher-container[data-mobile-presentation=bottom-sheet][data-state=open]){opacity:0;pointer-events:none;visibility:hidden;display:none;transform:scale(.88)}@keyframes customer-agent-launcher-enter{0%{opacity:0}to{opacity:1}}@media (width<=640px){#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel]{border:0}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-state=open]{width:var(--customer-agent-host-fullscreen-width);max-width:100%;height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-height-legacy));max-height:var(--customer-agent-host-fullscreen-layout-height,var(--customer-agent-host-fullscreen-max-height-legacy));transform:translate(0)scale(1)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=bottom-sheet][data-state=open]{height:min(640px,100dvh - 72px)}:where(#customer-agent-widget .customer-agent-launcher-container),#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen]:not([data-mobile-origin=launcher]){left:var(--customer-agent-host-mobile-inline-left);right:var(--customer-agent-host-mobile-inline-right);bottom:var(--customer-agent-host-mobile-bottom)}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-mobile-origin=launcher]:not([data-state=open]){left:var(--customer-agent-mobile-origin-left);right:auto;top:var(--customer-agent-mobile-origin-top);bottom:auto}#customer-agent-widget div.customer-agent-messenger-frame[data-customer-agent-surface-host=panel][data-mobile-presentation=fullscreen][data-state=open]{top:auto;left:0;right:0;bottom:var(--customer-agent-host-fullscreen-bottom,0px)}}`,ee=16,y=20,b=48;function x(e){return e.position===`bottom-left`?`translate(-16px, 24px) scale(0.96)`:`translate(16px, 24px) scale(0.96)`}function S(e){let t=e.position===`bottom-left`,n=e.position===`bottom-left`?`left bottom`:`right bottom`,r=x(e),i=e.embedded?`absolute`:`fixed`,a=t?`${y}px`:`auto`,o=t?`auto`:`${y}px`,s=t?`max(${y}px, env(safe-area-inset-left))`:`auto`,c=t?`auto`:`max(${y}px, env(safe-area-inset-right))`,l=e.embedded?`min(var(--customer-agent-host-panel-width), calc(100% - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`:`min(var(--customer-agent-host-panel-width), calc(100vw - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`,u=e.embedded?`min(var(--customer-agent-host-panel-max-height), calc(100% - var(--customer-agent-host-panel-expanded-height-offset)))`:`min(var(--customer-agent-host-panel-max-height), calc(100vh - var(--customer-agent-host-panel-expanded-height-offset)))`,d=e.embedded?`min(var(--customer-agent-host-panel-expanded-width), calc(100% - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`:`min(var(--customer-agent-host-panel-expanded-width), calc(100dvw - var(--customer-agent-host-panel-safe-margin) - var(--customer-agent-host-panel-safe-margin)))`,f=e.embedded?`calc(100% - var(--customer-agent-host-panel-expanded-height-offset))`:`calc(100dvh - var(--customer-agent-host-panel-expanded-height-offset))`,p=e.embedded?`100%`:`100vh`,m=e.embedded?`100%`:`100dvh`;return`#customer-agent-widget{${[`--customer-agent-host-container-position: ${e.embedded?`absolute`:`static`};`,`--customer-agent-host-container-inset: ${e.embedded?`0`:`auto`};`,`--customer-agent-host-container-pointer-events: ${e.embedded?`none`:`auto`};`,`--customer-agent-host-container-z-index: ${e.embedded?`10`:`auto`};`,`--customer-agent-host-app-position: ${e.embedded?`absolute`:`static`};`,`--customer-agent-host-app-inset: ${e.embedded?`0`:`auto`};`,`--customer-agent-host-frame-position: ${i};`,`--customer-agent-host-panel-left: ${a};`,`--customer-agent-host-panel-right: ${o};`,`--customer-agent-host-panel-bottom: ${y+b+ee}px;`,`--customer-agent-host-panel-width: 460px;`,`--customer-agent-host-panel-expanded-width: 716px;`,`--customer-agent-host-panel-expanded-height-offset: 104px;`,`--customer-agent-host-panel-max-height: 704px;`,`--customer-agent-host-panel-safe-margin: 20px;`,`--customer-agent-host-panel-size-width: ${l};`,`--customer-agent-host-panel-size-height: ${u};`,`--customer-agent-host-panel-expanded-size-width: ${d};`,`--customer-agent-host-panel-expanded-size-height-legacy: ${e.embedded?f:`calc(100vh - var(--customer-agent-host-panel-expanded-height-offset))`};`,`--customer-agent-host-panel-expanded-size-height: ${f};`,`--customer-agent-host-panel-bg: #ffffff;`,`--customer-agent-host-panel-border: #e5e5e5;`,`--customer-agent-host-panel-radius: 24px;`,`--customer-agent-host-panel-shadow: 0 1px 6px rgba(9, 14, 21, 0.06), 0 2px 32px rgba(9, 14, 21, 0.16);`,`--customer-agent-host-panel-closed-transform: ${r};`,`--customer-agent-host-panel-transform-origin: ${n};`,`--customer-agent-host-fullscreen-width: 100%;`,`--customer-agent-host-fullscreen-height-legacy: ${p};`,`--customer-agent-host-fullscreen-height: ${m};`,`--customer-agent-host-fullscreen-max-height-legacy: ${p};`,`--customer-agent-host-fullscreen-max-height: ${m};`,`--customer-agent-host-bottom-sheet-left: ${t?`0`:`auto`};`,`--customer-agent-host-bottom-sheet-right: ${t?`auto`:`0`};`,`--customer-agent-host-bottom-sheet-width: 100%;`,`--customer-agent-host-launcher-left: ${a};`,`--customer-agent-host-launcher-right: ${o};`,`--customer-agent-host-launcher-bottom: ${y}px;`,`--customer-agent-host-launcher-size: ${b}px;`,`--customer-agent-host-launcher-bg: #14161a;`,`--customer-agent-host-launcher-shadow: 0 4px 12px rgba(9, 14, 21, 0.1);`,`--customer-agent-host-mobile-inline-left: ${s};`,`--customer-agent-host-mobile-inline-right: ${c};`,`--customer-agent-host-mobile-bottom: max(${y}px, env(safe-area-inset-bottom));`].join(` `)}}`}function te(e,t){return`${v}\n${S(t)}`.trim()}var ne=s(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),C=o(),w=d();function T({closeLabel:e,onClose:t}){return(0,w.jsx)(`button`,{className:`relative z-[calc(var(--z-overlay)+1)] grid h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)] cursor-pointer place-items-center rounded-[var(--messenger-header-button-radius)] border-0 bg-transparent text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none`,"aria-label":e,"data-customer-agent-panel-close":``,"data-overlay-exempt":`true`,title:e,type:`button`,onClick:t,children:(0,w.jsx)(u,{size:16})})}var re=`/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-ease:initial}}}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-\\[calc\\(100\\%\\+0\\.5rem\\)\\]{top:calc(100% + .5rem)}.top-\\[var\\(--messenger-header-padding-y\\)\\]{top:var(--messenger-header-padding-y)}.right-\\[var\\(--messenger-header-button-size\\)\\]{right:var(--messenger-header-button-size)}.right-\\[var\\(--messenger-header-padding-x\\)\\]{right:var(--messenger-header-padding-x)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-\\[1\\]{z-index:1}.z-\\[4\\]{z-index:4}.z-\\[calc\\(var\\(--z-overlay\\)\\+1\\)\\]{z-index:calc(var(--z-overlay) + 1)}.z-\\[var\\(--z-composer\\)\\]{z-index:var(--z-composer)}.z-\\[var\\(--z-dropdown\\)\\]{z-index:var(--z-dropdown)}.z-\\[var\\(--z-overlay\\)\\]{z-index:var(--z-overlay)}.container{width:100%}.mx-auto{margin-inline:auto}.-mt-\\[var\\(--messenger-radius\\)\\]{margin-top:calc(var(--messenger-radius) * -1)}.mt-\\[var\\(--messenger-composer-actions-margin-top\\)\\]{margin-top:var(--messenger-composer-actions-margin-top)}.mt-\\[var\\(--messenger-conversation-part-group-gap\\)\\]{margin-top:var(--messenger-conversation-part-group-gap)}.mt-\\[var\\(--messenger-conversation-part-stack-gap\\)\\]{margin-top:var(--messenger-conversation-part-stack-gap)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-\\[18px\\]{height:18px}.h-\\[var\\(--messenger-composer-actions-height\\)\\]{height:var(--messenger-composer-actions-height)}.h-\\[var\\(--messenger-header-avatar-size\\)\\]{height:var(--messenger-header-avatar-size)}.h-\\[var\\(--messenger-header-button-size\\)\\]{height:var(--messenger-header-button-size)}.h-full{height:100%}.h-px{height:1px}.min-h-\\[304px\\]{min-height:304px}.min-h-\\[var\\(--messenger-composer-actions-height\\)\\]{min-height:var(--messenger-composer-actions-height)}.min-h-\\[var\\(--messenger-composer-height\\)\\]{min-height:var(--messenger-composer-height)}.min-h-full{min-height:100%}.w-\\[18px\\]{width:18px}.w-\\[280px\\]{width:280px}.w-\\[min\\(360px\\,100\\%\\)\\]{width:min(360px,100%)}.w-\\[min\\(360px\\,calc\\(100vw-2\\.5rem\\)\\)\\]{width:min(360px,100vw - 2.5rem)}.w-\\[var\\(--messenger-header-avatar-size\\)\\]{width:var(--messenger-header-avatar-size)}.w-\\[var\\(--messenger-header-button-size\\)\\]{width:var(--messenger-header-button-size)}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\\[min\\(100\\%\\,var\\(--messenger-conversation-part-max-width\\)\\)\\]{max-width:min(100%, var(--messenger-conversation-part-max-width))}.max-w-\\[var\\(--messenger-conversation-part-max-width\\)\\]{max-width:var(--messenger-conversation-part-max-width)}.max-w-full{max-width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-separate{border-collapse:separate}.origin-\\[var\\(--radix-popover-content-transform-origin\\)\\]{transform-origin:var(--radix-popover-content-transform-origin)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\\[customer-agent-chat-route-in_var\\(--duration-fast\\)_var\\(--ease-emphasis\\)_both\\]{animation:customer-agent-chat-route-in var(--duration-fast) var(--ease-emphasis) both}.animate-\\[customer-agent-entry-in_180ms_ease-out\\]{animation:.18s ease-out customer-agent-entry-in}.animate-\\[customer-agent-invite-mask-in_140ms_ease-out_both\\]{animation:.14s ease-out both customer-agent-invite-mask-in}.animate-\\[customer-agent-mobile-dock-in_180ms_var\\(--ease-emphasis\\)_both\\]{animation:customer-agent-mobile-dock-in .18s var(--ease-emphasis) both}.animate-\\[customer-agent-typing-dot-bounce_1\\.05s_ease-in-out_infinite\\]{animation:1.05s ease-in-out infinite customer-agent-typing-dot-bounce}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.\\[scrollbar-width\\:none\\]{scrollbar-width:none}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-\\[32px_minmax\\(0\\,1fr\\)\\]{grid-template-columns:32px minmax(0,1fr)}.grid-cols-\\[36px_minmax\\(0\\,1fr\\)\\]{grid-template-columns:36px minmax(0,1fr)}.grid-cols-\\[auto_1fr_auto\\]{grid-template-columns:auto 1fr auto}.grid-cols-\\[auto_auto_1fr_auto\\]{grid-template-columns:auto auto 1fr auto}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-\\[var\\(--messenger-composer-actions-gap\\)\\]{gap:var(--messenger-composer-actions-gap)}.gap-\\[var\\(--messenger-header-action-gap\\)\\]{gap:var(--messenger-header-action-gap)}.gap-\\[var\\(--messenger-header-gap\\)\\]{gap:var(--messenger-header-gap)}.self-center{align-self:center}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded-\\[10px\\]{border-radius:10px}.rounded-\\[var\\(--messenger-header-button-radius\\)\\]{border-radius:var(--messenger-header-button-radius)}.rounded-\\[var\\(--messenger-radius\\)\\]{border-radius:var(--messenger-radius)}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-messenger{border-radius:var(--messenger-radius)}.rounded-messenger-composer{border-radius:var(--messenger-composer-radius)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-l-\\[28px\\]{border-top-left-radius:28px;border-bottom-left-radius:28px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-\\[var\\(--gray-4\\)\\]{border-color:var(--gray-4)}.border-border-default{border-color:var(--border-default)}.border-border-divider{border-color:var(--border-divider)}.border-gray-1\\/70{border-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.border-gray-1\\/70{border-color:color-mix(in oklab, var(--gray-1) 70%, transparent)}}.border-gray-12{border-color:var(--gray-12)}.border-transparent{border-color:#0000}.border-t-\\[var\\(--customer-agent-primary\\)\\]{border-top-color:var(--customer-agent-primary)}.bg-\\[var\\(--bg-canvas\\)\\]{background-color:var(--bg-canvas)}.bg-\\[var\\(--customer-agent-primary\\)\\]{background-color:var(--customer-agent-primary)}.bg-bg-canvas{background-color:var(--bg-canvas)}.bg-bg-elevated{background-color:var(--bg-elevated)}.bg-current{background-color:currentColor}.bg-gray-1\\/15{background-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.bg-gray-1\\/15{background-color:color-mix(in oklab, var(--gray-1) 15%, transparent)}}.bg-gray-1\\/20{background-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.bg-gray-1\\/20{background-color:color-mix(in oklab, var(--gray-1) 20%, transparent)}}.bg-gray-3{background-color:var(--gray-3)}.bg-gray-4{background-color:var(--gray-4)}.bg-gray-12,.bg-gray-12\\/35{background-color:var(--gray-12)}@supports (color:color-mix(in lab, red, red)){.bg-gray-12\\/35{background-color:color-mix(in oklab, var(--gray-12) 35%, transparent)}}.bg-transparent{background-color:#0000}.fill-bg-elevated{fill:var(--bg-elevated)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.\\[padding\\:var\\(--messenger-composer-actions-padding-top\\)_var\\(--messenger-composer-actions-padding-right\\)_var\\(--messenger-composer-actions-padding-bottom\\)_var\\(--messenger-composer-actions-padding-left\\)\\]{padding:var(--messenger-composer-actions-padding-top) var(--messenger-composer-actions-padding-right) var(--messenger-composer-actions-padding-bottom) var(--messenger-composer-actions-padding-left)}.\\[padding\\:var\\(--messenger-composer-attachments-padding-top\\)_var\\(--messenger-composer-attachments-padding-right\\)_var\\(--messenger-composer-attachments-padding-bottom\\)_var\\(--messenger-composer-attachments-padding-left\\)\\]{padding:var(--messenger-composer-attachments-padding-top) var(--messenger-composer-attachments-padding-right) var(--messenger-composer-attachments-padding-bottom) var(--messenger-composer-attachments-padding-left)}.\\[padding\\:var\\(--messenger-composer-input-padding-top\\)_var\\(--messenger-composer-input-padding-right\\)_var\\(--messenger-composer-input-padding-bottom\\)_var\\(--messenger-composer-input-padding-left\\)\\]{padding:var(--messenger-composer-input-padding-top) var(--messenger-composer-input-padding-right) var(--messenger-composer-input-padding-bottom) var(--messenger-composer-input-padding-left)}.px-\\[var\\(--messenger-conversation-horizontal-padding\\)\\]{padding-inline:var(--messenger-conversation-horizontal-padding)}.px-\\[var\\(--messenger-conversation-part-padding-x\\)\\]{padding-inline:var(--messenger-conversation-part-padding-x)}.px-\\[var\\(--messenger-header-padding-x\\)\\]{padding-inline:var(--messenger-header-padding-x)}.py-\\[var\\(--messenger-conversation-part-padding-y\\)\\]{padding-block:var(--messenger-conversation-part-padding-y)}.py-\\[var\\(--messenger-header-padding-y\\)\\]{padding-block:var(--messenger-header-padding-y)}.pr-\\[var\\(--messenger-header-button-size\\)\\]{padding-right:var(--messenger-header-button-size)}.pb-\\[max\\(1rem\\,calc\\(1rem\\+var\\(--customer-agent-bottom-inset\\)\\)\\)\\]{padding-bottom:max(1rem, calc(1rem + var(--customer-agent-bottom-inset)))}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base-line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm-line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs-line-height))}.text-\\[0\\.9em\\]{font-size:.9em}.text-\\[length\\:var\\(--messenger-composer-text-size\\)\\]{font-size:var(--messenger-composer-text-size)}.text-\\[length\\:var\\(--messenger-header-subtitle-size\\)\\]{font-size:var(--messenger-header-subtitle-size)}.text-\\[length\\:var\\(--messenger-header-title-size\\)\\]{font-size:var(--messenger-header-title-size)}.leading-\\[var\\(--messenger-composer-text-line-height\\)\\]{--tw-leading:var(--messenger-composer-text-line-height);line-height:var(--messenger-composer-text-line-height)}.leading-\\[var\\(--messenger-header-subtitle-line-height\\)\\]{--tw-leading:var(--messenger-header-subtitle-line-height);line-height:var(--messenger-header-subtitle-line-height)}.leading-\\[var\\(--messenger-header-title-line-height\\)\\]{--tw-leading:var(--messenger-header-title-line-height);line-height:var(--messenger-header-title-line-height)}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--customer-agent-primary\\,var\\(--gray-12\\)\\)\\]{color:var(--customer-agent-primary,var(--gray-12))}.text-\\[var\\(--customer-agent-primary\\,var\\(--text-quaternary\\)\\)\\]{color:var(--customer-agent-primary,var(--text-quaternary))}.text-\\[var\\(--gray-1\\)\\]{color:var(--gray-1)}.text-\\[var\\(--text-primary\\)\\]{color:var(--text-primary)}.text-gray-1,.text-gray-1\\/70{color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.text-gray-1\\/70{color:color-mix(in oklab, var(--gray-1) 70%, transparent)}}.text-inherit{color:inherit}.text-text-primary{color:var(--text-primary)}.text-text-quaternary{color:var(--text-quaternary)}.text-text-secondary{color:var(--text-secondary)}.text-text-tertiary{color:var(--text-tertiary)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow-\\[-6px_0_18px_rgba\\(9\\,14\\,21\\,0\\.035\\)\\]{--tw-shadow:-6px 0 18px var(--tw-shadow-color,#090e1509);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_0_0_1px_var\\(--border-default\\)\\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--border-default));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_1px_2px_rgba\\(9\\,14\\,21\\,0\\.08\\)\\,0_3px_10px_rgba\\(9\\,14\\,21\\,0\\.09\\)\\]{--tw-shadow:0 1px 2px var(--tw-shadow-color,#090e1514), 0 3px 10px var(--tw-shadow-color,#090e1517);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-card{--tw-shadow:var(--shadow-card);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-circle{--tw-shadow:var(--shadow-circle);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-popover{--tw-shadow:var(--shadow-popover);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-bg-canvas{--tw-ring-color:var(--bg-canvas)}.\\[outline\\:0_solid_var\\(--border-strong\\)\\]{outline:0 solid var(--border-strong)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[background-color\\,box-shadow\\,color\\]{transition-property:background-color,box-shadow,color;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[border-color\\,outline-width\\]{transition-property:border-color,outline-width;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[max-height\\,opacity\\,transform\\,margin\\]{transition-property:max-height,opacity,transform,margin;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\\[rotate\\,scale\\]{transition-property:rotate,scale;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-\\[var\\(--ease-standard\\)\\]{--tw-ease:var(--ease-standard);transition-timing-function:var(--ease-standard)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\\[animation-delay\\:140ms\\]{animation-delay:.14s}.\\[animation-delay\\:280ms\\]{animation-delay:.28s}.\\[clip\\:rect\\(0\\,0\\,0\\,0\\)\\]{clip:rect(0,0,0,0)}.placeholder\\:text-text-placeholder::placeholder{color:var(--text-placeholder)}.first\\:rounded-tl-lg:first-child{border-top-left-radius:var(--radius-lg)}.last\\:rounded-tr-lg:last-child{border-top-right-radius:var(--radius-lg)}.focus-within\\:border-border-strong:focus-within{border-color:var(--border-strong)}.focus-within\\:\\[outline-width\\:var\\(--messenger-composer-focus-outline-width\\)\\]:focus-within{outline-width:var(--messenger-composer-focus-outline-width)}.focus-within\\:\\[outline-color\\:var\\(--customer-agent-primary\\,var\\(--primary\\)\\)\\]:focus-within{outline-color:var(--customer-agent-primary,var(--primary))}@media (hover:hover){.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-border-strong:hover{border-color:var(--border-strong)}.hover\\:bg-bg-canvas:hover{background-color:var(--bg-canvas)}.hover\\:bg-gray-1\\/20:hover{background-color:var(--gray-1)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-gray-1\\/20:hover{background-color:color-mix(in oklab, var(--gray-1) 20%, transparent)}}.hover\\:bg-gray-2:hover{background-color:var(--gray-2)}.hover\\:bg-gray-3:hover{background-color:var(--gray-3)}.hover\\:bg-gray-4:hover{background-color:var(--gray-4)}.hover\\:bg-gray-10:hover{background-color:var(--gray-10)}.hover\\:text-text-primary:hover{color:var(--text-primary)}.hover\\:text-text-secondary:hover{color:var(--text-secondary)}.hover\\:shadow-\\[0_1px_2px_rgba\\(9\\,14\\,21\\,0\\.06\\)\\,0_2px_8px_rgba\\(9\\,14\\,21\\,0\\.08\\)\\]:hover{--tw-shadow:0 1px 2px var(--tw-shadow-color,#090e150f), 0 2px 8px var(--tw-shadow-color,#090e1514);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus-visible\\:shadow-\\[inset_0_0_0_2px_rgba\\(255\\,255\\,255\\,0\\.95\\)\\]:focus-visible{--tw-shadow:inset 0 0 0 2px var(--tw-shadow-color,#fffffff2);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:shadow-\\[var\\(--shadow-circle\\)\\,var\\(--shadow-focus\\)\\]:focus-visible{--tw-shadow:var(--shadow-circle), var(--shadow-focus);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:shadow-\\[var\\(--shadow-focus\\)\\]:focus-visible{--tw-shadow:var(--shadow-focus);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:shadow-none:focus-visible{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\\:bg-gray-12:active{background-color:var(--gray-12)}.enabled\\:cursor-pointer:enabled{cursor:pointer}.enabled\\:bg-\\[var\\(--customer-agent-primary\\,var\\(--gray-12\\)\\)\\]:enabled{background-color:var(--customer-agent-primary,var(--gray-12))}.enabled\\:text-gray-1:enabled{color:var(--gray-1)}@media (hover:hover){.enabled\\:hover\\:bg-gray-12:enabled:hover{background-color:var(--gray-12)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-gray-3:disabled{background-color:var(--gray-3)}.disabled\\:text-gray-7:disabled{color:var(--gray-7)}.disabled\\:opacity-40:disabled{opacity:.4}.data-\\[active\\=true\\]\\:border-border-strong[data-active=true]{border-color:var(--border-strong)}.data-\\[active\\=true\\]\\:\\[outline-width\\:var\\(--messenger-composer-focus-outline-width\\)\\][data-active=true]{outline-width:var(--messenger-composer-focus-outline-width)}.data-\\[active\\=true\\]\\:\\[outline-color\\:var\\(--customer-agent-primary\\,var\\(--primary\\)\\)\\][data-active=true]{outline-color:var(--customer-agent-primary,var(--primary))}.data-\\[expanded\\=true\\]\\:\\[--messenger-conversation-part-max-width\\:520px\\][data-expanded=true]{--messenger-conversation-part-max-width:520px}.data-\\[state\\=open\\]\\:animate-\\[customer-agent-invite-popover-in_180ms_var\\(--ease-emphasis\\)_both\\][data-state=open]{animation:customer-agent-invite-popover-in .18s var(--ease-emphasis) both}.data-\\[state\\=open\\]\\:animate-\\[customer-agent-mobile-dock-in_180ms_var\\(--ease-emphasis\\)_both\\][data-state=open]{animation:customer-agent-mobile-dock-in .18s var(--ease-emphasis) both}.data-\\[state\\=open\\]\\:animate-\\[customer-agent-mobile-dock-overlay-in_160ms_ease-out_both\\][data-state=open]{animation:.16s ease-out both customer-agent-mobile-dock-overlay-in}.data-\\[state\\=open\\]\\:bg-gray-3[data-state=open]{background-color:var(--gray-3)}.data-\\[state\\=open\\]\\:text-\\[var\\(--customer-agent-primary\\,var\\(--gray-12\\)\\)\\][data-state=open]{color:var(--customer-agent-primary,var(--gray-12))}.data-\\[state\\=open\\]\\:text-text-primary[data-state=open]{color:var(--text-primary)}.data-\\[viewport-mode\\=mobile\\]\\:h-\\[var\\(--customer-agent-visual-height\\)\\][data-viewport-mode=mobile]{height:var(--customer-agent-visual-height)}.data-\\[viewport-mode\\=mobile\\]\\:rounded-none[data-viewport-mode=mobile]{border-radius:0}.data-\\[viewport-mode\\=mobile\\]\\:border-l-0[data-viewport-mode=mobile]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\\[viewport-mode\\=mobile\\]\\:shadow-none[data-viewport-mode=mobile]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (prefers-reduced-motion:reduce){.motion-reduce\\:animate-none{animation:none}.motion-reduce\\:will-change-auto{will-change:auto}}.\\[\\&\\:\\:-webkit-scrollbar\\]\\:hidden::-webkit-scrollbar{display:none}.\\[\\&\\:placeholder-shown\\]\\:\\!\\[height\\:calc\\(var\\(--messenger-composer-text-line-height\\)\\+var\\(--messenger-composer-input-padding-top\\)\\+var\\(--messenger-composer-input-padding-bottom\\)\\)\\]:placeholder-shown{height:calc(var(--messenger-composer-text-line-height) + var(--messenger-composer-input-padding-top) + var(--messenger-composer-input-padding-bottom))!important}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:flex>[data-radix-scroll-area-content]{display:flex}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:min-h-full>[data-radix-scroll-area-content]{min-height:100%}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:flex-col>[data-radix-scroll-area-content]{flex-direction:column}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:self-stretch>[data-radix-scroll-area-content]{align-self:stretch}.\\[\\&\\>\\[data-radix-scroll-area-content\\]\\]\\:bg-inherit>[data-radix-scroll-area-content]{background-color:inherit}.\\[\\&\\>div\\]\\:flex>div{display:flex}.\\[\\&\\>div\\]\\:min-h-full>div{min-height:100%}.\\[\\&\\>div\\]\\:flex-col>div{flex-direction:column}.\\[\\&\\>div\\]\\:self-stretch>div{align-self:stretch}.\\[\\&\\>div\\]\\:bg-inherit>div{background-color:inherit}:root{--brand-50:#f0eefe;--brand-100:#dcd8fd;--brand-200:#bdb5fb;--brand-300:#9388f8;--brand-400:#6457f4;--brand-500:#3a2bf0;--brand-600:#1f11ed;--brand-700:#1a0dc4;--brand-800:#170b99;--brand-900:#120873;--brand-950:#0b044a;--brand-a-04:#1f11ed0a;--brand-a-06:#1f11ed0f;--brand-a-08:#1f11ed14;--brand-a-12:#1f11ed1f;--brand-a-20:#1f11ed33;--brand-a-32:#1f11ed52;--brand-a-48:#1f11ed7a;--gray-1:#fff;--gray-2:#fafafa;--gray-3:#f7f7f7;--gray-4:#f5f5f5;--gray-5:#ededed;--gray-6:#e5e5e5;--gray-7:#d6d6d6;--gray-8:#a0a2a6;--gray-9:#6c6f74;--gray-10:#4e5155;--gray-11:#14161a;--gray-12:#090e15;--text-placeholder:#6c6f74;--text-muted-warm:#6c6f74;--bg-app:#f5f5f5;--bg-app-2:#fafafa;--bg-canvas:#fff;--bg-surface:#f5f5f5;--bg-elevated:#fff;--bg-pill-neutral:#f5f5f5;--text-primary:#14161a;--text-secondary:#14161a;--text-tertiary:#6c6f74;--text-quaternary:#a0a2a6;--text-muted:#6c6f74;--success-bg:#22c55e1a;--success-fg:#16a34a;--error-bg:#dc26261a;--error-fg:#dc2626;--warning-bg:#eab3081f;--warning-fg:#b45309;--info-bg:#f5f5f5;--info-fg:#14161a;--border-subtle:#f5f5f5;--border-default:#ededed;--border-strong:#e5e5e5;--border-divider:#ededed;--font-sans:"Inter", "PingFang SC", system-ui, sans-serif;--font-display:"Playfair Display", "Songti SC", serif;--font-display-2:"Poppins", system-ui, sans-serif;--font-content:var(--font-sans);--font-nav:var(--font-display-2);--font-num:var(--font-display-2);--font-mono:"Geist Mono", ui-monospace, Menlo, monospace;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-14:14px;--radius-lg:16px;--radius-18:18px;--radius-xl:20px;--radius-2xl:24px;--radius-3xl:28px;--radius-32:32px;--radius-40:40px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--shadow-card:0 1px 2px #090e150f;--shadow-card-lg:0 1px 6px #090e150f, 0 2px 32px #090e1529;--shadow-cta:none;--shadow-popover:0 1px 15px #090e151a;--shadow-dialog:0 1px 6px #090e150f, 0 2px 32px #090e1529;--shadow-circle:0 1px 2px #090e150f;--shadow-error-ring:0 0 0 3px #dc26262e;--shadow-focus:0 0 0 3px var(--border-default);--messenger-width:400px;--messenger-expanded-width:688px;--messenger-max-height:704px;--messenger-radius:24px;--messenger-iframe-padding:10px;--messenger-global-horizontal-padding:20px;--messenger-conversation-horizontal-padding:16px;--messenger-header-padding-x:13px;--messenger-header-padding-y:8px;--messenger-header-gap:8px;--messenger-header-action-gap:0px;--messenger-header-avatar-size:32px;--messenger-header-button-size:38px;--messenger-header-button-radius:10px;--messenger-header-icon-size:16px;--messenger-header-title-size:14px;--messenger-header-title-line-height:1.1em;--messenger-header-subtitle-size:13px;--messenger-header-subtitle-line-height:19px;--messenger-composer-height:52px;--messenger-composer-radius:16px;--messenger-chat-composer-radius:10px;--messenger-conversation-part-radius:20px;--messenger-conversation-part-adjacent-radius:4px;--messenger-conversation-part-padding-x:16px;--messenger-conversation-part-padding-y:12px;--messenger-conversation-part-max-width:280px;--messenger-conversation-part-group-gap:4px;--messenger-conversation-part-stack-gap:16px;--messenger-typing-indicator-radius:16px;--messenger-composer-text-size:14px;--messenger-composer-text-line-height:20px;--messenger-composer-input-padding-top:0px;--messenger-composer-input-padding-right:8px;--messenger-composer-input-padding-bottom:2px;--messenger-composer-input-padding-left:16px;--messenger-composer-attachments-padding-top:0px;--messenger-composer-attachments-padding-right:8px;--messenger-composer-attachments-padding-bottom:0px;--messenger-composer-attachments-padding-left:12px;--messenger-composer-actions-height:32px;--messenger-composer-actions-gap:8px;--messenger-composer-actions-padding-top:4px;--messenger-composer-actions-padding-right:8px;--messenger-composer-actions-padding-bottom:0px;--messenger-composer-actions-padding-left:12px;--messenger-composer-actions-margin-top:8px;--messenger-composer-focus-outline-width:2px;--text-xs:.75rem;--text-xs-line-height:.875rem;--text-sm:.8125rem;--text-sm-line-height:1.1875rem;--text-base:.875rem;--text-base-line-height:1.25rem;--text-lg:1rem;--text-lg-line-height:1.5rem;--text-xl:1.125rem;--text-xl-line-height:1.125rem;--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-emphasis:cubic-bezier(.2, 0, 0, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--duration-instant:.1s;--duration-fast:.16s;--duration-base:.24s;--duration-slow:.32s;--z-base:0;--z-glow:1;--z-composer:2;--z-sticky:10;--z-sidebar:20;--z-dropdown:40;--z-overlay:60;--z-dialog:61;--z-toast:80;--z-debug:999;--background:var(--bg-app);--foreground:var(--text-primary);--card:var(--bg-canvas);--card-foreground:var(--text-primary);--popover:var(--bg-elevated);--popover-foreground:var(--text-primary);--primary:var(--gray-12);--primary-foreground:var(--gray-1);--secondary:var(--bg-canvas);--secondary-foreground:var(--text-secondary);--muted:var(--gray-4);--muted-foreground:var(--text-tertiary);--accent:var(--bg-pill-neutral);--accent-foreground:var(--text-primary);--destructive:var(--error-fg);--border:var(--border-default);--input:var(--bg-canvas);--ring:var(--border-default)}:root,:host{--radius-xs:var(--radius-xs);--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--radius-3xl:var(--radius-3xl);--radius-full:var(--radius-full);--shadow-card:var(--shadow-card);--shadow-card-lg:var(--shadow-card-lg);--shadow-cta:var(--shadow-cta);--shadow-popover:var(--shadow-popover);--shadow-dialog:var(--shadow-dialog);--shadow-circle:var(--shadow-circle);--text-xs:var(--text-xs);--text-sm:var(--text-sm);--text-base:var(--text-base);--text-lg:var(--text-lg);--text-xl:var(--text-xl);--font-sans:var(--font-sans);--font-display:var(--font-display);--font-content:var(--font-content);--font-mono:var(--font-mono)}html,body,#root{background:0 0;width:100%;height:100%;margin:0;overflow:hidden}*{box-sizing:border-box}button,input,textarea{font:inherit}.customer-agent-launcher-button{background-color:var(--customer-agent-launcher-bg-color,transparent);border-color:var(--customer-agent-launcher-border-color,transparent);border-radius:var(--customer-agent-launcher-border-radius,9999px);border-style:var(--customer-agent-launcher-border-style,solid);border-width:var(--customer-agent-launcher-border-width,0);box-shadow:var(--customer-agent-launcher-box-shadow,none);color:var(--customer-agent-launcher-color,var(--gray-1))}.customer-agent-launcher-button:hover{background-color:var(--customer-agent-launcher-hover-bg-color,var(--customer-agent-launcher-bg-color,transparent));border-color:var(--customer-agent-launcher-hover-border-color,var(--customer-agent-launcher-border-color,transparent));border-radius:var(--customer-agent-launcher-hover-border-radius,var(--customer-agent-launcher-border-radius,9999px));border-style:var(--customer-agent-launcher-hover-border-style,var(--customer-agent-launcher-border-style,solid));border-width:var(--customer-agent-launcher-hover-border-width,var(--customer-agent-launcher-border-width,0));box-shadow:var(--customer-agent-launcher-hover-box-shadow,var(--customer-agent-launcher-box-shadow,none));color:var(--customer-agent-launcher-hover-color,var(--customer-agent-launcher-color,var(--gray-1)))}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}`,E=null,D=null;function O(){return E?Promise.resolve(E):(D??=import(`./panel-BEfk8hPY.js`).then(e=>(E=e.default,E)).catch(e=>{throw D=null,e}),D)}function k(e,t,n){let r=e.createElement(`style`);r.dataset.customerAgentStyle=t,r.textContent=n,e.head.appendChild(r)}function A(e,t,n){let r=e.contentDocument;if(!r)throw Error(`CustomerAgent could not initialize iframe document.`);r.documentElement.dir=t.locale.dir,r.documentElement.lang=t.locale.locale,r.head.replaceChildren(),k(r,`frame`,re),n===`panel`&&E&&k(r,`panel`,E);let i=r.createElement(`div`);return i.id=`root`,i.style.position=`relative`,i.style.width=`100%`,i.style.height=`100%`,r.body.replaceChildren(i),{mount:i,stylesReady:n!==`panel`||!!E}}function j(e,t){let n=e.contentDocument;!n||n.head.querySelector(`[data-customer-agent-style='panel']`)||k(n,`panel`,t)}function M({children:e,loadingFallback:t,state:n,stylesReady:r,surface:i,targetWindow:a,widgetId:o}){function s(e){a.parent.postMessage(g(o,i,e),`*`)}let c=!r&&t?t({dispatch:s,state:n}):e({dispatch:s,state:n});return i===`panel`?(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(`div`,{className:`absolute top-[var(--messenger-header-padding-y)] right-[var(--messenger-header-padding-x)] z-[calc(var(--z-overlay)+1)] flex items-center gap-[var(--messenger-header-action-gap)]`,children:(0,w.jsx)(T,{closeLabel:n.locale.messages.close_chat,onClose:()=>s({open:!1,type:m.OPEN_CHANGE})})}),c]}):c}function N({children:e,loadingFallback:t,state:n,surface:r,title:i,widgetId:a}){let[o,s]=(0,p.useState)(null),[c,l]=(0,p.useState)(r!==`panel`),u=(0,p.useRef)(null),d=r===`panel`?`customer-agent-messenger-frame`:`customer-agent-launcher-frame`;return(0,p.useEffect)(()=>{if(r!==`panel`||!o)return;let e=!1;return O().then(t=>{e||(j(o,t),l(!0))}).catch(()=>{e||l(!0)}),()=>{e=!0}},[o,r]),(0,p.useEffect)(()=>{if(o?.contentWindow){if(u.current)o.contentDocument?.documentElement.setAttribute(`lang`,n.locale.locale),o.contentDocument?.documentElement.setAttribute(`dir`,n.locale.dir);else{let e=A(o,n,r);l(e.stylesReady),u.current=(0,C.createRoot)(e.mount)}u.current.render((0,p.createElement)(M,{children:e,loadingFallback:t,state:n,stylesReady:c,surface:r,targetWindow:o.contentWindow,widgetId:a}))}}),(0,p.useEffect)(()=>()=>{u.current?.unmount(),u.current=null},[]),(0,w.jsx)(`iframe`,{allow:`clipboard-write`,allowFullScreen:!0,className:`${d} customer-agent-frame customer-agent-with-namespace-${a}`,"data-customer-agent-frame":`true`,"data-customer-agent-surface":r,id:`customer-agent-widget-${a}-${r}`,ref:s,title:i})}function P(e){return e?.brand?.name??`Customer Agent`}function F(e,t){let n=e?.launcher?.style?.color,r={...t};return(typeof n==`number`||typeof n==`string`)&&(r.color=String(n)),Object.keys(r).length>0?r:void 0}function ie({bootOptions:e,isOpen:t,launcherVariableStyle:n,locale:i,onOpenChange:a,onPanelPreload:o}){let s=P(e),l=F(e,n),u=r(t?i.messages.launcher_close:i.messages.launcher_open,{title:s});return(0,w.jsxs)(`button`,{className:`customer-agent-launcher-button relative grid h-full w-full cursor-pointer place-items-center rounded-full border-0 bg-transparent text-[var(--gray-1)] outline-none focus-visible:shadow-[inset_0_0_0_2px_rgba(255,255,255,0.95)]`,"aria-label":u,title:u,"data-state":t?`open`:`closed`,style:l,onFocus:o,onClick:()=>a(!t),onPointerDown:o,onPointerEnter:o,children:[(0,w.jsx)(c,{className:f(`absolute h-6 w-6 transition-[rotate,scale] duration-150 ease-out`,t?`scale-0 rotate-90`:`scale-100 rotate-0`),"aria-hidden":`true`}),(0,w.jsx)(ne,{className:f(`absolute h-6 w-6 transition-[rotate,scale] duration-150 ease-out`,t?`scale-100 rotate-0`:`scale-0 -rotate-90`),"aria-hidden":`true`}),(0,w.jsx)(`span`,{className:`absolute h-px w-px overflow-hidden whitespace-nowrap [clip:rect(0,0,0,0)]`,children:u})]})}var ae=16,oe=20,I=Object.freeze({IDLE:`idle`,READY:`ready`,UNAVAILABLE:`unavailable`}),L=null,R=null;function se(){return R??=import(`./floating-ui.dom-Cs9alM6A.js`).then(e=>e.a).catch(e=>{throw R=null,e}),R}function z(){return L??=Promise.all([O(),import(`./Panel-XDrfFRK4.js`)]).then(([,e])=>e).catch(e=>{throw L=null,e}),L}function ce(){z()}async function B(){await Promise.all([O(),se()])}function V(e){return e.position===`bottom-left`?`top-start`:`top-end`}function le(e,t){return e.launcher?.placement??(t?`top`:V(e))}function H(e,t,n){let r=e.embedded?t.offsetParent:null,i=r instanceof HTMLElement?r.getBoundingClientRect():null;return{height:i?.height??n.height,width:i?.width??n.width}}function U(e){return Math.max(0,e)}function ue({isExpanded:e,options:t,panelElement:n,viewport:r}){let i=H(t,n,r);return e?{height:U(i.height-104),width:U(Math.min(716,i.width-40))}:{height:U(Math.min(704,i.height-104)),width:U(Math.min(460,i.width-40))}}function W(e){return{contextElement:e,getBoundingClientRect(){let t=e.getBoundingClientRect(),n=e.offsetWidth||t.width,r=e.offsetHeight||t.height,i=t.left+(t.width-n)/2,a=t.top+(t.height-r)/2;return{bottom:a+r,height:r,left:i,right:i+n,top:a,width:n,x:i,y:a}}}}var de=(0,p.lazy)(async()=>({default:(await z()).WidgetPanel})),G=.55,K={"bg-color":{cssProperty:`backgroundColor`,cssVariable:`--customer-agent-launcher-bg-color`},"border-color":{cssProperty:`borderColor`,cssVariable:`--customer-agent-launcher-border-color`},"border-radius":{cssProperty:`borderRadius`,cssVariable:`--customer-agent-launcher-border-radius`},"border-style":{cssProperty:`borderStyle`,cssVariable:`--customer-agent-launcher-border-style`},"border-width":{cssProperty:`borderWidth`,cssVariable:`--customer-agent-launcher-border-width`},"box-shadow":{cssProperty:`boxShadow`,cssVariable:`--customer-agent-launcher-box-shadow`},color:{cssProperty:`color`,cssVariable:`--customer-agent-launcher-color`},"hover-bg-color":{cssProperty:`backgroundColor`,cssVariable:`--customer-agent-launcher-hover-bg-color`},"hover-border-color":{cssProperty:`borderColor`,cssVariable:`--customer-agent-launcher-hover-border-color`},"hover-border-radius":{cssProperty:`borderRadius`,cssVariable:`--customer-agent-launcher-hover-border-radius`},"hover-border-style":{cssProperty:`borderStyle`,cssVariable:`--customer-agent-launcher-hover-border-style`},"hover-border-width":{cssProperty:`borderWidth`,cssVariable:`--customer-agent-launcher-hover-border-width`},"hover-box-shadow":{cssProperty:`boxShadow`,cssVariable:`--customer-agent-launcher-hover-box-shadow`},"hover-color":{cssProperty:`color`,cssVariable:`--customer-agent-launcher-hover-color`}};function fe({isExpanded:e,isOpen:t,options:n,resolvedLocale:i,viewport:a}){let o=n?.brand?.name??`Customer Agent`,s=r(i.messages.support_chat_label,{title:o}),c=!!n?.embedded,u=a.mode===`mobile`&&a.presentation===`fullscreen`&&!c?a.height:a.visualHeight,d={"--customer-agent-primary":n?.theme?.primaryColor??`var(--gray-12)`,"--customer-agent-visual-height":`${u}px`};return(0,w.jsx)(`section`,{className:`customer-agent-panel relative flex h-full w-full flex-col overflow-hidden rounded-[var(--messenger-radius)] bg-[var(--bg-canvas)] text-[var(--text-primary)] outline-none data-[viewport-mode=mobile]:h-[var(--customer-agent-visual-height)] data-[viewport-mode=mobile]:rounded-none`,"aria-hidden":!t,"aria-label":s,"data-expanded":e?`true`:`false`,"data-state":t?`open`:`closed`,"data-viewport-mode":a.mode,style:d,children:(0,w.jsx)(l,{label:`Loading conversations`})})}function q(e){return Object.entries(K).flatMap(([t,n])=>{let r=e?.[t];return typeof r!=`number`&&typeof r!=`string`?[]:[{definition:n,value:String(r)}]})}function pe(e,t=e.height){if(e.mode!==`mobile`)return 0;let n=Math.round(t*G);return Math.min(e.keyboardInset,n)}function J(e){return q(e).map(({definition:e,value:t})=>`${e.cssVariable}:${t}`).join(`;`)}function Y(e){return e?Object.entries(e).map(([e,t])=>`${e}:${String(t)}`).sort().join(`;`):``}function me(e){let t=document.createElement(`div`);return t.dataset.customerAgentLauncherVariableProbe=`true`,t.setAttribute(`aria-hidden`,`true`),t.style.position=`fixed`,t.style.left=`-9999px`,t.style.top=`0`,t.style.width=`1px`,t.style.height=`1px`,t.style.opacity=`0`,t.style.overflow=`hidden`,t.style.pointerEvents=`none`,e.appendChild(t),t}function X({launcherElement:e,variables:t}){let n=q(t);if(n.length===0)return;let r=me(e);for(let{definition:e,value:t}of n)r.style.setProperty(e.cssVariable,t);let i={};for(let{definition:e}of n){r.style[e.cssProperty]=`var(${e.cssVariable})`;let t=window.getComputedStyle(r),n=String(t[e.cssProperty]??``).trim();r.style[e.cssProperty]=``,n&&(i[e.cssVariable]=n)}return r.remove(),Object.keys(i).length>0?i:void 0}function he({launcherElement:e,variables:t}){let[n,r]=(0,p.useState)(),i=(0,p.useRef)(``),a=J(t);return(0,p.useLayoutEffect)(()=>{if(!e||!a){i.current=``,r(void 0);return}let n=e,o=null,s=!1;function c(){if(o=null,s||!n.isConnected)return;let e=X({launcherElement:n,variables:t}),a=Y(e);a!==i.current&&(i.current=a,r(e))}function l(){o===null&&(o=window.requestAnimationFrame(c))}c();let u=typeof MutationObserver>`u`?null:new MutationObserver(l);return u?.observe(document.documentElement,{attributes:!0}),document.body&&u?.observe(document.body,{attributes:!0}),document.head&&u?.observe(document.head,{childList:!0}),document.addEventListener(`load`,l,!0),()=>{s=!0,o!==null&&window.cancelAnimationFrame(o),u?.disconnect(),document.removeEventListener(`load`,l,!0)}},[e,a]),n}function Z({activeTarget:r,eventBus:i,hasPanel:a,hasCustomLauncher:o,isOpen:s,isViewportSettling:c=!1,memoryRoute:l,interviewRuntime:u,launcherTargetElement:d,onMemoryRouteChange:f,onOpenChange:h,options:g,resolvedLocale:v,runtimeState:ee,supportRuntime:y,viewport:b,widgetId:x}){let[S,ne]=(0,p.useState)(!1),C=(0,p.useRef)(!1),[T,re]=(0,p.useState)(0),[E,D]=(0,p.useState)(null),[O,k]=(0,p.useState)(null),[A,j]=(0,p.useState)({status:I.IDLE}),[M,P]=(0,p.useState)(null),F=(0,p.useRef)(null),L=(0,p.useRef)({height:b.height,width:b.width}),[R,z]=(0,p.useState)({hasRenderedOpen:s,isOpen:s}),B=(0,p.useRef)(null),V=R.hasRenderedOpen;if(R.isOpen!==s){let e={hasRenderedOpen:!1,isOpen:s};z(e),V=e.hasRenderedOpen}let H=g.brand?.name??`Customer Agent`,U=d??M,G=!!(U&&b.presentation===`desktop`),K=G?O?.isExpanded??!1:S,q=!!(U&&b.presentation===`fullscreen`),J=O?.anchor&&b.presentation===`desktop`?O.anchor:null,Y=q&&A.status===I.READY?A:null,me=!!J,X=!!Y||A.status===I.UNAVAILABLE,Z=G||q,ge=G?me:!q||X,_e=s&&Z&&!V,Q=(s&&G&&J&&!_e?T:null)??(s&&q&&X&&!_e?T:null),ve=s&&(!Z||ge&&Q!==null&&E===Q)?`open`:`closed`,ye=he({launcherElement:o?null:M,variables:g.launcher?.variables}),be=!g.embedded&&b.mode===`mobile`&&b.presentation===`fullscreen`;(!be||b.width!==L.current.width||b.height>L.current.height)&&(L.current={height:b.height,width:b.width});let $=be?L.current.height:b.height,xe=$===b.height?b:{...b,height:$},Se=(0,p.useCallback)(e=>{let r=F.current;r!==e&&(r&&n(r),F.current=e,P(e),e&&t(e))},[]),Ce=!g.embedded&&b.presentation===`fullscreen`?{"--customer-agent-host-fullscreen-bottom":`${pe(b,$)}px`,"--customer-agent-host-fullscreen-layout-height":`${$}px`}:null,we=G||Y||Ce?{...G?{"--customer-agent-anchor-panel-height":`${J?.panelHeight??0}px`,"--customer-agent-anchor-panel-left":`${J?.panelLeft??-9999}px`,"--customer-agent-anchor-panel-top":`${J?.panelTop??-9999}px`,"--customer-agent-anchor-panel-width":`${J?.panelWidth??0}px`}:null,...Y?{"--customer-agent-mobile-origin-height":`${Y.height}px`,"--customer-agent-mobile-origin-left":`${Y.left}px`,"--customer-agent-mobile-origin-top":`${Y.top}px`,"--customer-agent-mobile-origin-width":`${Y.width}px`}:null,...Ce}:void 0,Te={activeTarget:r,bootOptions:g,isExpanded:K,isOpen:s,locale:v,memoryRoute:l,runtimeState:ee,viewport:xe};return(0,p.useEffect)(()=>{function t(t){if(_(t.data)&&t.data.widgetId===x)if(t.data.action.type===m.OPEN_CHANGE)h(t.data.action.open);else if(t.data.action.type===m.EXPAND_CHANGE){let n=t.data.action.expanded;C.current!==n&&(C.current=n,i?.emit(n?e.WIDGET_EXPANDED:e.WIDGET_COLLAPSED)),ne(n)}else t.data.action.type===m.MEMORY_ROUTE_CHANGE&&f?.(t.data.action.route)}return window.addEventListener(`message`,t),()=>window.removeEventListener(`message`,t)},[i,f,h,x]),(0,p.useEffect)(()=>{if(!s||V)return;let e=window.requestAnimationFrame(()=>{z({hasRenderedOpen:!0,isOpen:!0}),re(e=>e+1)});return()=>window.cancelAnimationFrame(e)},[V,s]),(0,p.useEffect)(()=>{if(Q===null)return;let e=window.requestAnimationFrame(()=>{D(Q)});return()=>window.cancelAnimationFrame(e)},[Q]),(0,p.useLayoutEffect)(()=>{if(!U||b.presentation!==`fullscreen`){let e=window.requestAnimationFrame(()=>{j({status:I.IDLE})});return()=>window.cancelAnimationFrame(e)}let e=U,t=!1,n=null;function r(){if(t)return;if(!e.isConnected){j({status:I.UNAVAILABLE});return}let n=e.getBoundingClientRect();if(!Number.isFinite(n.left)||!Number.isFinite(n.top)||!Number.isFinite(n.width)||!Number.isFinite(n.height)||n.width<=0||n.height<=0){j({status:I.UNAVAILABLE});return}let r=B.current,i=g.embedded?r?.offsetParent:null,a=i instanceof HTMLElement?i.getBoundingClientRect():null;j({height:n.height,left:n.left-(a?.left??0),status:I.READY,top:n.top-(a?.top??0),width:n.width})}function i(){n!==null&&window.cancelAnimationFrame(n),n=window.requestAnimationFrame(()=>{n=null,r()})}r(),window.addEventListener(`resize`,i),window.addEventListener(`scroll`,i,!0);let a=typeof ResizeObserver>`u`?null:new ResizeObserver(i);return a?.observe(e),()=>{t=!0,n!==null&&window.cancelAnimationFrame(n),a?.disconnect(),window.removeEventListener(`resize`,i),window.removeEventListener(`scroll`,i,!0)}},[U,g.embedded,b.presentation]),(0,p.useLayoutEffect)(()=>{if(!U||!B.current||b.presentation!==`desktop`){k(null);return}let e=U,t,n=!1;async function r(){let{autoUpdate:r,computePosition:i,flip:a,offset:s,platform:c,shift:l}=await se();if(n||!B.current)return;let u=B.current,d=W(e),f=le(g,o),p=S,m=typeof g.launcher?.offset==`number`&&Number.isFinite(g.launcher.offset)?Math.max(0,g.launcher.offset):ae;async function h(){let e=ue({isExpanded:p,options:g,panelElement:u,viewport:b}),{x:t,y:r,placement:o}=await i(d,u,{middleware:[s(m),a({padding:oe}),l({padding:oe})],placement:f,platform:{...c,getDimensions(t){return t===u?e:c.getDimensions(t)}},strategy:`fixed`});if(n)return;let h=g.embedded?u.offsetParent:null,_=h instanceof HTMLElement?h.getBoundingClientRect():null,v=o.split(`-`)[0];k({anchor:{panelHeight:e.height,panelLeft:t-(_?.left??0),panelTop:r-(_?.top??0),panelWidth:e.width,placement:v},isExpanded:p})}t=r(d,u,()=>{h()})}return r(),()=>{n=!0,t?.()}},[o,U,g,g.embedded,g.launcher?.offset,g.launcher?.placement,g.position,S,b,b.presentation]),(0,w.jsxs)(p.Fragment,{children:[(0,w.jsx)(`style`,{"data-customer-agent":`styles`,children:te(x,g)}),(0,w.jsxs)(`div`,{"aria-live":`polite`,className:`customer-agent-app`,children:[(0,w.jsx)(`div`,{ref:B,className:`customer-agent-messenger-frame customer-agent-with-namespace-${x}`,"data-anchor-mode":G?`floating`:`default`,"data-anchor-placement":J?.placement,"data-mobile-origin":Y?`launcher`:void 0,"data-mobile-presentation":b.presentation,"data-viewport-settling":c?`true`:void 0,"data-customer-agent-surface-host":`panel`,"data-expanded":K?`true`:`false`,"data-state":ve,style:we,children:a?(0,w.jsx)(N,{loadingFallback:({state:e})=>(0,w.jsx)(fe,{isOpen:e.isOpen,isExpanded:e.isExpanded,options:e.bootOptions,resolvedLocale:e.locale,viewport:e.viewport}),state:Te,surface:`panel`,title:`${H} support chat`,widgetId:x,children:({dispatch:e,state:t})=>(0,w.jsx)(p.Suspense,{fallback:(0,w.jsx)(fe,{isOpen:t.isOpen,isExpanded:t.isExpanded,options:t.bootOptions,resolvedLocale:t.locale,viewport:t.viewport}),children:(0,w.jsx)(de,{bootOptions:t.bootOptions,memoryRoute:t.memoryRoute,activeTarget:t.activeTarget,eventBus:i,interviewRuntime:u,isOpen:t.isOpen,isExpanded:t.isExpanded,locale:t.locale,runtimeState:t.runtimeState,supportRuntime:y,viewport:t.viewport,onMemoryRouteChange:t=>e({route:t,type:m.MEMORY_ROUTE_CHANGE}),onExpandedChange:t=>e({expanded:t,type:m.EXPAND_CHANGE}),onOpenChange:t=>e({open:t,type:m.OPEN_CHANGE})})})}):null}),o?null:(0,w.jsx)(`div`,{ref:Se,className:`customer-agent-launcher-container customer-agent-with-namespace-${x}`,"data-mobile-presentation":b.presentation,"data-customer-agent-surface-host":`launcher`,"data-state":ve,style:g.launcher?.style,children:(0,w.jsx)(N,{state:Te,surface:`launcher`,title:`${H} chat launcher`,widgetId:x,children:({dispatch:e,state:t})=>(0,w.jsx)(ie,{bootOptions:t.bootOptions,isOpen:t.isOpen,launcherVariableStyle:ye,locale:t.locale,onPanelPreload:ce,onOpenChange:t=>e({open:t,type:m.OPEN_CHANGE})})})})]})]})}export{Z as WidgetApp,W as createStableLauncherReference,B as preloadWidgetPanelShell};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./constants-Do-S47mc.js";import{r as t}from"./interviewTypes-Ch2NsXKB.js";import{t as n}from"./i18n-Q8u2wtW4.js";import{r}from"../runtime.es.js";import{t as i}from"./react-CKmEJ8Ba.js";import{A as a,C as o,D as s,E as ee,O as te,S as c,T as ne,_ as re,a as l,c as u,d,g as f,i as p,j as m,l as h,o as g,p as _,s as v,t as y,u as b,v as x,w as S,y as C}from"./WidgetComposer-C_Y7bwhP.js";import{n as w}from"./conversationRegistry-Y5Ouo35n.js";import{t as T}from"./jsx-runtime-S2ZBQkZm.js";import{t as E}from"./classNames-3q0x02_x.js";var D=r(i(),1),O=T();function k(e){return Array.isArray(e.content)?e.content.map(e=>e.type===`text`?e.text:``).filter(Boolean).join(`
|
|
2
|
+
`):String(e.content??``)}function A(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function j(e){let t=e.createdAt;if(A(t))return t;if(typeof t==`string`||typeof t==`number`){let e=new Date(t);if(A(e))return e}return new Date}function M(e,t){let r=Math.max(0,Date.now()-e.getTime()),i=6e4,a=60*i,o=24*a;return r<i?t.messages.relative_time_now:r<a?n(t.messages.relative_time_minute,{count:String(Math.floor(r/i))}):r<o?n(t.messages.relative_time_hour,{count:String(Math.floor(r/a))}):n(t.messages.relative_time_day,{count:String(Math.floor(r/o))})}function N(e,t,n,r){let i=[n.getFullYear(),n.getMonth()+1,n.getDate()].map(e=>String(e).padStart(2,`0`)).join(`_`);return`${(e??`Customer Agent`).trim().replace(/[^a-z0-9\u4e00-\u9fa5]+/gi,`_`).replace(/^_+|_+$/g,``)||`Customer_Agent`}_${t}_${i}_${r}.txt`}function P(e){let t=`var(--messenger-conversation-part-radius)`;return{borderBottomLeftRadius:t,borderBottomRightRadius:t,borderTopLeftRadius:t,borderTopRightRadius:t}}function F({controller:n,eventBus:r,isHeaderMenuEnabled:i=!0,locale:c,description:l=c.messages.interview_session_description,isExpanded:u=!1,isOpen:p=!0,onDownloadTranscript:h,onOpenMobileDock:g,onToggleExpanded:v,title:y,transcriptAppName:b=y,visitorName:T=`You`,viewportMode:A=`desktop`}){let[F,L]=(0,D.useState)(()=>n.getState()),[R,z]=(0,D.useState)(!1),[B,V]=(0,D.useState)({}),H=(0,D.useRef)(null),U=(0,D.useRef)(!1),W=(0,D.useRef)(null),G=(0,D.useRef)(new Set),K=(0,D.useRef)(F.phase),q=(0,D.useRef)(!1),J=ne({convertMessage:e=>e,isRunning:F.phase===_.SENDING,isSendDisabled:F.phase===_.SENDING||F.phase===_.TERMINAL,messages:F.messages,async onNew(t){let i=k(t).trim(),a=n.getState().sessionId;if(!i||!a)return;let o={conversationId:`interview/session/${a}`,conversationType:`interview`,entryId:`interview/session/${a}`,interviewSessionId:a},s=`interview-user-${Date.now()}`;r?.emit(e.MESSAGE_SENT,{...o,messageId:s,role:`user`}),r?.emit(e.MESSAGE_STARTED,{...o,role:`assistant`});try{await n.sendMessage(i);let t=[...n.getState().messages].reverse().find(e=>e.role===`assistant`);r?.emit(e.MESSAGE_COMPLETED,{...o,messageId:t?.id??`interview-assistant-${Date.now()}`,role:`assistant`})}catch(t){throw r?.emit(e.MESSAGE_FAILED,{...o,role:`assistant`}),t}}}),ae=[...F.messages].reverse().find(e=>e.role===`assistant`&&k(e).trim())?.id??null,Y=F.messages.some(e=>k(e).trim());(0,D.useEffect)(()=>n.subscribe(L),[n]),(0,D.useEffect)(()=>{if(!i){z(!1);return}if(!R)return;function e(e){let t=e.target;t instanceof Node&&(W.current?.contains(t)||z(!1))}return document.addEventListener(`pointerdown`,e,!0),()=>document.removeEventListener(`pointerdown`,e,!0)},[i,R]),(0,D.useEffect)(()=>{if(F.phase===_.TERMINAL&&F.status===t.COMPLETED&&F.sessionId){if(G.current.has(F.sessionId))return;G.current.add(F.sessionId);let t={conversationId:`interview/session/${F.sessionId}`,conversationType:`interview`,entryId:`interview/session/${F.sessionId}`,interviewSessionId:F.sessionId};r?.emit(e.INTERVIEW_SESSION_COMPLETED,{...t,status:F.status}),n.loadReward(F.sessionId).then(n=>{r?.emit(e.INTERVIEW_REWARD_UPDATED,{...t,reward:n})}).catch(e=>{console.error(`CustomerAgent interview reward request failed.`,e)})}},[n,r,F.phase,F.sessionId,F.status]);let X=(0,D.useCallback)(()=>{let e=H.current;if(!e||e.disabled||A===`mobile`||e.closest(`form`)?.querySelector(`[data-customer-agent-emoji-popover="true"]`))return!1;let t=e.value.length;return e.focus(),e.setSelectionRange(t,t),document.activeElement===e},[A]),Z=(0,D.useCallback)(()=>{let e=0,t=0;function n(){if(q.current&&F.phase===_.ACTIVE){if(X()){q.current=!1;return}e+=1,e<6&&(t=window.requestAnimationFrame(n))}}return t=window.requestAnimationFrame(n),()=>window.cancelAnimationFrame(t)},[X,F.phase]);(0,D.useEffect)(()=>{let e=K.current;K.current=F.phase;let t=H.current?.closest(`form`),n=document.activeElement,r=n instanceof HTMLElement&&!!t?.contains(n);if(F.phase===_.TERMINAL){q.current=!1,r&&n.blur();return}if(F.phase===_.SENDING){e!==_.SENDING&&(q.current=r||e===_.ACTIVE),r&&n.blur();return}if(!(e!==_.SENDING||F.phase!==_.ACTIVE||!q.current))return Z()},[Z,F.phase]);let Q=(0,D.useCallback)(()=>{U.current||!p||A===`mobile`||F.phase!==_.ACTIVE||window.requestAnimationFrame(()=>{U.current||=X()})},[X,p,F.phase,A]);function oe(e){H.current=e,e&&Q()}(0,D.useEffect)(()=>{if(!p){U.current=!1;return}Q()},[Q,p]);function $(e,t){V(n=>({...n,[e]:!t}))}function se(e,t,n){let r=e.target;r instanceof Element&&r.closest(`a, button`)||$(t,n)}function ce(e,t,n){e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),$(t,n))}function le(){let t=new Date,n=t.getTime(),i=d({conversationName:y,exportedAt:t,exportSourceName:b,locale:c.locale,messages:F.messages.map(e=>({createdAt:j(e),role:e.role===`user`?`user`:`assistant`,text:k(e)})),userSpeaker:T}),a=new Blob([i],{type:`text/plain;charset=utf-8`}),o=URL.createObjectURL(a),s=document.createElement(`a`);s.href=o,s.download=N(b,`interview`,t,n),s.click(),window.setTimeout(()=>URL.revokeObjectURL(o),0),r?.emit(e.TRANSCRIPT_DOWNLOADED,{...F.sessionId?{conversationId:`interview/session/${F.sessionId}`,entryId:`interview/session/${F.sessionId}`,interviewSessionId:F.sessionId}:{},conversationType:`interview`,messageCount:F.messages.length}),h?.()}return(0,O.jsx)(o,{runtime:J,children:(0,O.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-bg-canvas`,"aria-label":y,"data-customer-agent-interview-chat":``,children:[(0,O.jsxs)(`header`,{className:E(`grid shrink-0 items-center gap-[var(--messenger-header-gap)] border-b border-border-divider bg-bg-canvas px-[var(--messenger-header-padding-x)] py-[var(--messenger-header-padding-y)]`,A===`mobile`?`grid-cols-[auto_auto_1fr_auto] pl-1`:`grid-cols-[auto_1fr_auto]`),"data-customer-agent-panel-header":``,children:[A===`mobile`?(0,O.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-6 cursor-pointer place-items-center rounded-md border-0 bg-transparent p-0 text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none`,"aria-label":`Open conversations`,title:`Open conversations`,type:`button`,onClick:g,children:(0,O.jsx)(s,{size:16})}):null,(0,O.jsx)(`div`,{className:`grid h-[var(--messenger-header-avatar-size)] w-[var(--messenger-header-avatar-size)] place-items-center rounded-full bg-[var(--customer-agent-primary)] text-gray-1 shadow-[0_0_0_1px_var(--border-default)]`,"aria-hidden":`true`,children:(0,O.jsx)(w,{size:16})}),(0,O.jsxs)(`div`,{className:`flex min-w-0 flex-col justify-center`,children:[(0,O.jsx)(`p`,{className:`m-0 truncate text-[length:var(--messenger-header-title-size)] font-semibold leading-[var(--messenger-header-title-line-height)]`,children:y}),(0,O.jsx)(`span`,{className:`block truncate text-[length:var(--messenger-header-subtitle-size)] leading-[var(--messenger-header-subtitle-line-height)] text-text-tertiary`,children:l})]}),i&&(Y||v)?(0,O.jsx)(`div`,{className:`relative flex items-center gap-[var(--messenger-header-action-gap)] pr-[var(--messenger-header-button-size)]`,children:(0,O.jsxs)(`div`,{ref:W,onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),z(!1))},children:[(0,O.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)] cursor-pointer place-items-center rounded-[var(--messenger-header-button-radius)] border-0 bg-transparent text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none data-[state=open]:bg-gray-3 data-[state=open]:text-text-primary`,"aria-expanded":R,"aria-haspopup":`menu`,"aria-label":c.messages.more_options,"data-state":R?`open`:`closed`,title:c.messages.more_options,type:`button`,onClick:()=>z(e=>!e),children:(0,O.jsx)(a,{size:16})}),R?(0,O.jsxs)(`div`,{className:`absolute top-[calc(100%+0.5rem)] right-[var(--messenger-header-button-size)] z-[var(--z-dropdown)] grid min-w-64 gap-1 rounded-lg border border-border-default bg-bg-elevated p-1 text-sm text-text-primary shadow-popover`,role:`menu`,children:[v?(0,O.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{z(!1),v()},children:[u?(0,O.jsx)(ee,{size:16}):(0,O.jsx)(te,{size:16}),(0,O.jsx)(`span`,{children:u?c.messages.collapse_window:c.messages.expand_window})]}):null,Y?(0,O.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{z(!1),le()},children:[(0,O.jsx)(m,{size:16}),(0,O.jsx)(`span`,{children:c.messages.download_transcript})]}):null]}):null]})}):(0,O.jsx)(`div`,{className:`h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)]`,"aria-hidden":`true`})]}),(0,O.jsx)(re,{className:`relative flex min-h-0 flex-1 flex-col overflow-hidden bg-bg-canvas`,children:(0,O.jsx)(f,{className:`customer-agent-thread-viewport min-h-0 flex-1 overflow-y-auto bg-bg-canvas [scrollbar-width:none] [&::-webkit-scrollbar]:hidden [&>[data-radix-scroll-area-content]]:flex [&>[data-radix-scroll-area-content]]:min-h-full [&>[data-radix-scroll-area-content]]:flex-col [&>[data-radix-scroll-area-content]]:self-stretch [&>[data-radix-scroll-area-content]]:bg-inherit [&>div]:flex [&>div]:min-h-full [&>div]:flex-col [&>div]:self-stretch [&>div]:bg-inherit`,"data-customer-agent-thread-viewport":``,"aria-live":`polite`,autoScroll:!0,role:`log`,children:(0,O.jsxs)(`div`,{className:E(`flex min-h-full flex-col px-[var(--messenger-conversation-horizontal-padding)] pt-3`,`customer-agent-message-list`),"data-customer-agent-message-list":``,children:[(0,O.jsx)(S,{children:({message:e})=>{let t=e,n=k(t),r=e.role===`user`?`user`:`assistant`,i=r===`assistant`,a=t.id??`${r}:${n}`,o=j(t),s=i&&(B[a]??a===ae);return n?(0,O.jsxs)(C,{className:r===`user`?`mt-[var(--messenger-conversation-part-stack-gap)] flex max-w-[var(--messenger-conversation-part-max-width)] flex-col self-end items-end`:`mt-[var(--messenger-conversation-part-stack-gap)] flex max-w-[var(--messenger-conversation-part-max-width)] flex-col self-start items-start`,"aria-expanded":i?s:void 0,"data-message-role":r,role:i?`button`:void 0,tabIndex:i?0:void 0,onClick:i?e=>se(e,a,s):void 0,onKeyDown:i?e=>ce(e,a,s):void 0,children:[(0,O.jsx)(`div`,{className:r===`user`?`w-fit max-w-full whitespace-pre-wrap bg-[var(--customer-agent-primary)] px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5 text-gray-1`:`w-fit max-w-full whitespace-pre-wrap bg-gray-3 px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5 text-text-secondary`,style:P(r),children:(0,O.jsx)(x,{children:({part:e})=>e.type===`text`?(0,O.jsx)(`span`,{children:e.text}):null})}),r===`assistant`?(0,O.jsxs)(`span`,{className:E(`overflow-hidden px-[var(--messenger-conversation-part-padding-x)] text-sm leading-5 text-text-tertiary transition-[max-height,opacity,transform,margin] duration-200 ease-out`,s?`mt-1 max-h-5 translate-y-0 opacity-100`:`mt-0 max-h-0 -translate-y-1 opacity-0`),"data-state":s?`visible`:`hidden`,"data-testid":`interview-message-metadata`,children:[y,` · `,c.messages.assistant_author_ai,` ·`,` `,M(o,c)]}):null]}):null}}),F.phase===_.SENDING?(0,O.jsx)(I,{}):null]})})}),(0,O.jsx)(ie,{inputRef:H,isHidden:F.phase===_.SENDING||F.phase===_.TERMINAL,locale:c,onInputRef:oe})]})})}function ie({inputRef:e,isHidden:t,locale:n,onInputRef:r}){let i=c().composer,a=b({composerRuntime:i,inputRef:e});return(0,O.jsxs)(v,{className:E(`relative z-[var(--z-composer)] shrink-0 bg-transparent px-[var(--messenger-conversation-horizontal-padding)] pt-0 pb-[max(1rem,calc(1rem+var(--customer-agent-bottom-inset)))]`,`-mt-[var(--messenger-radius)]`),isHidden:t,onSubmit:a.closeEmojiPicker,children:[(0,O.jsx)(g,{inputAriaLabel:n.messages.message_aria_label,inputRef:r,placeholder:n.messages.interview_input_placeholder}),(0,O.jsxs)(y,{children:[(0,O.jsx)(h,{children:(0,O.jsx)(l,{hostRef:a.emojiPickerHostRef,isLoading:a.isEmojiPickerLoading,open:a.isEmojiPickerOpen,onOpenChange:a.onEmojiOpenChange,children:(0,O.jsx)(p,{emojiLabel:n.messages.add_emoji})})}),(0,O.jsx)(u,{sendLabel:n.messages.send_message})]})]})}function I(){return(0,O.jsx)(`div`,{className:`mt-[var(--messenger-conversation-part-stack-gap)] flex max-w-[var(--messenger-conversation-part-max-width)] flex-col self-start items-start`,"data-message-role":`assistant`,"data-testid":`interview-thinking-bubble`,children:(0,O.jsx)(`div`,{className:`w-fit max-w-full whitespace-pre-wrap bg-gray-3 px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5 text-text-secondary`,style:P(`assistant`),children:(0,O.jsx)(L,{})})})}function L(){return(0,O.jsxs)(`span`,{className:`inline-flex h-5 items-center gap-1 align-middle text-text-quaternary`,"aria-hidden":`true`,children:[(0,O.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current`,"data-testid":`interview-thinking-dot`}),(0,O.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:140ms]`,"data-testid":`interview-thinking-dot`}),(0,O.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:280ms]`,"data-testid":`interview-thinking-dot`})]})}export{F as InterviewChatScreen};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import{t as e}from"./constants-
|
|
1
|
+
import{t as e}from"./constants-Do-S47mc.js";import{n as t,t as n}from"./interviewTypes-Ch2NsXKB.js";import{a as r,b as i,c as a,d as o,f as s,i as c,l,m as u,n as d,o as f,r as ee,s as p,t as m,v as h,y as g}from"./routes-Dh46ka4-.js";import{d as _,l as te,s as ne,t as v}from"./navigationState-LdqG_Osx.js";import{t as y}from"./i18n-Q8u2wtW4.js";import{r as b}from"../runtime.es.js";import{t as x}from"./react-CKmEJ8Ba.js";import{A as re,C as ie,D as ae,E as oe,O as se,S as ce,T as S,_ as C,a as w,b as T,c as le,d as E,f as D,g as ue,h as de,i as fe,j as pe,k as O,l as me,m as k,n as he,o as ge,r as _e,s as ve,t as ye,u as be,v as A,w as xe,x as Se,y as Ce}from"./WidgetComposer-C_Y7bwhP.js";import{n as we,t as j}from"./WidgetGlobalLoading-B_z-6_yk.js";import{t as M}from"./DockNavigation-CI9i1n3W.js";import{t as N}from"./conversationRegistry-Y5Ouo35n.js";import{t as P}from"./jsx-runtime-S2ZBQkZm.js";import{t as F}from"./classNames-3q0x02_x.js";import{N as Te}from"./useSmooth-CYGvfMVe.js";import{S as I,_ as Ee,b as De,c as Oe,d as ke,f as Ae,g as je,h as Me,l as Ne,m as L,p as Pe,s as R,u as Fe,v as Ie,w as Le}from"./dist-dzGCY2H5.js";var z=b(x(),1),B=P(),Re=`Dialog`,[ze,Be]=Ee(Re),[Ve,V]=ze(Re),He=e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=z.useRef(null),c=z.useRef(null),[l,u]=Me({prop:r,defaultProp:i??!1,onChange:a,caller:Re});return(0,B.jsx)(Ve,{scope:t,triggerRef:s,contentRef:c,contentId:Pe(),titleId:Pe(),descriptionId:Pe(),open:l,onOpenChange:u,onOpenToggle:z.useCallback(()=>u(e=>!e),[u]),modal:o,children:n})};He.displayName=Re;var Ue=`DialogTrigger`,We=z.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=V(Ue,n),a=Le(t,i.triggerRef);return(0,B.jsx)(Ie.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":i.open,"aria-controls":i.contentId,"data-state":at(i.open),...r,ref:a,onClick:I(e.onClick,i.onOpenToggle)})});We.displayName=Ue;var H=`DialogPortal`,[Ge,Ke]=ze(H,{forceMount:void 0}),qe=e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=V(H,t);return(0,B.jsx)(Ge,{scope:t,forceMount:n,children:z.Children.map(r,e=>(0,B.jsx)(L,{present:n||a.open,children:(0,B.jsx)(Fe,{asChild:!0,container:i,children:e})}))})};qe.displayName=H;var Je=`DialogOverlay`,Ye=z.forwardRef((e,t)=>{let n=Ke(Je,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=V(Je,e.__scopeDialog);return a.modal?(0,B.jsx)(L,{present:r||a.open,children:(0,B.jsx)(U,{...i,ref:t})}):null});Ye.displayName=Je;var Xe=De(`DialogOverlay.RemoveScroll`),U=z.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=V(Je,n);return(0,B.jsx)(Oe,{as:Xe,allowPinchZoom:!0,shards:[i.contentRef],children:(0,B.jsx)(Ie.div,{"data-state":at(i.open),...r,ref:t,style:{pointerEvents:`auto`,...r.style}})})}),W=`DialogContent`,Ze=z.forwardRef((e,t)=>{let n=Ke(W,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=V(W,e.__scopeDialog);return(0,B.jsx)(L,{present:r||a.open,children:a.modal?(0,B.jsx)(Qe,{...i,ref:t}):(0,B.jsx)($e,{...i,ref:t})})});Ze.displayName=W;var Qe=z.forwardRef((e,t)=>{let n=V(W,e.__scopeDialog),r=z.useRef(null),i=Le(t,n.contentRef,r);return z.useEffect(()=>{let e=r.current;if(e)return R(e)},[]),(0,B.jsx)(et,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:I(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:I(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:I(e.onFocusOutside,e=>e.preventDefault())})}),$e=z.forwardRef((e,t)=>{let n=V(W,e.__scopeDialog),r=z.useRef(!1),i=z.useRef(!1);return(0,B.jsx)(et,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})}),et=z.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=V(W,n),c=z.useRef(null),l=Le(t,c);return Ne(),(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(ke,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,B.jsx)(Ae,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionId,"aria-labelledby":s.titleId,"data-state":at(s.open),...o,ref:l,onDismiss:()=>s.onOpenChange(!1)})}),(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(lt,{titleId:s.titleId}),(0,B.jsx)(dt,{contentRef:c,descriptionId:s.descriptionId})]})]})}),tt=`DialogTitle`,G=z.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=V(tt,n);return(0,B.jsx)(Ie.h2,{id:i.titleId,...r,ref:t})});G.displayName=tt;var nt=`DialogDescription`,rt=z.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=V(nt,n);return(0,B.jsx)(Ie.p,{id:i.descriptionId,...r,ref:t})});rt.displayName=nt;var K=`DialogClose`,it=z.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,i=V(K,n);return(0,B.jsx)(Ie.button,{type:`button`,...r,ref:t,onClick:I(e.onClick,()=>i.onOpenChange(!1))})});it.displayName=K;function at(e){return e?`open`:`closed`}var ot=`DialogTitleWarning`,[st,ct]=je(ot,{contentName:W,titleName:tt,docsSlug:`dialog`}),lt=({titleId:e})=>{let t=ct(ot),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
|
|
2
2
|
|
|
3
3
|
If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
4
4
|
|
|
5
|
-
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return z.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},ut=`DialogDescriptionWarning`,dt=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${ct(ut).contentName}}.`;return z.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},ft=He,q=Ye,pt=Ze,mt=tt,ht=K,gt=365.2425,_t=6048e5,vt=864e5,yt=3600*24;yt*7,yt*gt/12*3;var bt=Symbol.for(`constructDateFrom`);function J(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&bt in e?e[bt](t):e instanceof Date?new e.constructor(t):new Date(t)}function Y(e,t){return J(t||e,e)}var xt={};function St(){return xt}function Ct(e,t){let n=St(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=Y(e,t?.in),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function wt(e,t){return Ct(e,{...t,weekStartsOn:1})}function Tt(e,t){let n=Y(e,t?.in),r=n.getFullYear(),i=J(n,0);i.setFullYear(r+1,0,4),i.setHours(0,0,0,0);let a=wt(i),o=J(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);let s=wt(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function Et(e){let t=Y(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function Dt(e,...t){let n=J.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function Ot(e,t){let n=Y(e,t?.in);return n.setHours(0,0,0,0),n}function kt(e,t,n){let[r,i]=Dt(n?.in,e,t),a=Ot(r),o=Ot(i),s=+a-Et(a),c=+o-Et(o);return Math.round((s-c)/vt)}function At(e,t){let n=Tt(e,t),r=J(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),wt(r)}function jt(e,t,n){let[r,i]=Dt(n?.in,e,t);return+Ot(r)==+Ot(i)}function Mt(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function Nt(e){return!(!Mt(e)&&typeof e!=`number`||isNaN(+Y(e)))}function Pt(e,t){let n=Y(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}var Ft={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},It=(e,t,n)=>{let r,i=Ft[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function Lt(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var Rt={date:Lt({formats:{full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},defaultWidth:`full`}),time:Lt({formats:{full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},defaultWidth:`full`}),dateTime:Lt({formats:{full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},zt={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},Bt=(e,t,n,r)=>zt[e];function Vt(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}var Ht={ordinalNumber:(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},era:Vt({values:{narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},defaultWidth:`wide`}),quarter:Vt({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:Vt({values:{narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},defaultWidth:`wide`}),day:Vt({values:{narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},defaultWidth:`wide`}),dayPeriod:Vt({values:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},defaultFormattingWidth:`wide`})};function Ut(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?Gt(s,e=>e.test(o)):Wt(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function Wt(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Gt(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function Kt(e){return(t,n={})=>{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}var qt={code:`en-US`,formatDistance:It,formatLong:Rt,formatRelative:Bt,localize:Ht,match:{ordinalNumber:Kt({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:Ut({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:`any`}),quarter:Ut({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:Ut({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:Ut({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:Ut({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:`any`})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function Jt(e,t){let n=Y(e,t?.in);return kt(n,Pt(n))+1}function Yt(e,t){let n=Y(e,t?.in),r=wt(n)-+At(n);return Math.round(r/_t)+1}function Xt(e,t){let n=Y(e,t?.in),r=n.getFullYear(),i=St(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,o=J(t?.in||e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);let s=Ct(o,t),c=J(t?.in||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);let l=Ct(c,t);return+n>=+s?r+1:+n>=+l?r:r-1}function Zt(e,t){let n=St(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,i=Xt(e,t),a=J(t?.in||e,0);return a.setFullYear(i,0,r),a.setHours(0,0,0,0),Ct(a,t)}function Qt(e,t){let n=Y(e,t?.in),r=Ct(n,t)-+Zt(n,t);return Math.round(r/_t)+1}function X(e,t){return(e<0?`-`:``)+Math.abs(e).toString().padStart(t,`0`)}var $t={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return X(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):X(n+1,2)},d(e,t){return X(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return X(e.getHours()%12||12,t.length)},H(e,t){return X(e.getHours(),t.length)},m(e,t){return X(e.getMinutes(),t.length)},s(e,t){return X(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds();return X(Math.trunc(r*10**(n-3)),t.length)}},en={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},tn={G:function(e,t,n){let r=+(e.getFullYear()>0);switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return $t.y(e,t)},Y:function(e,t,n,r){let i=Xt(e,r),a=i>0?i:1-i;return t===`YY`?X(a%100,2):t===`Yo`?n.ordinalNumber(a,{unit:`year`}):X(a,t.length)},R:function(e,t){return X(Tt(e),t.length)},u:function(e,t){return X(e.getFullYear(),t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return X(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return X(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return $t.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return X(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=Qt(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):X(i,t.length)},I:function(e,t,n){let r=Yt(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):X(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):$t.d(e,t)},D:function(e,t,n){let r=Jt(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):X(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return X(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return X(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return X(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(r,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(r,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?en.noon:r===0?en.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?en.evening:r>=12?en.afternoon:r>=4?en.morning:en.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return $t.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):$t.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):X(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):X(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):$t.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):$t.s(e,t)},S:function(e,t){return $t.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return rn(r);case`XXXX`:case`XX`:return an(r);default:return an(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return rn(r);case`xxxx`:case`xx`:return an(r);default:return an(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+nn(r,`:`);default:return`GMT`+an(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+nn(r,`:`);default:return`GMT`+an(r,`:`)}},t:function(e,t,n){return X(Math.trunc(e/1e3),t.length)},T:function(e,t,n){return X(+e,t.length)}};function nn(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+X(a,2)}function rn(e,t){return e%60==0?(e>0?`-`:`+`)+X(Math.abs(e)/60,2):an(e,t)}function an(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=X(Math.trunc(r/60),2),a=X(r%60,2);return n+i+t+a}var on=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});default:return t.date({width:`full`})}},sn=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});default:return t.time({width:`full`})}},cn={p:sn,P:(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return on(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,on(r,t)).replace(`{{time}}`,sn(i,t))}},ln=/^D+$/,un=/^Y+$/,dn=[`D`,`DD`,`YY`,`YYYY`];function fn(e){return ln.test(e)}function pn(e){return un.test(e)}function mn(e,t,n){let r=hn(e,t,n);if(console.warn(r),dn.includes(e))throw RangeError(r)}function hn(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}var gn=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,_n=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,vn=/^'([^]*?)'?$/,yn=/''/g,bn=/[a-zA-Z]/;function xn(e,t,n){let r=St(),i=n?.locale??r.locale??qt,a=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,s=Y(e,n?.in);if(!Nt(s))throw RangeError(`Invalid time value`);let c=t.match(_n).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=cn[t];return n(e,i.formatLong)}return e}).join(``).match(gn).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:Sn(e)};if(tn[t])return{isToken:!0,value:e};if(t.match(bn))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));let l={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(r=>{if(!r.isToken)return r.value;let a=r.value;(!n?.useAdditionalWeekYearTokens&&pn(a)||!n?.useAdditionalDayOfYearTokens&&fn(a))&&mn(a,t,String(e));let o=tn[a[0]];return o(s,a,i.localize,l)}).join(``)}function Sn(e){let t=e.match(vn);return t?t[1].replace(yn,`'`):e}function Cn(){return{handledInviteChoices:{},entries:[],invitePrompt:null,isMobileDockOpen:!1}}function wn(e,n,r,i={}){if(!n?.prompt||n.status!==N.INVITABLE)return e;let a=e.entries.find(e=>e.id===n.id),o=e.handledInviteChoices[n.prompt.invitationId];if(o===t.CLOSE)return{...e,invitePrompt:null,isMobileDockOpen:!1};let s=(i.canShowPrompt??!0)&&o!==t.LATER&&a?.unread!==!1;return{...e,entries:[...e.entries.filter(e=>e.id!==n.id),{...n,unread:a?.unread??!0}],invitePrompt:s?n.prompt:null,isMobileDockOpen:s&&r===`mobile`}}function Tn(e,t){return!t||t.kind!==`interview`||t.status!==N.ACTIVE?e:{...e,entries:[...e.entries.filter(e=>e.id!==t.id&&!(e.kind===`interview`&&e.status===N.INVITABLE)),{...t,unread:!1}],invitePrompt:null,isMobileDockOpen:!1}}function En(e,t){return{...e,entries:e.entries.map(e=>e.id===t?{...e,unread:!1}:e)}}function Dn(e,n,r){return{...e,handledInviteChoices:{...e.handledInviteChoices,[n]:r},entries:r===t.CLOSE?e.entries.filter(e=>e.prompt?.invitationId!==n):e.entries,invitePrompt:null,isMobileDockOpen:!1}}function On(e,{invitationId:t,sessionId:n,subtitle:r,title:i}){let a=e.entries.find(e=>e.prompt?.invitationId===t),o={id:`interview/session/${n}`,kind:`interview`,priority:a?.priority??20,status:N.ACTIVE,subtitle:r,title:i},s={...e.handledInviteChoices};return delete s[t],{...e,handledInviteChoices:s,entries:[...e.entries.filter(e=>e.prompt?.invitationId!==t),o],invitePrompt:null,isMobileDockOpen:!1}}function kn({children:e,scope:t,transitionKey:n}){let r=(0,z.useRef)(1),i=(0,z.useRef)({content:e,id:0,isPresent:!0,shouldAnimate:!1,transitionKey:n}),[a,o]=(0,z.useState)(()=>[i.current]);(0,z.useLayoutEffect)(()=>{o(t=>{let a=i.current;if(a.transitionKey===n){let n={...a,content:e};return i.current=n,t.map(e=>e.id===n.id?n:e)}let o={...a,isPresent:!1,shouldAnimate:!0},s={content:e,id:r.current++,isPresent:!0,shouldAnimate:!0,transitionKey:n};return i.current=s,[...t.filter(e=>e.id!==a.id&&e.isPresent),o,s]})},[e,n]);function s(e){o(t=>t.filter(t=>t.id!==e))}function c(e,t){t.isPresent||e.target!==e.currentTarget||e.animationName!==`customer-agent-chat-route-out`||s(t.id)}let l=t===`shell`?`customer-agent-shell-route-layer absolute inset-0 flex min-h-0 flex-1`:`customer-agent-chat-route-layer absolute inset-0 flex min-h-0 flex-1`,u=t===`shell`?`customer-agent-shell-route-content flex min-h-0 flex-1 flex-row`:`customer-agent-chat-route-content flex min-h-0 flex-1 flex-col`;return(0,B.jsx)(`div`,{className:`customer-agent-${t}-route-stack relative flex min-w-0 flex-1 overflow-hidden`,"data-customer-agent-route-stack":t,children:a.map(e=>(0,B.jsx)(L,{present:e.isPresent,children:(0,B.jsx)(`div`,{className:l,"aria-hidden":!e.isPresent,"data-route-state":e.isPresent?`open`:`closed`,"data-route-transition-key":e.transitionKey,"data-route-motion":e.shouldAnimate?`animate`:`idle`,"data-testid":`customer-agent-${t}-route-layer`,onAnimationEnd:t=>c(t,e),children:(0,B.jsx)(`div`,{className:u,"data-route-content":``,children:e.content})})},e.id))})}var An=null,jn=(0,z.lazy)(async()=>({default:(await Mn()).MobileDockDrawer}));function Mn(){return An??=import(`./MobileDockDrawer-ZIdezZML.js`).catch(e=>{throw An=null,e}),An}function Nn({activeEntryId:e,ariaLabel:t,children:n,entries:r,invitePrompt:i=null,interviewChat:o,isChatLoading:s=!1,isExpanded:c,isMobileDockOpen:l,isOpen:u,route:d,routeTransitionKey:f=0,style:ee,viewportMode:m,onEntrySelect:h,onInviteClose:g,onInviteLater:_,onInviteStart:te,onMobileDockOpenChange:ne}){let[v,y]=(0,z.useState)(null),b=i?.invitationId??null,x=!!(b&&r.some(e=>e.prompt?.invitationId===b)),re=!!(b&&x&&v===b)&&(m===`desktop`||l),ie=d.name,ae=d.name===a.AGENTS_CONVERSATIONS?[f,d.child.name,d.child.entryId,s&&d.child.name===p.CHAT?`loading`:`ready`].join(`:`):f;(0,z.useEffect)(()=>{m===`mobile`&&Mn()},[m]),(0,z.useEffect)(()=>{if(!b||!x)return;let e=window.setTimeout(()=>{y(b)},280);return()=>window.clearTimeout(e)},[x,b]);let oe=d.name===a.GLOBAL_LOADING?(0,B.jsx)(j,{label:`Loading conversations`}):(0,B.jsxs)(B.Fragment,{children:[m===`desktop`?(0,B.jsx)(M,{activeEntryId:e,entries:r,invitePrompt:i,isInvitePromptOpen:re,onEntrySelect:h,onInviteClose:g,onInviteLater:_,onInviteStart:te}):(0,B.jsx)(Fn,{isOpen:l,onOpenChange:ne,children:(0,B.jsx)(z.Suspense,{fallback:(0,B.jsx)(In,{}),children:(0,B.jsx)(jn,{activeEntryId:e,entries:r,invitePrompt:i,isInvitePromptOpen:re,onEntrySelect:h,onInviteClose:g,onInviteLater:_,onInviteStart:te,onOpenChange:ne})})}),(0,B.jsx)(`div`,{className:`relative flex min-w-0 flex-1 flex-col overflow-hidden rounded-l-[28px] border-l border-border-divider bg-bg-canvas shadow-[-6px_0_18px_rgba(9,14,21,0.035)] data-[viewport-mode=mobile]:rounded-none data-[viewport-mode=mobile]:border-l-0 data-[viewport-mode=mobile]:shadow-none`,"data-customer-agent-chat-outlet":``,"data-viewport-mode":m,children:(0,B.jsx)(kn,{scope:`chat`,transitionKey:ae,children:(0,B.jsx)(Pn,{inviteMask:re?(0,B.jsx)(`div`,{className:`absolute inset-0 z-10 animate-[customer-agent-invite-mask-in_140ms_ease-out_both] bg-black/20 motion-reduce:animate-none`,"data-state":`open`,"data-testid":`interview-invite-mask`}):null,interviewChat:o,isChatLoading:s,route:d,children:n})})})]});return(0,B.jsx)(`section`,{className:`customer-agent-panel flex h-full w-full overflow-hidden rounded-messenger bg-bg-canvas text-text-primary outline-none data-[expanded=true]:[--messenger-conversation-part-max-width:520px] data-[viewport-mode=mobile]:h-[var(--customer-agent-visual-height)] data-[viewport-mode=mobile]:rounded-none`,"aria-hidden":!u,"aria-label":t,"data-expanded":c?`true`:`false`,"data-route":d.name,"data-state":u?`open`:`closed`,"data-viewport-mode":m,style:ee,children:(0,B.jsx)(kn,{scope:`shell`,transitionKey:ie,children:oe})})}function Pn({children:e,inviteMask:t,interviewChat:n,isChatLoading:r,route:i}){return i.name===a.AGENTS_CONVERSATIONS?i.child.name===p.INTERVIEW_STARTING?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(j,{label:`Starting interview`}),t]}):i.child.name===p.CHAT&&r&&f(i.child.entryId)?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(j,{label:`Loading chat`}),t]}):i.child.entryId.startsWith(`interview/`)?(0,B.jsxs)(B.Fragment,{children:[n??(0,B.jsx)(j,{label:`Loading interview`}),t]}):(0,B.jsxs)(B.Fragment,{children:[e,t]}):null}function Fn({children:e,isOpen:t,onOpenChange:n}){return(0,B.jsxs)(ft,{modal:!0,open:t,onOpenChange:n,children:[(0,B.jsx)(q,{className:`absolute inset-0 z-20 bg-black/20 data-[state=open]:animate-[customer-agent-mobile-dock-overlay-in_160ms_ease-out_both] motion-reduce:animate-none`,"data-customer-agent-mobile-dock-mask":``}),(0,B.jsxs)(pt,{className:`absolute inset-y-0 left-0 z-30 w-[min(360px,100%)] bg-transparent outline-none data-[state=open]:animate-[customer-agent-mobile-dock-in_180ms_var(--ease-emphasis)_both] motion-reduce:animate-none`,"aria-label":`Conversations`,"aria-describedby":void 0,"data-customer-agent-mobile-dock":``,onPointerDown:e=>{e.target===e.currentTarget&&n(!1)},children:[(0,B.jsx)(mt,{className:`sr-only`,children:`Conversations`}),(0,B.jsx)(ht,{className:`sr-only`,children:`Select a conversation.`}),e]})]})}function In(){return(0,B.jsx)(`div`,{className:`pointer-events-auto h-full w-16 bg-bg-canvas shadow-card`,"aria-label":`Loading conversations`,"data-customer-agent-mobile-dock-rail":``,"data-customer-agent-mobile-dock-skeleton":``,role:`status`,children:(0,B.jsxs)(`div`,{className:`flex w-16 shrink-0 flex-col items-center gap-3 px-2 py-4`,children:[(0,B.jsx)(Ln,{className:`h-10 w-10 rounded-lg`}),(0,B.jsx)(Ln,{className:`h-10 w-10 rounded-lg`})]})})}function Ln({className:e}){return(0,B.jsx)(`div`,{className:F(`animate-pulse rounded bg-gray-3`,e),"data-customer-agent-skeleton":``})}function Rn(){return{name:a.GLOBAL_LOADING}}function zn(){let e={name:a.GLOBAL_LOADING};return{action:`reset`,current:e,stack:[e],transitionKey:0}}function Bn(e,t){return{...t,transitionKey:e.transitionKey+1}}function Vn(e,t){if(!e||!t)return!1;switch(e.name){case a.GLOBAL_LOADING:return t.name===a.GLOBAL_LOADING?Hn(e.target,t.target):!1;case a.GLOBAL_ERROR:return t.name===a.GLOBAL_ERROR?Hn(e.retryTo,t.retryTo):!1;case a.AGENTS_CONVERSATIONS:return t.name!==a.AGENTS_CONVERSATIONS||e.child.name!==t.child.name?!1:e.child.name===p.INTERVIEW_STARTING?t.child.name===p.INTERVIEW_STARTING&&e.child.entryId===t.child.entryId&&e.child.invitationId===t.child.invitationId:t.child.name===p.CHAT&&e.child.entryId===t.child.entryId}}function Hn(e,t){return e||t?Vn(e,t):!0}function Un(e,t){switch(t.type){case`push`:return Vn(e.current,t.route)?e:Bn(e,{action:`push`,current:t.route,previous:e.current,stack:[...e.stack,t.route]});case`replace`:return Vn(e.current,t.route)?e:Bn(e,{action:`replace`,current:t.route,previous:e.current,stack:[...e.stack.slice(0,-1),t.route]});case`reset`:return Vn(e.current,t.route)?e:Bn(e,{action:`reset`,current:t.route,previous:e.current,stack:[t.route]});case`back`:{let n=e.stack.slice(0,-1),r=n[n.length-1]??t.fallback??e.current;return Bn(e,{action:`back`,current:r,previous:e.current,stack:n.length>0?n:[r]})}}}var Wn=`customer_agent:widget_route`;function Gn(e){return typeof e==`string`&&e.trim()?e.trim():null}function Kn(e){let t=Gn(e.user?.id),n=Gn(e.anonymous_id),r=t?`user:${t}`:n?`anonymous:${n}`:`anonymous`;return encodeURIComponent(r)}function qn(e){return`${Wn}:${e.app_id}:${Kn(e)}`}function Jn(e){return e.name===a.AGENTS_CONVERSATIONS?e.child.name===p.CHAT&&Zn(e.child.entryId):!1}function Yn(e){return!!e&&typeof e==`object`}function Xn(e){if(!Yn(e)||e.name!==a.AGENTS_CONVERSATIONS)return!1;let t=e.child;return!Yn(t)||typeof t.entryId!=`string`?!1:!!(t.name===p.CHAT&&Zn(t.entryId))}function Zn(e){return e.startsWith(`support/`)?f(e):e.startsWith(`interview/session/`)?c(e):!0}function Qn(e){if(!e)return null;let t=JSON.parse(e);return Xn(t)&&Jn(t)?t:null}function $n(e){try{let t=qn(e);return Qn(window.localStorage.getItem(t))}catch{return null}}function er(e,t){if(Jn(t))try{window.localStorage.setItem(qn(e),JSON.stringify(t))}catch{}}function tr(e){return e.type===`support`||e.type===`home`?Rn():e.type===`entry`?ne(e.entryId)?{child:{entryId:e.entryId,name:p.CHAT},name:a.AGENTS_CONVERSATIONS}:Rn():e.sessionId?{child:{entryId:`interview/session/${e.sessionId}`,name:p.CHAT},name:a.AGENTS_CONVERSATIONS}:e.campaignId?{child:{entryId:`interview/invite/${e.campaignId}`,name:p.CHAT},name:a.AGENTS_CONVERSATIONS}:Rn()}function nr(e){return e.status===n.AVAILABLE?{id:`interview/invite/${e.campaignId}`,kind:`interview`,priority:20,prompt:{anchor:`dock`,body:e.body,campaignId:e.campaignId,closeLabel:`No`,invitationId:`runtime:${e.campaignId}`,kind:`interview-invite`,laterLabel:e.laterCta,startLabel:e.startCta},status:N.INVITABLE,title:e.title}:e.status===n.ACTIVE?{id:e.entryId,kind:`interview`,priority:20,status:N.ACTIVE,title:e.title??``}:null}function rr(){let e=i(h());return{async checkEligibility(t){let{data:n}=await e.request(`/interviews/eligibility`,{body:t,method:`POST`});return n},async chooseInvitation(t,n){await e.request(`/interviews/invitations/${t}/choice`,{body:n,method:`PATCH`})},async createInvitation(t){let{data:n}=await e.request(`/interviews/invitations`,{body:t,method:`POST`});return n},async getReward(t){let{data:n}=await e.request(`/interviews/sessions/${t}/reward`);return n},async getSession(t){let{data:n}=await e.request(`/interviews/sessions/${t}`);return n},async sendMessage(t,n){let{data:r}=await e.request(`/interviews/sessions/${t}/messages`,{body:n,method:`POST`});return r},async startInvitation(t,n){let{data:r}=await e.request(`/interviews/invitations/${t}/start`,{body:n,method:`POST`});return r}}}var Z=Object.freeze({ERROR:`error`,IDLE:`idle`,LOADING:`loading`,READY:`ready`}),ir=`image/*,application/pdf,video/mp4,.jpg,.jpeg,.png,.gif,.pdf,.mp4`,ar=Object.freeze({MAX_FILE_SIZE_BYTES:50*1024*1024}),or=`customer-agent-attachment`,sr=(0,z.lazy)(async()=>({default:(await import(`./MarkdownText-CXKW_2Ol.js`)).MarkdownText})),cr=null,lr=(0,z.lazy)(async()=>({default:(await dr()).InterviewChatScreen})),ur=new Set([n.CHECKING,n.IDLE]);function dr(){return cr??=import(`./InterviewChatScreen-BOpE-M55.js`).catch(e=>{throw cr=null,e}),cr}function fr(e,t){return r(e)&&e.child.entryId===t.id?e:m(t.id)}function pr(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`msg_${Date.now()}_${Math.random().toString(36).slice(2)}`}function mr(e){return e?.brand?.name??`Customer Agent`}function hr(e,t){return t===`Customer Agent`&&e||t}function gr(e){return e.content.map(e=>e.type===`text`?e.text:``).filter(Boolean).join(`
|
|
5
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return z.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},ut=`DialogDescriptionWarning`,dt=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${ct(ut).contentName}}.`;return z.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},ft=He,pt=Ye,q=Ze,mt=G,ht=rt,gt=365.2425,_t=6048e5,vt=864e5,yt=3600*24;yt*7,yt*gt/12*3;var bt=Symbol.for(`constructDateFrom`);function J(e,t){return typeof e==`function`?e(t):e&&typeof e==`object`&&bt in e?e[bt](t):e instanceof Date?new e.constructor(t):new Date(t)}function Y(e,t){return J(t||e,e)}var xt={};function St(){return xt}function Ct(e,t){let n=St(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=Y(e,t?.in),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function wt(e,t){return Ct(e,{...t,weekStartsOn:1})}function Tt(e,t){let n=Y(e,t?.in),r=n.getFullYear(),i=J(n,0);i.setFullYear(r+1,0,4),i.setHours(0,0,0,0);let a=wt(i),o=J(n,0);o.setFullYear(r,0,4),o.setHours(0,0,0,0);let s=wt(o);return n.getTime()>=a.getTime()?r+1:n.getTime()>=s.getTime()?r:r-1}function Et(e){let t=Y(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),e-+n}function Dt(e,...t){let n=J.bind(null,e||t.find(e=>typeof e==`object`));return t.map(n)}function Ot(e,t){let n=Y(e,t?.in);return n.setHours(0,0,0,0),n}function kt(e,t,n){let[r,i]=Dt(n?.in,e,t),a=Ot(r),o=Ot(i),s=+a-Et(a),c=+o-Et(o);return Math.round((s-c)/vt)}function At(e,t){let n=Tt(e,t),r=J(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),wt(r)}function jt(e,t,n){let[r,i]=Dt(n?.in,e,t);return+Ot(r)==+Ot(i)}function Mt(e){return e instanceof Date||typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}function Nt(e){return!(!Mt(e)&&typeof e!=`number`||isNaN(+Y(e)))}function Pt(e,t){let n=Y(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}var Ft={lessThanXSeconds:{one:`less than a second`,other:`less than {{count}} seconds`},xSeconds:{one:`1 second`,other:`{{count}} seconds`},halfAMinute:`half a minute`,lessThanXMinutes:{one:`less than a minute`,other:`less than {{count}} minutes`},xMinutes:{one:`1 minute`,other:`{{count}} minutes`},aboutXHours:{one:`about 1 hour`,other:`about {{count}} hours`},xHours:{one:`1 hour`,other:`{{count}} hours`},xDays:{one:`1 day`,other:`{{count}} days`},aboutXWeeks:{one:`about 1 week`,other:`about {{count}} weeks`},xWeeks:{one:`1 week`,other:`{{count}} weeks`},aboutXMonths:{one:`about 1 month`,other:`about {{count}} months`},xMonths:{one:`1 month`,other:`{{count}} months`},aboutXYears:{one:`about 1 year`,other:`about {{count}} years`},xYears:{one:`1 year`,other:`{{count}} years`},overXYears:{one:`over 1 year`,other:`over {{count}} years`},almostXYears:{one:`almost 1 year`,other:`almost {{count}} years`}},It=(e,t,n)=>{let r,i=Ft[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:r+` ago`:r};function Lt(e){return(t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var Rt={date:Lt({formats:{full:`EEEE, MMMM do, y`,long:`MMMM do, y`,medium:`MMM d, y`,short:`MM/dd/yyyy`},defaultWidth:`full`}),time:Lt({formats:{full:`h:mm:ss a zzzz`,long:`h:mm:ss a z`,medium:`h:mm:ss a`,short:`h:mm a`},defaultWidth:`full`}),dateTime:Lt({formats:{full:`{{date}} 'at' {{time}}`,long:`{{date}} 'at' {{time}}`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},zt={lastWeek:`'last' eeee 'at' p`,yesterday:`'yesterday at' p`,today:`'today at' p`,tomorrow:`'tomorrow at' p`,nextWeek:`eeee 'at' p`,other:`P`},Bt=(e,t,n,r)=>zt[e];function Vt(e){return(t,n)=>{let r=n?.context?String(n.context):`standalone`,i;if(r===`formatting`&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;i=e.values[r]||e.values[t]}let a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}var Ht={ordinalNumber:(e,t)=>{let n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+`st`;case 2:return n+`nd`;case 3:return n+`rd`}return n+`th`},era:Vt({values:{narrow:[`B`,`A`],abbreviated:[`BC`,`AD`],wide:[`Before Christ`,`Anno Domini`]},defaultWidth:`wide`}),quarter:Vt({values:{narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1st quarter`,`2nd quarter`,`3rd quarter`,`4th quarter`]},defaultWidth:`wide`,argumentCallback:e=>e-1}),month:Vt({values:{narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],wide:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`]},defaultWidth:`wide`}),day:Vt({values:{narrow:[`S`,`M`,`T`,`W`,`T`,`F`,`S`],short:[`Su`,`Mo`,`Tu`,`We`,`Th`,`Fr`,`Sa`],abbreviated:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],wide:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},defaultWidth:`wide`}),dayPeriod:Vt({values:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`a`,pm:`p`,midnight:`mi`,noon:`n`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},abbreviated:{am:`AM`,pm:`PM`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`midnight`,noon:`noon`,morning:`in the morning`,afternoon:`in the afternoon`,evening:`in the evening`,night:`at night`}},defaultFormattingWidth:`wide`})};function Ut(e){return(t,n={})=>{let r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;let o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?Gt(s,e=>e.test(o)):Wt(s,e=>e.test(o)),l;l=e.valueCallback?e.valueCallback(c):c,l=n.valueCallback?n.valueCallback(l):l;let u=t.slice(o.length);return{value:l,rest:u}}}function Wt(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function Gt(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function Kt(e){return(t,n={})=>{let r=t.match(e.matchPattern);if(!r)return null;let i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;let s=t.slice(i.length);return{value:o,rest:s}}}var qt={code:`en-US`,formatDistance:It,formatLong:Rt,formatRelative:Bt,localize:Ht,match:{ordinalNumber:Kt({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:Ut({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:`any`}),quarter:Ut({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:Ut({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:Ut({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:Ut({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:`any`})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function Jt(e,t){let n=Y(e,t?.in);return kt(n,Pt(n))+1}function Yt(e,t){let n=Y(e,t?.in),r=wt(n)-+At(n);return Math.round(r/_t)+1}function Xt(e,t){let n=Y(e,t?.in),r=n.getFullYear(),i=St(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,o=J(t?.in||e,0);o.setFullYear(r+1,0,a),o.setHours(0,0,0,0);let s=Ct(o,t),c=J(t?.in||e,0);c.setFullYear(r,0,a),c.setHours(0,0,0,0);let l=Ct(c,t);return+n>=+s?r+1:+n>=+l?r:r-1}function Zt(e,t){let n=St(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,i=Xt(e,t),a=J(t?.in||e,0);return a.setFullYear(i,0,r),a.setHours(0,0,0,0),Ct(a,t)}function Qt(e,t){let n=Y(e,t?.in),r=Ct(n,t)-+Zt(n,t);return Math.round(r/_t)+1}function X(e,t){return(e<0?`-`:``)+Math.abs(e).toString().padStart(t,`0`)}var $t={y(e,t){let n=e.getFullYear(),r=n>0?n:1-n;return X(t===`yy`?r%100:r,t.length)},M(e,t){let n=e.getMonth();return t===`M`?String(n+1):X(n+1,2)},d(e,t){return X(e.getDate(),t.length)},a(e,t){let n=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.toUpperCase();case`aaa`:return n;case`aaaaa`:return n[0];default:return n===`am`?`a.m.`:`p.m.`}},h(e,t){return X(e.getHours()%12||12,t.length)},H(e,t){return X(e.getHours(),t.length)},m(e,t){return X(e.getMinutes(),t.length)},s(e,t){return X(e.getSeconds(),t.length)},S(e,t){let n=t.length,r=e.getMilliseconds();return X(Math.trunc(r*10**(n-3)),t.length)}},en={am:`am`,pm:`pm`,midnight:`midnight`,noon:`noon`,morning:`morning`,afternoon:`afternoon`,evening:`evening`,night:`night`},tn={G:function(e,t,n){let r=+(e.getFullYear()>0);switch(t){case`G`:case`GG`:case`GGG`:return n.era(r,{width:`abbreviated`});case`GGGGG`:return n.era(r,{width:`narrow`});default:return n.era(r,{width:`wide`})}},y:function(e,t,n){if(t===`yo`){let t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:`year`})}return $t.y(e,t)},Y:function(e,t,n,r){let i=Xt(e,r),a=i>0?i:1-i;return t===`YY`?X(a%100,2):t===`Yo`?n.ordinalNumber(a,{unit:`year`}):X(a,t.length)},R:function(e,t){return X(Tt(e),t.length)},u:function(e,t){return X(e.getFullYear(),t.length)},Q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`Q`:return String(r);case`QQ`:return X(r,2);case`Qo`:return n.ordinalNumber(r,{unit:`quarter`});case`QQQ`:return n.quarter(r,{width:`abbreviated`,context:`formatting`});case`QQQQQ`:return n.quarter(r,{width:`narrow`,context:`formatting`});default:return n.quarter(r,{width:`wide`,context:`formatting`})}},q:function(e,t,n){let r=Math.ceil((e.getMonth()+1)/3);switch(t){case`q`:return String(r);case`qq`:return X(r,2);case`qo`:return n.ordinalNumber(r,{unit:`quarter`});case`qqq`:return n.quarter(r,{width:`abbreviated`,context:`standalone`});case`qqqqq`:return n.quarter(r,{width:`narrow`,context:`standalone`});default:return n.quarter(r,{width:`wide`,context:`standalone`})}},M:function(e,t,n){let r=e.getMonth();switch(t){case`M`:case`MM`:return $t.M(e,t);case`Mo`:return n.ordinalNumber(r+1,{unit:`month`});case`MMM`:return n.month(r,{width:`abbreviated`,context:`formatting`});case`MMMMM`:return n.month(r,{width:`narrow`,context:`formatting`});default:return n.month(r,{width:`wide`,context:`formatting`})}},L:function(e,t,n){let r=e.getMonth();switch(t){case`L`:return String(r+1);case`LL`:return X(r+1,2);case`Lo`:return n.ordinalNumber(r+1,{unit:`month`});case`LLL`:return n.month(r,{width:`abbreviated`,context:`standalone`});case`LLLLL`:return n.month(r,{width:`narrow`,context:`standalone`});default:return n.month(r,{width:`wide`,context:`standalone`})}},w:function(e,t,n,r){let i=Qt(e,r);return t===`wo`?n.ordinalNumber(i,{unit:`week`}):X(i,t.length)},I:function(e,t,n){let r=Yt(e);return t===`Io`?n.ordinalNumber(r,{unit:`week`}):X(r,t.length)},d:function(e,t,n){return t===`do`?n.ordinalNumber(e.getDate(),{unit:`date`}):$t.d(e,t)},D:function(e,t,n){let r=Jt(e);return t===`Do`?n.ordinalNumber(r,{unit:`dayOfYear`}):X(r,t.length)},E:function(e,t,n){let r=e.getDay();switch(t){case`E`:case`EE`:case`EEE`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`EEEEE`:return n.day(r,{width:`narrow`,context:`formatting`});case`EEEEEE`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},e:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`e`:return String(a);case`ee`:return X(a,2);case`eo`:return n.ordinalNumber(a,{unit:`day`});case`eee`:return n.day(i,{width:`abbreviated`,context:`formatting`});case`eeeee`:return n.day(i,{width:`narrow`,context:`formatting`});case`eeeeee`:return n.day(i,{width:`short`,context:`formatting`});default:return n.day(i,{width:`wide`,context:`formatting`})}},c:function(e,t,n,r){let i=e.getDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case`c`:return String(a);case`cc`:return X(a,t.length);case`co`:return n.ordinalNumber(a,{unit:`day`});case`ccc`:return n.day(i,{width:`abbreviated`,context:`standalone`});case`ccccc`:return n.day(i,{width:`narrow`,context:`standalone`});case`cccccc`:return n.day(i,{width:`short`,context:`standalone`});default:return n.day(i,{width:`wide`,context:`standalone`})}},i:function(e,t,n){let r=e.getDay(),i=r===0?7:r;switch(t){case`i`:return String(i);case`ii`:return X(i,t.length);case`io`:return n.ordinalNumber(i,{unit:`day`});case`iii`:return n.day(r,{width:`abbreviated`,context:`formatting`});case`iiiii`:return n.day(r,{width:`narrow`,context:`formatting`});case`iiiiii`:return n.day(r,{width:`short`,context:`formatting`});default:return n.day(r,{width:`wide`,context:`formatting`})}},a:function(e,t,n){let r=e.getHours()/12>=1?`pm`:`am`;switch(t){case`a`:case`aa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`});case`aaa`:return n.dayPeriod(r,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`aaaaa`:return n.dayPeriod(r,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(r,{width:`wide`,context:`formatting`})}},b:function(e,t,n){let r=e.getHours(),i;switch(i=r===12?en.noon:r===0?en.midnight:r/12>=1?`pm`:`am`,t){case`b`:case`bb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`bbb`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`}).toLowerCase();case`bbbbb`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},B:function(e,t,n){let r=e.getHours(),i;switch(i=r>=17?en.evening:r>=12?en.afternoon:r>=4?en.morning:en.night,t){case`B`:case`BB`:case`BBB`:return n.dayPeriod(i,{width:`abbreviated`,context:`formatting`});case`BBBBB`:return n.dayPeriod(i,{width:`narrow`,context:`formatting`});default:return n.dayPeriod(i,{width:`wide`,context:`formatting`})}},h:function(e,t,n){if(t===`ho`){let t=e.getHours()%12;return t===0&&(t=12),n.ordinalNumber(t,{unit:`hour`})}return $t.h(e,t)},H:function(e,t,n){return t===`Ho`?n.ordinalNumber(e.getHours(),{unit:`hour`}):$t.H(e,t)},K:function(e,t,n){let r=e.getHours()%12;return t===`Ko`?n.ordinalNumber(r,{unit:`hour`}):X(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t===`ko`?n.ordinalNumber(r,{unit:`hour`}):X(r,t.length)},m:function(e,t,n){return t===`mo`?n.ordinalNumber(e.getMinutes(),{unit:`minute`}):$t.m(e,t)},s:function(e,t,n){return t===`so`?n.ordinalNumber(e.getSeconds(),{unit:`second`}):$t.s(e,t)},S:function(e,t){return $t.S(e,t)},X:function(e,t,n){let r=e.getTimezoneOffset();if(r===0)return`Z`;switch(t){case`X`:return rn(r);case`XXXX`:case`XX`:return an(r);default:return an(r,`:`)}},x:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`x`:return rn(r);case`xxxx`:case`xx`:return an(r);default:return an(r,`:`)}},O:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`O`:case`OO`:case`OOO`:return`GMT`+nn(r,`:`);default:return`GMT`+an(r,`:`)}},z:function(e,t,n){let r=e.getTimezoneOffset();switch(t){case`z`:case`zz`:case`zzz`:return`GMT`+nn(r,`:`);default:return`GMT`+an(r,`:`)}},t:function(e,t,n){return X(Math.trunc(e/1e3),t.length)},T:function(e,t,n){return X(+e,t.length)}};function nn(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=Math.trunc(r/60),a=r%60;return a===0?n+String(i):n+String(i)+t+X(a,2)}function rn(e,t){return e%60==0?(e>0?`-`:`+`)+X(Math.abs(e)/60,2):an(e,t)}function an(e,t=``){let n=e>0?`-`:`+`,r=Math.abs(e),i=X(Math.trunc(r/60),2),a=X(r%60,2);return n+i+t+a}var on=(e,t)=>{switch(e){case`P`:return t.date({width:`short`});case`PP`:return t.date({width:`medium`});case`PPP`:return t.date({width:`long`});default:return t.date({width:`full`})}},sn=(e,t)=>{switch(e){case`p`:return t.time({width:`short`});case`pp`:return t.time({width:`medium`});case`ppp`:return t.time({width:`long`});default:return t.time({width:`full`})}},cn={p:sn,P:(e,t)=>{let n=e.match(/(P+)(p+)?/)||[],r=n[1],i=n[2];if(!i)return on(e,t);let a;switch(r){case`P`:a=t.dateTime({width:`short`});break;case`PP`:a=t.dateTime({width:`medium`});break;case`PPP`:a=t.dateTime({width:`long`});break;default:a=t.dateTime({width:`full`});break}return a.replace(`{{date}}`,on(r,t)).replace(`{{time}}`,sn(i,t))}},ln=/^D+$/,un=/^Y+$/,dn=[`D`,`DD`,`YY`,`YYYY`];function fn(e){return ln.test(e)}function pn(e){return un.test(e)}function mn(e,t,n){let r=hn(e,t,n);if(console.warn(r),dn.includes(e))throw RangeError(r)}function hn(e,t,n){let r=e[0]===`Y`?`years`:`days of the month`;return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}var gn=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,_n=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,vn=/^'([^]*?)'?$/,yn=/''/g,bn=/[a-zA-Z]/;function xn(e,t,n){let r=St(),i=n?.locale??r.locale??qt,a=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,o=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,s=Y(e,n?.in);if(!Nt(s))throw RangeError(`Invalid time value`);let c=t.match(_n).map(e=>{let t=e[0];if(t===`p`||t===`P`){let n=cn[t];return n(e,i.formatLong)}return e}).join(``).match(gn).map(e=>{if(e===`''`)return{isToken:!1,value:`'`};let t=e[0];if(t===`'`)return{isToken:!1,value:Sn(e)};if(tn[t])return{isToken:!0,value:e};if(t.match(bn))throw RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}});i.localize.preprocessor&&(c=i.localize.preprocessor(s,c));let l={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return c.map(r=>{if(!r.isToken)return r.value;let a=r.value;(!n?.useAdditionalWeekYearTokens&&pn(a)||!n?.useAdditionalDayOfYearTokens&&fn(a))&&mn(a,t,String(e));let o=tn[a[0]];return o(s,a,i.localize,l)}).join(``)}function Sn(e){let t=e.match(vn);return t?t[1].replace(yn,`'`):e}function Cn(){return{handledInviteChoices:{},entries:[],invitePrompt:null,isMobileDockOpen:!1}}function wn(e,n,r,i={}){if(!n?.prompt||n.status!==N.INVITABLE)return e;let a=e.entries.find(e=>e.id===n.id),o=e.handledInviteChoices[n.prompt.invitationId];if(o===t.CLOSE)return{...e,invitePrompt:null,isMobileDockOpen:!1};let s=(i.canShowPrompt??!0)&&o!==t.LATER&&a?.unread!==!1;return{...e,entries:[...e.entries.filter(e=>e.id!==n.id),{...n,unread:a?.unread??!0}],invitePrompt:s?n.prompt:null,isMobileDockOpen:s&&r===`mobile`}}function Tn(e,t){return!t||t.kind!==`interview`||t.status!==N.ACTIVE?e:{...e,entries:[...e.entries.filter(e=>e.id!==t.id&&!(e.kind===`interview`&&e.status===N.INVITABLE)),{...t,unread:!1}],invitePrompt:null,isMobileDockOpen:!1}}function En(e,t){return{...e,entries:e.entries.map(e=>e.id===t?{...e,unread:!1}:e)}}function Dn(e,n,r){return{...e,handledInviteChoices:{...e.handledInviteChoices,[n]:r},entries:r===t.CLOSE?e.entries.filter(e=>e.prompt?.invitationId!==n):e.entries,invitePrompt:null,isMobileDockOpen:!1}}function On(e,{invitationId:t,sessionId:n,subtitle:r,title:i}){let a=e.entries.find(e=>e.prompt?.invitationId===t),o={id:`interview/session/${n}`,kind:`interview`,priority:a?.priority??20,status:N.ACTIVE,subtitle:r,title:i},s={...e.handledInviteChoices};return delete s[t],{...e,handledInviteChoices:s,entries:[...e.entries.filter(e=>e.prompt?.invitationId!==t),o],invitePrompt:null,isMobileDockOpen:!1}}function kn({children:e,scope:t,transitionKey:n}){let r=(0,z.useRef)(1),i=(0,z.useRef)({content:e,id:0,isPresent:!0,shouldAnimate:!1,transitionKey:n}),[a,o]=(0,z.useState)(()=>[i.current]);(0,z.useLayoutEffect)(()=>{o(t=>{let a=i.current;if(a.transitionKey===n){let n={...a,content:e};return i.current=n,t.map(e=>e.id===n.id?n:e)}let o={...a,isPresent:!1,shouldAnimate:!0},s={content:e,id:r.current++,isPresent:!0,shouldAnimate:!0,transitionKey:n};return i.current=s,[...t.filter(e=>e.id!==a.id&&e.isPresent),o,s]})},[e,n]);function s(e){o(t=>t.filter(t=>t.id!==e))}function c(e,t){t.isPresent||e.target!==e.currentTarget||e.animationName!==`customer-agent-chat-route-out`||s(t.id)}let l=t===`shell`?`customer-agent-shell-route-layer absolute inset-0 flex min-h-0 flex-1`:`customer-agent-chat-route-layer absolute inset-0 flex min-h-0 flex-1`,u=t===`shell`?`customer-agent-shell-route-content flex min-h-0 flex-1 flex-row`:`customer-agent-chat-route-content flex min-h-0 flex-1 flex-col`;return(0,B.jsx)(`div`,{className:`customer-agent-${t}-route-stack relative flex min-w-0 flex-1 overflow-hidden`,"data-customer-agent-route-stack":t,children:a.map(e=>(0,B.jsx)(L,{present:e.isPresent,children:(0,B.jsx)(`div`,{className:l,"aria-hidden":!e.isPresent,"data-route-state":e.isPresent?`open`:`closed`,"data-route-transition-key":e.transitionKey,"data-route-motion":e.shouldAnimate?`animate`:`idle`,"data-testid":`customer-agent-${t}-route-layer`,onAnimationEnd:t=>c(t,e),children:(0,B.jsx)(`div`,{className:u,"data-route-content":``,children:e.content})})},e.id))})}var An=null,jn=(0,z.lazy)(async()=>({default:(await Mn()).MobileDockDrawer}));function Mn(){return An??=import(`./MobileDockDrawer-ZIdezZML.js`).catch(e=>{throw An=null,e}),An}function Nn({activeEntryId:e,ariaLabel:t,children:n,entries:r,invitePrompt:i=null,interviewChat:o,isChatLoading:s=!1,isExpanded:c,isMobileDockOpen:l,isOpen:u,route:d,routeTransitionKey:f=0,style:ee,viewportMode:m,onEntrySelect:h,onInviteClose:g,onInviteLater:_,onInviteStart:te,onMobileDockOpenChange:ne}){let[v,y]=(0,z.useState)(null),b=i?.invitationId??null,x=!!(b&&r.some(e=>e.prompt?.invitationId===b)),re=!!(b&&x&&v===b)&&(m===`desktop`||l),ie=d.name,ae=d.name===a.AGENTS_CONVERSATIONS?[f,d.child.name,d.child.entryId,s&&d.child.name===p.CHAT?`loading`:`ready`].join(`:`):f;(0,z.useEffect)(()=>{m===`mobile`&&Mn()},[m]),(0,z.useEffect)(()=>{if(!b||!x)return;let e=window.setTimeout(()=>{y(b)},280);return()=>window.clearTimeout(e)},[x,b]);let oe=d.name===a.GLOBAL_LOADING?(0,B.jsx)(j,{label:`Loading conversations`}):(0,B.jsxs)(B.Fragment,{children:[m===`desktop`?(0,B.jsx)(M,{activeEntryId:e,entries:r,invitePrompt:i,isInvitePromptOpen:re,onEntrySelect:h,onInviteClose:g,onInviteLater:_,onInviteStart:te}):(0,B.jsx)(Fn,{isOpen:l,onOpenChange:ne,children:(0,B.jsx)(z.Suspense,{fallback:(0,B.jsx)(In,{}),children:(0,B.jsx)(jn,{activeEntryId:e,entries:r,invitePrompt:i,isInvitePromptOpen:re,onEntrySelect:h,onInviteClose:g,onInviteLater:_,onInviteStart:te,onOpenChange:ne})})}),(0,B.jsx)(`div`,{className:`relative flex min-w-0 flex-1 flex-col overflow-hidden rounded-l-[28px] border-l border-border-divider bg-bg-canvas shadow-[-6px_0_18px_rgba(9,14,21,0.035)] data-[viewport-mode=mobile]:rounded-none data-[viewport-mode=mobile]:border-l-0 data-[viewport-mode=mobile]:shadow-none`,"data-customer-agent-chat-outlet":``,"data-viewport-mode":m,children:(0,B.jsx)(kn,{scope:`chat`,transitionKey:ae,children:(0,B.jsx)(Pn,{inviteMask:re?(0,B.jsx)(`div`,{className:`absolute inset-0 z-10 animate-[customer-agent-invite-mask-in_140ms_ease-out_both] bg-black/20 motion-reduce:animate-none`,"data-state":`open`,"data-testid":`interview-invite-mask`}):null,interviewChat:o,isChatLoading:s,route:d,children:n})})})]});return(0,B.jsx)(`section`,{className:`customer-agent-panel flex h-full w-full overflow-hidden rounded-messenger bg-bg-canvas text-text-primary outline-none data-[expanded=true]:[--messenger-conversation-part-max-width:520px] data-[viewport-mode=mobile]:h-[var(--customer-agent-visual-height)] data-[viewport-mode=mobile]:rounded-none`,"aria-hidden":!u,"aria-label":t,"data-expanded":c?`true`:`false`,"data-route":d.name,"data-state":u?`open`:`closed`,"data-viewport-mode":m,style:ee,children:(0,B.jsx)(kn,{scope:`shell`,transitionKey:ie,children:oe})})}function Pn({children:e,inviteMask:t,interviewChat:n,isChatLoading:r,route:i}){return i.name===a.AGENTS_CONVERSATIONS?i.child.name===p.INTERVIEW_STARTING?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(j,{label:`Starting interview`}),t]}):i.child.name===p.CHAT&&r&&f(i.child.entryId)?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(j,{label:`Loading chat`}),t]}):i.child.entryId.startsWith(`interview/`)?(0,B.jsxs)(B.Fragment,{children:[n??(0,B.jsx)(j,{label:`Loading interview`}),t]}):(0,B.jsxs)(B.Fragment,{children:[e,t]}):null}function Fn({children:e,isOpen:t,onOpenChange:n}){return(0,B.jsxs)(ft,{modal:!0,open:t,onOpenChange:n,children:[(0,B.jsx)(pt,{className:`absolute inset-0 z-20 bg-black/20 data-[state=open]:animate-[customer-agent-mobile-dock-overlay-in_160ms_ease-out_both] motion-reduce:animate-none`,"data-customer-agent-mobile-dock-mask":``}),(0,B.jsxs)(q,{className:`absolute inset-y-0 left-0 z-30 w-[min(360px,100%)] bg-transparent outline-none data-[state=open]:animate-[customer-agent-mobile-dock-in_180ms_var(--ease-emphasis)_both] motion-reduce:animate-none`,"aria-label":`Conversations`,"aria-describedby":void 0,"data-customer-agent-mobile-dock":``,onPointerDown:e=>{e.target===e.currentTarget&&n(!1)},children:[(0,B.jsx)(mt,{className:`sr-only`,children:`Conversations`}),(0,B.jsx)(ht,{className:`sr-only`,children:`Select a conversation.`}),e]})]})}function In(){return(0,B.jsx)(`div`,{className:`pointer-events-auto h-full w-16 bg-bg-canvas shadow-card`,"aria-label":`Loading conversations`,"data-customer-agent-mobile-dock-rail":``,"data-customer-agent-mobile-dock-skeleton":``,role:`status`,children:(0,B.jsxs)(`div`,{className:`flex w-16 shrink-0 flex-col items-center gap-3 px-2 py-4`,children:[(0,B.jsx)(Ln,{className:`h-10 w-10 rounded-lg`}),(0,B.jsx)(Ln,{className:`h-10 w-10 rounded-lg`})]})})}function Ln({className:e}){return(0,B.jsx)(`div`,{className:F(`animate-pulse rounded bg-gray-3`,e),"data-customer-agent-skeleton":``})}function Rn(){return{name:a.GLOBAL_LOADING}}function zn(){let e={name:a.GLOBAL_LOADING};return{action:`reset`,current:e,stack:[e],transitionKey:0}}function Bn(e,t){return{...t,transitionKey:e.transitionKey+1}}function Vn(e,t){if(!e||!t)return!1;switch(e.name){case a.GLOBAL_LOADING:return t.name===a.GLOBAL_LOADING?Hn(e.target,t.target):!1;case a.GLOBAL_ERROR:return t.name===a.GLOBAL_ERROR?Hn(e.retryTo,t.retryTo):!1;case a.AGENTS_CONVERSATIONS:return t.name!==a.AGENTS_CONVERSATIONS||e.child.name!==t.child.name?!1:e.child.name===p.INTERVIEW_STARTING?t.child.name===p.INTERVIEW_STARTING&&e.child.entryId===t.child.entryId&&e.child.invitationId===t.child.invitationId:t.child.name===p.CHAT&&e.child.entryId===t.child.entryId}}function Hn(e,t){return e||t?Vn(e,t):!0}function Un(e,t){switch(t.type){case`push`:return Vn(e.current,t.route)?e:Bn(e,{action:`push`,current:t.route,previous:e.current,stack:[...e.stack,t.route]});case`replace`:return Vn(e.current,t.route)?e:Bn(e,{action:`replace`,current:t.route,previous:e.current,stack:[...e.stack.slice(0,-1),t.route]});case`reset`:return Vn(e.current,t.route)?e:Bn(e,{action:`reset`,current:t.route,previous:e.current,stack:[t.route]});case`back`:{let n=e.stack.slice(0,-1),r=n[n.length-1]??t.fallback??e.current;return Bn(e,{action:`back`,current:r,previous:e.current,stack:n.length>0?n:[r]})}}}var Wn=`customer_agent:widget_route`;function Gn(e){return typeof e==`string`&&e.trim()?e.trim():null}function Kn(e){let t=Gn(e.user?.id),n=Gn(e.anonymous_id),r=t?`user:${t}`:n?`anonymous:${n}`:`anonymous`;return encodeURIComponent(r)}function qn(e){return`${Wn}:${e.app_id}:${Kn(e)}`}function Jn(e){return e.name===a.AGENTS_CONVERSATIONS?e.child.name===p.CHAT&&Zn(e.child.entryId):!1}function Yn(e){return!!e&&typeof e==`object`}function Xn(e){if(!Yn(e)||e.name!==a.AGENTS_CONVERSATIONS)return!1;let t=e.child;return!Yn(t)||typeof t.entryId!=`string`?!1:!!(t.name===p.CHAT&&Zn(t.entryId))}function Zn(e){return e.startsWith(`support/`)?f(e):e.startsWith(`interview/session/`)?c(e):!0}function Qn(e){if(!e)return null;let t=JSON.parse(e);return Xn(t)&&Jn(t)?t:null}function $n(e){try{let t=qn(e);return Qn(window.localStorage.getItem(t))}catch{return null}}function er(e,t){if(Jn(t))try{window.localStorage.setItem(qn(e),JSON.stringify(t))}catch{}}function tr(e){return e.type===`support`||e.type===`home`?Rn():e.type===`entry`?ne(e.entryId)?{child:{entryId:e.entryId,name:p.CHAT},name:a.AGENTS_CONVERSATIONS}:Rn():e.sessionId?{child:{entryId:`interview/session/${e.sessionId}`,name:p.CHAT},name:a.AGENTS_CONVERSATIONS}:e.campaignId?{child:{entryId:`interview/invite/${e.campaignId}`,name:p.CHAT},name:a.AGENTS_CONVERSATIONS}:Rn()}function nr(e){return e.status===n.AVAILABLE?{id:`interview/invite/${e.campaignId}`,kind:`interview`,priority:20,prompt:{anchor:`dock`,body:e.body,campaignId:e.campaignId,closeLabel:`No`,invitationId:`runtime:${e.campaignId}`,kind:`interview-invite`,laterLabel:e.laterCta,startLabel:e.startCta},status:N.INVITABLE,title:e.title}:e.status===n.ACTIVE?{id:e.entryId,kind:`interview`,priority:20,status:N.ACTIVE,title:e.title??``}:null}function rr(){let e=i(h());return{async checkEligibility(t){let{data:n}=await e.request(`/interviews/eligibility`,{body:t,method:`POST`});return n},async chooseInvitation(t,n){await e.request(`/interviews/invitations/${t}/choice`,{body:n,method:`PATCH`})},async createInvitation(t){let{data:n}=await e.request(`/interviews/invitations`,{body:t,method:`POST`});return n},async getReward(t){let{data:n}=await e.request(`/interviews/sessions/${t}/reward`);return n},async getSession(t){let{data:n}=await e.request(`/interviews/sessions/${t}`);return n},async sendMessage(t,n){let{data:r}=await e.request(`/interviews/sessions/${t}/messages`,{body:n,method:`POST`});return r},async startInvitation(t,n){let{data:r}=await e.request(`/interviews/invitations/${t}/start`,{body:n,method:`POST`});return r}}}var Z=Object.freeze({ERROR:`error`,IDLE:`idle`,LOADING:`loading`,READY:`ready`}),ir=`image/*,application/pdf,video/mp4,.jpg,.jpeg,.png,.gif,.pdf,.mp4`,ar=Object.freeze({MAX_FILE_SIZE_BYTES:50*1024*1024}),or=`customer-agent-attachment`,sr=(0,z.lazy)(async()=>({default:(await import(`./MarkdownText-CXKW_2Ol.js`)).MarkdownText})),cr=null,lr=(0,z.lazy)(async()=>({default:(await dr()).InterviewChatScreen})),ur=new Set([n.CHECKING,n.IDLE]);function dr(){return cr??=import(`./InterviewChatScreen-D37bCE1R.js`).catch(e=>{throw cr=null,e}),cr}function fr(e,t){return r(e)&&e.child.entryId===t.id?e:m(t.id)}function pr(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`msg_${Date.now()}_${Math.random().toString(36).slice(2)}`}function mr(e){return e?.brand?.name??`Customer Agent`}function hr(e,t){return t===`Customer Agent`&&e||t}function gr(e){return e.content.map(e=>e.type===`text`?e.text:``).filter(Boolean).join(`
|
|
6
6
|
`)}function _r(e){return e===`user`?`user`:`assistant`}function vr(e){let t=e.metadata?.custom?.assistantAuthor;return t===`human`||t===`llm`?t:null}function yr(e,t){return e===`human`?t.messages.assistant_author_human:t.messages.assistant_author_ai}function br(e){let t=e?.find(e=>e.type===`image`&&typeof e.image==`string`||e.type===`file`&&typeof e.data==`string`);return t?.image??t?.data??``}function xr(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.id==`string`&&typeof t.filename==`string`&&typeof t.mimeType==`string`&&typeof t.sizeBytes==`number`&&typeof t.url==`string`}function Sr(e){let t=kr(e.content);if(t)return{...t,file:e.file};let n=br(e.content);return!n&&!e.file?null:{expiresAt:void 0,file:e.file,filename:e.name,id:e.id,mimeType:e.contentType??e.file?.type??`application/octet-stream`,sizeBytes:e.file?.size??0,url:n}}function Cr(e){let t=[],n=new Set;for(let r of e.attachments??[]){let e=Sr(r);e&&!n.has(e.id)&&(t.push(e),n.add(e.id))}let r=e.metadata?.custom?.attachments;if(Array.isArray(r))for(let e of r)xr(e)&&!n.has(e.id)&&(t.push(e),n.add(e.id));return t}function wr(e){return!!(e.content.trim()||(e.attachments?.length??0)>0)}function Tr(e){return e.filter(wr).map(e=>e.id)}function Er(e){return(e.attachments??[]).map(e=>({id:e.id}))}function Dr(e,t){return[...e].sort((e,n)=>{let r=kr(e.content),i=kr(n.content),a=r?t.get(r.id):void 0,o=i?t.get(i.id):void 0;return a!==void 0&&o!==void 0?a-o:a===void 0?o===void 0?0:1:-1})}function Or(e){return(e.attachments??[]).map(e=>kr(e.content)).filter(e=>!!e)}function kr(e){let t=e?.find(e=>e.type===`data`&&e.name===or)?.data;if(!t||typeof t!=`object`)return null;let n=t;return typeof n.id==`string`&&typeof n.filename==`string`&&typeof n.mimeType==`string`&&typeof n.sizeBytes==`number`&&typeof n.url==`string`?{expiresAt:typeof n.expiresAt==`string`?n.expiresAt:void 0,filename:n.filename,id:n.id,mimeType:n.mimeType,sizeBytes:n.sizeBytes,url:n.url}:null}function Ar(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function jr(e){let t=e.createdAt;return Ar(t)?t:new Date}function Mr(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function Nr(e,t){return jt(e,t)}function Pr(e,t){let n=new Date,r=kt(n,e);return r<=0?t.messages.relative_time_today:r===1?t.messages.relative_time_yesterday:r<7?y(t.messages.relative_time_day,{count:String(r)}):xn(e,e.getFullYear()===n.getFullYear()?`MM-dd`:`yyyy-MM-dd`)}function Fr(e,t){let n=Math.max(0,Date.now()-e.getTime()),r=6e4,i=60*r,a=24*i;return n<r?t.messages.relative_time_now:n<i?y(t.messages.relative_time_minute,{count:String(Math.floor(n/r))}):n<a?y(t.messages.relative_time_hour,{count:String(Math.floor(n/i))}):y(t.messages.relative_time_day,{count:String(Math.floor(n/a))})}function Ir(e,t){let n=e[t],r=e[t-1],i=e[t+1],a=r?.role===n.role&&Nr(r.createdAt,n.createdAt),o=i?.role===n.role&&Nr(i.createdAt,n.createdAt);return a&&o?`middle`:a?`bottom`:o?`top`:`standalone`}function Lr(e,t){let n=`var(--messenger-conversation-part-radius)`,r=`var(--messenger-conversation-part-adjacent-radius)`,i=t===`middle`||t===`bottom`,a=t===`middle`||t===`top`;return e===`user`?{borderTopLeftRadius:n,borderTopRightRadius:i?r:n,borderBottomRightRadius:a?r:n,borderBottomLeftRadius:n}:{borderTopLeftRadius:i?r:n,borderTopRightRadius:n,borderBottomRightRadius:n,borderBottomLeftRadius:a?r:n}}function Rr(e){return(e??`Customer Agent`).trim().replace(/[^a-z0-9\u4e00-\u9fa5]+/gi,`_`).replace(/^_+|_+$/g,``)}function zr(e,t,n,r){let i=n.getFullYear(),a=String(n.getMonth()+1).padStart(2,`0`),o=String(n.getDate()).padStart(2,`0`);return`${Rr(e)||`Customer_Agent`}_${t}_${i}_${a}_${o}_${r}.txt`}function Br(e){return(e??[]).map(e=>({id:e.id,role:e.author===`visitor`?`user`:`assistant`,content:e.text,status:e.author===`assistant`?{type:`complete`,reason:`stop`}:void 0}))}function Vr(t,n,r,i){let a=new Map;return{accept:ir,async*add({file:o}){let c=pr(),l={id:c,type:o.type.startsWith(`image/`)?`image`:`file`,name:o.name,contentType:o.type,file:o,content:[]};if(o.size>ar.MAX_FILE_SIZE_BYTES){yield{...l,status:{reason:`error`,type:`incomplete`}};return}yield{...l,status:{progress:0,reason:`uploading`,type:`running`}};let u=t.current;if(!u)throw Error(`The support chat is missing widget configuration.`);await i.current?.ensureSession();let d=await s.uploadAttachment(u,o,{onConversationCreated(t){n.current?.emit(e.CONVERSATION_CREATED,{...$(t)})}});if(a.set(c,d),r.current.set(d.id,r.current.size),d.mimeType.startsWith(`image/`)&&d.url){let e=new Image;e.src=d.url,await e.decode().catch(()=>void 0)}yield{...l,status:{reason:`composer-send`,type:`requires-action`}}},async remove(e){a.delete(e.id)},async send(e){let t=a.get(e.id);if(!t)throw Error(`The attachment is not ready to send yet.`);a.delete(e.id);let n=t.mimeType.startsWith(`image/`)?[{type:`image`,image:t.url,filename:t.filename}]:[{type:`file`,data:t.url,filename:t.filename,mimeType:t.mimeType}];return{id:t.id,type:e.type,name:e.name,contentType:e.contentType,file:e.file,content:[...n,{type:`data`,name:or,data:t}],status:{type:`complete`}}}}}function Q(e){return!e?.app_id||!e.widgetId?null:{...e,context:e.context??{}}}function Hr(e){return e?.messages?.welcome_message?.trim()??``}function Ur(e){return e instanceof g?e.message:`I couldn't reach support right now. Please try again in a moment.`}function $(e){return{conversationId:e,conversationType:`support`,entryId:d(e),supportConversationId:e}}function Wr(e){let t=Q(e);return t?_(t):null}function Gr({hasCachedInterviewSession:e,hasInterviewIdentity:t,interview:i,storedRoute:a}){return i.status===n.ACTIVE?!1:t&&(e||r(a))&&ur.has(i.status)}function Kr({interview:e,storedRoute:t,supportEntryId:n,supportRoute:i}){return r(t)?t.child.entryId===e.entryId?t:m(e.entryId):Qr({storedRoute:t,supportEntryId:n})??i}function qr({storedRoute:e,supportEntryId:t,supportRoute:n}){return Qr({storedRoute:e,supportEntryId:t})??n}function Jr(e){return!e||e.type===v.SUPPORT?null:m(e.entryId)}function Yr(e){return e.name===a.AGENTS_CONVERSATIONS&&e.child.name===p.CHAT?{entryId:e.child.entryId,type:v.CHAT}:null}function Xr(e){return e.startsWith(`interview/`)}function Zr(e){return e?.name===a.AGENTS_CONVERSATIONS&&e.child.name===p.CHAT&&f(e.child.entryId)}function Qr({storedRoute:e,supportEntryId:t}){return!e||e.name!==a.AGENTS_CONVERSATIONS||r(e)?null:Zr(e)&&t?e.child.entryId===t?e:m(t):e}function $r(e){return e?m(e):Rn()}function ei(e){return e?e.type===`interview`?!0:e.type===`entry`&&Xr(e.entryId):!1}function ti({activeTarget:e,supportHydrationKey:t,supportStatus:n}){return!!t&&!ei(e)&&n!==te.READY}function ni(e,t){if(!ei(e))return null;if(e?.type===`interview`&&e.sessionId)return m(`interview/session/${e.sessionId}`);if(t?.status===n.ACTIVE)return m(t.entryId);let r=e?.type===`interview`?e.campaignId:void 0;return r?{child:{entryId:`interview/invite/${r}`,invitationId:`runtime:${r}`,name:p.INTERVIEW_STARTING},name:a.AGENTS_CONVERSATIONS}:e?.type===`entry`?tr(e):null}function ri(e){return`session`in e}function ii(e){return e.content.map(e=>e.type===`text`?e.text:``).filter(Boolean).join(`
|
|
7
|
-
`).trim()}function ai(e){return e.id?.startsWith(`local-`)??!1}function oi(e,t){return{...e,metadata:{...e.metadata,custom:{...e.metadata?.custom,supportConversationId:t}}}}function si(e,t){let n=oi(e,t);return{...n,metadata:{...n.metadata,custom:{...n.metadata?.custom,supportAckConversationId:t,supportSendStatus:`acked`}}}}function ci(e,t){let n=e.metadata?.custom;return n?.supportConversationId===t||n?.supportAckConversationId===t}function li(e,t){return o(e).map(e=>oi(e,t))}function ui(e,t){let n=new Map(e.map(e=>[e.id,e]));for(let e of t)n.set(e.id,e);return[...n.values()]}function di(e,t){if(e.length===0)return t;let n=new Set(e.map(e=>e.id)),r=t.filter(e=>ai(e)&&!n.has(e.id));return[...e,...r]}function fi(e,t,n){if(e.length===0)return t;let r=e.map(e=>oi(e,n)),i=new Set(r.map(e=>e.id)),a=t.filter(e=>!i.has(e.id)&&(ai(e)||ci(e,n)));return[...r,...a]}function pi({activeTarget:t,bootOptions:n,eventBus:r,interviewRuntime:i,isExpanded:a,isOpen:c,locale:u,memoryRoute:d,messages:f,onMemoryRouteChange:ee,onExpandedChange:p,onOpenChange:m,runtimeState:h,supportRuntime:g,viewport:ne}){let v=(0,z.useRef)(null),y=(0,z.useRef)(!1),b=(0,z.useRef)(!1),x=(0,z.useRef)(null),[re,ae]=(0,z.useState)(!1),[oe,se]=(0,z.useState)(null),[ce,C]=(0,z.useState)(Z.IDLE),[w,T]=(0,z.useState)(null),[le,E]=(0,z.useState)(()=>Br(f)),D=Q(n),ue=(0,z.useRef)(D),de=(0,z.useRef)(r),fe=(0,z.useRef)(g),pe=(0,z.useRef)(null),O=(0,z.useRef)(null),me=(0,z.useRef)(new Map),k=(0,z.useMemo)(()=>Wr(n),[n]);ue.current=D,de.current=r,fe.current=g,(!pe.current||O.current!==k)&&(me.current=new Map,pe.current=Vr(ue,de,me,fe),O.current=k);let he=pe.current,ge=D?k&&oe===k?v.current===k?Z.READY:ce===Z.ERROR?Z.ERROR:Z.LOADING:Z.IDLE:Z.READY,_e=ge===Z.READY&&w?.key===k&&w.messageIds.length>0&&!w.messageIds.every(e=>le.some(t=>t.id===e)),ve=le.some(e=>e.role===`assistant`&&e.status?.type===`running`),ye=re||ge!==Z.READY||_e||ve,be=S({adapters:(0,z.useMemo)(()=>({attachments:he}),[he]),convertMessage:(0,z.useCallback)(e=>e,[]),isRunning:re,isSendDisabled:ye,messages:le,onNew:(0,z.useCallback)(async t=>{let n=ii(t),i=Dr(t.attachments??[],me.current),a=Er({...t,attachments:i});if(!D){E(e=>ui(e,[{id:`local-error-${pr()}`,role:`assistant`,content:`The support chat is missing widget configuration.`,createdAt:new Date,status:{type:`complete`,reason:`stop`}}]));return}if(!n&&a.length===0)return;let c=`local-user-${pr()}`,l;b.current=!0,ae(!0),r?.emit(e.MESSAGE_SENT,{...w?$(w.conversationId):{conversationType:`support`},messageId:c,role:`user`}),E(e=>ui(e,[{id:c,role:`user`,content:n||[],attachments:i,createdAt:new Date,metadata:{custom:{attachments:Or({...t,attachments:i})}}}]));let u=new AbortController;try{if(!g)throw Error(`The support chat is missing runtime session orchestration.`);let t=await g.ensureSession();l=t.conversationId,r?.emit(e.MESSAGE_STARTED,{...$(l),role:`assistant`});let i=await s.sendMessage(D,n,a,u.signal,{onConversationCreated(t){r?.emit(e.CONVERSATION_CREATED,{...$(t)})},onSessionInvalidated(){g.invalidateSession?.()}});i.conversationId!==t.conversationId&&g.ensureSession().catch(e=>{console.error(`CustomerAgent session recovery failed.`,e)}),l=i.conversationId;let d=o([i.userMessage,i.assistantMessage]).map(e=>si(e,i.conversationId));T({conversationId:i.conversationId,key:_(D),messageIds:[]}),E(e=>ui(e.filter(e=>e.id!==c),d)),r?.emit(e.MESSAGE_COMPLETED,{assistantAuthor:i.assistantMessage.assistantAuthor??void 0,...$(i.conversationId),messageId:i.assistantMessage.id,role:`assistant`}),i.handoff.needed&&r?.emit(e.HANDOFF_REQUESTED,{...$(i.conversationId)})}catch(t){console.error(`CustomerAgent message request failed.`,t);let n=l?$(l):{conversationType:`support`};r?.emit(e.MESSAGE_SEND_FAILED,{...n,messageId:c,role:`user`}),r?.emit(e.MESSAGE_FAILED,{...n,role:`assistant`}),E(e=>ui(e,[{id:`local-error-${pr()}`,role:`assistant`,content:Ur(t),createdAt:new Date,status:{type:`complete`,reason:`stop`}}]))}finally{b.current=!1,ae(!1)}},[r,D,w,g])});return(0,z.useEffect)(()=>{let e=Q(n),t=Wr(n);if(!e||!t){v.current=null,x.current=null,C(Z.READY),T(null);return}if(oe!==t){v.current=null,x.current=null,E(Br(f)),C(Z.IDLE),T(null);return}if(v.current===t){C(Z.READY);return}if(!g){C(Z.ERROR),T(null);return}let r=g?.getSessionSnapshot();if(h?.support.status===te.READY&&r?.conversationId===h.support.conversationId){v.current=t,T({conversationId:r.conversationId,key:t,messageIds:Tr(r.messages)}),r.messages.length>0&&E(e=>di(li(r.messages,r.conversationId),e)),C(Z.READY);return}let i=!1,a=x.current;return(!a||a.key!==t)&&(E(Br(f)),T(null),a={key:t,promise:g.ensureSession()},x.current=a),C(Z.LOADING),a.promise.then(e=>{i||(v.current=t,T({conversationId:e.conversationId,key:t,messageIds:Tr(e.messages)}),e.messages.length>0&&E(t=>di(li(e.messages,e.conversationId),t)),C(Z.READY))}).catch(e=>{i||(x.current?.key===t&&(x.current=null),v.current=null,T(null),C(Z.ERROR),console.error(`CustomerAgent session bootstrap failed.`,e))}),()=>{i=!0}},[n,r,f,h,oe,g]),(0,z.useEffect)(()=>{let e=Q(n);if(!e)return;let t=e,r=!1,i=null;function a(){r||document.hidden||y.current||b.current||(y.current=!0,i=new AbortController,s.refreshSession(t,i.signal).then(e=>{r||b.current||e&&(T(n=>n?.key===_(t)?{conversationId:e.conversationId,key:n.key,messageIds:[]}:n),E(t=>fi(li(e.messages,e.conversationId),t,e.conversationId)))}).catch(e=>{if(!(e instanceof DOMException&&e.name===`AbortError`)){if(e instanceof l){let e=_(t);if(!g){v.current=null,T(null),C(Z.ERROR);return}g.invalidateSession?.(),v.current=null,x.current=null,se(e),C(Z.READY),g.ensureSession().then(t=>{r||(v.current=e,T({conversationId:t.conversationId,key:e,messageIds:Tr(t.messages)}),E(e=>di(li(t.messages,t.conversationId),e)),C(Z.READY))}).catch(e=>{r||(v.current=null,T(null),C(Z.ERROR),console.error(`CustomerAgent session recovery failed.`,e))});return}console.error(`CustomerAgent session refresh failed.`,e)}}).finally(()=>{y.current=!1,i=null}))}let o=window.setInterval(a,5e3);return()=>{r=!0,i?.abort(),window.clearInterval(o),y.current=!1}},[n,f,w,g]),(0,B.jsx)(ie,{runtime:be,children:(0,B.jsx)(mi,{bootOptions:n,activeTarget:t,eventBus:r,interviewRuntime:i,isExpanded:a,isOpen:c,locale:u,memoryRoute:d,onMemoryRouteChange:ee,onExpandedChange:p,onOpenChange:m,runtimeState:h,supportRuntime:g,onSupportBootstrapNeeded:se,supportHydrationSnapshot:w,supportBootstrapStatus:ge,viewport:ne})})}function mi({activeTarget:i,bootOptions:o,eventBus:s,interviewRuntime:c,isExpanded:l,isOpen:h,locale:g,memoryRoute:_,onMemoryRouteChange:ne,onExpandedChange:v,onOpenChange:b,runtimeState:x,supportRuntime:ie,onSupportBootstrapNeeded:S,supportBootstrapStatus:T,supportHydrationSnapshot:O,viewport:A}){let[Se,Ce]=(0,z.useState)(!1),[j,M]=(0,z.useReducer)(Un,void 0,zn),[P,I]=(0,z.useState)(Cn),[Ee,De]=(0,z.useState)({}),Oe=Te(e=>e.thread.messages),ke=ce().composer,Ae=!!o?.embedded,je=A.presentation===`fullscreen`&&!Ae,Me=A.mode===`mobile`?je?A.safeAreaBottom:Math.max(A.safeAreaBottom,A.keyboardInset):0,Ne=A.mode===`mobile`&&je?A.height:A.visualHeight,L=(0,z.useRef)(null),Pe=(0,z.useRef)(null),R=(0,z.useRef)(null),Fe=(0,z.useRef)(null),Ie=(0,z.useRef)(null),Le=(0,z.useRef)(null),Re=(0,z.useRef)(null),ze=(0,z.useRef)(null),Be=(0,z.useRef)(!1),Ve=(0,z.useRef)(!1),V=(0,z.useRef)(null),He=(0,z.useRef)(null),Ue=(0,z.useRef)(!1),We=(0,z.useRef)(!1),H=mr(o),Ge=g.messages.interview_session_description,Ke=o?.theme?.primaryColor??`var(--gray-12)`,qe=y(g.messages.support_chat_label,{title:H}),Je=Hr(o),Ye={"--customer-agent-bottom-inset":`${Me}px`,"--customer-agent-primary":Ke,"--customer-agent-visual-height":`${Ne}px`},U=Oe.map(e=>{let t=e,n=gr(t).trim(),r=t.role===`assistant`&&t.status?.type===`running`&&!n;return{assistantAuthor:vr(t),attachments:Cr(t),createdAt:jr(t),id:t.id,isPending:r,role:_r(t.role),text:n}}).filter(e=>e.text||e.isPending||e.attachments.length>0),Xe=U.length?Mr(U[U.length-1].createdAt):null,W=new Set(Xe?[[...U].reverse().find(e=>e.role===`assistant`&&!e.isPending&&Mr(e.createdAt)===Xe)?.id].filter(e=>!!e):[]),Ze=new Map(U.map((e,t)=>{let n=U[t-1];return[e.id,{dateLabel:!n||!Nr(n.createdAt,e.createdAt)?Pr(e.createdAt,g):void 0,groupPosition:Ir(U,t),isFirst:t===0,message:e,previousMessage:n,showsDefaultAssistantTime:W.has(e.id)}]})),Qe=U[U.length-1],$e=Qe?[Qe.id,Qe.text.length,Qe.isPending?`pending`:`settled`,Qe.attachments.map(e=>`${e.id}:${e.url}:${e.mimeType}`).join(`|`)].join(`:`):null,et=O?.conversationId??(x?.support.status===te.READY?x.support.conversationId:null),G=et?d(et):null,tt=Zr(j.current)?j.current.child.entryId:null,nt=G??tt,K=j.current.name===a.AGENTS_CONVERSATIONS?j.current.child.entryId:nt??``,rt=j.current.name!==a.GLOBAL_LOADING,it=nt?{id:nt,kind:`support`,priority:0,status:N.AVAILABLE,title:H}:null,at=[...it?[it]:[],...P.entries.map(e=>e.kind===`interview`&&e.status===N.ACTIVE?{...e,subtitle:Ge,title:hr(e.title,H)}:e)],ot=at.find(e=>e.id===K),st=ot?.kind===`interview`?ot.title:H,ct=new Set(U.map(e=>e.id)),lt=ee(K),ut=!!lt&&T===Z.READY&&O?.key===Wr(o)&&O.conversationId===lt&&O.messageIds.length>0&&!O.messageIds.every(e=>ct.has(e)),dt=f(K)&&(T!==Z.READY||ut),ft=P.entries.some(e=>e.kind===`interview`&&e.status===N.ACTIVE),q=!!P.invitePrompt,pt=be({composerRuntime:ke,inputRef:L,shouldSuppressComposerFocus:q});(0,z.useEffect)(()=>{let t=P.invitePrompt;!s||!t||Ie.current===t.invitationId||(Ie.current=t.invitationId,s.emit(e.INTERVIEW_INVITATION_SHOWN,{campaignId:t.campaignId,entryId:P.entries.find(e=>e.prompt?.invitationId===t.invitationId)?.id??`interview/invite/${t.campaignId}`,invitationId:t.invitationId}))},[P.entries,P.invitePrompt,s]),(0,z.useEffect)(()=>{if(!x)return;let e=nr(x.interview);if(!e){R.current=null,I(e=>({...e,entries:e.entries.filter(e=>e.kind!==`interview`),invitePrompt:null,isMobileDockOpen:!1}));return}if(x.interview.status===n.ACTIVE){let t=c?.getActiveSession(),n=R.current?.getState();if(t&&(!R.current||n?.sessionId!==t.sessionId)){let e=Q(o);if(e){let n=k({client:rr(),options:e});n.hydrateSession(t),R.current=n}}I(t=>Tn(t,e));return}I(t=>{let n=wn(t,e,A.mode,{canShowPrompt:rt});return ei(i)?{...En(n,e.id),invitePrompt:null,isMobileDockOpen:!1}:n})},[i,o,rt,c,x,A.mode]);function mt(){let e=L.current;if(!e||A.mode===`mobile`||q)return!1;let t=e.value.length;return e.focus(),e.setSelectionRange(t,t),!0}function ht(){Be.current||=mt()}function gt(e){L.current=e,!(!e||!h||A.mode===`mobile`||q)&&window.requestAnimationFrame(ht)}(0,z.useEffect)(()=>{let e=L.current;!q||document.activeElement!==e||e?.blur()},[q]);function _t(){let t=new Date,n=t.getTime(),r=U.map(e=>({createdAt:e.createdAt,role:e.role,text:e.text})),i=E({conversationName:H,exportedAt:t,locale:g.locale,messages:r,userSpeaker:D(o)}),a=new Blob([i],{type:`text/plain;charset=utf-8`}),c=URL.createObjectURL(a),l=document.createElement(`a`);l.href=c,l.download=zr(H,`support`,t,n),l.click(),window.setTimeout(()=>URL.revokeObjectURL(c),0);let u=ie?.getSessionSnapshot();s?.emit(e.TRANSCRIPT_DOWNLOADED,{...u?$(u.conversationId):O?$(O.conversationId):{conversationType:`support`},messageCount:r.length})}function vt(){let e=He.current;e&&(e.scrollTop=e.scrollHeight)}(0,z.useLayoutEffect)(()=>{let e=h&&!We.current;We.current=h,h||(Be.current=!1),e&&(Ue.current=!1,A.mode!==`mobile`&&!q&&window.requestAnimationFrame(()=>{if(Be.current)return;let e=L.current;if(!e||q)return;let t=e.value.length;e.focus(),e.setSelectionRange(t,t),Be.current=!0})),!(!h||!$e)&&(Ue.current||(vt(),window.requestAnimationFrame(vt)))},[h,$e,q,A.mode]),(0,z.useLayoutEffect)(()=>{let e=V.current;if(V.current=K,e!==null&&e!==K&&(Ve.current=f(K)),Ve.current){if(!f(K)||!h||A.mode===`mobile`||q){Ve.current=!1;return}dt||window.requestAnimationFrame(()=>{Ve.current=!mt()})}},[K,h,dt,q,A.mode]);function yt(){!h||Ue.current||(vt(),window.requestAnimationFrame(vt))}function bt(e){let t=e.currentTarget;Ue.current=t.scrollHeight-t.clientHeight-t.scrollTop>=120}(0,z.useEffect)(()=>{function e(){Ce(!1)}return window.addEventListener(`blur`,e),()=>window.removeEventListener(`blur`,e)},[]),(0,z.useEffect)(()=>{if(!Se)return;function e(e){let t=e.target;t instanceof Node&&(Pe.current?.contains(t)||Ce(!1))}return document.addEventListener(`pointerdown`,e,!0),()=>document.removeEventListener(`pointerdown`,e,!0)},[Se]),(0,z.useEffect)(()=>{let e=Q(o),t=Wr(o),s=$r(G);if(x){let r=e?u(e):null,o=Jr(_)??(e?$n(e):null),c=e&&r?!!de(e):!1,l=ti({activeTarget:i,supportHydrationKey:t,supportStatus:x.support.status});if(t&&l&&S(t),j.current.name!==a.GLOBAL_LOADING)return;let d=ni(i,x.interview);if(d){ze.current=x.interview.status===n.ACTIVE?x.interview.entryId:null,M({route:d,type:`replace`});return}if(ei(i))return;if(x.interview.status===n.ACTIVE)ze.current=x.interview.entryId,M({route:Kr({interview:x.interview,storedRoute:o,supportEntryId:G,supportRoute:s}),type:`replace`});else if(Gr({hasCachedInterviewSession:c,hasInterviewIdentity:!!r,interview:x.interview,storedRoute:o}))return;else ze.current=null,M({route:qr({storedRoute:o,supportEntryId:G,supportRoute:s}),type:`replace`});return}if(!e||!t){M({route:s,type:`replace`});return}let c=!1,l=u(e),d=Le.current;if(!l)return M({route:qr({storedRoute:$n(e),supportEntryId:G,supportRoute:s}),type:`replace`}),S(t),()=>{c=!0};if(!d||d.key!==l){let t=$n(e),n=!!de(e),i=k({client:rr(),options:e});d={key:l,promise:(async()=>{if(n||r(t)){let e=await i.restoreCachedSession();if(e&&r(t))return{controller:i,entry:e,kind:`interview`,route:fr(t,e)};if(e)return{controller:i,entry:e,kind:`support`,route:qr({storedRoute:t,supportEntryId:G,supportRoute:s})}}return{kind:`support`,route:qr({storedRoute:t,supportEntryId:G,supportRoute:s})}})()},Le.current=d}return d.promise.then(e=>{if(!(c||Re.current===l)){if(Re.current=l,e.kind===`interview`){R.current=e.controller,I(t=>Tn(t,e.entry)),M({route:e.route,type:`replace`}),ei(i)||S(t);return}`entry`in e&&(R.current=e.controller,I(t=>Tn(t,e.entry))),M({route:e.route,type:`replace`}),S(t)}}),()=>{c=!0}},[o,i,S,_,j.current,x,G]),(0,z.useEffect)(()=>{if(!G||j.current.name===a.GLOBAL_LOADING&&x&&(ei(i)||x.interview.status===n.ACTIVE))return;if(j.current.name===a.GLOBAL_LOADING&&x){let e=Q(o),t=e?u(e):null,n=Jr(_)??(e?$n(e):null);if(Gr({hasCachedInterviewSession:e&&t?!!de(e):!1,hasInterviewIdentity:!!t,interview:x.interview,storedRoute:n}))return}let e=m(G);(j.current.name===a.GLOBAL_LOADING||Zr(j.current)&&j.current.child.entryId!==G)&&M({route:e,type:`replace`})},[i,o,_,j.current,x,G]),(0,z.useEffect)(()=>{let e=Yr(j.current);if(x&&e){ne?.(e);return}let t=Q(o);t&&er(t,j.current)},[o,ne,j,x]),(0,z.useEffect)(()=>{if(!i)return;if(i.type===`support`||i.type===`home`){let e=Wr(o);if(e&&S(e),T!==Z.READY||!G)return;M({route:m(G),type:`push`});return}let e=ni(i,x?.interview);if(e){M({route:e,type:`push`});return}ei(i)&&(!x||x.interview.status!==n.ACTIVE)||T===Z.READY&&M({route:tr(i),type:`push`})},[i,o,S,x,T,G]),(0,z.useEffect)(()=>{j.current.name===a.AGENTS_CONVERSATIONS&&j.current.child.name===p.CHAT&&j.current.child.entryId.startsWith(`interview/session/`)&&dr()},[j.current]);let J=(0,z.useRef)(!1);(0,z.useEffect)(()=>{if(!h){J.current=!1;return}J.current||r(j.current)&&(J.current=!0,l||v(!0))},[h,l,v,j.current]),(0,z.useEffect)(()=>{let e=Wr(o);!e||T!==Z.IDLE||j.current.name!==a.AGENTS_CONVERSATIONS||j.current.child.name!==p.CHAT||!f(j.current.child.entryId)||S(e)},[o,S,j,T]),(0,z.useEffect)(()=>{let e=Q(o);if(x||!e||T!==Z.READY||ft)return;let t=!1,n=u(e),r=Fe.current;if(!n){Fe.current=null,R.current=null;return}if(!r||r.key!==n){let t=k({client:rr(),options:e});r={controller:t,key:n,promise:t.restoreCachedSession().then(e=>e??t.discoverInvitation()).catch(e=>(Fe.current?.key===n&&(Fe.current=null),console.error(`CustomerAgent interview eligibility request failed.`,e),null))},Fe.current=r}return R.current=r.controller,r.promise.then(e=>{t||I(t=>e?.status===N.ACTIVE?Tn(t,e):wn(t,e,A.mode,{canShowPrompt:rt}))}),()=>{t=!0}},[o,s,rt,ft,x,T,A.mode]);function Y(e){if(e===K)return;let t=P.entries.find(t=>t.id===e);if(I(t=>En(t,e)),t?.prompt){xt(t.prompt.invitationId);return}M({route:{child:{entryId:e,name:p.CHAT},name:a.AGENTS_CONVERSATIONS},type:`push`})}async function xt(t){let n=P.entries.find(e=>e.prompt?.invitationId===t);if(!n?.prompt)return;I(e=>({...En(e,n.id),invitePrompt:null,isMobileDockOpen:!1})),M({route:{child:{entryId:n.id,invitationId:t,name:p.INTERVIEW_STARTING},name:a.AGENTS_CONVERSATIONS},type:`push`}),dr();let r=t.startsWith(`runtime:`)&&c?await c.ensureInvitation():t,i=c?await c.startInvitation(r):await R.current?.startInvitation(r);if(!i)return;if(c&&ri(i)){let e=Q(o);if(e){let t=k({client:rr(),options:e});t.hydrateSession(i.session),R.current=t}}I(e=>On(e,{invitationId:t,sessionId:i.sessionId,subtitle:Ge,title:H}));let l={conversationId:`interview/session/${i.sessionId}`,conversationType:`interview`,entryId:i.entryId,interviewSessionId:i.sessionId};c||(s?.emit(e.CONVERSATION_CREATED,l),s?.emit(e.INTERVIEW_SESSION_STARTED,l)),M({route:{child:{entryId:i.entryId,name:p.CHAT},name:a.AGENTS_CONVERSATIONS},type:`replace`})}function St(n,r){let i=P.entries.find(e=>e.prompt?.invitationId===n);i?.prompt&&s?.emit(r===t.LATER?e.INTERVIEW_INVITATION_LATER:e.INTERVIEW_INVITATION_CLOSED,{campaignId:i.prompt.campaignId,entryId:i.id,invitationId:n}),I(e=>Dn(e,n,r)),c?n.startsWith(`runtime:`)||c.chooseInvitation(n,r).catch(e=>{console.error(`CustomerAgent interview invitation choice request failed.`,e)}):R.current?.chooseInvitation(n,r).catch(e=>{console.error(`CustomerAgent interview invitation choice request failed.`,e)})}return(0,B.jsxs)(Nn,{activeEntryId:K,ariaLabel:qe,entries:at,invitePrompt:P.invitePrompt,interviewChat:R.current?(0,B.jsx)(z.Suspense,{fallback:(0,B.jsx)(Si,{label:`Loading interview`}),children:(0,B.jsx)(xi,{children:(0,B.jsx)(lr,{controller:R.current,description:Ge,eventBus:s,isExpanded:l,isOpen:h,locale:g,onToggleExpanded:()=>v(!l),title:st,transcriptAppName:st,visitorName:D(o),viewportMode:A.mode,onOpenMobileDock:()=>I(e=>({...e,isMobileDockOpen:!0}))})})}):void 0,isChatLoading:dt,isExpanded:l,isMobileDockOpen:P.isMobileDockOpen,isOpen:h,route:j.current,routeTransitionKey:j.transitionKey,style:Ye,viewportMode:A.mode,onEntrySelect:Y,onInviteClose:e=>void St(e,t.CLOSE),onInviteLater:e=>void St(e,t.LATER),onInviteStart:e=>void xt(e),onMobileDockOpenChange:e=>I(t=>({...t,isMobileDockOpen:e})),children:[(0,B.jsxs)(`header`,{className:F(`grid shrink-0 items-center gap-[var(--messenger-header-gap)] border-b border-border-divider bg-bg-canvas px-[var(--messenger-header-padding-x)] py-[var(--messenger-header-padding-y)]`,A.mode===`mobile`?`grid-cols-[auto_auto_1fr_auto] pl-1`:`grid-cols-[auto_1fr_auto]`),"data-customer-agent-panel-header":``,children:[A.mode===`mobile`?(0,B.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-6 cursor-pointer place-items-center rounded-md border-0 bg-transparent p-0 text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none`,"aria-label":`Open conversations`,title:`Open conversations`,type:`button`,onClick:()=>I(e=>({...e,isMobileDockOpen:!0})),children:(0,B.jsx)(ae,{size:16})}):null,(0,B.jsx)(`div`,{className:`grid h-[var(--messenger-header-avatar-size)] w-[var(--messenger-header-avatar-size)] place-items-center rounded-full bg-[var(--customer-agent-primary)] text-gray-1 shadow-[0_0_0_1px_var(--border-default)]`,"aria-hidden":`true`,children:(0,B.jsx)(we,{size:16})}),(0,B.jsxs)(`div`,{className:`flex min-w-0 flex-col justify-center`,children:[(0,B.jsx)(`p`,{className:`m-0 truncate text-[length:var(--messenger-header-title-size)] font-semibold leading-[var(--messenger-header-title-line-height)]`,children:H}),(0,B.jsx)(`span`,{className:`block truncate text-[length:var(--messenger-header-subtitle-size)] leading-[var(--messenger-header-subtitle-line-height)] text-text-tertiary`,children:g.messages.status_reply_time})]}),(0,B.jsx)(`div`,{className:`relative flex items-center gap-[var(--messenger-header-action-gap)] pr-[var(--messenger-header-button-size)]`,children:(0,B.jsxs)(`div`,{ref:Pe,onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),Ce(!1))},children:[(0,B.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)] cursor-pointer place-items-center rounded-[var(--messenger-header-button-radius)] border-0 bg-transparent text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none data-[state=open]:bg-gray-3 data-[state=open]:text-text-primary`,"aria-expanded":Se,"aria-haspopup":`menu`,"aria-label":g.messages.more_options,"data-state":Se?`open`:`closed`,title:g.messages.more_options,type:`button`,onClick:()=>Ce(e=>!e),children:(0,B.jsx)(re,{size:16})}),Se?(0,B.jsxs)(`div`,{className:`absolute top-[calc(100%+0.5rem)] right-[var(--messenger-header-button-size)] z-[var(--z-dropdown)] grid min-w-64 gap-1 rounded-lg border border-border-default bg-bg-elevated p-1 text-sm text-text-primary shadow-popover`,role:`menu`,children:[(0,B.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{Ce(!1),v(!l)},children:[l?(0,B.jsx)(oe,{size:16}):(0,B.jsx)(se,{size:16}),(0,B.jsx)(`span`,{children:l?g.messages.collapse_window:g.messages.expand_window})]}),(0,B.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{Ce(!1),_t()},children:[(0,B.jsx)(pe,{size:16}),(0,B.jsx)(`span`,{children:g.messages.download_transcript})]})]}):null]})})]}),(0,B.jsx)(C,{className:`relative flex min-h-0 flex-1 flex-col overflow-hidden bg-bg-canvas`,children:(0,B.jsx)(ue,{asChild:!0,"aria-live":`polite`,autoScroll:!0,role:`log`,scrollToBottomOnInitialize:!0,scrollToBottomOnRunStart:!0,scrollToBottomOnThreadSwitch:!0,children:(0,B.jsx)(`div`,{className:`customer-agent-thread-viewport min-h-0 flex-1 overflow-y-auto bg-bg-canvas [scrollbar-width:none] [&::-webkit-scrollbar]:hidden [&>[data-radix-scroll-area-content]]:flex [&>[data-radix-scroll-area-content]]:min-h-full [&>[data-radix-scroll-area-content]]:flex-col [&>[data-radix-scroll-area-content]]:self-stretch [&>[data-radix-scroll-area-content]]:bg-inherit [&>div]:flex [&>div]:min-h-full [&>div]:flex-col [&>div]:self-stretch [&>div]:bg-inherit`,"data-customer-agent-thread-viewport":``,ref:He,onScroll:bt,children:(0,B.jsxs)(`div`,{className:F(`flex min-h-full flex-col px-[var(--messenger-conversation-horizontal-padding)] pt-3`,`customer-agent-message-list`),"data-customer-agent-message-list":``,children:[Je?(0,B.jsx)(`p`,{className:`mx-auto mt-1 mb-8 max-w-[min(100%,var(--messenger-conversation-part-max-width))] whitespace-pre-wrap px-2 text-center text-base leading-6 text-text-tertiary`,children:Je}):null,(0,B.jsx)(xe,{children:({message:e})=>{let t=Ze.get(e.id);return t?(0,B.jsx)(hi,{...t,appName:H,isTimeVisible:Ee[e.id]??t.showsDefaultAssistantTime,locale:g,onAttachmentLoad:yt,onTimeVisibilityChange:t=>{De(n=>({...n,[e.id]:t}))}}):null}})]})})})}),(0,B.jsxs)(ve,{className:F(`relative z-[var(--z-composer)] shrink-0 bg-transparent px-[var(--messenger-conversation-horizontal-padding)] pt-0 pb-[max(1rem,calc(1rem+var(--customer-agent-bottom-inset)))]`,`-mt-[var(--messenger-radius)]`),onSubmit:()=>{pt.closeEmojiPicker()},children:[(0,B.jsx)(_e,{removeAttachmentLabel:g.messages.remove_attachment}),(0,B.jsx)(ge,{inputAriaLabel:g.messages.message_aria_label,inputRef:gt,placeholder:g.messages.input_placeholder}),(0,B.jsxs)(ye,{children:[(0,B.jsxs)(me,{children:[(0,B.jsx)(he,{attachmentLabel:g.messages.attachment_label}),(0,B.jsx)(w,{hostRef:pt.emojiPickerHostRef,isLoading:pt.isEmojiPickerLoading,open:pt.isEmojiPickerOpen,onOpenChange:pt.onEmojiOpenChange,children:(0,B.jsx)(fe,{emojiLabel:g.messages.add_emoji})})]}),(0,B.jsx)(le,{sendLabel:g.messages.send_message})]})]})]})}function hi({appName:e,dateLabel:t,groupPosition:n,isFirst:r,isTimeVisible:i,locale:a,message:o,onAttachmentLoad:s,onTimeVisibilityChange:c,previousMessage:l}){let u=o.role===`assistant`&&!o.isPending;function d(){u&&c(!i)}function f(e){let t=e.target;t instanceof Element&&t.closest(`a, button`)||d()}function ee(e){!u||e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),d())}return(0,B.jsxs)(B.Fragment,{children:[t?(0,B.jsx)(`div`,{className:F(`self-center rounded-full px-3 py-1 text-sm leading-5 text-text-tertiary`,r?`mt-1 mb-3`:`mt-4 mb-3`),children:t}):null,(0,B.jsxs)(Ce,{className:F(`flex max-w-[var(--messenger-conversation-part-max-width)] flex-col`,!r&&!t&&(l?.role===o.role?`mt-[var(--messenger-conversation-part-group-gap)]`:`mt-[var(--messenger-conversation-part-stack-gap)]`),o.role===`user`?`self-end items-end`:`self-start items-start`),"aria-expanded":u?i:void 0,role:u?`button`:void 0,tabIndex:u?0:void 0,onClick:f,onKeyDown:ee,children:[(0,B.jsx)(`div`,{className:F(`w-fit max-w-full whitespace-pre-wrap px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5`,o.role===`user`?`bg-[var(--customer-agent-primary)] text-gray-1`:`bg-gray-3 text-text-secondary`),style:Lr(o.role,n),children:(0,B.jsxs)(`div`,{className:`grid gap-2`,children:[o.text?(0,B.jsx)(A,{children:({part:e})=>e.type===`text`?(0,B.jsx)(bi,{}):null}):null,o.isPending?(0,B.jsx)(Ci,{}):null,o.attachments.length>0?(0,B.jsx)(vi,{attachments:o.attachments,role:o.role,onAttachmentLoad:s}):null]})}),u?(0,B.jsxs)(`span`,{className:F(`overflow-hidden px-[var(--messenger-conversation-part-padding-x)] text-sm leading-5 text-text-tertiary transition-[max-height,opacity,transform,margin] duration-200 ease-out`,i?`mt-1 max-h-5 translate-y-0 opacity-100`:`mt-0 max-h-0 -translate-y-1 opacity-0`),children:[e,` · `,yr(o.assistantAuthor,a),` ·`,` `,Fr(o.createdAt,a)]}):null]})]})}function gi(e){if(!Number.isFinite(e)||e<=0)return``;let t=e/(1024*1024);return t>=1?`${t.toFixed(t>=10?0:1)} MB`:`${Math.max(1,Math.round(e/1024))} KB`}function _i(e){let t=e.filename.split(`.`).pop();return t&&t!==e.filename?t.toUpperCase():e.mimeType.split(`/`).pop()?.toUpperCase()??`FILE`}function vi({attachments:e,onAttachmentLoad:t,role:n}){return(0,B.jsx)(`div`,{className:`grid gap-2`,children:e.map(e=>e.mimeType.startsWith(`image/`)&&e.url?(0,B.jsx)(yi,{attachment:e,onLoad:t},e.id):(0,B.jsxs)(`a`,{className:F(`grid min-w-0 grid-cols-[32px_minmax(0,1fr)] items-center gap-2 rounded-lg px-2.5 py-2 no-underline`,n===`user`?`bg-gray-1/15 text-gray-1 hover:bg-gray-1/20`:`bg-bg-canvas text-text-secondary hover:bg-gray-2`),href:e.url||void 0,rel:`noreferrer`,target:`_blank`,children:[(0,B.jsx)(`span`,{className:F(`grid h-8 w-8 place-items-center rounded-md`,n===`user`?`bg-gray-1/20`:`bg-gray-12 text-gray-1`),children:(0,B.jsx)(O,{size:16})}),(0,B.jsxs)(`span`,{className:`min-w-0`,children:[(0,B.jsx)(`span`,{className:`block truncate text-sm font-semibold`,children:e.filename}),(0,B.jsx)(`span`,{className:`block truncate text-xs opacity-70`,children:[_i(e),gi(e.sizeBytes)].filter(Boolean).join(` · `)})]})]},e.id))})}function yi({attachment:e,onLoad:t}){let[n]=(0,z.useState)(()=>e.file&&e.mimeType.startsWith(`image/`)?URL.createObjectURL(e.file):null),[r,i]=(0,z.useState)(!e.url),[a,o]=(0,z.useState)(null),s=r?e.url:n??e.url,c=a!==null,l=c?Math.min(256,Math.round(192*a)):192;(0,z.useEffect)(()=>()=>{n&&URL.revokeObjectURL(n)},[n]),(0,z.useEffect)(()=>{if(!e.url)return;let n=!1,r=new Image;return r.src=e.url,r.decode().catch(()=>void 0).then(()=>{n||(r.naturalWidth>0&&r.naturalHeight>0&&o(r.naturalWidth/r.naturalHeight),i(!0),t(),window.requestAnimationFrame(t))}),()=>{n=!0}},[e.url,t]),(0,z.useEffect)(()=>{if(!n)return;let e=!1,t=new Image;return t.src=n,t.decode().catch(()=>void 0).then(()=>{e||t.naturalWidth<=0||t.naturalHeight<=0||o(t.naturalWidth/t.naturalHeight)}),()=>{e=!0}},[n]);function u(e){let n=e.currentTarget;n.naturalWidth>0&&n.naturalHeight>0&&o(n.naturalWidth/n.naturalHeight),t(),window.requestAnimationFrame(t)}return(0,B.jsxs)(`a`,{className:`relative block max-w-full overflow-hidden rounded-lg bg-gray-3`,href:e.url,rel:`noreferrer`,target:`_blank`,style:{aspectRatio:a??void 0,height:c?void 0:144,width:l},children:[c?null:(0,B.jsx)(`span`,{className:`absolute inset-0 animate-pulse bg-gray-4`,"aria-hidden":`true`}),s?(0,B.jsx)(`img`,{className:F(`absolute inset-0 h-full w-full object-contain transition-opacity`,c?`opacity-100`:`opacity-0`),alt:e.filename,src:s,onLoad:u}):null]})}function bi(){return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(z.Suspense,{fallback:(0,B.jsx)(Se,{className:`min-w-0 break-words`}),children:(0,B.jsx)(sr,{})}),(0,B.jsx)(T,{children:(0,B.jsx)(Ci,{})})]})}function xi({children:e}){return(0,B.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col animate-[customer-agent-chat-route-in_var(--duration-fast)_var(--ease-emphasis)_both] motion-reduce:animate-none`,"data-customer-agent-lazy-route-ready":``,children:e})}function Si({label:e}){return(0,B.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center`,"aria-label":e,role:`status`,children:(0,B.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-2 border-[var(--gray-4)] border-t-[var(--customer-agent-primary)]`})})}function Ci(){return(0,B.jsxs)(`span`,{className:`inline-flex h-5 items-center gap-1 align-middle text-text-quaternary`,children:[(0,B.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current`}),(0,B.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:140ms]`}),(0,B.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:280ms]`})]})}export{pi as WidgetPanel};
|
|
7
|
+
`).trim()}function ai(e){return e.id?.startsWith(`local-`)??!1}function oi(e,t){return{...e,metadata:{...e.metadata,custom:{...e.metadata?.custom,supportConversationId:t}}}}function si(e,t){let n=oi(e,t);return{...n,metadata:{...n.metadata,custom:{...n.metadata?.custom,supportAckConversationId:t,supportSendStatus:`acked`}}}}function ci(e,t){let n=e.metadata?.custom;return n?.supportConversationId===t||n?.supportAckConversationId===t}function li(e,t){return o(e).map(e=>oi(e,t))}function ui(e,t){let n=new Map(e.map(e=>[e.id,e]));for(let e of t)n.set(e.id,e);return[...n.values()]}function di(e,t){if(e.length===0)return t;let n=new Set(e.map(e=>e.id)),r=t.filter(e=>ai(e)&&!n.has(e.id));return[...e,...r]}function fi(e,t,n){if(e.length===0)return t;let r=e.map(e=>oi(e,n)),i=new Set(r.map(e=>e.id)),a=t.filter(e=>!i.has(e.id)&&(ai(e)||ci(e,n)));return[...r,...a]}function pi({activeTarget:t,bootOptions:n,eventBus:r,interviewRuntime:i,isExpanded:a,isOpen:c,locale:u,memoryRoute:d,messages:f,onMemoryRouteChange:ee,onExpandedChange:p,onOpenChange:m,runtimeState:h,supportRuntime:g,viewport:ne}){let v=(0,z.useRef)(null),y=(0,z.useRef)(!1),b=(0,z.useRef)(!1),x=(0,z.useRef)(null),[re,ae]=(0,z.useState)(!1),[oe,se]=(0,z.useState)(null),[ce,C]=(0,z.useState)(Z.IDLE),[w,T]=(0,z.useState)(null),[le,E]=(0,z.useState)(()=>Br(f)),D=Q(n),ue=(0,z.useRef)(D),de=(0,z.useRef)(r),fe=(0,z.useRef)(g),pe=(0,z.useRef)(null),O=(0,z.useRef)(null),me=(0,z.useRef)(new Map),k=(0,z.useMemo)(()=>Wr(n),[n]);ue.current=D,de.current=r,fe.current=g,(!pe.current||O.current!==k)&&(me.current=new Map,pe.current=Vr(ue,de,me,fe),O.current=k);let he=pe.current,ge=D?k&&oe===k?v.current===k?Z.READY:ce===Z.ERROR?Z.ERROR:Z.LOADING:Z.IDLE:Z.READY,_e=ge===Z.READY&&w?.key===k&&w.messageIds.length>0&&!w.messageIds.every(e=>le.some(t=>t.id===e)),ve=le.some(e=>e.role===`assistant`&&e.status?.type===`running`),ye=re||ge!==Z.READY||_e||ve,be=S({adapters:(0,z.useMemo)(()=>({attachments:he}),[he]),convertMessage:(0,z.useCallback)(e=>e,[]),isRunning:re,isSendDisabled:ye,messages:le,onNew:(0,z.useCallback)(async t=>{let n=ii(t),i=Dr(t.attachments??[],me.current),a=Er({...t,attachments:i});if(!D){E(e=>ui(e,[{id:`local-error-${pr()}`,role:`assistant`,content:`The support chat is missing widget configuration.`,createdAt:new Date,status:{type:`complete`,reason:`stop`}}]));return}if(!n&&a.length===0)return;let c=`local-user-${pr()}`,l;b.current=!0,ae(!0),r?.emit(e.MESSAGE_SENT,{...w?$(w.conversationId):{conversationType:`support`},messageId:c,role:`user`}),E(e=>ui(e,[{id:c,role:`user`,content:n||[],attachments:i,createdAt:new Date,metadata:{custom:{attachments:Or({...t,attachments:i})}}}]));let u=new AbortController;try{if(!g)throw Error(`The support chat is missing runtime session orchestration.`);let t=await g.ensureSession();l=t.conversationId,r?.emit(e.MESSAGE_STARTED,{...$(l),role:`assistant`});let i=await s.sendMessage(D,n,a,u.signal,{onConversationCreated(t){r?.emit(e.CONVERSATION_CREATED,{...$(t)})},onSessionInvalidated(){g.invalidateSession?.()}});i.conversationId!==t.conversationId&&g.ensureSession().catch(e=>{console.error(`CustomerAgent session recovery failed.`,e)}),l=i.conversationId;let d=o([i.userMessage,i.assistantMessage]).map(e=>si(e,i.conversationId));T({conversationId:i.conversationId,key:_(D),messageIds:[]}),E(e=>ui(e.filter(e=>e.id!==c),d)),r?.emit(e.MESSAGE_COMPLETED,{assistantAuthor:i.assistantMessage.assistantAuthor??void 0,...$(i.conversationId),messageId:i.assistantMessage.id,role:`assistant`}),i.handoff.needed&&r?.emit(e.HANDOFF_REQUESTED,{...$(i.conversationId)})}catch(t){console.error(`CustomerAgent message request failed.`,t);let n=l?$(l):{conversationType:`support`};r?.emit(e.MESSAGE_SEND_FAILED,{...n,messageId:c,role:`user`}),r?.emit(e.MESSAGE_FAILED,{...n,role:`assistant`}),E(e=>ui(e,[{id:`local-error-${pr()}`,role:`assistant`,content:Ur(t),createdAt:new Date,status:{type:`complete`,reason:`stop`}}]))}finally{b.current=!1,ae(!1)}},[r,D,w,g])});return(0,z.useEffect)(()=>{let e=Q(n),t=Wr(n);if(!e||!t){v.current=null,x.current=null,C(Z.READY),T(null);return}if(oe!==t){v.current=null,x.current=null,E(Br(f)),C(Z.IDLE),T(null);return}if(v.current===t){C(Z.READY);return}if(!g){C(Z.ERROR),T(null);return}let r=g?.getSessionSnapshot();if(h?.support.status===te.READY&&r?.conversationId===h.support.conversationId){v.current=t,T({conversationId:r.conversationId,key:t,messageIds:Tr(r.messages)}),r.messages.length>0&&E(e=>di(li(r.messages,r.conversationId),e)),C(Z.READY);return}let i=!1,a=x.current;return(!a||a.key!==t)&&(E(Br(f)),T(null),a={key:t,promise:g.ensureSession()},x.current=a),C(Z.LOADING),a.promise.then(e=>{i||(v.current=t,T({conversationId:e.conversationId,key:t,messageIds:Tr(e.messages)}),e.messages.length>0&&E(t=>di(li(e.messages,e.conversationId),t)),C(Z.READY))}).catch(e=>{i||(x.current?.key===t&&(x.current=null),v.current=null,T(null),C(Z.ERROR),console.error(`CustomerAgent session bootstrap failed.`,e))}),()=>{i=!0}},[n,r,f,h,oe,g]),(0,z.useEffect)(()=>{let e=Q(n);if(!e)return;let t=e,r=!1,i=null;function a(){r||document.hidden||y.current||b.current||(y.current=!0,i=new AbortController,s.refreshSession(t,i.signal).then(e=>{r||b.current||e&&(T(n=>n?.key===_(t)?{conversationId:e.conversationId,key:n.key,messageIds:[]}:n),E(t=>fi(li(e.messages,e.conversationId),t,e.conversationId)))}).catch(e=>{if(!(e instanceof DOMException&&e.name===`AbortError`)){if(e instanceof l){let e=_(t);if(!g){v.current=null,T(null),C(Z.ERROR);return}g.invalidateSession?.(),v.current=null,x.current=null,se(e),C(Z.READY),g.ensureSession().then(t=>{r||(v.current=e,T({conversationId:t.conversationId,key:e,messageIds:Tr(t.messages)}),E(e=>di(li(t.messages,t.conversationId),e)),C(Z.READY))}).catch(e=>{r||(v.current=null,T(null),C(Z.ERROR),console.error(`CustomerAgent session recovery failed.`,e))});return}console.error(`CustomerAgent session refresh failed.`,e)}}).finally(()=>{y.current=!1,i=null}))}let o=window.setInterval(a,5e3);return()=>{r=!0,i?.abort(),window.clearInterval(o),y.current=!1}},[n,f,w,g]),(0,B.jsx)(ie,{runtime:be,children:(0,B.jsx)(mi,{bootOptions:n,activeTarget:t,eventBus:r,interviewRuntime:i,isExpanded:a,isOpen:c,locale:u,memoryRoute:d,onMemoryRouteChange:ee,onExpandedChange:p,onOpenChange:m,runtimeState:h,supportRuntime:g,onSupportBootstrapNeeded:se,supportHydrationSnapshot:w,supportBootstrapStatus:ge,viewport:ne})})}function mi({activeTarget:i,bootOptions:o,eventBus:s,interviewRuntime:c,isExpanded:l,isOpen:h,locale:g,memoryRoute:_,onMemoryRouteChange:ne,onExpandedChange:v,onOpenChange:b,runtimeState:x,supportRuntime:ie,onSupportBootstrapNeeded:S,supportBootstrapStatus:T,supportHydrationSnapshot:O,viewport:A}){let[Se,Ce]=(0,z.useState)(!1),[j,M]=(0,z.useReducer)(Un,void 0,zn),[P,I]=(0,z.useState)(Cn),[Ee,De]=(0,z.useState)({}),Oe=Te(e=>e.thread.messages),ke=ce().composer,Ae=!!o?.embedded,je=A.presentation===`fullscreen`&&!Ae,Me=A.mode===`mobile`?je?A.safeAreaBottom:Math.max(A.safeAreaBottom,A.keyboardInset):0,Ne=A.mode===`mobile`&&je?A.height:A.visualHeight,L=(0,z.useRef)(null),Pe=(0,z.useRef)(null),R=(0,z.useRef)(null),Fe=(0,z.useRef)(null),Ie=(0,z.useRef)(null),Le=(0,z.useRef)(null),Re=(0,z.useRef)(null),ze=(0,z.useRef)(null),Be=(0,z.useRef)(!1),Ve=(0,z.useRef)(!1),V=(0,z.useRef)(null),He=(0,z.useRef)(null),Ue=(0,z.useRef)(!1),We=(0,z.useRef)(!1),H=mr(o),Ge=o?.header?.menu!==!1,Ke=g.messages.interview_session_description,qe=o?.theme?.primaryColor??`var(--gray-12)`,Je=y(g.messages.support_chat_label,{title:H}),Ye=Hr(o),Xe={"--customer-agent-bottom-inset":`${Me}px`,"--customer-agent-primary":qe,"--customer-agent-visual-height":`${Ne}px`},U=Oe.map(e=>{let t=e,n=gr(t).trim(),r=t.role===`assistant`&&t.status?.type===`running`&&!n;return{assistantAuthor:vr(t),attachments:Cr(t),createdAt:jr(t),id:t.id,isPending:r,role:_r(t.role),text:n}}).filter(e=>e.text||e.isPending||e.attachments.length>0),W=U.length?Mr(U[U.length-1].createdAt):null,Ze=new Set(W?[[...U].reverse().find(e=>e.role===`assistant`&&!e.isPending&&Mr(e.createdAt)===W)?.id].filter(e=>!!e):[]),Qe=new Map(U.map((e,t)=>{let n=U[t-1];return[e.id,{dateLabel:!n||!Nr(n.createdAt,e.createdAt)?Pr(e.createdAt,g):void 0,groupPosition:Ir(U,t),isFirst:t===0,message:e,previousMessage:n,showsDefaultAssistantTime:Ze.has(e.id)}]})),$e=U[U.length-1],et=$e?[$e.id,$e.text.length,$e.isPending?`pending`:`settled`,$e.attachments.map(e=>`${e.id}:${e.url}:${e.mimeType}`).join(`|`)].join(`:`):null,tt=O?.conversationId??(x?.support.status===te.READY?x.support.conversationId:null),G=tt?d(tt):null,nt=Zr(j.current)?j.current.child.entryId:null,rt=G??nt,K=j.current.name===a.AGENTS_CONVERSATIONS?j.current.child.entryId:rt??``,it=j.current.name!==a.GLOBAL_LOADING,at=rt?{id:rt,kind:`support`,priority:0,status:N.AVAILABLE,title:H}:null,ot=[...at?[at]:[],...P.entries.map(e=>e.kind===`interview`&&e.status===N.ACTIVE?{...e,subtitle:Ke,title:hr(e.title,H)}:e)],st=ot.find(e=>e.id===K),ct=st?.kind===`interview`?st.title:H,lt=new Set(U.map(e=>e.id)),ut=ee(K),dt=!!ut&&T===Z.READY&&O?.key===Wr(o)&&O.conversationId===ut&&O.messageIds.length>0&&!O.messageIds.every(e=>lt.has(e)),ft=f(K)&&(T!==Z.READY||dt),pt=P.entries.some(e=>e.kind===`interview`&&e.status===N.ACTIVE),q=!!P.invitePrompt,mt=be({composerRuntime:ke,inputRef:L,shouldSuppressComposerFocus:q});(0,z.useEffect)(()=>{let t=P.invitePrompt;!s||!t||Ie.current===t.invitationId||(Ie.current=t.invitationId,s.emit(e.INTERVIEW_INVITATION_SHOWN,{campaignId:t.campaignId,entryId:P.entries.find(e=>e.prompt?.invitationId===t.invitationId)?.id??`interview/invite/${t.campaignId}`,invitationId:t.invitationId}))},[P.entries,P.invitePrompt,s]),(0,z.useEffect)(()=>{if(!x)return;let e=nr(x.interview);if(!e){R.current=null,I(e=>({...e,entries:e.entries.filter(e=>e.kind!==`interview`),invitePrompt:null,isMobileDockOpen:!1}));return}if(x.interview.status===n.ACTIVE){let t=c?.getActiveSession(),n=R.current?.getState();if(t&&(!R.current||n?.sessionId!==t.sessionId)){let e=Q(o);if(e){let n=k({client:rr(),options:e});n.hydrateSession(t),R.current=n}}I(t=>Tn(t,e));return}I(t=>{let n=wn(t,e,A.mode,{canShowPrompt:it});return ei(i)?{...En(n,e.id),invitePrompt:null,isMobileDockOpen:!1}:n})},[i,o,it,c,x,A.mode]);function ht(){let e=L.current;if(!e||A.mode===`mobile`||q)return!1;let t=e.value.length;return e.focus(),e.setSelectionRange(t,t),!0}function gt(){Be.current||=ht()}function _t(e){L.current=e,!(!e||!h||A.mode===`mobile`||q)&&window.requestAnimationFrame(gt)}(0,z.useEffect)(()=>{let e=L.current;!q||document.activeElement!==e||e?.blur()},[q]);function vt(){let t=new Date,n=t.getTime(),r=U.map(e=>({createdAt:e.createdAt,role:e.role,text:e.text})),i=E({conversationName:H,exportedAt:t,locale:g.locale,messages:r,userSpeaker:D(o)}),a=new Blob([i],{type:`text/plain;charset=utf-8`}),c=URL.createObjectURL(a),l=document.createElement(`a`);l.href=c,l.download=zr(H,`support`,t,n),l.click(),window.setTimeout(()=>URL.revokeObjectURL(c),0);let u=ie?.getSessionSnapshot();s?.emit(e.TRANSCRIPT_DOWNLOADED,{...u?$(u.conversationId):O?$(O.conversationId):{conversationType:`support`},messageCount:r.length})}function yt(){let e=He.current;e&&(e.scrollTop=e.scrollHeight)}(0,z.useLayoutEffect)(()=>{let e=h&&!We.current;We.current=h,h||(Be.current=!1),e&&(Ue.current=!1,A.mode!==`mobile`&&!q&&window.requestAnimationFrame(()=>{if(Be.current)return;let e=L.current;if(!e||q)return;let t=e.value.length;e.focus(),e.setSelectionRange(t,t),Be.current=!0})),!(!h||!et)&&(Ue.current||(yt(),window.requestAnimationFrame(yt)))},[h,et,q,A.mode]),(0,z.useLayoutEffect)(()=>{let e=V.current;if(V.current=K,e!==null&&e!==K&&(Ve.current=f(K)),Ve.current){if(!f(K)||!h||A.mode===`mobile`||q){Ve.current=!1;return}ft||window.requestAnimationFrame(()=>{Ve.current=!ht()})}},[K,h,ft,q,A.mode]);function bt(){!h||Ue.current||(yt(),window.requestAnimationFrame(yt))}function J(e){let t=e.currentTarget;Ue.current=t.scrollHeight-t.clientHeight-t.scrollTop>=120}(0,z.useEffect)(()=>{if(!Ge){Ce(!1);return}function e(){Ce(!1)}return window.addEventListener(`blur`,e),()=>window.removeEventListener(`blur`,e)},[Ge]),(0,z.useEffect)(()=>{if(!Ge||!Se)return;function e(e){let t=e.target;t instanceof Node&&(Pe.current?.contains(t)||Ce(!1))}return document.addEventListener(`pointerdown`,e,!0),()=>document.removeEventListener(`pointerdown`,e,!0)},[Ge,Se]),(0,z.useEffect)(()=>{let e=Q(o),t=Wr(o),s=$r(G);if(x){let r=e?u(e):null,o=Jr(_)??(e?$n(e):null),c=e&&r?!!de(e):!1,l=ti({activeTarget:i,supportHydrationKey:t,supportStatus:x.support.status});if(t&&l&&S(t),j.current.name!==a.GLOBAL_LOADING)return;let d=ni(i,x.interview);if(d){ze.current=x.interview.status===n.ACTIVE?x.interview.entryId:null,M({route:d,type:`replace`});return}if(ei(i))return;if(x.interview.status===n.ACTIVE)ze.current=x.interview.entryId,M({route:Kr({interview:x.interview,storedRoute:o,supportEntryId:G,supportRoute:s}),type:`replace`});else if(Gr({hasCachedInterviewSession:c,hasInterviewIdentity:!!r,interview:x.interview,storedRoute:o}))return;else ze.current=null,M({route:qr({storedRoute:o,supportEntryId:G,supportRoute:s}),type:`replace`});return}if(!e||!t){M({route:s,type:`replace`});return}let c=!1,l=u(e),d=Le.current;if(!l)return M({route:qr({storedRoute:$n(e),supportEntryId:G,supportRoute:s}),type:`replace`}),S(t),()=>{c=!0};if(!d||d.key!==l){let t=$n(e),n=!!de(e),i=k({client:rr(),options:e});d={key:l,promise:(async()=>{if(n||r(t)){let e=await i.restoreCachedSession();if(e&&r(t))return{controller:i,entry:e,kind:`interview`,route:fr(t,e)};if(e)return{controller:i,entry:e,kind:`support`,route:qr({storedRoute:t,supportEntryId:G,supportRoute:s})}}return{kind:`support`,route:qr({storedRoute:t,supportEntryId:G,supportRoute:s})}})()},Le.current=d}return d.promise.then(e=>{if(!(c||Re.current===l)){if(Re.current=l,e.kind===`interview`){R.current=e.controller,I(t=>Tn(t,e.entry)),M({route:e.route,type:`replace`}),ei(i)||S(t);return}`entry`in e&&(R.current=e.controller,I(t=>Tn(t,e.entry))),M({route:e.route,type:`replace`}),S(t)}}),()=>{c=!0}},[o,i,S,_,j.current,x,G]),(0,z.useEffect)(()=>{if(!G||j.current.name===a.GLOBAL_LOADING&&x&&(ei(i)||x.interview.status===n.ACTIVE))return;if(j.current.name===a.GLOBAL_LOADING&&x){let e=Q(o),t=e?u(e):null,n=Jr(_)??(e?$n(e):null);if(Gr({hasCachedInterviewSession:e&&t?!!de(e):!1,hasInterviewIdentity:!!t,interview:x.interview,storedRoute:n}))return}let e=m(G);(j.current.name===a.GLOBAL_LOADING||Zr(j.current)&&j.current.child.entryId!==G)&&M({route:e,type:`replace`})},[i,o,_,j.current,x,G]),(0,z.useEffect)(()=>{let e=Yr(j.current);if(x&&e){ne?.(e);return}let t=Q(o);t&&er(t,j.current)},[o,ne,j,x]),(0,z.useEffect)(()=>{if(!i)return;if(i.type===`support`||i.type===`home`){let e=Wr(o);if(e&&S(e),T!==Z.READY||!G)return;M({route:m(G),type:`push`});return}let e=ni(i,x?.interview);if(e){M({route:e,type:`push`});return}ei(i)&&(!x||x.interview.status!==n.ACTIVE)||T===Z.READY&&M({route:tr(i),type:`push`})},[i,o,S,x,T,G]),(0,z.useEffect)(()=>{j.current.name===a.AGENTS_CONVERSATIONS&&j.current.child.name===p.CHAT&&j.current.child.entryId.startsWith(`interview/session/`)&&dr()},[j.current]);let Y=(0,z.useRef)(!1);(0,z.useEffect)(()=>{if(!h){Y.current=!1;return}Y.current||r(j.current)&&(Y.current=!0,l||v(!0))},[h,l,v,j.current]),(0,z.useEffect)(()=>{let e=Wr(o);!e||T!==Z.IDLE||j.current.name!==a.AGENTS_CONVERSATIONS||j.current.child.name!==p.CHAT||!f(j.current.child.entryId)||S(e)},[o,S,j,T]),(0,z.useEffect)(()=>{let e=Q(o);if(x||!e||T!==Z.READY||pt)return;let t=!1,n=u(e),r=Fe.current;if(!n){Fe.current=null,R.current=null;return}if(!r||r.key!==n){let t=k({client:rr(),options:e});r={controller:t,key:n,promise:t.restoreCachedSession().then(e=>e??t.discoverInvitation()).catch(e=>(Fe.current?.key===n&&(Fe.current=null),console.error(`CustomerAgent interview eligibility request failed.`,e),null))},Fe.current=r}return R.current=r.controller,r.promise.then(e=>{t||I(t=>e?.status===N.ACTIVE?Tn(t,e):wn(t,e,A.mode,{canShowPrompt:it}))}),()=>{t=!0}},[o,s,it,pt,x,T,A.mode]);function xt(e){if(e===K)return;let t=P.entries.find(t=>t.id===e);if(I(t=>En(t,e)),t?.prompt){St(t.prompt.invitationId);return}M({route:{child:{entryId:e,name:p.CHAT},name:a.AGENTS_CONVERSATIONS},type:`push`})}async function St(t){let n=P.entries.find(e=>e.prompt?.invitationId===t);if(!n?.prompt)return;I(e=>({...En(e,n.id),invitePrompt:null,isMobileDockOpen:!1})),M({route:{child:{entryId:n.id,invitationId:t,name:p.INTERVIEW_STARTING},name:a.AGENTS_CONVERSATIONS},type:`push`}),dr();let r=t.startsWith(`runtime:`)&&c?await c.ensureInvitation():t,i=c?await c.startInvitation(r):await R.current?.startInvitation(r);if(!i)return;if(c&&ri(i)){let e=Q(o);if(e){let t=k({client:rr(),options:e});t.hydrateSession(i.session),R.current=t}}I(e=>On(e,{invitationId:t,sessionId:i.sessionId,subtitle:Ke,title:H}));let l={conversationId:`interview/session/${i.sessionId}`,conversationType:`interview`,entryId:i.entryId,interviewSessionId:i.sessionId};c||(s?.emit(e.CONVERSATION_CREATED,l),s?.emit(e.INTERVIEW_SESSION_STARTED,l)),M({route:{child:{entryId:i.entryId,name:p.CHAT},name:a.AGENTS_CONVERSATIONS},type:`replace`})}function Ct(n,r){let i=P.entries.find(e=>e.prompt?.invitationId===n);i?.prompt&&s?.emit(r===t.LATER?e.INTERVIEW_INVITATION_LATER:e.INTERVIEW_INVITATION_CLOSED,{campaignId:i.prompt.campaignId,entryId:i.id,invitationId:n}),I(e=>Dn(e,n,r)),c?n.startsWith(`runtime:`)||c.chooseInvitation(n,r).catch(e=>{console.error(`CustomerAgent interview invitation choice request failed.`,e)}):R.current?.chooseInvitation(n,r).catch(e=>{console.error(`CustomerAgent interview invitation choice request failed.`,e)})}return(0,B.jsxs)(Nn,{activeEntryId:K,ariaLabel:Je,entries:ot,invitePrompt:P.invitePrompt,interviewChat:R.current?(0,B.jsx)(z.Suspense,{fallback:(0,B.jsx)(Si,{label:`Loading interview`}),children:(0,B.jsx)(xi,{children:(0,B.jsx)(lr,{controller:R.current,description:Ke,eventBus:s,isHeaderMenuEnabled:Ge,isExpanded:l,isOpen:h,locale:g,onToggleExpanded:()=>v(!l),title:ct,transcriptAppName:ct,visitorName:D(o),viewportMode:A.mode,onOpenMobileDock:()=>I(e=>({...e,isMobileDockOpen:!0}))})})}):void 0,isChatLoading:ft,isExpanded:l,isMobileDockOpen:P.isMobileDockOpen,isOpen:h,route:j.current,routeTransitionKey:j.transitionKey,style:Xe,viewportMode:A.mode,onEntrySelect:xt,onInviteClose:e=>void Ct(e,t.CLOSE),onInviteLater:e=>void Ct(e,t.LATER),onInviteStart:e=>void St(e),onMobileDockOpenChange:e=>I(t=>({...t,isMobileDockOpen:e})),children:[(0,B.jsxs)(`header`,{className:F(`grid shrink-0 items-center gap-[var(--messenger-header-gap)] border-b border-border-divider bg-bg-canvas px-[var(--messenger-header-padding-x)] py-[var(--messenger-header-padding-y)]`,A.mode===`mobile`?`grid-cols-[auto_auto_1fr_auto] pl-1`:`grid-cols-[auto_1fr_auto]`),"data-customer-agent-panel-header":``,children:[A.mode===`mobile`?(0,B.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-6 cursor-pointer place-items-center rounded-md border-0 bg-transparent p-0 text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none`,"aria-label":`Open conversations`,title:`Open conversations`,type:`button`,onClick:()=>I(e=>({...e,isMobileDockOpen:!0})),children:(0,B.jsx)(ae,{size:16})}):null,(0,B.jsx)(`div`,{className:`grid h-[var(--messenger-header-avatar-size)] w-[var(--messenger-header-avatar-size)] place-items-center rounded-full bg-[var(--customer-agent-primary)] text-gray-1 shadow-[0_0_0_1px_var(--border-default)]`,"aria-hidden":`true`,children:(0,B.jsx)(we,{size:16})}),(0,B.jsxs)(`div`,{className:`flex min-w-0 flex-col justify-center`,children:[(0,B.jsx)(`p`,{className:`m-0 truncate text-[length:var(--messenger-header-title-size)] font-semibold leading-[var(--messenger-header-title-line-height)]`,children:H}),(0,B.jsx)(`span`,{className:`block truncate text-[length:var(--messenger-header-subtitle-size)] leading-[var(--messenger-header-subtitle-line-height)] text-text-tertiary`,children:g.messages.status_reply_time})]}),Ge?(0,B.jsx)(`div`,{className:`relative flex items-center gap-[var(--messenger-header-action-gap)] pr-[var(--messenger-header-button-size)]`,children:(0,B.jsxs)(`div`,{ref:Pe,onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),Ce(!1))},children:[(0,B.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)] cursor-pointer place-items-center rounded-[var(--messenger-header-button-radius)] border-0 bg-transparent text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none data-[state=open]:bg-gray-3 data-[state=open]:text-text-primary`,"aria-expanded":Se,"aria-haspopup":`menu`,"aria-label":g.messages.more_options,"data-state":Se?`open`:`closed`,title:g.messages.more_options,type:`button`,onClick:()=>Ce(e=>!e),children:(0,B.jsx)(re,{size:16})}),Se?(0,B.jsxs)(`div`,{className:`absolute top-[calc(100%+0.5rem)] right-[var(--messenger-header-button-size)] z-[var(--z-dropdown)] grid min-w-64 gap-1 rounded-lg border border-border-default bg-bg-elevated p-1 text-sm text-text-primary shadow-popover`,role:`menu`,children:[(0,B.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{Ce(!1),v(!l)},children:[l?(0,B.jsx)(oe,{size:16}):(0,B.jsx)(se,{size:16}),(0,B.jsx)(`span`,{children:l?g.messages.collapse_window:g.messages.expand_window})]}),(0,B.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{Ce(!1),vt()},children:[(0,B.jsx)(pe,{size:16}),(0,B.jsx)(`span`,{children:g.messages.download_transcript})]})]}):null]})}):(0,B.jsx)(`div`,{className:`h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)]`,"aria-hidden":`true`})]}),(0,B.jsx)(C,{className:`relative flex min-h-0 flex-1 flex-col overflow-hidden bg-bg-canvas`,children:(0,B.jsx)(ue,{asChild:!0,"aria-live":`polite`,autoScroll:!0,role:`log`,scrollToBottomOnInitialize:!0,scrollToBottomOnRunStart:!0,scrollToBottomOnThreadSwitch:!0,children:(0,B.jsx)(`div`,{className:`customer-agent-thread-viewport min-h-0 flex-1 overflow-y-auto bg-bg-canvas [scrollbar-width:none] [&::-webkit-scrollbar]:hidden [&>[data-radix-scroll-area-content]]:flex [&>[data-radix-scroll-area-content]]:min-h-full [&>[data-radix-scroll-area-content]]:flex-col [&>[data-radix-scroll-area-content]]:self-stretch [&>[data-radix-scroll-area-content]]:bg-inherit [&>div]:flex [&>div]:min-h-full [&>div]:flex-col [&>div]:self-stretch [&>div]:bg-inherit`,"data-customer-agent-thread-viewport":``,ref:He,onScroll:J,children:(0,B.jsxs)(`div`,{className:F(`flex min-h-full flex-col px-[var(--messenger-conversation-horizontal-padding)] pt-3`,`customer-agent-message-list`),"data-customer-agent-message-list":``,children:[Ye?(0,B.jsx)(`p`,{className:`mx-auto mt-1 mb-8 max-w-[min(100%,var(--messenger-conversation-part-max-width))] whitespace-pre-wrap px-2 text-center text-base leading-6 text-text-tertiary`,children:Ye}):null,(0,B.jsx)(xe,{children:({message:e})=>{let t=Qe.get(e.id);return t?(0,B.jsx)(hi,{...t,appName:H,isTimeVisible:Ee[e.id]??t.showsDefaultAssistantTime,locale:g,onAttachmentLoad:bt,onTimeVisibilityChange:t=>{De(n=>({...n,[e.id]:t}))}}):null}})]})})})}),(0,B.jsxs)(ve,{className:F(`relative z-[var(--z-composer)] shrink-0 bg-transparent px-[var(--messenger-conversation-horizontal-padding)] pt-0 pb-[max(1rem,calc(1rem+var(--customer-agent-bottom-inset)))]`,`-mt-[var(--messenger-radius)]`),onSubmit:()=>{mt.closeEmojiPicker()},children:[(0,B.jsx)(_e,{removeAttachmentLabel:g.messages.remove_attachment}),(0,B.jsx)(ge,{inputAriaLabel:g.messages.message_aria_label,inputRef:_t,placeholder:g.messages.input_placeholder}),(0,B.jsxs)(ye,{children:[(0,B.jsxs)(me,{children:[(0,B.jsx)(he,{attachmentLabel:g.messages.attachment_label}),(0,B.jsx)(w,{hostRef:mt.emojiPickerHostRef,isLoading:mt.isEmojiPickerLoading,open:mt.isEmojiPickerOpen,onOpenChange:mt.onEmojiOpenChange,children:(0,B.jsx)(fe,{emojiLabel:g.messages.add_emoji})})]}),(0,B.jsx)(le,{sendLabel:g.messages.send_message})]})]})]})}function hi({appName:e,dateLabel:t,groupPosition:n,isFirst:r,isTimeVisible:i,locale:a,message:o,onAttachmentLoad:s,onTimeVisibilityChange:c,previousMessage:l}){let u=o.role===`assistant`&&!o.isPending;function d(){u&&c(!i)}function f(e){let t=e.target;t instanceof Element&&t.closest(`a, button`)||d()}function ee(e){!u||e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),d())}return(0,B.jsxs)(B.Fragment,{children:[t?(0,B.jsx)(`div`,{className:F(`self-center rounded-full px-3 py-1 text-sm leading-5 text-text-tertiary`,r?`mt-1 mb-3`:`mt-4 mb-3`),children:t}):null,(0,B.jsxs)(Ce,{className:F(`flex max-w-[var(--messenger-conversation-part-max-width)] flex-col`,!r&&!t&&(l?.role===o.role?`mt-[var(--messenger-conversation-part-group-gap)]`:`mt-[var(--messenger-conversation-part-stack-gap)]`),o.role===`user`?`self-end items-end`:`self-start items-start`),"aria-expanded":u?i:void 0,role:u?`button`:void 0,tabIndex:u?0:void 0,onClick:f,onKeyDown:ee,children:[(0,B.jsx)(`div`,{className:F(`w-fit max-w-full whitespace-pre-wrap px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5`,o.role===`user`?`bg-[var(--customer-agent-primary)] text-gray-1`:`bg-gray-3 text-text-secondary`),style:Lr(o.role,n),children:(0,B.jsxs)(`div`,{className:`grid gap-2`,children:[o.text?(0,B.jsx)(A,{children:({part:e})=>e.type===`text`?(0,B.jsx)(bi,{}):null}):null,o.isPending?(0,B.jsx)(Ci,{}):null,o.attachments.length>0?(0,B.jsx)(vi,{attachments:o.attachments,role:o.role,onAttachmentLoad:s}):null]})}),u?(0,B.jsxs)(`span`,{className:F(`overflow-hidden px-[var(--messenger-conversation-part-padding-x)] text-sm leading-5 text-text-tertiary transition-[max-height,opacity,transform,margin] duration-200 ease-out`,i?`mt-1 max-h-5 translate-y-0 opacity-100`:`mt-0 max-h-0 -translate-y-1 opacity-0`),children:[e,` · `,yr(o.assistantAuthor,a),` ·`,` `,Fr(o.createdAt,a)]}):null]})]})}function gi(e){if(!Number.isFinite(e)||e<=0)return``;let t=e/(1024*1024);return t>=1?`${t.toFixed(t>=10?0:1)} MB`:`${Math.max(1,Math.round(e/1024))} KB`}function _i(e){let t=e.filename.split(`.`).pop();return t&&t!==e.filename?t.toUpperCase():e.mimeType.split(`/`).pop()?.toUpperCase()??`FILE`}function vi({attachments:e,onAttachmentLoad:t,role:n}){return(0,B.jsx)(`div`,{className:`grid gap-2`,children:e.map(e=>e.mimeType.startsWith(`image/`)&&e.url?(0,B.jsx)(yi,{attachment:e,onLoad:t},e.id):(0,B.jsxs)(`a`,{className:F(`grid min-w-0 grid-cols-[32px_minmax(0,1fr)] items-center gap-2 rounded-lg px-2.5 py-2 no-underline`,n===`user`?`bg-gray-1/15 text-gray-1 hover:bg-gray-1/20`:`bg-bg-canvas text-text-secondary hover:bg-gray-2`),href:e.url||void 0,rel:`noreferrer`,target:`_blank`,children:[(0,B.jsx)(`span`,{className:F(`grid h-8 w-8 place-items-center rounded-md`,n===`user`?`bg-gray-1/20`:`bg-gray-12 text-gray-1`),children:(0,B.jsx)(O,{size:16})}),(0,B.jsxs)(`span`,{className:`min-w-0`,children:[(0,B.jsx)(`span`,{className:`block truncate text-sm font-semibold`,children:e.filename}),(0,B.jsx)(`span`,{className:`block truncate text-xs opacity-70`,children:[_i(e),gi(e.sizeBytes)].filter(Boolean).join(` · `)})]})]},e.id))})}function yi({attachment:e,onLoad:t}){let[n]=(0,z.useState)(()=>e.file&&e.mimeType.startsWith(`image/`)?URL.createObjectURL(e.file):null),[r,i]=(0,z.useState)(!e.url),[a,o]=(0,z.useState)(null),s=r?e.url:n??e.url,c=a!==null,l=c?Math.min(256,Math.round(192*a)):192;(0,z.useEffect)(()=>()=>{n&&URL.revokeObjectURL(n)},[n]),(0,z.useEffect)(()=>{if(!e.url)return;let n=!1,r=new Image;return r.src=e.url,r.decode().catch(()=>void 0).then(()=>{n||(r.naturalWidth>0&&r.naturalHeight>0&&o(r.naturalWidth/r.naturalHeight),i(!0),t(),window.requestAnimationFrame(t))}),()=>{n=!0}},[e.url,t]),(0,z.useEffect)(()=>{if(!n)return;let e=!1,t=new Image;return t.src=n,t.decode().catch(()=>void 0).then(()=>{e||t.naturalWidth<=0||t.naturalHeight<=0||o(t.naturalWidth/t.naturalHeight)}),()=>{e=!0}},[n]);function u(e){let n=e.currentTarget;n.naturalWidth>0&&n.naturalHeight>0&&o(n.naturalWidth/n.naturalHeight),t(),window.requestAnimationFrame(t)}return(0,B.jsxs)(`a`,{className:`relative block max-w-full overflow-hidden rounded-lg bg-gray-3`,href:e.url,rel:`noreferrer`,target:`_blank`,style:{aspectRatio:a??void 0,height:c?void 0:144,width:l},children:[c?null:(0,B.jsx)(`span`,{className:`absolute inset-0 animate-pulse bg-gray-4`,"aria-hidden":`true`}),s?(0,B.jsx)(`img`,{className:F(`absolute inset-0 h-full w-full object-contain transition-opacity`,c?`opacity-100`:`opacity-0`),alt:e.filename,src:s,onLoad:u}):null]})}function bi(){return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(z.Suspense,{fallback:(0,B.jsx)(Se,{className:`min-w-0 break-words`}),children:(0,B.jsx)(sr,{})}),(0,B.jsx)(T,{children:(0,B.jsx)(Ci,{})})]})}function xi({children:e}){return(0,B.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col animate-[customer-agent-chat-route-in_var(--duration-fast)_var(--ease-emphasis)_both] motion-reduce:animate-none`,"data-customer-agent-lazy-route-ready":``,children:e})}function Si({label:e}){return(0,B.jsx)(`div`,{className:`grid min-h-0 flex-1 place-items-center`,"aria-label":e,role:`status`,children:(0,B.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-2 border-[var(--gray-4)] border-t-[var(--customer-agent-primary)]`})})}function Ci(){return(0,B.jsxs)(`span`,{className:`inline-flex h-5 items-center gap-1 align-middle text-text-quaternary`,children:[(0,B.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current`}),(0,B.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:140ms]`}),(0,B.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:280ms]`})]})}export{pi as WidgetPanel};
|
|
@@ -89,4 +89,4 @@ import{r as e,t}from"./interviewTypes-Ch2NsXKB.js";import{h as n,i as r,u as i}f
|
|
|
89
89
|
border-top-color: var(--border-divider);
|
|
90
90
|
padding: 6px 10px;
|
|
91
91
|
}
|
|
92
|
-
`,n=e=>{let t=e.detail.unicode;if(!t)return;let n=i.current.current,o=r.current.getState().text,c=n?.selectionStart??o.length,l=n?.selectionEnd??o.length,u=c+t.length;r.current.setText(`${o.slice(0,c)}${t}${o.slice(l)}`),window.requestAnimationFrame(()=>{a.current||(i.current.current?.focus(),i.current.current?.setSelectionRange(u,u))}),s(!1)},t.addEventListener(`emoji-click`,n),u.replaceChildren(t),t.shadowRoot?.appendChild(d),l(Q.READY)}).catch(t=>{e||(console.error(`CustomerAgent emoji picker failed to load.`,t),l(Q.ERROR))}),()=>{e=!0,t&&n&&t.removeEventListener(`emoji-click`,n),u.replaceChildren()}},[u,o]),{closeEmojiPicker(){s(!1)},emojiPickerHostRef:d,isEmojiPickerLoading:o&&c===Q.LOADING,isEmojiPickerOpen:o,onEmojiOpenChange(e){s(e),!e&&!n&&window.requestAnimationFrame(()=>da(t.current))}}}var pa=`data-customer-agent-composer-action`,ma=(0,F.createContext)(null),ha=(0,F.createContext)(null);function ga(e,t){if(e){if(typeof e==`function`){e(t);return}e.current=t}}function _a(e){let t=e.name.split(`.`).pop();return t&&t!==e.name?t.toUpperCase():e.contentType?e.contentType.split(`/`).pop()?.toUpperCase()??`FILE`:`FILE`}function va(e){return e.type===`image`||e.contentType?.startsWith(`image/`)}function ya(e){return e.status.type===`running`}function ba(e){return e.status.type===`requires-action`||e.status.type===`complete`}function xa(e){let[t]=(0,F.useState)(()=>e.file&&va(e)?URL.createObjectURL(e.file):null);return(0,F.useEffect)(()=>()=>{t&&URL.revokeObjectURL(t)},[t]),t}function Sa({className:e}){return(0,R.jsx)(Fe,{className:f(`h-6 w-6 animate-spin text-gray-1/70`,e),"aria-hidden":`true`})}function Ca({attachment:e,removeAttachmentLabel:t}){return(0,R.jsx)(dr,{className:`absolute -top-0.5 -right-0.5 z-[4] grid h-[18px] w-[18px] cursor-pointer place-items-center rounded-full border border-gray-1/70 bg-gray-12 p-0 text-gray-1 shadow-circle transition-transform hover:scale-105 focus-visible:outline-none focus-visible:shadow-[var(--shadow-circle),var(--shadow-focus)]`,"aria-label":t.replace(`{name}`,e.name),type:`button`,children:(0,R.jsx)(u,{size:13,strokeWidth:2.5})})}function wa(e,t){if(!e||typeof e!=`object`||!(`closest`in e))return!1;let n=e;return n!==t&&!n.closest(`[${pa}]`)}function $(){let e=(0,F.useContext)(ma);if(!e)throw Error(`WidgetComposer compound components must be rendered inside WidgetComposerRoot.`);return e}function Ta({removeAttachmentLabel:e=`Remove {name}`}){return K(e=>e.attachments.length)===0?null:(0,R.jsx)(`div`,{className:`mb-0 min-w-0 overflow-hidden [padding:var(--messenger-composer-attachments-padding-top)_var(--messenger-composer-attachments-padding-right)_var(--messenger-composer-attachments-padding-bottom)_var(--messenger-composer-attachments-padding-left)]`,"data-customer-agent-composer-action":`true`,children:(0,R.jsx)(`div`,{className:`-mx-3 overflow-auto`,children:(0,R.jsx)(`div`,{className:`-mt-2 overflow-x-auto overflow-y-hidden pt-2.5 pb-2 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:(0,R.jsx)(`div`,{className:`flex w-max gap-2 px-3`,children:(0,R.jsx)(Mn,{children:({attachment:t})=>(0,R.jsx)(Ea,{attachment:t,removeAttachmentLabel:e},t.id)})})})})})}function Ea({attachment:e,removeAttachmentLabel:t}){let n=ya(e),r=xa(e);return va(e)?(0,R.jsxs)(lr,{className:`group relative h-14 w-14 shrink-0 overflow-visible rounded-lg text-left`,children:[(0,R.jsxs)(`div`,{className:`h-full w-full overflow-hidden rounded-lg bg-gray-3 shadow-card`,children:[r?(0,R.jsx)(`img`,{className:f(`h-full w-full object-cover transition-opacity`,n&&`opacity-60`),alt:e.name,src:r}):(0,R.jsx)(`div`,{className:`grid h-full w-full place-items-center bg-gray-3 text-text-tertiary`,children:(0,R.jsx)(Pe,{size:18,fill:`currentColor`})}),n?(0,R.jsx)(`div`,{className:`absolute inset-0 grid place-items-center rounded-lg bg-gray-12/35`,children:(0,R.jsx)(Sa,{})}):null]}),(0,R.jsx)(Ca,{attachment:e,removeAttachmentLabel:t})]}):(0,R.jsxs)(lr,{className:`group relative grid h-14 min-w-40 max-w-40 grid-cols-[36px_minmax(0,1fr)] items-center gap-2.5 rounded-lg border border-border-default bg-gray-3 px-2.5 text-left transition-colors hover:bg-gray-4`,children:[(0,R.jsx)(`div`,{className:`grid h-9 w-9 place-items-center rounded-md bg-gray-12 text-gray-1`,children:n?(0,R.jsx)(Sa,{className:`h-5 w-5`}):(0,R.jsx)(Pe,{size:18,fill:`currentColor`})}),(0,R.jsxs)(`div`,{className:`min-w-0`,children:[(0,R.jsx)(`p`,{className:`m-0 truncate text-sm font-semibold leading-5 text-text-secondary`,children:(0,R.jsx)(ur,{})}),(0,R.jsx)(`p`,{className:`m-0 truncate text-xs font-medium leading-4 text-text-quaternary`,children:_a(e)})]}),(0,R.jsx)(Ca,{attachment:e,removeAttachmentLabel:t})]})}function Da({children:e,className:t,isHidden:n=!1,onSubmit:r}){let i=(0,F.useRef)(null),[a,o]=(0,F.useState)(!1),s=qn({optional:!0}),c=K(e=>e.text),l=K(e=>e.attachments),u=K(e=>e.canSend),d=l.some(e=>!ba(e)),p=l.filter(ba).length,m=!!s&&u&&!d&&!!(c.trim()||p);function h(){let e=i.current;if(!e)return;let t=e.value.length;e.focus(),e.setSelectionRange(t,t)}function ee(e){n||wa(e.target,i.current)&&(e.preventDefault(),h(),window.requestAnimationFrame(h))}function g(e){n||wa(e.target,i.current)&&h()}function _(){n||m&&(r?.(),s?.send())}function v(e){e.preventDefault(),_()}return(0,R.jsx)(pr,{className:f(`relative bg-bg-canvas px-4 pt-2 pb-4`,n&&`invisible pointer-events-none select-none`,t),"aria-hidden":n?`true`:void 0,"data-visibility":n?`hidden`:`visible`,onSubmit:v,children:(0,R.jsx)(ma.Provider,{value:{canSend:m,composerText:c,focusInputAtEnd:h,inputRef:i,isHidden:n,sendComposerMessage:_,setIsActive:o},children:(0,R.jsx)(`div`,{className:`flex min-h-[var(--messenger-composer-height)] min-w-0 flex-col rounded-messenger-composer border border-border-default bg-bg-canvas pt-2.5 pb-2 [outline:0_solid_var(--border-strong)] transition-[border-color,outline-width] duration-100 ease-in focus-within:border-border-strong focus-within:[outline-color:var(--customer-agent-primary,var(--primary))] focus-within:[outline-width:var(--messenger-composer-focus-outline-width)] data-[active=true]:border-border-strong data-[active=true]:[outline-color:var(--customer-agent-primary,var(--primary))] data-[active=true]:[outline-width:var(--messenger-composer-focus-outline-width)]`,"data-active":a?`true`:void 0,onClick:g,onPointerDownCapture:ee,children:e})})})}function Oa({inputAriaLabel:e,inputRef:t,placeholder:n}){let{composerText:r,inputRef:i,isHidden:a}=$();return(0,R.jsx)(Gr,{className:`max-h-32 min-h-6 w-full resize-none overflow-y-auto border-0 bg-transparent [padding:var(--messenger-composer-input-padding-top)_var(--messenger-composer-input-padding-right)_var(--messenger-composer-input-padding-bottom)_var(--messenger-composer-input-padding-left)] text-[length:var(--messenger-composer-text-size)] leading-[var(--messenger-composer-text-line-height)] text-text-primary outline-none placeholder:text-text-placeholder [&:placeholder-shown]:![height:calc(var(--messenger-composer-text-line-height)+var(--messenger-composer-input-padding-top)+var(--messenger-composer-input-padding-bottom))]`,"aria-label":e,"data-empty":r.trim()?void 0:`true`,disabled:a,maxRows:r.trim()?5:1,minRows:1,placeholder:n,ref:e=>{i.current=e,ga(t,e)},submitMode:`enter`})}function ka({children:e}){return(0,R.jsx)(`div`,{className:`mt-[var(--messenger-composer-actions-margin-top)] flex h-[var(--messenger-composer-actions-height)] min-h-[var(--messenger-composer-actions-height)] items-center gap-[var(--messenger-composer-actions-gap)] [padding:var(--messenger-composer-actions-padding-top)_var(--messenger-composer-actions-padding-right)_var(--messenger-composer-actions-padding-bottom)_var(--messenger-composer-actions-padding-left)] text-text-quaternary`,children:e})}function Aa({children:e}){return(0,R.jsx)(`div`,{className:`flex items-center gap-[var(--messenger-composer-actions-gap)]`,children:e})}function ja({attachmentLabel:e=`Attach file`}){let{isHidden:t}=$();return(0,R.jsx)(Kr,{className:`grid h-7 w-7 cursor-pointer place-items-center border-0 bg-transparent p-0 text-inherit transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)] disabled:cursor-not-allowed disabled:opacity-40`,"aria-label":e,"data-customer-agent-composer-action":`true`,disabled:t,multiple:!0,title:e,type:`button`,children:(0,R.jsx)(ze,{size:18})})}function Ma({children:e,hostRef:t,isLoading:n=!1,onOpenChange:r,open:i=!1}){let{setIsActive:a}=$();return(0,F.useEffect)(()=>(a(i),()=>{a(!1)}),[i,a]),(0,R.jsx)(Te,{open:i,onOpenChange:r,children:(0,R.jsxs)(ha.Provider,{value:{isOpen:i},children:[e,(0,R.jsxs)(De,{className:`relative z-[var(--z-dropdown)] w-[min(360px,calc(100vw-2.5rem))] overflow-hidden rounded-lg border border-border-default bg-bg-elevated shadow-popover`,align:`start`,collisionPadding:20,"data-customer-agent-composer-action":`true`,side:`top`,sideOffset:8,onCloseAutoFocus:e=>e.preventDefault(),onOpenAutoFocus:e=>e.preventDefault(),children:[n?(0,R.jsx)(`div`,{className:`absolute inset-0 z-[1] grid min-h-[304px] place-items-center bg-bg-elevated`,children:(0,R.jsx)(Fe,{className:`h-8 w-8 animate-spin text-[var(--customer-agent-primary,var(--text-quaternary))]`,"aria-hidden":`true`})}):null,(0,R.jsx)(`div`,{className:`min-h-[304px] text-sm text-text-tertiary`,ref:t})]})]})})}function Na({emojiLabel:e=`Add emoji`,emojiTitle:t=e}){let{isHidden:n}=$(),r=(0,F.useContext)(ha)?.isOpen??!1;return(0,R.jsx)(Ee,{asChild:!0,children:(0,R.jsx)(`button`,{className:f(`grid h-7 w-7 cursor-pointer place-items-center border-0 bg-transparent p-0 text-inherit transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)] data-[state=open]:text-[var(--customer-agent-primary,var(--gray-12))]`,r?`text-[var(--customer-agent-primary,var(--gray-12))]`:``),"aria-label":e,"aria-pressed":r,"data-customer-agent-composer-action":`true`,disabled:n,title:t,type:`button`,children:(0,R.jsx)(Be,{size:18})})})}function Pa({sendLabel:e}){let{canSend:t,isHidden:n}=$();return(0,R.jsx)(`button`,{className:`ml-auto grid h-8 w-8 place-items-center rounded-full border-0 p-0 transition-colors enabled:cursor-pointer enabled:bg-[var(--customer-agent-primary,var(--gray-12))] enabled:text-gray-1 enabled:hover:bg-gray-12 focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)] disabled:cursor-not-allowed disabled:bg-gray-3 disabled:text-gray-7`,"aria-label":e,"data-customer-agent-composer-action":`true`,disabled:n||!t,type:`submit`,children:(0,R.jsx)(je,{size:18,strokeWidth:2.5})})}export{Ne as A,Hn as C,Le as D,Re as E,Ie as O,Jn as S,zt as T,fi as _,Ma as a,Xr as b,Pa as c,na as d,ta as f,Mi as g,Fi as h,Na as i,Me as j,Pe as k,Aa as l,Gi as m,ja as n,Oa as o,Z as p,Ta as r,Da as s,ka as t,fa as u,di as v,Yt as w,qr as x,li as y};
|
|
92
|
+
`,n=e=>{let t=e.detail.unicode;if(!t)return;let n=i.current.current,o=r.current.getState().text,c=n?.selectionStart??o.length,l=n?.selectionEnd??o.length,u=c+t.length;r.current.setText(`${o.slice(0,c)}${t}${o.slice(l)}`),window.requestAnimationFrame(()=>{a.current||(i.current.current?.focus(),i.current.current?.setSelectionRange(u,u))}),s(!1)},t.addEventListener(`emoji-click`,n),u.replaceChildren(t),t.shadowRoot?.appendChild(d),l(Q.READY)}).catch(t=>{e||(console.error(`CustomerAgent emoji picker failed to load.`,t),l(Q.ERROR))}),()=>{e=!0,t&&n&&t.removeEventListener(`emoji-click`,n),u.replaceChildren()}},[u,o]),{closeEmojiPicker(){s(!1)},emojiPickerHostRef:d,isEmojiPickerLoading:o&&c===Q.LOADING,isEmojiPickerOpen:o,onEmojiOpenChange(e){s(e),!e&&!n&&window.requestAnimationFrame(()=>da(t.current))}}}var pa=`data-customer-agent-composer-action`,ma=(0,F.createContext)(null),ha=(0,F.createContext)(null);function ga(e,t){if(e){if(typeof e==`function`){e(t);return}e.current=t}}function _a(e){let t=e.name.split(`.`).pop();return t&&t!==e.name?t.toUpperCase():e.contentType?e.contentType.split(`/`).pop()?.toUpperCase()??`FILE`:`FILE`}function va(e){return e.type===`image`||e.contentType?.startsWith(`image/`)}function ya(e){return e.status.type===`running`}function ba(e){return e.status.type===`requires-action`||e.status.type===`complete`}function xa(e){let[t]=(0,F.useState)(()=>e.file&&va(e)?URL.createObjectURL(e.file):null);return(0,F.useEffect)(()=>()=>{t&&URL.revokeObjectURL(t)},[t]),t}function Sa({className:e}){return(0,R.jsx)(Fe,{className:f(`h-6 w-6 animate-spin text-gray-1/70`,e),"aria-hidden":`true`})}function Ca({attachment:e,removeAttachmentLabel:t}){return(0,R.jsx)(dr,{className:`absolute -top-0.5 -right-0.5 z-[4] grid h-[18px] w-[18px] cursor-pointer place-items-center rounded-full border border-gray-1/70 bg-gray-12 p-0 text-gray-1 shadow-circle transition-transform hover:scale-105 focus-visible:outline-none focus-visible:shadow-[var(--shadow-circle),var(--shadow-focus)]`,"aria-label":t.replace(`{name}`,e.name),type:`button`,children:(0,R.jsx)(u,{size:13,strokeWidth:2.5})})}function wa(e,t){if(!e||typeof e!=`object`||!(`closest`in e))return!1;let n=e;return n!==t&&!n.closest(`[${pa}]`)}function $(){let e=(0,F.useContext)(ma);if(!e)throw Error(`WidgetComposer compound components must be rendered inside WidgetComposerRoot.`);return e}function Ta({removeAttachmentLabel:e=`Remove {name}`}){return K(e=>e.attachments.length)===0?null:(0,R.jsx)(`div`,{className:`mb-0 min-w-0 overflow-hidden [padding:var(--messenger-composer-attachments-padding-top)_var(--messenger-composer-attachments-padding-right)_var(--messenger-composer-attachments-padding-bottom)_var(--messenger-composer-attachments-padding-left)]`,"data-customer-agent-composer-action":`true`,children:(0,R.jsx)(`div`,{className:`-mx-3 overflow-auto`,children:(0,R.jsx)(`div`,{className:`-mt-2 overflow-x-auto overflow-y-hidden pt-2.5 pb-2 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:(0,R.jsx)(`div`,{className:`flex w-max gap-2 px-3`,children:(0,R.jsx)(Mn,{children:({attachment:t})=>(0,R.jsx)(Ea,{attachment:t,removeAttachmentLabel:e},t.id)})})})})})}function Ea({attachment:e,removeAttachmentLabel:t}){let n=ya(e),r=xa(e);return va(e)?(0,R.jsxs)(lr,{className:`group relative h-14 w-14 shrink-0 overflow-visible rounded-lg text-left`,children:[(0,R.jsxs)(`div`,{className:`h-full w-full overflow-hidden rounded-lg bg-gray-3 shadow-card`,children:[r?(0,R.jsx)(`img`,{className:f(`h-full w-full object-cover transition-opacity`,n&&`opacity-60`),alt:e.name,src:r}):(0,R.jsx)(`div`,{className:`grid h-full w-full place-items-center bg-gray-3 text-text-tertiary`,children:(0,R.jsx)(Pe,{size:18,fill:`currentColor`})}),n?(0,R.jsx)(`div`,{className:`absolute inset-0 grid place-items-center rounded-lg bg-gray-12/35`,children:(0,R.jsx)(Sa,{})}):null]}),(0,R.jsx)(Ca,{attachment:e,removeAttachmentLabel:t})]}):(0,R.jsxs)(lr,{className:`group relative grid h-14 min-w-40 max-w-40 grid-cols-[36px_minmax(0,1fr)] items-center gap-2.5 rounded-lg border border-border-default bg-gray-3 px-2.5 text-left transition-colors hover:bg-gray-4`,children:[(0,R.jsx)(`div`,{className:`grid h-9 w-9 place-items-center rounded-md bg-gray-12 text-gray-1`,children:n?(0,R.jsx)(Sa,{className:`h-5 w-5`}):(0,R.jsx)(Pe,{size:18,fill:`currentColor`})}),(0,R.jsxs)(`div`,{className:`min-w-0`,children:[(0,R.jsx)(`p`,{className:`m-0 truncate text-sm font-semibold leading-5 text-text-secondary`,children:(0,R.jsx)(ur,{})}),(0,R.jsx)(`p`,{className:`m-0 truncate text-xs font-medium leading-4 text-text-quaternary`,children:_a(e)})]}),(0,R.jsx)(Ca,{attachment:e,removeAttachmentLabel:t})]})}function Da({children:e,className:t,isHidden:n=!1,onSubmit:r}){let i=(0,F.useRef)(null),[a,o]=(0,F.useState)(!1),s=qn({optional:!0}),c=K(e=>e.text),l=K(e=>e.attachments),u=K(e=>e.canSend),d=l.some(e=>!ba(e)),p=l.filter(ba).length,m=!!s&&u&&!d&&!!(c.trim()||p);function h(){let e=i.current;if(!e)return;let t=e.value.length;e.focus(),e.setSelectionRange(t,t)}function ee(e){n||wa(e.target,i.current)&&(e.preventDefault(),h(),window.requestAnimationFrame(h))}function g(e){n||wa(e.target,i.current)&&h()}function _(){n||m&&(r?.(),s?.send())}function v(e){e.preventDefault(),_()}return(0,R.jsx)(pr,{className:f(`relative bg-bg-canvas px-4 pt-2 pb-4`,n&&`invisible pointer-events-none select-none`,t),"aria-hidden":n?`true`:void 0,"data-visibility":n?`hidden`:`visible`,onSubmit:v,children:(0,R.jsx)(ma.Provider,{value:{canSend:m,composerText:c,focusInputAtEnd:h,inputRef:i,isHidden:n,sendComposerMessage:_,setIsActive:o},children:(0,R.jsx)(`div`,{className:`flex min-h-[var(--messenger-composer-height)] min-w-0 flex-col rounded-messenger-composer border border-border-default bg-bg-canvas pt-2.5 pb-2 [outline:0_solid_var(--border-strong)] transition-[border-color,outline-width] duration-100 ease-in focus-within:border-border-strong focus-within:[outline-color:var(--customer-agent-primary,var(--primary))] focus-within:[outline-width:var(--messenger-composer-focus-outline-width)] data-[active=true]:border-border-strong data-[active=true]:[outline-color:var(--customer-agent-primary,var(--primary))] data-[active=true]:[outline-width:var(--messenger-composer-focus-outline-width)]`,"data-active":a?`true`:void 0,onClick:g,onPointerDownCapture:ee,children:e})})})}function Oa({inputAriaLabel:e,inputRef:t,placeholder:n}){let{composerText:r,inputRef:i,isHidden:a}=$();return(0,R.jsx)(Gr,{className:`max-h-32 min-h-6 w-full resize-none overflow-y-auto border-0 bg-transparent [padding:var(--messenger-composer-input-padding-top)_var(--messenger-composer-input-padding-right)_var(--messenger-composer-input-padding-bottom)_var(--messenger-composer-input-padding-left)] text-[length:var(--messenger-composer-text-size)] leading-[var(--messenger-composer-text-line-height)] text-text-primary outline-none placeholder:text-text-placeholder [&:placeholder-shown]:![height:calc(var(--messenger-composer-text-line-height)+var(--messenger-composer-input-padding-top)+var(--messenger-composer-input-padding-bottom))]`,"aria-label":e,"data-empty":r.trim()?void 0:`true`,disabled:a,maxRows:r.trim()?5:1,minRows:1,placeholder:n,ref:e=>{i.current=e,ga(t,e)},submitMode:`enter`})}function ka({children:e}){return(0,R.jsx)(`div`,{className:`mt-[var(--messenger-composer-actions-margin-top)] flex h-[var(--messenger-composer-actions-height)] min-h-[var(--messenger-composer-actions-height)] items-center gap-[var(--messenger-composer-actions-gap)] [padding:var(--messenger-composer-actions-padding-top)_var(--messenger-composer-actions-padding-right)_var(--messenger-composer-actions-padding-bottom)_var(--messenger-composer-actions-padding-left)] text-text-quaternary`,children:e})}function Aa({children:e}){return(0,R.jsx)(`div`,{className:`flex items-center gap-[var(--messenger-composer-actions-gap)]`,children:e})}function ja({attachmentLabel:e=`Attach file`}){let{isHidden:t}=$();return(0,R.jsx)(Kr,{className:`grid h-7 w-7 cursor-pointer place-items-center border-0 bg-transparent p-0 text-inherit transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)] disabled:cursor-not-allowed disabled:opacity-40`,"aria-label":e,"data-customer-agent-composer-action":`true`,disabled:t,multiple:!0,title:e,type:`button`,children:(0,R.jsx)(ze,{size:18})})}function Ma({children:e,hostRef:t,isLoading:n=!1,onOpenChange:r,open:i=!1}){let{setIsActive:a}=$();return(0,F.useEffect)(()=>(a(i),()=>{a(!1)}),[i,a]),(0,R.jsx)(Te,{open:i,onOpenChange:r,children:(0,R.jsxs)(ha.Provider,{value:{isOpen:i},children:[e,(0,R.jsxs)(De,{className:`relative z-[var(--z-dropdown)] w-[min(360px,calc(100vw-2.5rem))] overflow-hidden rounded-lg border border-border-default bg-bg-elevated shadow-popover`,align:`start`,collisionPadding:20,"data-customer-agent-composer-action":`true`,"data-customer-agent-emoji-popover":`true`,side:`top`,sideOffset:8,onCloseAutoFocus:e=>e.preventDefault(),onOpenAutoFocus:e=>e.preventDefault(),children:[n?(0,R.jsx)(`div`,{className:`absolute inset-0 z-[1] grid min-h-[304px] place-items-center bg-bg-elevated`,children:(0,R.jsx)(Fe,{className:`h-8 w-8 animate-spin text-[var(--customer-agent-primary,var(--text-quaternary))]`,"aria-hidden":`true`})}):null,(0,R.jsx)(`div`,{className:`min-h-[304px] text-sm text-text-tertiary`,ref:t})]})]})})}function Na({emojiLabel:e=`Add emoji`,emojiTitle:t=e}){let{isHidden:n}=$(),r=(0,F.useContext)(ha)?.isOpen??!1;return(0,R.jsx)(Ee,{asChild:!0,children:(0,R.jsx)(`button`,{className:f(`grid h-7 w-7 cursor-pointer place-items-center border-0 bg-transparent p-0 text-inherit transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)] data-[state=open]:text-[var(--customer-agent-primary,var(--gray-12))]`,r?`text-[var(--customer-agent-primary,var(--gray-12))]`:``),"aria-label":e,"aria-pressed":r,"data-customer-agent-composer-action":`true`,disabled:n,title:t,type:`button`,children:(0,R.jsx)(Be,{size:18})})})}function Pa({sendLabel:e}){let{canSend:t,isHidden:n}=$();return(0,R.jsx)(`button`,{className:`ml-auto grid h-8 w-8 place-items-center rounded-full border-0 p-0 transition-colors enabled:cursor-pointer enabled:bg-[var(--customer-agent-primary,var(--gray-12))] enabled:text-gray-1 enabled:hover:bg-gray-12 focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)] disabled:cursor-not-allowed disabled:bg-gray-3 disabled:text-gray-7`,"aria-label":e,"data-customer-agent-composer-action":`true`,disabled:n||!t,type:`submit`,children:(0,R.jsx)(je,{size:18,strokeWidth:2.5})})}export{Ne as A,Hn as C,Le as D,Re as E,Ie as O,Jn as S,zt as T,fi as _,Ma as a,Xr as b,Pa as c,na as d,ta as f,Mi as g,Fi as h,Na as i,Me as j,Pe as k,Aa as l,Gi as m,ja as n,Oa as o,Z as p,Ta as r,Da as s,ka as t,fa as u,di as v,Yt as w,qr as x,li as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e=`0.
|
|
1
|
+
var e=`0.6.0-test.67b72921d3c0`;function t(){typeof window>`u`||(window.__customerAgentVersion=e)}var n=Object.freeze({BUG_REPORTED:`support.bug_reported`,CONVERSATION_CREATED:`conversation.created`,ERROR:`error`,FEEDBACK_SUBMITTED:`support.feedback_submitted`,HANDOFF_REQUESTED:`support.handoff_requested`,INTERVIEW_INVITATION_CLOSED:`interview.invitation_closed`,INTERVIEW_INVITATION_LATER:`interview.invitation_later`,INTERVIEW_INVITATION_SHOWN:`interview.invitation_shown`,INTERVIEW_AVAILABLE:`interview.available`,INTERVIEW_REWARD_UPDATED:`interview.reward_updated`,INTERVIEW_STATE_CHANGED:`interview.state_changed`,INTERVIEW_SESSION_COMPLETED:`interview.session_completed`,INTERVIEW_SESSION_STARTED:`interview.session_started`,MESSAGE_COMPLETED:`message.completed`,MESSAGE_FAILED:`message.failed`,MESSAGE_RETRY:`message.retry`,MESSAGE_SEND_FAILED:`message.send_failed`,MESSAGE_SENT:`message.sent`,MESSAGE_STARTED:`message.started`,SUPPORT_STATE_CHANGED:`support.state_changed`,TRANSCRIPT_DOWNLOADED:`transcript.downloaded`,WIDGET_CLOSED:`widget.closed`,WIDGET_COLLAPSED:`widget.collapsed`,WIDGET_EXPANDED:`widget.expanded`,WIDGET_OPENED:`widget.opened`,WIDGET_READY:`widget.ready`});export{t as n,n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./constants-
|
|
1
|
+
import{n as e}from"./constants-Do-S47mc.js";var t=Symbol.for(`@customer-agent/sdk.controller`),n=`__customerAgentRuntime`;e();function r(){let e=globalThis;return e[t]??={loaderState:`idle`,pendingTasks:[],runtime:null,runtimePromise:null},e[t]}function i(e){let t=e.CustomerAgent??e.default;if(typeof t!=`function`)throw Error(`CustomerAgent widget runtime module did not export CustomerAgent.`);return Object.assign(t,{[n]:!0})}function a(){let e=r();if(!e.runtime)return;let t=e.pendingTasks.splice(0);for(let n of t)n(e.runtime)}async function o(){let e=r();return e.loaderState===`ready`&&e.runtime?e.runtime:e.loaderState===`loading`&&e.runtimePromise?await e.runtimePromise:(e.loaderState=`loading`,e.runtimePromise=import(`../runtime.es.js`).then(t=>(e.runtime=i(t),e.loaderState=`ready`,a(),e.runtime)).catch(t=>{throw e.loaderState=`failed`,e.runtimePromise=null,console.error(`CustomerAgent widget runtime failed to load.`,t),t}),await e.runtimePromise)}function s(e){let t=r();if(t.runtime){e(t.runtime);return}t.pendingTasks.push(e),o().catch(()=>{})}function c(e,t){s(n=>{let r=n[e];typeof r==`function`&&r(...t)})}function l(e){return s(t=>{t(`boot`,e)}),A}async function u(){return await(await o()).ensureInvitation()}async function d(e){return await(await o()).startInvitation(e)}async function f(){return await(await o()).startInterview()}async function p(e,t){await(await o()).chooseInvitation(e,t)}async function m(e){await(await o()).sendInterviewMessage(e)}async function h(e){return await(await o()).loadInterviewReward(e)}function g(e){c(`update`,[e])}function _(e){c(`show`,[e])}function v(){c(`hide`,[])}function y(e){c(`toggle`,[e])}function b(e){c(`openEntry`,[e])}function x(){c(`shutdown`,[])}function S(e){c(`identify`,[e])}function C(e,t){c(`setContext`,[e,t])}async function w(){return await(await o()).getSession()}function T(){return r().runtime?.getSupportState()??null}function E(){return r().runtime?.getInterviewState()??null}function D(){return r().runtime?.getInterviewSession()??null}function O(){return r().runtime?.getState()??null}function k(e,t){let n=!0,r=()=>{};return s(i=>{n&&(r=i.on(e,t))}),()=>{n=!1,r()}}var A={chooseInvitation:p,async ensureInvitation(){let e=await u();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getInterviewState(){let e=E();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getInterviewSession(){return D()},async getSession(){let e=await w();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getState(){let e=O();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getSupportState(){let e=T();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},hide:v,identify:S,on:k,openEntry:b,loadInterviewReward:h,sendInterviewMessage:m,setContext:C,show:_,shutdown:x,async startInterview(){let e=await f();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},async startInvitation(e){let t=await d(e);if(!t)throw Error(`CustomerAgent widget is not initialized.`);return t},toggle:y,update:g};function j(e,...t){switch(e){case`boot`:return l(t[0]);case`chooseInvitation`:return p(t[0],t[1]);case`ensureInvitation`:return u();case`getSession`:return w();case`getState`:return O();case`getSupportState`:return T();case`getInterviewState`:return E();case`getInterviewSession`:return D();case`hide`:return v();case`identify`:return S(t[0]);case`on`:return k(t[0],t[1]);case`openEntry`:return b(t[0]);case`loadInterviewReward`:return h(t[0]);case`sendInterviewMessage`:return m(t[0]);case`setContext`:return C(t[0],t[1]);case`show`:return _(t[0]);case`shutdown`:return x();case`startInvitation`:return d(t[0]);case`startInterview`:return f();case`toggle`:return y(t[0]);case`update`:return g(t[0]);default:throw Error(`CustomerAgent received an unknown command: ${String(e)}.`)}}var M=Object.assign(j,{boot:l,chooseInvitation:p,ensureInvitation:u,getInterviewState:E,getInterviewSession:D,getSession:w,getState:O,getSupportState:T,hide:v,identify:S,on:k,openEntry:b,loadInterviewReward:h,sendInterviewMessage:m,setContext:C,show:_,shutdown:x,startInterview:f,startInvitation:d,toggle:y,update:g});export{g as S,_,D as a,d as b,O as c,S as d,h as f,C as g,m as h,u as i,T as l,b as m,l as n,E as o,k as p,p as r,w as s,M as t,v as u,x as v,y as x,f as y};
|
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./chunks/constants-
|
|
1
|
+
import{t as e}from"./chunks/constants-Do-S47mc.js";import{S as t,_ as n,a as r,b as i,c as a,d as o,f as s,g as c,h as l,i as u,l as d,m as f,n as p,o as m,p as h,r as g,s as _,t as v,u as y,v as b,x,y as S}from"./chunks/controller-DsoiXsWM.js";import{n as C}from"./chunks/interviewTypes-Ch2NsXKB.js";var w=v;export{e as CUSTOMER_AGENT_EVENTS,v as CustomerAgent,C as INTERVIEW_INVITATION_ACTION,p as boot,g as chooseInvitation,w as default,u as ensureInvitation,r as getInterviewSession,m as getInterviewState,_ as getSession,a as getState,d as getSupportState,y as hide,o as identify,s as loadInterviewReward,h as on,f as openEntry,l as sendInterviewMessage,c as setContext,n as show,b as shutdown,S as startInterview,i as startInvitation,x as toggle,t as update};
|
package/package.json
CHANGED
package/react.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./chunks/constants-
|
|
1
|
+
import{t as e}from"./chunks/constants-Do-S47mc.js";import{t}from"./chunks/controller-DsoiXsWM.js";import{a as n,n as r,r as i}from"./chunks/launcherAnchorStore-JMTZZGKC.js";import{useCallback as a,useEffect as o,useMemo as s,useRef as c,useSyncExternalStore as l}from"react";var u=[e.WIDGET_READY,e.WIDGET_OPENED,e.WIDGET_CLOSED,e.SUPPORT_STATE_CHANGED,e.INTERVIEW_STATE_CHANGED],d=null,f=null,p=new Set;function m(e,t){return JSON.stringify(e)===JSON.stringify(t)}function h(e,t){return e===t?!0:!e||!t?!1:e.appId===t.appId&&e.isOpen===t.isOpen&&e.isReady===t.isReady&&e.widgetId===t.widgetId&&e.activeEntryId===t.activeEntryId&&m(e.activeTarget,t.activeTarget)&&e.launcher.targetConfigured===t.launcher.targetConfigured&&e.launcher.targetConnected===t.launcher.targetConnected&&m(e.support,t.support)&&m(e.interview,t.interview)}function g(){let e=t.getState();return h(d,e)||(d=e),d}function _(){if(d!==g())for(let e of p)e()}function v(){_(),queueMicrotask(_),typeof window<`u`&&typeof window.requestAnimationFrame==`function`&&window.requestAnimationFrame(_)}function y(){f||=u.map(e=>t.on(e,v))}function b(e){return p.add(e),y(),()=>{p.delete(e),!(p.size>0)&&(f?.forEach(e=>e()),f=null)}}function x(){return null}function S(){return l(b,g,x)}function C(){return l(n,r,i)}function w(){let e=S(),n=C(),r=c(n);r.current=n;let i=a(e=>{let n=t.boot(e);return v(),n},[]),o=a(async(e,n)=>{await t.chooseInvitation(e,n),v()},[]),l=a(async()=>{let e=await t.ensureInvitation();return v(),e},[]),u=a(()=>{t.hide(),v()},[]),d=a(e=>{t.identify(e),v()},[]),f=a((e,n)=>{t.setContext(e,n),v()},[]),p=a(e=>{t.openEntry(e),v()},[]),m=a(async e=>{let n=await t.loadInterviewReward(e);return v(),n},[]),h=a(async e=>{await t.sendInterviewMessage(e),v()},[]),g=a(e=>{t.show(e),v()},[]),_=a(()=>{t.shutdown(),v()},[]),y=a(async e=>{let n=await t.startInvitation(e);return v(),n},[]),b=a(async()=>{let e=await t.startInterview();return v(),e},[]),x=a(e=>{t.toggle(e),v()},[]),w=a(e=>{t.update(e),v()},[]);return s(()=>({CustomerAgent:t,boot:i,chooseInvitation:o,ensureInvitation:l,getInterviewSession:t.getInterviewSession,getInterviewState:t.getInterviewState,getSession:t.getSession,getState:t.getState,getSupportState:t.getSupportState,hide:u,identify:d,isOpen:e?.isOpen??!1,isReady:e?.isReady??!1,launcher:e?.launcher??null,launcherAnchor:n,launcherAnchorRef:r,loadInterviewReward:m,on:t.on,openEntry:p,sendInterviewMessage:h,setContext:f,show:g,shutdown:_,startInterview:b,startInvitation:y,state:e,toggle:x,update:w}),[i,o,l,u,d,n,m,p,h,f,g,_,b,y,e,x,w])}function T(e,n){let r=c(n);o(()=>{r.current=n},[n]),o(()=>t(`on`,e,e=>{r.current(e)}),[e])}export{w as useCustomerAgent,T as useCustomerAgentEvent,S as useCustomerAgentState};
|
package/runtime.es.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./chunks/constants-BNPzMhE-.js";import{r as n,t as r}from"./chunks/interviewTypes-Ch2NsXKB.js";import{i,t as a}from"./chunks/launcherAnchorStore-JMTZZGKC.js";import{_ as o,b as s,f as c,g as l,m as u,n as d,p as f,u as p,v as m,y as h}from"./chunks/routes-Dh46ka4-.js";import{a as g,c as _,d as v,i as y,l as b,n as x,o as S,r as ee,u as te}from"./chunks/navigationState-LdqG_Osx.js";import{n as ne,r as re}from"./chunks/i18n-Q8u2wtW4.js";var C=Object.create,w=Object.defineProperty,T=Object.getOwnPropertyDescriptor,ie=Object.getOwnPropertyNames,E=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty,O=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),k=(e,t)=>{let n={};for(var r in e)w(n,r,{get:e[r],enumerable:!0});return t||w(n,Symbol.toStringTag,{value:`Module`}),n},ae=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=ie(t),a=0,o=i.length,s;a<o;a++)s=i[a],!D.call(e,s)&&s!==n&&w(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=T(t,s))||r.enumerable});return e},A=(e,t,n)=>(n=e==null?{}:C(E(e)),ae(t||!e||!e.__esModule?w(n,`default`,{value:e,enumerable:!0}):n,e));function oe(){let e=s(m());return{async checkEligibility(t,n){let{data:r}=await e.request(`/interviews/eligibility`,{body:t,method:`POST`,signal:n?.signal});return r},async chooseInvitation(t,n){await e.request(`/interviews/invitations/${t}/choice`,{body:n,method:`PATCH`})},async createInvitation(t){let{data:n}=await e.request(`/interviews/invitations`,{body:t,method:`POST`});return n},async getReward(t){let{data:n}=await e.request(`/interviews/sessions/${t}/reward`);return n},async getSession(t,n){let{data:r}=await e.request(`/interviews/sessions/${t}`,{signal:n?.signal});return r},async sendMessage(t,n){let{data:r}=await e.request(`/interviews/sessions/${t}/messages`,{body:n,method:`POST`});return r},async startInvitation(t,n){let{data:r}=await e.request(`/interviews/invitations/${t}/start`,{body:n,method:`POST`});return r}}}function j(e){return typeof e==`string`&&e.trim()?e.trim():null}function M(e){return e.anonymous_id??e.user?.id}function N(e){return{...e.context,...e.user,userId:e.user?.id,visitorId:M(e)}}function P(e){return j(e.brand?.name)??`Customer Agent`}function F(e){return{appId:e.app_id,locale:e.locale,pageContext:e.context??{},userContext:N(e),visitorId:M(e)}}function se(e,t){return{appId:e.app_id,campaignId:t.campaignId,context:e.context??{},showRequestId:t.showRequestId,userContext:N(e),variantKey:t.variantKey,visitorId:M(e)}}function I(e){return e instanceof Error?e.message:`CustomerAgent interview request failed.`}function L(e,t){return JSON.stringify(e)===JSON.stringify(t)}function R(e,t){return e.status===n.ACTIVE?{entryId:`interview/session/${e.sessionId}`,sessionId:e.sessionId,status:r.ACTIVE,title:t}:{sessionId:e.sessionId,sessionStatus:e.status,status:r.TERMINAL}}function ce(e){return{conversationId:`interview/session/${e}`,conversationType:`interview`,entryId:`interview/session/${e}`,interviewSessionId:e}}function z(e){return typeof crypto<`u`&&`randomUUID`in crypto?`${e}-${crypto.randomUUID()}`:`${e}-${Date.now()}-${Math.random().toString(36).slice(2)}`}function le({api:e,buildContextPayload:t=p,cache:i,emitAvailable:a,emitConversationCreated:o,emitSessionStarted:s,emitStateChanged:c,getOptions:l}){let d=new Set,f={status:r.IDLE},m=0,h=null,g=null,_=null,v=null,y=null,b=null,x=null;function S(e){L(f,e)||(f=e,c(f))}function ee(e,t){y=t,b=null,x=null;let n={body:t.invitation.body,campaignId:t.campaignId,laterCta:t.invitation.laterCta,startCta:t.invitation.startCta,status:r.AVAILABLE,title:t.invitation.title};S(n),d.has(e)||(d.add(e),a(n))}function te(){y=null,b=null,x=null,S({status:r.IDLE})}function ne(){v?.abort(),v=null,g=null,_=null}async function re(t,n,i){let a=l(),o=await e.checkEligibility(F(a),{signal:i});if(!(n!==m||t!==u(l()))){if(h=t,!o.eligible||o.status&&o.status!==r.AVAILABLE||!o.campaignId||!o.showRequestId||!o.invitation){y=null,b=null,x=null,S({status:r.UNAVAILABLE});return}ee(t,o)}}async function C(){let t=l(),a=u(t);if(!a){m+=1,ne(),h=null,te();return}let o=g!==null&&_!==a;if(o&&ne(),!o&&h===a&&f.status!==r.ERROR)return;if(g&&_===a){await g;return}ne();let s=++m,c=new AbortController;v=c,_=a,g=(async()=>{S({status:r.CHECKING});try{let r=i.read(t);if(r)try{let t=await e.getSession(r.sessionId,{signal:c.signal});if(s!==m||a!==u(l()))return;if(t.status!==n.ACTIVE){x=null,i.clear(l()),await re(a,s,c.signal);return}x=t,S(R(t,r.title)),h=a;return}catch{if(s!==m||a!==u(l()))return;x=null,i.clear(l())}await re(a,s,c.signal)}catch(e){if(s!==m||a!==u(l()))return;x=null,S({error:{message:I(e)},status:r.ERROR})}finally{_===a&&(g=null,_=null),v===c&&(v=null)}})(),await g}return{async chooseInvitation(t,n){await e.chooseInvitation(t,{choice:n})},async ensureInvitation(){let t=u(l());if(!t)throw m+=1,ne(),h=null,te(),Error(`No interview invitation is available.`);if((!y||f.status!==r.AVAILABLE)&&await C(),!y||f.status!==r.AVAILABLE)throw Error(`No interview invitation is available.`);if(b)return b;let n=await e.createInvitation(se(l(),y));return t===u(l())&&(b=n.invitationId),n.invitationId},getState(){return f.status===r.ACTIVE?{...f,title:j(l().brand?.name)??f.title??P(l())}:f},getActiveSession(){return x},async loadReward(t=x?.sessionId){if(!t)throw Error(`Cannot load an interview reward before the session starts.`);return await e.getReward(t)},syncAvailability:C,async startInvitation(r){let a=l(),c=u(a),d=await e.startInvitation(r,t(a));if(!c||c!==u(l()))return{entryId:`interview/session/${d.sessionId}`,session:d,sessionId:d.sessionId};x=d,d.status===n.ACTIVE?i.write(a,{entryId:`interview/session/${d.sessionId}`,priority:20,sessionId:d.sessionId,title:P(a)}):i.clear(a),S(R(d,P(a)));let f=ce(d.sessionId);return o?.(f),s?.(f),{entryId:`interview/session/${d.sessionId}`,session:d,sessionId:d.sessionId}},async sendMessage(t){if(!x||f.status!==r.ACTIVE)throw Error(`Cannot send an interview message before the session starts.`);let a=u(l()),o=x.sessionId,s=await e.sendMessage(o,{clientMessageId:z(`interview-message`),content:t,locale:l().locale});a!==u(l())||f.status!==r.ACTIVE||(x={...x,messages:[...x.messages,{content:t,createdAt:new Date().toISOString(),id:z(`interview-user`),role:`user`},{content:s.assistantMessage,createdAt:new Date().toISOString(),id:z(`interview-assistant`),role:`assistant`}],status:s.sessionStatus},s.sessionStatus!==n.ACTIVE&&i.clear(l()),S(R(x,P(l()))))}}}function ue(e){let t=s(e);return{async startSession(e,n){let{data:r}=await t.request(`/session`,{body:{...e,conversationId:n??void 0},conversationId:n,method:`POST`});return{conversationId:r.conversationId,messages:r.messages}},async updateContext(e,n){let{data:r}=await t.request(`/context`,{body:e,conversationId:n,method:`PATCH`});return r}}}function B(e){return e instanceof Error?e.message:`CustomerAgent support session request failed.`}function de(e){return e instanceof h&&e.code===`NOT_FOUND`}function V(e,t){return JSON.stringify(e)===JSON.stringify(t)}function H(e){return Array.isArray(e)?`[${e.map(e=>H(e)).join(`,`)}]`:e&&typeof e==`object`?`{${Object.entries(e).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${H(t)}`).join(`,`)}}`:JSON.stringify(e)}function fe({api:e,buildContextPayload:t=p,cache:n,emitConversationCreated:r,emitStateChanged:i,getOptions:a,onSessionReady:o}){let s={status:b.IDLE},c=0,l=null,u=null,d=null,f=null,m=null,h=null,g=null,_=null;function y(e){V(s,e)||(s=e,i(s))}async function x(n){let r=t(a());return await e.startSession(r,n)}async function S(n,r,i){if(!e.updateContext)return;let o={...t(n),conversationId:i},s=H({key:r,payload:o});_!==s&&await e.updateContext(o,i).then(()=>{r===v(a())&&(_=s)}).catch(()=>void 0)}return{async ensureSession(){let e=a(),t=v(e);if(s.status===b.READY&&u===t)return l??{conversationId:s.conversationId,messages:[]};if(m&&h===t){let e=await m;if(e)return e}if(d&&f===t)return await d;let i=n.read(e),p=++c;y({status:i?b.REFRESHING:b.STARTING}),f=t,d=(async()=>{try{return await x(i)}catch(t){if(!i||!de(t))throw t;return n.clear(e),await x(null)}})();try{let e=await d;return p!==c||t!==v(a())?e:(l=e,u=t,n.write(a(),e.conversationId),o?.(a(),e),(!i||i!==e.conversationId)&&r(e.conversationId),y({conversationId:e.conversationId,status:b.READY}),e)}catch(r){throw p!==c||t!==v(a())?r:(i&&n.clear(e),y({error:{message:B(r)},status:b.ERROR}),r)}finally{f===t&&(d=null,f=null)}},getState(){return s},getSessionSnapshot(){return u===v(a())?l:null},invalidateSession(){let e=a(),t=v(e);c+=1,n.clear(e),u===t&&(l=null,u=null),f===t&&(d=null,f=null),h===t&&(m=null,h=null),g=null,_=null,y({status:b.IDLE})},async syncCachedSession(){let r=a(),i=v(r);if(s.status===b.READY&&u===i){g=i,await S(r,i,s.conversationId);return}if(g===i&&s.status!==b.ERROR)return;if(m&&h===i){await m;return}if(d&&f===i)return;let p=n.read(r);if(!p){g=i,y({status:b.IDLE});return}let _=++c;h=i,m=(async()=>{y({status:b.REFRESHING});try{let s=await e.startSession(t(r),p);return _!==c||i!==v(a())?null:(l=s,u=i,n.write(a(),s.conversationId),o?.(a(),s),y({conversationId:s.conversationId,status:b.READY}),g=i,await S(a(),i,s.conversationId),s)}catch(e){return _!==c||i!==v(a())?null:(n.clear(a()),de(e)?(u===i&&(l=null,u=null),y({status:b.IDLE}),g=i,null):(y({error:{message:B(e)},status:b.ERROR}),null))}finally{h===i&&(m=null,h=null)}})(),await m}}}function pe(e){let t=new EventTarget;return{emit(...n){let[r,i={}]=n,a={...e(),...i,timestamp:new Date().toISOString(),type:r};t.dispatchEvent(new CustomEvent(r,{detail:a}))},on(e,n){let r=e=>n(e.detail);return t.addEventListener(e,r),()=>t.removeEventListener(e,r)}}}function U(e){let t=e.tagName.toLowerCase();return t===`button`||t===`input`||t===`select`||t===`textarea`||t===`summary`||t===`a`&&e.hasAttribute(`href`)}function me(e,t,n){if(n===void 0){delete e[t];return}e[t]=n}function he(e,t){let n=t.isOpen?`open`:`closed`;e.setAttribute(`aria-expanded`,t.isOpen?`true`:`false`),e.dataset.state=n,e.dataset.customerAgentState=n,me(e.dataset,`customerAgentActiveEntry`,t.activeEntryId),me(e.dataset,`customerAgentActiveKind`,t.activeKind),e.dataset.customerAgentHasInvitation=t.hasInvitation?`true`:`false`,e.dataset.customerAgentHasUnread=t.hasUnread?`true`:`false`,me(e.dataset,`customerAgentViewport`,t.viewport),delete e.dataset.customerAgentLauncher,U(e)||(e.setAttribute(`role`,`button`),e.hasAttribute(`tabindex`)||(e.tabIndex=0))}function ge(){let e=document.createElement(`div`);e.style.cssText=[`position: fixed`,`visibility: hidden`,`height: env(safe-area-inset-bottom)`,`pointer-events: none`].join(`;`),document.body.appendChild(e);let t=Number.parseFloat(getComputedStyle(e).height)||0;return e.remove(),t}function _e(e={}){let t=window.visualViewport,n=window.innerWidth,r=window.innerHeight,i=t?.height??r,a=e.mode!==`auto`&&e.mode!==void 0?!0:n<=640,o=a?e.mode===`bottom-sheet`?`bottom-sheet`:`fullscreen`:`desktop`,s=Math.max(0,t?.offsetTop??0);return{height:r,isMobile:a,keyboardInset:Math.max(0,r-i-s),mode:a?`mobile`:`desktop`,offsetTop:s,presentation:o,safeAreaBottom:ge(),visualHeight:i,width:n}}e();var W=null,G=null,K=null,ve=null,ye=`customer-agent-widget`,be=260,xe=[],Se=new WeakMap,Ce=0;async function we(){return K||(ve??=Promise.all([import(`./chunks/react-CKmEJ8Ba.js`).then(e=>A(e.t(),1)),import(`./chunks/client-duvjg9sB.js`).then(e=>A(e.t(),1)),import(`./chunks/App-BFC_4NQI.js`)]).then(([e,t,n])=>(K={createElement:e.createElement,createRoot:t.createRoot,preloadWidgetPanelShell:n.preloadWidgetPanelShell,WidgetApp:n.WidgetApp},K)).catch(e=>{throw ve=null,e}),await ve)}function Te(e){let t=xe.splice(0);for(let n of t)n.active&&(n.unsubscribe=e.on(n.eventName,n.handler))}function Ee(){document.getElementById(ye)?.remove()}function De(e){return typeof e==`string`?document.querySelector(e)??document.body:e??document.body}function Oe(e){let t=Se.get(e);if(t)return t;let n=`element-${++Ce}`;return Se.set(e,n),n}function ke(e){return typeof e==`string`?document.querySelector(e):e??null}function Ae(e){return Object.prototype.toString.call(e)===`[object Object]`}function q(e){return Array.isArray(e)?`[${e.map(e=>q(e)).join(`,`)}]`:e&&typeof e==`object`?`{${Object.entries(e).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${q(t)}`).join(`,`)}}`:JSON.stringify(e)}function je(e){return typeof e==`string`?`selector:${e}`:e?`element:${Oe(e)}`:null}function Me(e){let t=Oe(De(e.mount)),{launcher:n,mount:r,...i}=e;return{fingerprint:q({...i,launcher:n?{...n,target:je(n.target)}:void 0,mount:t}),key:q({appId:e.app_id,mount:t})}}function Ne(e,t){let n={...e};for(let[r,i]of Object.entries(t)){let t=e[r];n[r]=Ae(t)&&Ae(i)?Ne(t,i):i}return n}function J(e){return typeof e==`string`&&e.trim()?e.trim():null}function Pe(e,t){let n=t?.replace(`_`,`-`),r=n?.split(`-`)[0];return(n?e[n]:void 0)??(r?e[r]:void 0)??e.en??Object.values(e)[0]}function Fe(e,t){let n=J(t.branding.name)??J(t.branding.agentName)??J(t.branding.workspaceName),r=J(t.branding.primaryColor)??J(t.branding.primary_color),i=Pe(t.welcomeMessage,e.locale);return{...e,brand:{...e.brand,name:e.brand?.name??n??e.brand?.name},messages:{...i?{welcome_message:i}:{},...e.messages},theme:{...e.theme,primaryColor:e.theme?.primaryColor??r??e.theme?.primaryColor}}}function Ie(e,n=Me(e)){W?.shutdown(),Ee();let r=l(),u=document.createElement(`div`),p=pe(()=>({appId:b.app_id,widgetId:r})),v=De(e.mount),b=o(e,r),C=e.launcher?.target,w=!!b.open_on_init,T=y(b),ie=w,E=null,D=null,O=null,k=null,ae=null,A=null,j=null,M=null,N=re(b.locale,b.messages),P=_e(b.mobile),F=!1,se=0,I=null,L=`idle`,R=null,ce=!1,z=!1,B=!1,de=null,V=fe({api:ue(m()),cache:te(),emitConversationCreated(e){p.emit(t.CONVERSATION_CREATED,{...Ke(e)})},emitStateChanged(e){p.emit(t.SUPPORT_STATE_CHANGED,{support:e}),U(),J()},getOptions(){return b},onSessionReady(e,t){c.hydrateSession(e,t)}}),H=le({api:oe(),cache:f(),emitAvailable(e){p.emit(t.INTERVIEW_AVAILABLE,e)},emitConversationCreated(e){p.emit(t.CONVERSATION_CREATED,e)},emitSessionStarted(e){p.emit(t.INTERVIEW_SESSION_STARTED,e)},emitStateChanged(e){p.emit(t.INTERVIEW_STATE_CHANGED,{interview:e}),U(),J()},getOptions(){return b}});u.id=ye,u.className=`customer-agent-namespace`,u.dataset.customerAgent=`container`,v.appendChild(u);function U(){if(!E)return;let e=g(T.memoryRoute),t=T.requestedTarget?.type===`entry`?e?.split(`/`)[0]:T.requestedTarget?.type??e?.split(`/`)[0]??`support`;he(E,{activeEntryId:e,activeKind:t,hasInvitation:!1,hasUnread:!1,isOpen:w,targetConfigured:C!==void 0,targetConnected:!!E,viewport:P.mode})}function me(){!E||!D||(D.ariaExpanded===null?E.removeAttribute(`aria-expanded`):E.setAttribute(`aria-expanded`,D.ariaExpanded),D.role===null?E.removeAttribute(`role`):E.setAttribute(`role`,D.role),D.state===null?delete E.dataset.state:E.dataset.state=D.state,D.tabIndex===null?E.removeAttribute(`tabindex`):E.setAttribute(`tabindex`,D.tabIndex))}function ge(){ae?.(),ae=null,a(E),me(),E=null,D=null}function ve(){typeof C!=`string`||O!==null||(O=window.requestAnimationFrame(()=>{if(O=null,!(F||typeof C!=`string`)){if(ke(C)===E){U();return}J()}}))}function xe(){if(k?.disconnect(),k=null,typeof C!=`string`||typeof MutationObserver>`u`)return;let e=document.documentElement??document.body;e&&(k=new MutationObserver(ve),k.observe(e,{attributes:!0,childList:!0,subtree:!0}))}function Se(){let e=ke(C);if(e===E){U();return}if(ge(),!e)return;let t=e;E=t,i(t),D={ariaExpanded:t.getAttribute(`aria-expanded`),role:t.getAttribute(`role`),state:t.dataset.state??null,tabIndex:t.getAttribute(`tabindex`)};function n(e){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()}function r(e){n(e),Q(!w)}function a(e){e.key!==`Enter`&&e.key!==` `||(n(e),Q(!w))}t.addEventListener(`click`,r,{capture:!0}),t.addEventListener(`keydown`,a,{capture:!0}),ae=()=>{t.removeEventListener(`click`,r,{capture:!0}),t.removeEventListener(`keydown`,a,{capture:!0})},U()}function Ce(){L===`idle`&&(L=`queued`,queueMicrotask(()=>{F||(L=`emitted`,p.emit(t.WIDGET_READY))}))}function Oe(e){let n=!0;return queueMicrotask(()=>{F||!n||e({appId:b.app_id,timestamp:new Date().toISOString(),type:t.WIDGET_READY,widgetId:r})}),()=>{n=!1}}function Ae(e){let n=e instanceof Error?e.message:`CustomerAgent widget UI failed to load.`;console.error(`CustomerAgent widget UI failed to load.`,e),p.emit(t.ERROR,{message:n})}function q(){return R??=we().then(async e=>{F||(I??=e.createRoot(u),await e.preloadWidgetPanelShell())}).catch(e=>{throw R=null,e}),R}function je(){if(!F){if(!E||ie||w){J();return}if(!K||!I){J();return}I.render(K.createElement(K.WidgetApp,{activeTarget:T.requestedTarget,hasPanel:!1,hasCustomLauncher:!0,eventBus:p,interviewRuntime:{chooseInvitation:H.chooseInvitation,ensureInvitation:H.ensureInvitation,getActiveSession:H.getActiveSession,startInvitation:H.startInvitation},isOpen:!1,launcherTargetElement:E,memoryRoute:T.memoryRoute,onMemoryRouteChange:Ye,onOpenChange:Q,options:b,resolvedLocale:N,runtimeState:{interview:H.getState(),support:V.getState()},supportRuntime:{ensureSession:V.ensureSession,getSessionSnapshot:V.getSessionSnapshot,invalidateSession:V.invalidateSession},isViewportSettling:B,viewport:P,widgetId:r})),Ce()}}function J(){if(!F){if(Se(),E&&!ie&&!w){ce=!1,q().then(je).catch(Ae);return}if(!K||!I){ce=!0,we().then(e=>{F||(I??=e.createRoot(u),ce&&(ce=!1,J()))}).catch(e=>{Ae(e)});return}I.render(K.createElement(K.WidgetApp,{activeTarget:T.requestedTarget,hasPanel:ie,hasCustomLauncher:!!E,eventBus:p,interviewRuntime:{chooseInvitation:H.chooseInvitation,ensureInvitation:H.ensureInvitation,getActiveSession:H.getActiveSession,startInvitation:H.startInvitation},isOpen:w,launcherTargetElement:E,memoryRoute:T.memoryRoute,onMemoryRouteChange:Ye,onOpenChange:Q,options:b,resolvedLocale:N,runtimeState:{interview:H.getState(),support:V.getState()},supportRuntime:{ensureSession:V.ensureSession,getSessionSnapshot:V.getSessionSnapshot,invalidateSession:V.invalidateSession},isViewportSettling:B,viewport:P,widgetId:r})),q().then(Ce).catch(Ae)}}function Pe(){let e=++se;N=re(b.locale,b.messages),ne(b.locale,b.messages).then(t=>{F||e!==se||(N=t,J())}).catch(n=>{if(F||e!==se)return;let r=n instanceof Error?n.message:`CustomerAgent locale messages failed to load.`;console.error(`CustomerAgent locale messages failed to load.`,n),p.emit(t.ERROR,{message:r})})}function Ie(){N=re(b.locale,b.messages),P=_e(b.mobile),X()}function Le(e){S(e)!==S(b)&&(T=y(b))}function Y(){P=_e(b.mobile),X()}function Re(){return w&&!b.embedded&&P.presentation===`fullscreen`}function ze(){let e=window.navigator.platform,t=window.navigator.maxTouchPoints??0;return/iP(ad|hone|od)/.test(e)||e===`MacIntel`&&t>1}function Be(){if(de)return;let e=document.body,t=document.documentElement,n=window.scrollX,r=window.scrollY,i=ze()?`fixed`:`overflow`,a=Math.max(0,window.innerWidth-t.clientWidth),o=Number.parseFloat(window.getComputedStyle(e).paddingRight)||0;de={bodyLeft:e.style.left,bodyOverflow:e.style.overflow,bodyOverscrollBehavior:e.style.overscrollBehavior,bodyPaddingRight:e.style.paddingRight,bodyPosition:e.style.position,bodyRight:e.style.right,bodyTop:e.style.top,bodyWidth:e.style.width,htmlOverflow:t.style.overflow,htmlOverscrollBehavior:t.style.overscrollBehavior,htmlScrollbarGutter:t.style.scrollbarGutter,scrollX:n,scrollY:r,strategy:i},t.style.overflow=`hidden`,t.style.overscrollBehavior=`contain`,e.style.overflow=`hidden`,e.style.overscrollBehavior=`contain`,`scrollbarGutter`in t.style?t.style.scrollbarGutter=`stable`:a>0&&(e.style.paddingRight=`${o+a}px`),i===`fixed`&&(e.style.left=`-${n}px`,e.style.position=`fixed`,e.style.right=`0`,e.style.top=`-${r}px`,e.style.width=`100%`)}function Ve(){let e=de;if(!e)return;de=null;let t=document.body,n=document.documentElement;n.style.overflow=e.htmlOverflow,n.style.overscrollBehavior=e.htmlOverscrollBehavior,n.style.scrollbarGutter=e.htmlScrollbarGutter,t.style.left=e.bodyLeft,t.style.overflow=e.bodyOverflow,t.style.overscrollBehavior=e.bodyOverscrollBehavior,t.style.paddingRight=e.bodyPaddingRight,t.style.position=e.bodyPosition,t.style.right=e.bodyRight,t.style.top=e.bodyTop,t.style.width=e.bodyWidth,e.strategy===`fixed`&&window.scrollTo(e.scrollX,e.scrollY)}function X(){if(Re()){Be();return}Ve()}function He(e){return w&&!b.embedded&&e.presentation===`fullscreen`}function Ue(){j!==null&&(window.clearTimeout(j),j=null),B&&(B=!1,J())}function We(){j!==null&&window.clearTimeout(j),j=window.setTimeout(()=>{j=null,!F&&Ue()},be)}function Z(){A===null&&(A=window.requestAnimationFrame(()=>{if(A=null,F)return;let e=_e(b.mobile),t=He(e);P=e,X(),t?(B=!0,We()):(j!==null&&(window.clearTimeout(j),j=null),B=!1),J()}))}function Ge(){z||(z=!0,queueMicrotask(()=>{z=!1,!F&&(Je(),V.syncCachedSession(),H.syncAvailability())}))}function Ke(e){return{conversationId:e,conversationType:`support`,entryId:d(e),supportConversationId:e}}function qe(){return{activeEntryId:g(T.memoryRoute),activeTarget:T.requestedTarget,appId:b.app_id,isOpen:w,isReady:L===`emitted`,launcher:{targetConfigured:C!==void 0,targetConnected:!!E},support:V.getState(),interview:H.getState(),widgetId:r}}function Je(){let e=m(),n=`${e}::${b.app_id}`;M!==n&&(M=n,s(e).request(`/apps/${b.app_id}/public-config`).then(({data:e})=>{M===n&&(b=Fe(b,e),Pe(),Y(),J())}).catch(e=>{if(e instanceof h&&e.code===`NOT_FOUND`)return;let n=e instanceof Error?e.message:`CustomerAgent public config request failed.`;console.error(`CustomerAgent public config request failed.`,e),p.emit(t.ERROR,{message:n})}))}window.addEventListener(`resize`,Z),window.addEventListener(`orientationchange`,Z),window.visualViewport?.addEventListener(`resize`,Z),window.visualViewport?.addEventListener(`scroll`,Z);function Q(e){if(e?ie=!0:T=x(T),w===e){J();return}w=e,X(),U(),J(),p.emit(w?t.WIDGET_OPENED:t.WIDGET_CLOSED)}function $(e){T=_(b,T,e)}function Ye(e){T=ee(b,T,e),U()}let Xe={async chooseInvitation(e,t){await H.chooseInvitation(e,t)},async ensureInvitation(){return{invitationId:await H.ensureInvitation()}},hide(){Q(!1)},getInterviewState(){return H.getState()},getInterviewSession(){return H.getActiveSession()},async getSession(){return{conversationId:(await V.ensureSession()).conversationId}},getState:qe,getSupportState(){return V.getState()},identify(e){let t=b;b={...b,user:e},Le(t),Ie(),J(),Ge()},on(e,n){let r=p.on(e,n),i;return e===t.WIDGET_READY&&L===`emitted`&&(i=Oe(n)),()=>{i?.(),r()}},openEntry(e){$({entryId:e,type:`entry`}),Q(!0)},async loadInterviewReward(e){return await H.loadReward(e)},async sendInterviewMessage(e){await H.sendMessage(e)},setContext(e,t={}){b={...b,context:t.merge===!1?e:Ne(b.context,e),context_ready:t.ready??b.context_ready},Ie(),J(),Ge()},show(e){$(e),Q(!0)},shutdown(){F=!0,W===Xe&&(W=null,G=null),I?.unmount(),window.removeEventListener(`resize`,Z),window.removeEventListener(`orientationchange`,Z),window.visualViewport?.removeEventListener(`resize`,Z),window.visualViewport?.removeEventListener(`scroll`,Z),A!==null&&(window.cancelAnimationFrame(A),A=null),j!==null&&(window.clearTimeout(j),j=null),Ve(),k?.disconnect(),k=null,O!==null&&(window.cancelAnimationFrame(O),O=null),ge(),u.remove()},async startInvitation(e){let t=await H.startInvitation(e);return $({sessionId:t.sessionId,type:`interview`}),J(),{entryId:t.entryId,sessionId:t.sessionId}},async startInterview(){$({type:`interview`}),Q(!0);try{let e=await H.ensureInvitation(),t=await H.startInvitation(e);return $({sessionId:t.sessionId,type:`interview`}),J(),{entryId:t.entryId,sessionId:t.sessionId}}catch(e){throw $({type:`support`}),J(),e}},toggle(e){e&&$(e),Q(!w)},update(e){let t=b;Object.prototype.hasOwnProperty.call(e,`launcher`)&&(C=e.launcher?.target,xe()),b={...o({...b,...e,context:e.context??b.context},b.widgetId),embedded:b.embedded},Le(t),Pe(),Y(),J(),Ge()}};return W=Xe,G=n,Te(p),xe(),Pe(),X(),J(),Ge(),Xe}function Le(e){if(W&&e.app_id){let t=Me(e);return G?.key===t.key?(G.fingerprint!==t.fingerprint&&(W.update(e),G=t),e.open_on_init&&W.show(),W):Ie(e,t)}return Ie(e)}var Y={boot:Le,async chooseInvitation(e,t){await W?.chooseInvitation(e,t)},async ensureInvitation(){return W?await W.ensureInvitation():null},getInterviewState(){return W?.getInterviewState()??null},getInterviewSession(){return W?.getInterviewSession()??null},async getSession(){return W?await W.getSession():null},getState(){return W?.getState()??null},getSupportState(){return W?.getSupportState()??null},hide(){W?.hide()},identify(e){W?.identify(e)},on(e,t){if(W)return W.on(e,t);let n={active:!0,eventName:e,handler:t};return xe.push(n),()=>{n.active=!1,n.unsubscribe?.()}},setContext(e,t){W?.setContext(e,t)},openEntry(e){W?.openEntry(e)},async loadInterviewReward(e){return W?await W.loadInterviewReward(e):null},async sendInterviewMessage(e){await W?.sendInterviewMessage(e)},show(e){W?.show(e)},shutdown(){W?.shutdown(),W=null,G=null},async startInvitation(e){return W?await W.startInvitation(e):null},async startInterview(){return W?await W.startInterview():null},toggle(e){W?.toggle(e)},update(e){W?.update(e)}};function Re(e,...t){switch(e){case`boot`:return Y.boot(t[0]);case`chooseInvitation`:return Y.chooseInvitation(t[0],t[1]);case`ensureInvitation`:return Y.ensureInvitation();case`getSession`:return Y.getSession();case`getState`:return Y.getState();case`getSupportState`:return Y.getSupportState();case`getInterviewState`:return Y.getInterviewState();case`getInterviewSession`:return Y.getInterviewSession();case`hide`:return Y.hide();case`identify`:return Y.identify(t[0]);case`on`:return Y.on(t[0],t[1]);case`openEntry`:return Y.openEntry(t[0]);case`loadInterviewReward`:return Y.loadInterviewReward(t[0]);case`sendInterviewMessage`:return Y.sendInterviewMessage(t[0]);case`setContext`:return Y.setContext(t[0],t[1]);case`show`:return Y.show(t[0]);case`shutdown`:return Y.shutdown();case`startInvitation`:return Y.startInvitation(t[0]);case`startInterview`:return Y.startInterview();case`toggle`:return Y.toggle(t[0]);case`update`:return Y.update(t[0]);default:throw Error(`CustomerAgent received an unknown command: ${String(e)}.`)}}var ze=Object.assign(Re,Y),Be=Y.chooseInvitation,Ve=Y.ensureInvitation,X=Y.getInterviewState,He=Y.getInterviewSession,Ue=Y.getSession,We=Y.getState,Z=Y.getSupportState,Ge=Y.hide,Ke=Y.identify,qe=Y.on,Je=Y.openEntry,Q=Y.loadInterviewReward,$=Y.sendInterviewMessage,Ye=Y.setContext,Xe=Y.show,Ze=Y.shutdown,Qe=Y.startInvitation,$e=Y.startInterview,et=Y.toggle,tt=Y.update;export{ze as CustomerAgent,Le as boot,Be as chooseInvitation,Ve as ensureInvitation,He as getInterviewSession,X as getInterviewState,Ue as getSession,We as getState,Z as getSupportState,Ge as hide,Ke as identify,Q as loadInterviewReward,k as n,qe as on,Je as openEntry,A as r,$ as sendInterviewMessage,Ye as setContext,Xe as show,Ze as shutdown,$e as startInterview,Qe as startInvitation,O as t,et as toggle,tt as update};
|
|
1
|
+
import{n as e,t}from"./chunks/constants-Do-S47mc.js";import{r as n,t as r}from"./chunks/interviewTypes-Ch2NsXKB.js";import{i,t as a}from"./chunks/launcherAnchorStore-JMTZZGKC.js";import{_ as o,b as s,f as c,g as l,m as u,n as d,p as f,u as p,v as m,y as h}from"./chunks/routes-Dh46ka4-.js";import{a as g,c as _,d as v,i as y,l as b,n as x,o as S,r as ee,u as te}from"./chunks/navigationState-LdqG_Osx.js";import{n as ne,r as re}from"./chunks/i18n-Q8u2wtW4.js";var C=Object.create,w=Object.defineProperty,T=Object.getOwnPropertyDescriptor,ie=Object.getOwnPropertyNames,E=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty,O=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),k=(e,t)=>{let n={};for(var r in e)w(n,r,{get:e[r],enumerable:!0});return t||w(n,Symbol.toStringTag,{value:`Module`}),n},ae=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=ie(t),a=0,o=i.length,s;a<o;a++)s=i[a],!D.call(e,s)&&s!==n&&w(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=T(t,s))||r.enumerable});return e},A=(e,t,n)=>(n=e==null?{}:C(E(e)),ae(t||!e||!e.__esModule?w(n,`default`,{value:e,enumerable:!0}):n,e));function oe(){let e=s(m());return{async checkEligibility(t,n){let{data:r}=await e.request(`/interviews/eligibility`,{body:t,method:`POST`,signal:n?.signal});return r},async chooseInvitation(t,n){await e.request(`/interviews/invitations/${t}/choice`,{body:n,method:`PATCH`})},async createInvitation(t){let{data:n}=await e.request(`/interviews/invitations`,{body:t,method:`POST`});return n},async getReward(t){let{data:n}=await e.request(`/interviews/sessions/${t}/reward`);return n},async getSession(t,n){let{data:r}=await e.request(`/interviews/sessions/${t}`,{signal:n?.signal});return r},async sendMessage(t,n){let{data:r}=await e.request(`/interviews/sessions/${t}/messages`,{body:n,method:`POST`});return r},async startInvitation(t,n){let{data:r}=await e.request(`/interviews/invitations/${t}/start`,{body:n,method:`POST`});return r}}}function j(e){return typeof e==`string`&&e.trim()?e.trim():null}function M(e){return e.anonymous_id??e.user?.id}function N(e){return{...e.context,...e.user,userId:e.user?.id,visitorId:M(e)}}function P(e){return j(e.brand?.name)??`Customer Agent`}function F(e){return{appId:e.app_id,locale:e.locale,pageContext:e.context??{},userContext:N(e),visitorId:M(e)}}function se(e,t){return{appId:e.app_id,campaignId:t.campaignId,context:e.context??{},showRequestId:t.showRequestId,userContext:N(e),variantKey:t.variantKey,visitorId:M(e)}}function I(e){return e instanceof Error?e.message:`CustomerAgent interview request failed.`}function L(e,t){return JSON.stringify(e)===JSON.stringify(t)}function R(e,t){return e.status===n.ACTIVE?{entryId:`interview/session/${e.sessionId}`,sessionId:e.sessionId,status:r.ACTIVE,title:t}:{sessionId:e.sessionId,sessionStatus:e.status,status:r.TERMINAL}}function ce(e){return{conversationId:`interview/session/${e}`,conversationType:`interview`,entryId:`interview/session/${e}`,interviewSessionId:e}}function z(e){return typeof crypto<`u`&&`randomUUID`in crypto?`${e}-${crypto.randomUUID()}`:`${e}-${Date.now()}-${Math.random().toString(36).slice(2)}`}function le({api:e,buildContextPayload:t=p,cache:i,emitAvailable:a,emitConversationCreated:o,emitSessionStarted:s,emitStateChanged:c,getOptions:l}){let d=new Set,f={status:r.IDLE},m=0,h=null,g=null,_=null,v=null,y=null,b=null,x=null;function S(e){L(f,e)||(f=e,c(f))}function ee(e,t){y=t,b=null,x=null;let n={body:t.invitation.body,campaignId:t.campaignId,laterCta:t.invitation.laterCta,startCta:t.invitation.startCta,status:r.AVAILABLE,title:t.invitation.title};S(n),d.has(e)||(d.add(e),a(n))}function te(){y=null,b=null,x=null,S({status:r.IDLE})}function ne(){v?.abort(),v=null,g=null,_=null}async function re(t,n,i){let a=l(),o=await e.checkEligibility(F(a),{signal:i});if(!(n!==m||t!==u(l()))){if(h=t,!o.eligible||o.status&&o.status!==r.AVAILABLE||!o.campaignId||!o.showRequestId||!o.invitation){y=null,b=null,x=null,S({status:r.UNAVAILABLE});return}ee(t,o)}}async function C(){let t=l(),a=u(t);if(!a){m+=1,ne(),h=null,te();return}let o=g!==null&&_!==a;if(o&&ne(),!o&&h===a&&f.status!==r.ERROR)return;if(g&&_===a){await g;return}ne();let s=++m,c=new AbortController;v=c,_=a,g=(async()=>{S({status:r.CHECKING});try{let r=i.read(t);if(r)try{let t=await e.getSession(r.sessionId,{signal:c.signal});if(s!==m||a!==u(l()))return;if(t.status!==n.ACTIVE){x=null,i.clear(l()),await re(a,s,c.signal);return}x=t,S(R(t,r.title)),h=a;return}catch{if(s!==m||a!==u(l()))return;x=null,i.clear(l())}await re(a,s,c.signal)}catch(e){if(s!==m||a!==u(l()))return;x=null,S({error:{message:I(e)},status:r.ERROR})}finally{_===a&&(g=null,_=null),v===c&&(v=null)}})(),await g}return{async chooseInvitation(t,n){await e.chooseInvitation(t,{choice:n})},async ensureInvitation(){let t=u(l());if(!t)throw m+=1,ne(),h=null,te(),Error(`No interview invitation is available.`);if((!y||f.status!==r.AVAILABLE)&&await C(),!y||f.status!==r.AVAILABLE)throw Error(`No interview invitation is available.`);if(b)return b;let n=await e.createInvitation(se(l(),y));return t===u(l())&&(b=n.invitationId),n.invitationId},getState(){return f.status===r.ACTIVE?{...f,title:j(l().brand?.name)??f.title??P(l())}:f},getActiveSession(){return x},async loadReward(t=x?.sessionId){if(!t)throw Error(`Cannot load an interview reward before the session starts.`);return await e.getReward(t)},syncAvailability:C,async startInvitation(r){let a=l(),c=u(a),d=await e.startInvitation(r,t(a));if(!c||c!==u(l()))return{entryId:`interview/session/${d.sessionId}`,session:d,sessionId:d.sessionId};x=d,d.status===n.ACTIVE?i.write(a,{entryId:`interview/session/${d.sessionId}`,priority:20,sessionId:d.sessionId,title:P(a)}):i.clear(a),S(R(d,P(a)));let f=ce(d.sessionId);return o?.(f),s?.(f),{entryId:`interview/session/${d.sessionId}`,session:d,sessionId:d.sessionId}},async sendMessage(t){if(!x||f.status!==r.ACTIVE)throw Error(`Cannot send an interview message before the session starts.`);let a=u(l()),o=x.sessionId,s=await e.sendMessage(o,{clientMessageId:z(`interview-message`),content:t,locale:l().locale});a!==u(l())||f.status!==r.ACTIVE||(x={...x,messages:[...x.messages,{content:t,createdAt:new Date().toISOString(),id:z(`interview-user`),role:`user`},{content:s.assistantMessage,createdAt:new Date().toISOString(),id:z(`interview-assistant`),role:`assistant`}],status:s.sessionStatus},s.sessionStatus!==n.ACTIVE&&i.clear(l()),S(R(x,P(l()))))}}}function ue(e){let t=s(e);return{async startSession(e,n){let{data:r}=await t.request(`/session`,{body:{...e,conversationId:n??void 0},conversationId:n,method:`POST`});return{conversationId:r.conversationId,messages:r.messages}},async updateContext(e,n){let{data:r}=await t.request(`/context`,{body:e,conversationId:n,method:`PATCH`});return r}}}function B(e){return e instanceof Error?e.message:`CustomerAgent support session request failed.`}function de(e){return e instanceof h&&e.code===`NOT_FOUND`}function V(e,t){return JSON.stringify(e)===JSON.stringify(t)}function H(e){return Array.isArray(e)?`[${e.map(e=>H(e)).join(`,`)}]`:e&&typeof e==`object`?`{${Object.entries(e).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${H(t)}`).join(`,`)}}`:JSON.stringify(e)}function fe({api:e,buildContextPayload:t=p,cache:n,emitConversationCreated:r,emitStateChanged:i,getOptions:a,onSessionReady:o}){let s={status:b.IDLE},c=0,l=null,u=null,d=null,f=null,m=null,h=null,g=null,_=null;function y(e){V(s,e)||(s=e,i(s))}async function x(n){let r=t(a());return await e.startSession(r,n)}async function S(n,r,i){if(!e.updateContext)return;let o={...t(n),conversationId:i},s=H({key:r,payload:o});_!==s&&await e.updateContext(o,i).then(()=>{r===v(a())&&(_=s)}).catch(()=>void 0)}return{async ensureSession(){let e=a(),t=v(e);if(s.status===b.READY&&u===t)return l??{conversationId:s.conversationId,messages:[]};if(m&&h===t){let e=await m;if(e)return e}if(d&&f===t)return await d;let i=n.read(e),p=++c;y({status:i?b.REFRESHING:b.STARTING}),f=t,d=(async()=>{try{return await x(i)}catch(t){if(!i||!de(t))throw t;return n.clear(e),await x(null)}})();try{let e=await d;return p!==c||t!==v(a())?e:(l=e,u=t,n.write(a(),e.conversationId),o?.(a(),e),(!i||i!==e.conversationId)&&r(e.conversationId),y({conversationId:e.conversationId,status:b.READY}),e)}catch(r){throw p!==c||t!==v(a())?r:(i&&n.clear(e),y({error:{message:B(r)},status:b.ERROR}),r)}finally{f===t&&(d=null,f=null)}},getState(){return s},getSessionSnapshot(){return u===v(a())?l:null},invalidateSession(){let e=a(),t=v(e);c+=1,n.clear(e),u===t&&(l=null,u=null),f===t&&(d=null,f=null),h===t&&(m=null,h=null),g=null,_=null,y({status:b.IDLE})},async syncCachedSession(){let r=a(),i=v(r);if(s.status===b.READY&&u===i){g=i,await S(r,i,s.conversationId);return}if(g===i&&s.status!==b.ERROR)return;if(m&&h===i){await m;return}if(d&&f===i)return;let p=n.read(r);if(!p){g=i,y({status:b.IDLE});return}let _=++c;h=i,m=(async()=>{y({status:b.REFRESHING});try{let s=await e.startSession(t(r),p);return _!==c||i!==v(a())?null:(l=s,u=i,n.write(a(),s.conversationId),o?.(a(),s),y({conversationId:s.conversationId,status:b.READY}),g=i,await S(a(),i,s.conversationId),s)}catch(e){return _!==c||i!==v(a())?null:(n.clear(a()),de(e)?(u===i&&(l=null,u=null),y({status:b.IDLE}),g=i,null):(y({error:{message:B(e)},status:b.ERROR}),null))}finally{h===i&&(m=null,h=null)}})(),await m}}}function pe(e){let t=new EventTarget;return{emit(...n){let[r,i={}]=n,a={...e(),...i,timestamp:new Date().toISOString(),type:r};t.dispatchEvent(new CustomEvent(r,{detail:a}))},on(e,n){let r=e=>n(e.detail);return t.addEventListener(e,r),()=>t.removeEventListener(e,r)}}}function U(e){let t=e.tagName.toLowerCase();return t===`button`||t===`input`||t===`select`||t===`textarea`||t===`summary`||t===`a`&&e.hasAttribute(`href`)}function me(e,t,n){if(n===void 0){delete e[t];return}e[t]=n}function he(e,t){let n=t.isOpen?`open`:`closed`;e.setAttribute(`aria-expanded`,t.isOpen?`true`:`false`),e.dataset.state=n,e.dataset.customerAgentState=n,me(e.dataset,`customerAgentActiveEntry`,t.activeEntryId),me(e.dataset,`customerAgentActiveKind`,t.activeKind),e.dataset.customerAgentHasInvitation=t.hasInvitation?`true`:`false`,e.dataset.customerAgentHasUnread=t.hasUnread?`true`:`false`,me(e.dataset,`customerAgentViewport`,t.viewport),delete e.dataset.customerAgentLauncher,U(e)||(e.setAttribute(`role`,`button`),e.hasAttribute(`tabindex`)||(e.tabIndex=0))}function ge(){let e=document.createElement(`div`);e.style.cssText=[`position: fixed`,`visibility: hidden`,`height: env(safe-area-inset-bottom)`,`pointer-events: none`].join(`;`),document.body.appendChild(e);let t=Number.parseFloat(getComputedStyle(e).height)||0;return e.remove(),t}function _e(e={}){let t=window.visualViewport,n=window.innerWidth,r=window.innerHeight,i=t?.height??r,a=e.mode!==`auto`&&e.mode!==void 0?!0:n<=640,o=a?e.mode===`bottom-sheet`?`bottom-sheet`:`fullscreen`:`desktop`,s=Math.max(0,t?.offsetTop??0);return{height:r,isMobile:a,keyboardInset:Math.max(0,r-i-s),mode:a?`mobile`:`desktop`,offsetTop:s,presentation:o,safeAreaBottom:ge(),visualHeight:i,width:n}}e();var W=null,G=null,K=null,ve=null,ye=`customer-agent-widget`,be=260,xe=[],Se=new WeakMap,Ce=0;async function we(){return K||(ve??=Promise.all([import(`./chunks/react-CKmEJ8Ba.js`).then(e=>A(e.t(),1)),import(`./chunks/client-duvjg9sB.js`).then(e=>A(e.t(),1)),import(`./chunks/App-B4dn3hns.js`)]).then(([e,t,n])=>(K={createElement:e.createElement,createRoot:t.createRoot,preloadWidgetPanelShell:n.preloadWidgetPanelShell,WidgetApp:n.WidgetApp},K)).catch(e=>{throw ve=null,e}),await ve)}function Te(e){let t=xe.splice(0);for(let n of t)n.active&&(n.unsubscribe=e.on(n.eventName,n.handler))}function Ee(){document.getElementById(ye)?.remove()}function De(e){return typeof e==`string`?document.querySelector(e)??document.body:e??document.body}function Oe(e){let t=Se.get(e);if(t)return t;let n=`element-${++Ce}`;return Se.set(e,n),n}function ke(e){return typeof e==`string`?document.querySelector(e):e??null}function Ae(e){return Object.prototype.toString.call(e)===`[object Object]`}function q(e){return Array.isArray(e)?`[${e.map(e=>q(e)).join(`,`)}]`:e&&typeof e==`object`?`{${Object.entries(e).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${JSON.stringify(e)}:${q(t)}`).join(`,`)}}`:JSON.stringify(e)}function je(e){return typeof e==`string`?`selector:${e}`:e?`element:${Oe(e)}`:null}function Me(e){let t=Oe(De(e.mount)),{launcher:n,mount:r,...i}=e;return{fingerprint:q({...i,launcher:n?{...n,target:je(n.target)}:void 0,mount:t}),key:q({appId:e.app_id,mount:t})}}function Ne(e,t){let n={...e};for(let[r,i]of Object.entries(t)){let t=e[r];n[r]=Ae(t)&&Ae(i)?Ne(t,i):i}return n}function J(e){return typeof e==`string`&&e.trim()?e.trim():null}function Pe(e,t){let n=t?.replace(`_`,`-`),r=n?.split(`-`)[0];return(n?e[n]:void 0)??(r?e[r]:void 0)??e.en??Object.values(e)[0]}function Fe(e,t){let n=J(t.branding.name)??J(t.branding.agentName)??J(t.branding.workspaceName),r=J(t.branding.primaryColor)??J(t.branding.primary_color),i=Pe(t.welcomeMessage,e.locale);return{...e,brand:{...e.brand,name:e.brand?.name??n??e.brand?.name},messages:{...i?{welcome_message:i}:{},...e.messages},theme:{...e.theme,primaryColor:e.theme?.primaryColor??r??e.theme?.primaryColor}}}function Ie(e,n=Me(e)){W?.shutdown(),Ee();let r=l(),u=document.createElement(`div`),p=pe(()=>({appId:b.app_id,widgetId:r})),v=De(e.mount),b=o(e,r),C=e.launcher?.target,w=!!b.open_on_init,T=y(b),ie=w,E=null,D=null,O=null,k=null,ae=null,A=null,j=null,M=null,N=re(b.locale,b.messages),P=_e(b.mobile),F=!1,se=0,I=null,L=`idle`,R=null,ce=!1,z=!1,B=!1,de=null,V=fe({api:ue(m()),cache:te(),emitConversationCreated(e){p.emit(t.CONVERSATION_CREATED,{...Ke(e)})},emitStateChanged(e){p.emit(t.SUPPORT_STATE_CHANGED,{support:e}),U(),J()},getOptions(){return b},onSessionReady(e,t){c.hydrateSession(e,t)}}),H=le({api:oe(),cache:f(),emitAvailable(e){p.emit(t.INTERVIEW_AVAILABLE,e)},emitConversationCreated(e){p.emit(t.CONVERSATION_CREATED,e)},emitSessionStarted(e){p.emit(t.INTERVIEW_SESSION_STARTED,e)},emitStateChanged(e){p.emit(t.INTERVIEW_STATE_CHANGED,{interview:e}),U(),J()},getOptions(){return b}});u.id=ye,u.className=`customer-agent-namespace`,u.dataset.customerAgent=`container`,v.appendChild(u);function U(){if(!E)return;let e=g(T.memoryRoute),t=T.requestedTarget?.type===`entry`?e?.split(`/`)[0]:T.requestedTarget?.type??e?.split(`/`)[0]??`support`;he(E,{activeEntryId:e,activeKind:t,hasInvitation:!1,hasUnread:!1,isOpen:w,targetConfigured:C!==void 0,targetConnected:!!E,viewport:P.mode})}function me(){!E||!D||(D.ariaExpanded===null?E.removeAttribute(`aria-expanded`):E.setAttribute(`aria-expanded`,D.ariaExpanded),D.role===null?E.removeAttribute(`role`):E.setAttribute(`role`,D.role),D.state===null?delete E.dataset.state:E.dataset.state=D.state,D.tabIndex===null?E.removeAttribute(`tabindex`):E.setAttribute(`tabindex`,D.tabIndex))}function ge(){ae?.(),ae=null,a(E),me(),E=null,D=null}function ve(){typeof C!=`string`||O!==null||(O=window.requestAnimationFrame(()=>{if(O=null,!(F||typeof C!=`string`)){if(ke(C)===E){U();return}J()}}))}function xe(){if(k?.disconnect(),k=null,typeof C!=`string`||typeof MutationObserver>`u`)return;let e=document.documentElement??document.body;e&&(k=new MutationObserver(ve),k.observe(e,{attributes:!0,childList:!0,subtree:!0}))}function Se(){let e=ke(C);if(e===E){U();return}if(ge(),!e)return;let t=e;E=t,i(t),D={ariaExpanded:t.getAttribute(`aria-expanded`),role:t.getAttribute(`role`),state:t.dataset.state??null,tabIndex:t.getAttribute(`tabindex`)};function n(e){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()}function r(e){n(e),Q(!w)}function a(e){e.key!==`Enter`&&e.key!==` `||(n(e),Q(!w))}t.addEventListener(`click`,r,{capture:!0}),t.addEventListener(`keydown`,a,{capture:!0}),ae=()=>{t.removeEventListener(`click`,r,{capture:!0}),t.removeEventListener(`keydown`,a,{capture:!0})},U()}function Ce(){L===`idle`&&(L=`queued`,queueMicrotask(()=>{F||(L=`emitted`,p.emit(t.WIDGET_READY))}))}function Oe(e){let n=!0;return queueMicrotask(()=>{F||!n||e({appId:b.app_id,timestamp:new Date().toISOString(),type:t.WIDGET_READY,widgetId:r})}),()=>{n=!1}}function Ae(e){let n=e instanceof Error?e.message:`CustomerAgent widget UI failed to load.`;console.error(`CustomerAgent widget UI failed to load.`,e),p.emit(t.ERROR,{message:n})}function q(){return R??=we().then(async e=>{F||(I??=e.createRoot(u),await e.preloadWidgetPanelShell())}).catch(e=>{throw R=null,e}),R}function je(){if(!F){if(!E||ie||w){J();return}if(!K||!I){J();return}I.render(K.createElement(K.WidgetApp,{activeTarget:T.requestedTarget,hasPanel:!1,hasCustomLauncher:!0,eventBus:p,interviewRuntime:{chooseInvitation:H.chooseInvitation,ensureInvitation:H.ensureInvitation,getActiveSession:H.getActiveSession,startInvitation:H.startInvitation},isOpen:!1,launcherTargetElement:E,memoryRoute:T.memoryRoute,onMemoryRouteChange:Ye,onOpenChange:Q,options:b,resolvedLocale:N,runtimeState:{interview:H.getState(),support:V.getState()},supportRuntime:{ensureSession:V.ensureSession,getSessionSnapshot:V.getSessionSnapshot,invalidateSession:V.invalidateSession},isViewportSettling:B,viewport:P,widgetId:r})),Ce()}}function J(){if(!F){if(Se(),E&&!ie&&!w){ce=!1,q().then(je).catch(Ae);return}if(!K||!I){ce=!0,we().then(e=>{F||(I??=e.createRoot(u),ce&&(ce=!1,J()))}).catch(e=>{Ae(e)});return}I.render(K.createElement(K.WidgetApp,{activeTarget:T.requestedTarget,hasPanel:ie,hasCustomLauncher:!!E,eventBus:p,interviewRuntime:{chooseInvitation:H.chooseInvitation,ensureInvitation:H.ensureInvitation,getActiveSession:H.getActiveSession,startInvitation:H.startInvitation},isOpen:w,launcherTargetElement:E,memoryRoute:T.memoryRoute,onMemoryRouteChange:Ye,onOpenChange:Q,options:b,resolvedLocale:N,runtimeState:{interview:H.getState(),support:V.getState()},supportRuntime:{ensureSession:V.ensureSession,getSessionSnapshot:V.getSessionSnapshot,invalidateSession:V.invalidateSession},isViewportSettling:B,viewport:P,widgetId:r})),q().then(Ce).catch(Ae)}}function Pe(){let e=++se;N=re(b.locale,b.messages),ne(b.locale,b.messages).then(t=>{F||e!==se||(N=t,J())}).catch(n=>{if(F||e!==se)return;let r=n instanceof Error?n.message:`CustomerAgent locale messages failed to load.`;console.error(`CustomerAgent locale messages failed to load.`,n),p.emit(t.ERROR,{message:r})})}function Ie(){N=re(b.locale,b.messages),P=_e(b.mobile),X()}function Le(e){S(e)!==S(b)&&(T=y(b))}function Y(){P=_e(b.mobile),X()}function Re(){return w&&!b.embedded&&P.presentation===`fullscreen`}function ze(){let e=window.navigator.platform,t=window.navigator.maxTouchPoints??0;return/iP(ad|hone|od)/.test(e)||e===`MacIntel`&&t>1}function Be(){if(de)return;let e=document.body,t=document.documentElement,n=window.scrollX,r=window.scrollY,i=ze()?`fixed`:`overflow`,a=Math.max(0,window.innerWidth-t.clientWidth),o=Number.parseFloat(window.getComputedStyle(e).paddingRight)||0;de={bodyLeft:e.style.left,bodyOverflow:e.style.overflow,bodyOverscrollBehavior:e.style.overscrollBehavior,bodyPaddingRight:e.style.paddingRight,bodyPosition:e.style.position,bodyRight:e.style.right,bodyTop:e.style.top,bodyWidth:e.style.width,htmlOverflow:t.style.overflow,htmlOverscrollBehavior:t.style.overscrollBehavior,htmlScrollbarGutter:t.style.scrollbarGutter,scrollX:n,scrollY:r,strategy:i},t.style.overflow=`hidden`,t.style.overscrollBehavior=`contain`,e.style.overflow=`hidden`,e.style.overscrollBehavior=`contain`,`scrollbarGutter`in t.style?t.style.scrollbarGutter=`stable`:a>0&&(e.style.paddingRight=`${o+a}px`),i===`fixed`&&(e.style.left=`-${n}px`,e.style.position=`fixed`,e.style.right=`0`,e.style.top=`-${r}px`,e.style.width=`100%`)}function Ve(){let e=de;if(!e)return;de=null;let t=document.body,n=document.documentElement;n.style.overflow=e.htmlOverflow,n.style.overscrollBehavior=e.htmlOverscrollBehavior,n.style.scrollbarGutter=e.htmlScrollbarGutter,t.style.left=e.bodyLeft,t.style.overflow=e.bodyOverflow,t.style.overscrollBehavior=e.bodyOverscrollBehavior,t.style.paddingRight=e.bodyPaddingRight,t.style.position=e.bodyPosition,t.style.right=e.bodyRight,t.style.top=e.bodyTop,t.style.width=e.bodyWidth,e.strategy===`fixed`&&window.scrollTo(e.scrollX,e.scrollY)}function X(){if(Re()){Be();return}Ve()}function He(e){return w&&!b.embedded&&e.presentation===`fullscreen`}function Ue(){j!==null&&(window.clearTimeout(j),j=null),B&&(B=!1,J())}function We(){j!==null&&window.clearTimeout(j),j=window.setTimeout(()=>{j=null,!F&&Ue()},be)}function Z(){A===null&&(A=window.requestAnimationFrame(()=>{if(A=null,F)return;let e=_e(b.mobile),t=He(e);P=e,X(),t?(B=!0,We()):(j!==null&&(window.clearTimeout(j),j=null),B=!1),J()}))}function Ge(){z||(z=!0,queueMicrotask(()=>{z=!1,!F&&(Je(),V.syncCachedSession(),H.syncAvailability())}))}function Ke(e){return{conversationId:e,conversationType:`support`,entryId:d(e),supportConversationId:e}}function qe(){return{activeEntryId:g(T.memoryRoute),activeTarget:T.requestedTarget,appId:b.app_id,isOpen:w,isReady:L===`emitted`,launcher:{targetConfigured:C!==void 0,targetConnected:!!E},support:V.getState(),interview:H.getState(),widgetId:r}}function Je(){let e=m(),n=`${e}::${b.app_id}`;M!==n&&(M=n,s(e).request(`/apps/${b.app_id}/public-config`).then(({data:e})=>{M===n&&(b=Fe(b,e),Pe(),Y(),J())}).catch(e=>{if(e instanceof h&&e.code===`NOT_FOUND`)return;let n=e instanceof Error?e.message:`CustomerAgent public config request failed.`;console.error(`CustomerAgent public config request failed.`,e),p.emit(t.ERROR,{message:n})}))}window.addEventListener(`resize`,Z),window.addEventListener(`orientationchange`,Z),window.visualViewport?.addEventListener(`resize`,Z),window.visualViewport?.addEventListener(`scroll`,Z);function Q(e){if(e?ie=!0:T=x(T),w===e){J();return}w=e,X(),U(),J(),p.emit(w?t.WIDGET_OPENED:t.WIDGET_CLOSED)}function $(e){T=_(b,T,e)}function Ye(e){T=ee(b,T,e),U()}let Xe={async chooseInvitation(e,t){await H.chooseInvitation(e,t)},async ensureInvitation(){return{invitationId:await H.ensureInvitation()}},hide(){Q(!1)},getInterviewState(){return H.getState()},getInterviewSession(){return H.getActiveSession()},async getSession(){return{conversationId:(await V.ensureSession()).conversationId}},getState:qe,getSupportState(){return V.getState()},identify(e){let t=b;b={...b,user:e},Le(t),Ie(),J(),Ge()},on(e,n){let r=p.on(e,n),i;return e===t.WIDGET_READY&&L===`emitted`&&(i=Oe(n)),()=>{i?.(),r()}},openEntry(e){$({entryId:e,type:`entry`}),Q(!0)},async loadInterviewReward(e){return await H.loadReward(e)},async sendInterviewMessage(e){await H.sendMessage(e)},setContext(e,t={}){b={...b,context:t.merge===!1?e:Ne(b.context,e),context_ready:t.ready??b.context_ready},Ie(),J(),Ge()},show(e){$(e),Q(!0)},shutdown(){F=!0,W===Xe&&(W=null,G=null),I?.unmount(),window.removeEventListener(`resize`,Z),window.removeEventListener(`orientationchange`,Z),window.visualViewport?.removeEventListener(`resize`,Z),window.visualViewport?.removeEventListener(`scroll`,Z),A!==null&&(window.cancelAnimationFrame(A),A=null),j!==null&&(window.clearTimeout(j),j=null),Ve(),k?.disconnect(),k=null,O!==null&&(window.cancelAnimationFrame(O),O=null),ge(),u.remove()},async startInvitation(e){let t=await H.startInvitation(e);return $({sessionId:t.sessionId,type:`interview`}),J(),{entryId:t.entryId,sessionId:t.sessionId}},async startInterview(){$({type:`interview`}),Q(!0);try{let e=await H.ensureInvitation(),t=await H.startInvitation(e);return $({sessionId:t.sessionId,type:`interview`}),J(),{entryId:t.entryId,sessionId:t.sessionId}}catch(e){throw $({type:`support`}),J(),e}},toggle(e){e&&$(e),Q(!w)},update(e){let t=b;Object.prototype.hasOwnProperty.call(e,`launcher`)&&(C=e.launcher?.target,xe()),b={...o({...b,...e,context:e.context??b.context},b.widgetId),embedded:b.embedded},Le(t),Pe(),Y(),J(),Ge()}};return W=Xe,G=n,Te(p),xe(),Pe(),X(),J(),Ge(),Xe}function Le(e){if(W&&e.app_id){let t=Me(e);return G?.key===t.key?(G.fingerprint!==t.fingerprint&&(W.update(e),G=t),e.open_on_init&&W.show(),W):Ie(e,t)}return Ie(e)}var Y={boot:Le,async chooseInvitation(e,t){await W?.chooseInvitation(e,t)},async ensureInvitation(){return W?await W.ensureInvitation():null},getInterviewState(){return W?.getInterviewState()??null},getInterviewSession(){return W?.getInterviewSession()??null},async getSession(){return W?await W.getSession():null},getState(){return W?.getState()??null},getSupportState(){return W?.getSupportState()??null},hide(){W?.hide()},identify(e){W?.identify(e)},on(e,t){if(W)return W.on(e,t);let n={active:!0,eventName:e,handler:t};return xe.push(n),()=>{n.active=!1,n.unsubscribe?.()}},setContext(e,t){W?.setContext(e,t)},openEntry(e){W?.openEntry(e)},async loadInterviewReward(e){return W?await W.loadInterviewReward(e):null},async sendInterviewMessage(e){await W?.sendInterviewMessage(e)},show(e){W?.show(e)},shutdown(){W?.shutdown(),W=null,G=null},async startInvitation(e){return W?await W.startInvitation(e):null},async startInterview(){return W?await W.startInterview():null},toggle(e){W?.toggle(e)},update(e){W?.update(e)}};function Re(e,...t){switch(e){case`boot`:return Y.boot(t[0]);case`chooseInvitation`:return Y.chooseInvitation(t[0],t[1]);case`ensureInvitation`:return Y.ensureInvitation();case`getSession`:return Y.getSession();case`getState`:return Y.getState();case`getSupportState`:return Y.getSupportState();case`getInterviewState`:return Y.getInterviewState();case`getInterviewSession`:return Y.getInterviewSession();case`hide`:return Y.hide();case`identify`:return Y.identify(t[0]);case`on`:return Y.on(t[0],t[1]);case`openEntry`:return Y.openEntry(t[0]);case`loadInterviewReward`:return Y.loadInterviewReward(t[0]);case`sendInterviewMessage`:return Y.sendInterviewMessage(t[0]);case`setContext`:return Y.setContext(t[0],t[1]);case`show`:return Y.show(t[0]);case`shutdown`:return Y.shutdown();case`startInvitation`:return Y.startInvitation(t[0]);case`startInterview`:return Y.startInterview();case`toggle`:return Y.toggle(t[0]);case`update`:return Y.update(t[0]);default:throw Error(`CustomerAgent received an unknown command: ${String(e)}.`)}}var ze=Object.assign(Re,Y),Be=Y.chooseInvitation,Ve=Y.ensureInvitation,X=Y.getInterviewState,He=Y.getInterviewSession,Ue=Y.getSession,We=Y.getState,Z=Y.getSupportState,Ge=Y.hide,Ke=Y.identify,qe=Y.on,Je=Y.openEntry,Q=Y.loadInterviewReward,$=Y.sendInterviewMessage,Ye=Y.setContext,Xe=Y.show,Ze=Y.shutdown,Qe=Y.startInvitation,$e=Y.startInterview,et=Y.toggle,tt=Y.update;export{ze as CustomerAgent,Le as boot,Be as chooseInvitation,Ve as ensureInvitation,He as getInterviewSession,X as getInterviewState,Ue as getSession,We as getState,Z as getSupportState,Ge as hide,Ke as identify,Q as loadInterviewReward,k as n,qe as on,Je as openEntry,A as r,$ as sendInterviewMessage,Ye as setContext,Xe as show,Ze as shutdown,$e as startInterview,Qe as startInvitation,O as t,et as toggle,tt as update};
|
package/sdk.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(){var e=`0.
|
|
1
|
+
(function(){var e=`0.6.0-test.67b72921d3c0`;function t(){typeof window>`u`||(window.__customerAgentVersion=e)}var n=`__customerAgentRuntime`,r=`__customerAgentScript`,i=typeof document<`u`&&document.currentScript instanceof HTMLScriptElement?document.currentScript:null,a=[];t();var o=`idle`,s=null,c=null;function l(e){return typeof e==`object`&&!!e}function u(e){return Array.prototype.slice.call(e)}function d(){let e=i?.src??new URL(`sdk.js`,window.location.href).toString();return new URL(`runtime.es.js`,e).toString()}function f(e){let t=e.CustomerAgent??e.default;if(typeof t!=`function`)throw Error(`CustomerAgent widget runtime module did not export CustomerAgent.`);return Object.assign(t,{[n]:!0})}function p(){if(!s)return;let e=a.splice(0);for(let t of e)t(s)}async function m(){return o===`ready`&&s?s:o===`loading`&&c?await c:(o=`loading`,c=import(d()).then(e=>(s=f(e),window.CustomerAgent=s,o=`ready`,p(),s)).catch(e=>{throw o=`failed`,c=null,console.error(`CustomerAgent widget runtime failed to load.`,e),e}),await c)}function h(e){if(s){e(s);return}a.push(e),m().catch(()=>{})}function g(e,t){h(n=>{let r=n[e];typeof r==`function`&&r(...t)})}function _(e){return h(t=>{t(`boot`,e)}),R}async function v(){return await(await m()).ensureInvitation()}async function y(e){return await(await m()).startInvitation(e)}async function b(){return await(await m()).startInterview()}async function x(e,t){await(await m()).chooseInvitation(e,t)}async function S(e){await(await m()).sendInterviewMessage(e)}async function C(e){return await(await m()).loadInterviewReward(e)}function w(e){g(`update`,[e])}function T(e){g(`show`,[e])}function E(){g(`hide`,[])}function D(e){g(`toggle`,[e])}function O(e){g(`openEntry`,[e])}function k(){g(`shutdown`,[])}function A(e){g(`identify`,[e])}function j(e,t){g(`setContext`,[e,t])}async function M(){return await(await m()).getSession()}function N(){return s?.getSupportState()??null}function P(){return s?.getInterviewState()??null}function F(){return s?.getInterviewSession()??null}function I(){return s?.getState()??null}function L(e,t){let n=!0,r=()=>{};return h(i=>{n&&(r=i.on(e,t))}),()=>{n=!1,r()}}var R={chooseInvitation:x,async ensureInvitation(){let e=await v();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getInterviewState(){let e=P();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getInterviewSession(){return F()},async getSession(){let e=await M();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getState(){let e=I();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},getSupportState(){let e=N();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},hide:E,identify:A,on:L,openEntry:O,loadInterviewReward:C,sendInterviewMessage:S,setContext:j,show:T,shutdown:k,async startInterview(){let e=await b();if(!e)throw Error(`CustomerAgent widget is not initialized.`);return e},async startInvitation(e){let t=await y(e);if(!t)throw Error(`CustomerAgent widget is not initialized.`);return t},toggle:D,update:w};function z(e,...t){switch(e){case`boot`:return _(t[0]);case`chooseInvitation`:return x(t[0],t[1]);case`ensureInvitation`:return v();case`getSession`:return M();case`getState`:return I();case`getSupportState`:return N();case`getInterviewState`:return P();case`getInterviewSession`:return F();case`hide`:return E();case`identify`:return A(t[0]);case`on`:return L(t[0],t[1]);case`openEntry`:return O(t[0]);case`loadInterviewReward`:return C(t[0]);case`sendInterviewMessage`:return S(t[0]);case`setContext`:return j(t[0],t[1]);case`show`:return T(t[0]);case`shutdown`:return k();case`startInvitation`:return y(t[0]);case`startInterview`:return b();case`toggle`:return D(t[0]);case`update`:return w(t[0]);default:throw Error(`CustomerAgent received an unknown command: ${String(e)}.`)}}var B=Object.assign(z,{[r]:!0,boot:_,chooseInvitation:x,ensureInvitation:v,getInterviewState:P,getInterviewSession:F,getSession:M,getState:I,getSupportState:N,hide:E,identify:A,on:L,openEntry:O,loadInterviewReward:C,sendInterviewMessage:S,setContext:j,show:T,shutdown:k,startInterview:b,startInvitation:y,toggle:D,update:w});function V(e){if(!l(e))return!1;let t=e.q;if(!Array.isArray(t)||t.length===0)return!1;for(let e of t)z(...u(e));return!0}function H(){if(!i)return;let e=i.dataset.appId;e&&B(`boot`,{app_id:e,open_on_init:i.dataset.open===`true`,position:i.dataset.position===`bottom-left`?`bottom-left`:`bottom-right`})}if(typeof window<`u`){let e=window.CustomerAgent;window.CustomerAgent=B,V(e)||H()}})();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CustomerAgentInterviewState, InterviewInvitationChoice, InterviewSessionResponse } from '../runtime/interview/interviewTypes';
|
|
2
2
|
import { CustomerAgentSupportState } from '../runtime/support/supportTypes';
|
|
3
|
-
import { WidgetContextJson, WidgetLauncherOptions, WidgetLauncherTarget, WidgetLocaleMessages, WidgetMobileOptions, WidgetTheme, WidgetUser } from '../types';
|
|
3
|
+
import { WidgetContextJson, WidgetHeaderOptions, WidgetLauncherOptions, WidgetLauncherTarget, WidgetLocaleMessages, WidgetMobileOptions, WidgetTheme, WidgetUser } from '../types';
|
|
4
4
|
import { CustomerAgentEventMap, CustomerAgentEventName } from './events';
|
|
5
5
|
export type { CustomerAgentInterviewState } from '../runtime/interview/interviewTypes';
|
|
6
6
|
export type { InterviewInvitationAction as CustomerAgentInterviewInvitationAction, InterviewInvitationChoice as CustomerAgentInterviewInvitationChoice } from '../runtime/interview/interviewTypes';
|
|
@@ -14,6 +14,7 @@ export type CustomerAgentOptions = {
|
|
|
14
14
|
};
|
|
15
15
|
context?: WidgetContextJson;
|
|
16
16
|
context_ready?: boolean;
|
|
17
|
+
header?: WidgetHeaderOptions;
|
|
17
18
|
launcher?: WidgetLauncherOptions & {
|
|
18
19
|
target?: WidgetLauncherTarget;
|
|
19
20
|
};
|
package/types/types.d.ts
CHANGED
|
@@ -34,6 +34,9 @@ export type WidgetTheme = {
|
|
|
34
34
|
primaryColor?: string;
|
|
35
35
|
radius?: number;
|
|
36
36
|
};
|
|
37
|
+
export type WidgetHeaderOptions = {
|
|
38
|
+
menu?: boolean;
|
|
39
|
+
};
|
|
37
40
|
export type WidgetViewport = {
|
|
38
41
|
height: number;
|
|
39
42
|
isMobile: boolean;
|
|
@@ -54,6 +57,7 @@ export type WidgetOptions = {
|
|
|
54
57
|
};
|
|
55
58
|
context?: WidgetContextJson;
|
|
56
59
|
context_ready?: boolean;
|
|
60
|
+
header?: WidgetHeaderOptions;
|
|
57
61
|
locale?: string;
|
|
58
62
|
launcher?: WidgetLauncherOptions;
|
|
59
63
|
messages?: WidgetLocaleMessages;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { CustomerAgentEventBus } from '../../../sdk/events';
|
|
2
2
|
import { ResolvedWidgetLocale } from '../../../sdk/i18n';
|
|
3
3
|
import { InterviewSessionController } from './interviewSessionController';
|
|
4
|
-
export declare function InterviewChatScreen({ controller, eventBus, locale, description, isExpanded, isOpen, onDownloadTranscript, onOpenMobileDock, onToggleExpanded, title, transcriptAppName, visitorName, viewportMode }: {
|
|
4
|
+
export declare function InterviewChatScreen({ controller, eventBus, isHeaderMenuEnabled, locale, description, isExpanded, isOpen, onDownloadTranscript, onOpenMobileDock, onToggleExpanded, title, transcriptAppName, visitorName, viewportMode }: {
|
|
5
5
|
controller: InterviewSessionController;
|
|
6
6
|
description?: string;
|
|
7
7
|
eventBus?: CustomerAgentEventBus;
|
|
8
|
+
isHeaderMenuEnabled?: boolean;
|
|
8
9
|
isExpanded?: boolean;
|
|
9
10
|
isOpen?: boolean;
|
|
10
11
|
locale: ResolvedWidgetLocale;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./constants-BNPzMhE-.js";import{r as t}from"./interviewTypes-Ch2NsXKB.js";import{t as n}from"./i18n-Q8u2wtW4.js";import{r}from"../runtime.es.js";import{t as i}from"./react-CKmEJ8Ba.js";import{A as a,C as o,D as s,E as c,O as l,S as u,T as d,_ as ee,a as f,c as p,d as m,g as h,i as g,j as _,l as v,o as y,p as b,s as x,t as S,u as C,v as w,w as T,y as te}from"./WidgetComposer-CJtPQVbr.js";import{n as ne}from"./conversationRegistry-Y5Ouo35n.js";import{t as E}from"./jsx-runtime-S2ZBQkZm.js";import{t as D}from"./classNames-3q0x02_x.js";var O=r(i(),1),k=E();function A(e){return Array.isArray(e.content)?e.content.map(e=>e.type===`text`?e.text:``).filter(Boolean).join(`
|
|
2
|
-
`):String(e.content??``)}function j(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function M(e){let t=e.createdAt;if(j(t))return t;if(typeof t==`string`||typeof t==`number`){let e=new Date(t);if(j(e))return e}return new Date}function N(e,t){let r=Math.max(0,Date.now()-e.getTime()),i=6e4,a=60*i,o=24*a;return r<i?t.messages.relative_time_now:r<a?n(t.messages.relative_time_minute,{count:String(Math.floor(r/i))}):r<o?n(t.messages.relative_time_hour,{count:String(Math.floor(r/a))}):n(t.messages.relative_time_day,{count:String(Math.floor(r/o))})}function P(e,t,n,r){let i=[n.getFullYear(),n.getMonth()+1,n.getDate()].map(e=>String(e).padStart(2,`0`)).join(`_`);return`${(e??`Customer Agent`).trim().replace(/[^a-z0-9\u4e00-\u9fa5]+/gi,`_`).replace(/^_+|_+$/g,``)||`Customer_Agent`}_${t}_${i}_${r}.txt`}function F(e){let t=`var(--messenger-conversation-part-radius)`;return{borderBottomLeftRadius:t,borderBottomRightRadius:t,borderTopLeftRadius:t,borderTopRightRadius:t}}function I({controller:n,eventBus:r,locale:i,description:u=i.messages.interview_session_description,isExpanded:f=!1,isOpen:p=!0,onDownloadTranscript:g,onOpenMobileDock:v,onToggleExpanded:y,title:x,transcriptAppName:S=x,visitorName:C=`You`,viewportMode:E=`desktop`}){let[j,I]=(0,O.useState)(()=>n.getState()),[L,R]=(0,O.useState)(!1),[z,B]=(0,O.useState)({}),V=(0,O.useRef)(null),H=(0,O.useRef)(!1),U=(0,O.useRef)(null),W=(0,O.useRef)(new Set),G=(0,O.useRef)(j.phase),K=(0,O.useRef)(!1),q=d({convertMessage:e=>e,isRunning:j.phase===b.SENDING,isSendDisabled:j.phase===b.SENDING||j.phase===b.TERMINAL,messages:j.messages,async onNew(t){let i=A(t).trim(),a=n.getState().sessionId;if(!i||!a)return;let o={conversationId:`interview/session/${a}`,conversationType:`interview`,entryId:`interview/session/${a}`,interviewSessionId:a},s=`interview-user-${Date.now()}`;r?.emit(e.MESSAGE_SENT,{...o,messageId:s,role:`user`}),r?.emit(e.MESSAGE_STARTED,{...o,role:`assistant`});try{await n.sendMessage(i);let t=[...n.getState().messages].reverse().find(e=>e.role===`assistant`);r?.emit(e.MESSAGE_COMPLETED,{...o,messageId:t?.id??`interview-assistant-${Date.now()}`,role:`assistant`})}catch(t){throw r?.emit(e.MESSAGE_FAILED,{...o,role:`assistant`}),t}}}),J=[...j.messages].reverse().find(e=>e.role===`assistant`&&A(e).trim())?.id??null,Y=j.messages.some(e=>A(e).trim());(0,O.useEffect)(()=>n.subscribe(I),[n]),(0,O.useEffect)(()=>{if(!L)return;function e(e){let t=e.target;t instanceof Node&&(U.current?.contains(t)||R(!1))}return document.addEventListener(`pointerdown`,e,!0),()=>document.removeEventListener(`pointerdown`,e,!0)},[L]),(0,O.useEffect)(()=>{if(j.phase===b.TERMINAL&&j.status===t.COMPLETED&&j.sessionId){if(W.current.has(j.sessionId))return;W.current.add(j.sessionId);let t={conversationId:`interview/session/${j.sessionId}`,conversationType:`interview`,entryId:`interview/session/${j.sessionId}`,interviewSessionId:j.sessionId};r?.emit(e.INTERVIEW_SESSION_COMPLETED,{...t,status:j.status}),n.loadReward(j.sessionId).then(n=>{r?.emit(e.INTERVIEW_REWARD_UPDATED,{...t,reward:n})}).catch(e=>{console.error(`CustomerAgent interview reward request failed.`,e)})}},[n,r,j.phase,j.sessionId,j.status]);let X=(0,O.useCallback)(()=>{let e=V.current;if(!e||e.disabled||E===`mobile`||e.closest(`form`)?.querySelector(`[role="dialog"]`))return!1;let t=e.value.length;return e.focus(),e.setSelectionRange(t,t),document.activeElement===e},[E]),Z=(0,O.useCallback)(()=>{let e=0,t=0;function n(){if(K.current&&j.phase===b.ACTIVE){if(X()){K.current=!1;return}e+=1,e<6&&(t=window.requestAnimationFrame(n))}}return t=window.requestAnimationFrame(n),()=>window.cancelAnimationFrame(t)},[X,j.phase]);(0,O.useEffect)(()=>{let e=G.current;G.current=j.phase;let t=V.current?.closest(`form`),n=document.activeElement,r=n instanceof HTMLElement&&!!t?.contains(n);if(j.phase===b.TERMINAL){K.current=!1,r&&n.blur();return}if(j.phase===b.SENDING){e!==b.SENDING&&(K.current=r||e===b.ACTIVE),r&&n.blur();return}if(!(e!==b.SENDING||j.phase!==b.ACTIVE||!K.current))return Z()},[Z,j.phase]);let Q=(0,O.useCallback)(()=>{H.current||!p||E===`mobile`||j.phase!==b.ACTIVE||window.requestAnimationFrame(()=>{H.current||=X()})},[X,p,j.phase,E]);function ae(e){V.current=e,e&&Q()}(0,O.useEffect)(()=>{if(!p){H.current=!1;return}Q()},[Q,p]);function $(e,t){B(n=>({...n,[e]:!t}))}function oe(e,t,n){let r=e.target;r instanceof Element&&r.closest(`a, button`)||$(t,n)}function se(e,t,n){e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),$(t,n))}function ce(){let t=new Date,n=t.getTime(),a=m({conversationName:x,exportedAt:t,exportSourceName:S,locale:i.locale,messages:j.messages.map(e=>({createdAt:M(e),role:e.role===`user`?`user`:`assistant`,text:A(e)})),userSpeaker:C}),o=new Blob([a],{type:`text/plain;charset=utf-8`}),s=URL.createObjectURL(o),c=document.createElement(`a`);c.href=s,c.download=P(S,`interview`,t,n),c.click(),window.setTimeout(()=>URL.revokeObjectURL(s),0),r?.emit(e.TRANSCRIPT_DOWNLOADED,{...j.sessionId?{conversationId:`interview/session/${j.sessionId}`,entryId:`interview/session/${j.sessionId}`,interviewSessionId:j.sessionId}:{},conversationType:`interview`,messageCount:j.messages.length}),g?.()}return(0,k.jsx)(o,{runtime:q,children:(0,k.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-bg-canvas`,"aria-label":x,"data-customer-agent-interview-chat":``,children:[(0,k.jsxs)(`header`,{className:D(`grid shrink-0 items-center gap-[var(--messenger-header-gap)] border-b border-border-divider bg-bg-canvas px-[var(--messenger-header-padding-x)] py-[var(--messenger-header-padding-y)]`,E===`mobile`?`grid-cols-[auto_auto_1fr_auto] pl-1`:`grid-cols-[auto_1fr_auto]`),"data-customer-agent-panel-header":``,children:[E===`mobile`?(0,k.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-6 cursor-pointer place-items-center rounded-md border-0 bg-transparent p-0 text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none`,"aria-label":`Open conversations`,title:`Open conversations`,type:`button`,onClick:v,children:(0,k.jsx)(s,{size:16})}):null,(0,k.jsx)(`div`,{className:`grid h-[var(--messenger-header-avatar-size)] w-[var(--messenger-header-avatar-size)] place-items-center rounded-full bg-[var(--customer-agent-primary)] text-gray-1 shadow-[0_0_0_1px_var(--border-default)]`,"aria-hidden":`true`,children:(0,k.jsx)(ne,{size:16})}),(0,k.jsxs)(`div`,{className:`flex min-w-0 flex-col justify-center`,children:[(0,k.jsx)(`p`,{className:`m-0 truncate text-[length:var(--messenger-header-title-size)] font-semibold leading-[var(--messenger-header-title-line-height)]`,children:x}),(0,k.jsx)(`span`,{className:`block truncate text-[length:var(--messenger-header-subtitle-size)] leading-[var(--messenger-header-subtitle-line-height)] text-text-tertiary`,children:u})]}),Y||y?(0,k.jsx)(`div`,{className:`relative flex items-center gap-[var(--messenger-header-action-gap)] pr-[var(--messenger-header-button-size)]`,children:(0,k.jsxs)(`div`,{ref:U,onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),R(!1))},children:[(0,k.jsx)(`button`,{className:`grid h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)] cursor-pointer place-items-center rounded-[var(--messenger-header-button-radius)] border-0 bg-transparent text-text-quaternary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-none data-[state=open]:bg-gray-3 data-[state=open]:text-text-primary`,"aria-expanded":L,"aria-haspopup":`menu`,"aria-label":i.messages.more_options,"data-state":L?`open`:`closed`,title:i.messages.more_options,type:`button`,onClick:()=>R(e=>!e),children:(0,k.jsx)(a,{size:16})}),L?(0,k.jsxs)(`div`,{className:`absolute top-[calc(100%+0.5rem)] right-[var(--messenger-header-button-size)] z-[var(--z-dropdown)] grid min-w-64 gap-1 rounded-lg border border-border-default bg-bg-elevated p-1 text-sm text-text-primary shadow-popover`,role:`menu`,children:[y?(0,k.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{R(!1),y()},children:[f?(0,k.jsx)(c,{size:16}):(0,k.jsx)(l,{size:16}),(0,k.jsx)(`span`,{children:f?i.messages.collapse_window:i.messages.expand_window})]}):null,Y?(0,k.jsxs)(`button`,{className:`flex w-full cursor-pointer items-center gap-2 rounded-md border-0 bg-transparent px-2 py-1.5 text-left text-sm text-text-secondary transition-colors hover:bg-gray-3 hover:text-text-primary focus-visible:outline-none focus-visible:shadow-[var(--shadow-focus)]`,role:`menuitem`,type:`button`,onClick:()=>{R(!1),ce()},children:[(0,k.jsx)(_,{size:16}),(0,k.jsx)(`span`,{children:i.messages.download_transcript})]}):null]}):null]})}):(0,k.jsx)(`div`,{className:`h-[var(--messenger-header-button-size)] w-[var(--messenger-header-button-size)]`,"aria-hidden":`true`})]}),(0,k.jsx)(ee,{className:`relative flex min-h-0 flex-1 flex-col overflow-hidden bg-bg-canvas`,children:(0,k.jsx)(h,{className:`customer-agent-thread-viewport min-h-0 flex-1 overflow-y-auto bg-bg-canvas [scrollbar-width:none] [&::-webkit-scrollbar]:hidden [&>[data-radix-scroll-area-content]]:flex [&>[data-radix-scroll-area-content]]:min-h-full [&>[data-radix-scroll-area-content]]:flex-col [&>[data-radix-scroll-area-content]]:self-stretch [&>[data-radix-scroll-area-content]]:bg-inherit [&>div]:flex [&>div]:min-h-full [&>div]:flex-col [&>div]:self-stretch [&>div]:bg-inherit`,"data-customer-agent-thread-viewport":``,"aria-live":`polite`,autoScroll:!0,role:`log`,children:(0,k.jsxs)(`div`,{className:D(`flex min-h-full flex-col px-[var(--messenger-conversation-horizontal-padding)] pt-3`,`customer-agent-message-list`),"data-customer-agent-message-list":``,children:[(0,k.jsx)(T,{children:({message:e})=>{let t=e,n=A(t),r=e.role===`user`?`user`:`assistant`,a=r===`assistant`,o=t.id??`${r}:${n}`,s=M(t),c=a&&(z[o]??o===J);return n?(0,k.jsxs)(te,{className:r===`user`?`mt-[var(--messenger-conversation-part-stack-gap)] flex max-w-[var(--messenger-conversation-part-max-width)] flex-col self-end items-end`:`mt-[var(--messenger-conversation-part-stack-gap)] flex max-w-[var(--messenger-conversation-part-max-width)] flex-col self-start items-start`,"aria-expanded":a?c:void 0,"data-message-role":r,role:a?`button`:void 0,tabIndex:a?0:void 0,onClick:a?e=>oe(e,o,c):void 0,onKeyDown:a?e=>se(e,o,c):void 0,children:[(0,k.jsx)(`div`,{className:r===`user`?`w-fit max-w-full whitespace-pre-wrap bg-[var(--customer-agent-primary)] px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5 text-gray-1`:`w-fit max-w-full whitespace-pre-wrap bg-gray-3 px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5 text-text-secondary`,style:F(r),children:(0,k.jsx)(w,{children:({part:e})=>e.type===`text`?(0,k.jsx)(`span`,{children:e.text}):null})}),r===`assistant`?(0,k.jsxs)(`span`,{className:D(`overflow-hidden px-[var(--messenger-conversation-part-padding-x)] text-sm leading-5 text-text-tertiary transition-[max-height,opacity,transform,margin] duration-200 ease-out`,c?`mt-1 max-h-5 translate-y-0 opacity-100`:`mt-0 max-h-0 -translate-y-1 opacity-0`),"data-state":c?`visible`:`hidden`,"data-testid":`interview-message-metadata`,children:[x,` · `,i.messages.assistant_author_ai,` ·`,` `,N(s,i)]}):null]}):null}}),j.phase===b.SENDING?(0,k.jsx)(ie,{}):null]})})}),(0,k.jsx)(re,{inputRef:V,isHidden:j.phase===b.SENDING||j.phase===b.TERMINAL,locale:i,onInputRef:ae})]})})}function re({inputRef:e,isHidden:t,locale:n,onInputRef:r}){let i=u().composer,a=C({composerRuntime:i,inputRef:e});return(0,k.jsxs)(x,{className:D(`relative z-[var(--z-composer)] shrink-0 bg-transparent px-[var(--messenger-conversation-horizontal-padding)] pt-0 pb-[max(1rem,calc(1rem+var(--customer-agent-bottom-inset)))]`,`-mt-[var(--messenger-radius)]`),isHidden:t,onSubmit:a.closeEmojiPicker,children:[(0,k.jsx)(y,{inputAriaLabel:n.messages.message_aria_label,inputRef:r,placeholder:n.messages.interview_input_placeholder}),(0,k.jsxs)(S,{children:[(0,k.jsx)(v,{children:(0,k.jsx)(f,{hostRef:a.emojiPickerHostRef,isLoading:a.isEmojiPickerLoading,open:a.isEmojiPickerOpen,onOpenChange:a.onEmojiOpenChange,children:(0,k.jsx)(g,{emojiLabel:n.messages.add_emoji})})}),(0,k.jsx)(p,{sendLabel:n.messages.send_message})]})]})}function ie(){return(0,k.jsx)(`div`,{className:`mt-[var(--messenger-conversation-part-stack-gap)] flex max-w-[var(--messenger-conversation-part-max-width)] flex-col self-start items-start`,"data-message-role":`assistant`,"data-testid":`interview-thinking-bubble`,children:(0,k.jsx)(`div`,{className:`w-fit max-w-full whitespace-pre-wrap bg-gray-3 px-[var(--messenger-conversation-part-padding-x)] py-[var(--messenger-conversation-part-padding-y)] text-base leading-5 text-text-secondary`,style:F(`assistant`),children:(0,k.jsx)(L,{})})})}function L(){return(0,k.jsxs)(`span`,{className:`inline-flex h-5 items-center gap-1 align-middle text-text-quaternary`,"aria-hidden":`true`,children:[(0,k.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current`,"data-testid":`interview-thinking-dot`}),(0,k.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:140ms]`,"data-testid":`interview-thinking-dot`}),(0,k.jsx)(`span`,{className:`h-1.5 w-1.5 animate-[customer-agent-typing-dot-bounce_1.05s_ease-in-out_infinite] rounded-full bg-current [animation-delay:280ms]`,"data-testid":`interview-thinking-dot`})]})}export{I as InterviewChatScreen};
|