@helpai/elements 1.5.10 → 1.6.0
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/elements-web-component.esm.js +15 -15
- package/elements-web-component.esm.js.map +3 -3
- package/elements.cjs.js +15 -15
- package/elements.cjs.js.map +3 -3
- package/elements.esm.js +15 -15
- package/elements.esm.js.map +3 -3
- package/elements.js +15 -15
- package/elements.js.map +3 -3
- package/index.mjs +3 -3
- package/package.json +1 -1
- package/web-component.mjs +3 -3
package/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Component as e,h as t,render as n}from"preact";import{batch as r,computed as i,effect as a,signal as o,useComputed as s,useSignal as c}from"@preact/signals";import{useCallback as l,useEffect as u,useLayoutEffect as d,useMemo as f,useRef as p,useState as m}from"preact/hooks";import{Fragment as h,jsx as g,jsxs as _}from"preact/jsx-runtime";import*as v from"streaming-markdown";import{memo as y}from"preact/compat";function b(e,t){if(e?.length&&t)return e.find(e=>e.locale===t)}function x(e,t){let{translations:n,defaultLocale:r,...i}=e,a=b(n,t);return a?{...i,title:a.title??i.title,description:a.description??i.description,content:a.content??i.content}:i}function S(e,t){let{translations:n,defaultLocale:r,...i}=e,a=b(n,t);return a?{...i,title:a.title??i.title,description:a.description??i.description}:i}function C(e,t){let{translations:n,defaultLocale:r,...i}=e,a=b(n,t);if(!a)return i;let o=new Map((a.fields??[]).map(e=>[e.name,e])),s=i.fields.map(e=>{let t=o.get(e.name);if(!t)return e;let n=new Map((t.options??[]).map(e=>[e.value,e]));return{...e,label:t.label??e.label,placeholder:t.placeholder??e.placeholder,validationHint:t.validationHint??e.validationHint,options:e.options?.map(e=>{let t=n.get(e.value);return t?{...e,label:t.label??e.label,description:t.description??e.description}:e})}});return{...i,title:a.title??i.title,description:a.description??i.description,submitLabel:a.submitLabel??i.submitLabel,fields:s}}const w={attach:`Attach files`,attachmentMimeRejected:`File type not supported`,attachmentTooLarge:`File is too large`,attachmentTooMany:`Attachment limit reached`,conversationClosed:`This chat is closed`,conversationLoading:`Loading chat…`,loadPreviousMessages:`Load previous messages`,close:`Close`,collapse:`Collapse`,collapseSidebar:`Collapse sidebar`,composerPlaceholder:`Type a message…`,dateLastWeek:`Last 7 days`,dateOlder:`Older`,dateToday:`Today`,dateYesterday:`Yesterday`,dropZone:`Drop files to attach`,errorGeneric:`Something went wrong`,errorRateLimited:`Too many requests — please try again in a moment.`,errorRetry:`Retry`,expand:`Expand`,expandSidebar:`Expand sidebar`,exitFullscreen:`Exit fullscreen`,fullscreen:`Fullscreen`,history:`History`,historyBack:`Back to chat`,historyEmpty:`No previous chats yet`,historyLoading:`Loading your chats…`,historyContinue:`Continue the chat`,historyTitle:`Chat history`,loadMoreConversations:`Load more conversations`,language:`Language`,launcherOpen:`Open chat`,launcherLabel:`Chat with us`,micStart:`Start voice input`,micStop:`Stop voice input`,micUnsupported:`Voice input is not supported in this browser`,moreActions:`More actions`,newConversation:`New chat`,panelTitle:`Chat`,popOut:`Open in new tab`,resizeHandle:`Drag to resize`,scrollToBottom:`Scroll to latest`,send:`Send`,queueMessage:`Queue message`,removeQueuedMessage:`Remove queued message`,compactingContext:`Optimizing conversation context…`,soundOff:`Sound off`,soundOn:`Sound on`,startNewConversation:`Start a new chat`,talkToOperator:`Talk to a person`,connectingOperator:`Connecting you to a person…`,noOperatorAvailable:`No one's available right now — leave your details and we'll follow up.`,chattingWithOperator:`You're chatting with {operator}`,cancelOperatorRequest:`Keep chatting with the AI`,stop:`Stop`,theme:`Theme`,themeAuto:`Auto`,themeDark:`Dark`,themeLight:`Light`,textSize:`Text size`,textSizeSmall:`Small`,textSizeNormal:`Normal`,textSizeLarge:`Large`,loading:`Loading…`,visualPreparing:`Preparing visual…`,visualError:`This visual could not be displayed.`,visualPartial:`Some parts of this visual could not be displayed.`,thinking:`Thinking…`,thoughts:`Thoughts`,toolResult:`Result`,sources:`Sources`,feedbackUp:`Good response`,feedbackDown:`Bad response`,feedbackThanks:`Thanks for your feedback`,copy:`Copy`,copied:`Copied`,tabHome:`Home`,tabConversations:`Chats`,tabHelp:`Help`,tabNews:`News`,modulesEmpty:`Nothing here yet`,moduleBack:`Back`,contentLoading:`Loading…`,contentHelpful:`Was this helpful?`,homeGreeting:`How can we help?`,homeGreetingNamed:`Hi {name} 👋`,homeGreetingLead:`How can we help?`,homeSearchPlaceholder:`Search for help`,homeAskPlaceholder:`Ask a question…`,homeWhatsNew:`What's new`,homeContentTitle:`Popular articles`,homeStatus:`Status`,helpTitle:`Help`,helpSearchPlaceholder:`Search for help`,helpEmpty:`No help articles yet`,helpLoading:`Loading help…`,helpSearchEmpty:`No results for “{query}”`,helpShowMore:`Show more`,newsTitle:`News`,newsEmpty:`No news yet`,newsLoading:`Loading news…`,newsBack:`Back to news`,newsPublishedAt:`Published {date}`,newsShowMore:`Show more`,newsUnseen:`New post`,formSubmit:`Submit`,formSkip:`Maybe later`,formSubmitted:`Completed`,formSkipped:`Maybe later`,formFillOut:`Fill out`,formRequired:`This field is required`,formInvalidEmail:`Enter a valid email address`,formInvalidTel:`Enter a valid phone number`,formInvalidUrl:`Enter a valid URL`,formInvalidNumber:`Enter a valid number`,formTooShort:`Too short (min {min} characters)`,formTooLong:`Too long (max {max} characters)`,formNumberTooSmall:`Must be at least {min}`,formNumberTooLarge:`Must be at most {max}`,formPatternMismatch:`Please match the requested format`,formChooseAtLeast:`Choose at least {min}`,formChooseAtMost:`Choose at most {max}`,formOther:`Other`,formOtherPlaceholder:`Type your answer…`,inputRequired:`Questions for you`,inputBadge:`Questions`,inputAnswered:`Answered`,inputSkipped:`Skipped`,showOptions:`Show options`,hideOptions:`Hide options`,qtypeText:`Your answer`,qtypeEmail:`Email address`,qtypePhone:`Phone number`,qtypeNumber:`Number`,qtypeDate:`Date`,qtypeChooseOne:`Pick one`,qtypeChooseAny:`Pick any`,qtypeBoolean:`Yes / No`,inputSubmit:`Submit answers`,inputSubmitHint:`Enter to send · Shift+Enter = new line`,inputSkip:`Skip`,confirmYes:`Yes`,confirmNo:`No`,approve:`Approve`,reject:`Reject`,approvalPrompt:`{tool} requires your approval to execute.`,approvalBody:`Review the tool input above and decide whether to allow this action.`,approvalYourResponse:`Your response: {decision}`,approvalEditHint:`You can edit this response until this step continues.`,approvalSubmitting:`Response submitted. Request in progress…`,edit:`Edit`,toolParameters:`Parameters`,statusAwaiting:`Awaiting Approval`,statusResponded:`Submitted`,statusRunning:`Running`,statusCompleted:`Completed`,statusDenied:`Denied`,statusError:`Error`,statusSuperseded:`Skipped`},T={en:w,fr:{attach:`Joindre des fichiers`,attachmentMimeRejected:`Type de fichier non pris en charge`,attachmentTooLarge:`Le fichier est trop volumineux`,attachmentTooMany:`Limite de pièces jointes atteinte`,conversationClosed:`Ce chat est fermé`,conversationLoading:`Chargement du chat…`,loadPreviousMessages:`Charger les messages précédents`,close:`Fermer`,collapse:`Réduire`,collapseSidebar:`Réduire la barre latérale`,composerPlaceholder:`Écrivez un message…`,dateLastWeek:`7 derniers jours`,dateOlder:`Plus ancien`,dateToday:`Aujourd'hui`,dateYesterday:`Hier`,dropZone:`Déposez les fichiers à joindre`,errorGeneric:`Une erreur s'est produite`,errorRateLimited:`Trop de requêtes — veuillez réessayer dans un instant.`,errorRetry:`Réessayer`,expand:`Agrandir`,expandSidebar:`Développer la barre latérale`,exitFullscreen:`Quitter le plein écran`,fullscreen:`Plein écran`,history:`Historique`,historyBack:`Retour au chat`,historyEmpty:`Aucun chat pour le moment`,historyContinue:`Poursuivre le chat`,historyLoading:`Chargement de vos chats…`,historyTitle:`Historique des chats`,loadMoreConversations:`Charger plus de conversations`,language:`Langue`,launcherOpen:`Ouvrir le chat`,launcherLabel:`Discuter avec nous`,micStart:`Démarrer la saisie vocale`,micStop:`Arrêter la saisie vocale`,micUnsupported:`La saisie vocale n'est pas prise en charge par ce navigateur`,moreActions:`Plus d'actions`,newConversation:`Nouveau chat`,panelTitle:`Chat`,popOut:`Ouvrir dans un nouvel onglet`,resizeHandle:`Glisser pour redimensionner`,scrollToBottom:`Aller au plus récent`,send:`Envoyer`,queueMessage:`Mettre le message en attente`,removeQueuedMessage:`Retirer le message en attente`,compactingContext:`Optimisation du contexte de la conversation…`,soundOff:`Son désactivé`,soundOn:`Son activé`,startNewConversation:`Démarrer un nouveau chat`,talkToOperator:`Parler à une personne`,connectingOperator:`Mise en relation avec une personne…`,noOperatorAvailable:`Personne n'est disponible pour le moment — laissez vos coordonnées et nous reviendrons vers vous.`,chattingWithOperator:`Vous discutez avec {operator}`,cancelOperatorRequest:`Continuer avec l'IA`,stop:`Arrêter`,theme:`Thème`,themeAuto:`Auto`,themeDark:`Sombre`,themeLight:`Clair`,textSize:`Taille du texte`,textSizeSmall:`Petite`,textSizeNormal:`Normale`,textSizeLarge:`Grande`,loading:`Chargement…`,visualPreparing:`Préparation du visuel…`,visualError:`Ce visuel n’a pas pu être affiché.`,visualPartial:`Certaines parties de ce visuel n’ont pas pu être affichées.`,thinking:`Réflexion…`,thoughts:`Réflexions`,toolResult:`Résultat`,sources:`Sources`,feedbackUp:`Bonne réponse`,feedbackDown:`Mauvaise réponse`,feedbackThanks:`Merci pour votre retour`,copy:`Copier`,copied:`Copié`,tabHome:`Accueil`,tabConversations:`Chats`,tabHelp:`Aide`,tabNews:`Actualités`,modulesEmpty:`Rien pour le moment`,moduleBack:`Retour`,contentLoading:`Chargement…`,contentHelpful:`Cela vous a-t-il aidé ?`,homeGreeting:`Comment pouvons-nous vous aider ?`,homeGreetingNamed:`Bonjour {name} 👋`,homeGreetingLead:`Comment pouvons-nous vous aider ?`,homeSearchPlaceholder:`Rechercher de l'aide`,homeAskPlaceholder:`Posez une question…`,homeWhatsNew:`Nouveautés`,homeContentTitle:`Articles populaires`,homeStatus:`Statut`,helpTitle:`Aide`,helpSearchPlaceholder:`Rechercher de l'aide`,helpEmpty:`Aucun article d'aide pour le moment`,helpLoading:`Chargement de l'aide…`,helpSearchEmpty:`Aucun résultat pour «\xA0{query}\xA0»`,helpShowMore:`Afficher plus`,newsTitle:`Actualités`,newsEmpty:`Aucune actualité pour le moment`,newsLoading:`Chargement des actualités…`,newsBack:`Retour aux actualités`,newsPublishedAt:`Publié le {date}`,newsShowMore:`Afficher plus`,newsUnseen:`Nouvelle publication`,formSubmit:`Envoyer`,formSkip:`Plus tard`,formSubmitted:`Terminé`,formSkipped:`Plus tard`,formFillOut:`Remplir`,formRequired:`Ce champ est obligatoire`,formInvalidEmail:`Saisissez une adresse e-mail valide`,formInvalidTel:`Saisissez un numéro de téléphone valide`,formInvalidUrl:`Saisissez une URL valide`,formInvalidNumber:`Saisissez un nombre valide`,formTooShort:`Trop court (min. {min} caractères)`,formTooLong:`Trop long (max. {max} caractères)`,formNumberTooSmall:`Doit être au moins {min}`,formNumberTooLarge:`Doit être au plus {max}`,formPatternMismatch:`Veuillez respecter le format demandé`,formChooseAtLeast:`Choisissez au moins {min}`,formChooseAtMost:`Choisissez au plus {max}`,formOther:`Autre`,formOtherPlaceholder:`Saisissez votre réponse…`,inputRequired:`Questions pour vous`,inputBadge:`Questions`,inputAnswered:`Répondu`,inputSkipped:`Ignoré`,showOptions:`Afficher les options`,hideOptions:`Masquer les options`,qtypeText:`Votre réponse`,qtypeEmail:`Adresse e-mail`,qtypePhone:`Numéro de téléphone`,qtypeNumber:`Nombre`,qtypeDate:`Date`,qtypeChooseOne:`Choisir une`,qtypeChooseAny:`Choisir plusieurs`,qtypeBoolean:`Oui / Non`,inputSubmit:`Envoyer les réponses`,inputSubmitHint:`Entrée pour envoyer · Maj+Entrée = saut de ligne`,inputSkip:`Ignorer`,confirmYes:`Oui`,confirmNo:`Non`,approve:`Approuver`,reject:`Refuser`,approvalPrompt:`{tool} nécessite votre approbation pour s'exécuter.`,approvalBody:`Vérifiez les paramètres ci-dessus et décidez d'autoriser ou non cette action.`,approvalYourResponse:`Votre réponse : {decision}`,approvalEditHint:`Vous pouvez modifier votre réponse jusqu'à la reprise de cette étape.`,approvalSubmitting:`Réponse envoyée. Traitement en cours…`,edit:`Modifier`,toolParameters:`Paramètres`,statusAwaiting:`En attente d'approbation`,statusResponded:`Envoyé`,statusRunning:`En cours`,statusCompleted:`Terminé`,statusDenied:`Refusé`,statusError:`Erreur`,statusSuperseded:`Ignoré`},ar:{attach:`إرفاق ملفات`,attachmentMimeRejected:`نوع الملف غير مدعوم`,attachmentTooLarge:`حجم الملف كبير جدًا`,attachmentTooMany:`تم بلوغ الحد الأقصى للمرفقات`,conversationClosed:`تم إغلاق هذه الدردشة`,conversationLoading:`جارٍ تحميل الدردشة…`,loadPreviousMessages:`تحميل الرسائل السابقة`,close:`إغلاق`,collapse:`طيّ`,collapseSidebar:`طيّ الشريط الجانبي`,composerPlaceholder:`اكتب رسالة…`,dateLastWeek:`آخر ٧ أيام`,dateOlder:`أقدم`,dateToday:`اليوم`,dateYesterday:`أمس`,dropZone:`أفلت الملفات لإرفاقها`,errorGeneric:`حدث خطأ ما`,errorRateLimited:`طلبات كثيرة جدًا — يرجى المحاولة بعد لحظة.`,errorRetry:`إعادة المحاولة`,expand:`توسيع`,expandSidebar:`توسيع الشريط الجانبي`,exitFullscreen:`إنهاء ملء الشاشة`,fullscreen:`ملء الشاشة`,history:`السجل`,historyBack:`العودة إلى الدردشة`,historyEmpty:`لا توجد دردشات سابقة بعد`,historyContinue:`متابعة الدردشة`,historyLoading:`جارٍ تحميل دردشاتك…`,historyTitle:`سجل الدردشات`,loadMoreConversations:`تحميل المزيد من المحادثات`,language:`اللغة`,launcherOpen:`فتح الدردشة`,launcherLabel:`تحدث معنا`,micStart:`بدء الإدخال الصوتي`,micStop:`إيقاف الإدخال الصوتي`,micUnsupported:`الإدخال الصوتي غير مدعوم في هذا المتصفح`,moreActions:`إجراءات إضافية`,newConversation:`دردشة جديدة`,panelTitle:`الدردشة`,popOut:`فتح في علامة تبويب جديدة`,resizeHandle:`اسحب لتغيير الحجم`,scrollToBottom:`الانتقال إلى الأحدث`,send:`إرسال`,queueMessage:`إضافة الرسالة إلى قائمة الانتظار`,removeQueuedMessage:`إزالة الرسالة من قائمة الانتظار`,compactingContext:`جارٍ تحسين سياق المحادثة…`,soundOff:`كتم الصوت`,soundOn:`تشغيل الصوت`,startNewConversation:`بدء دردشة جديدة`,talkToOperator:`التحدث إلى شخص`,connectingOperator:`جارٍ توصيلك بشخص…`,noOperatorAvailable:`لا يوجد موظفون متاحون الآن — اترك بياناتك وسنتواصل معك.`,chattingWithOperator:`أنت تتحدث مع {operator}`,cancelOperatorRequest:`متابعة المحادثة مع الذكاء الاصطناعي`,stop:`إيقاف`,theme:`المظهر`,themeAuto:`تلقائي`,themeDark:`داكن`,themeLight:`فاتح`,textSize:`حجم النص`,textSizeSmall:`صغير`,textSizeNormal:`عادي`,textSizeLarge:`كبير`,loading:`جارٍ التحميل…`,visualPreparing:`جارٍ إعداد المحتوى المرئي…`,visualError:`تعذر عرض هذا المحتوى المرئي.`,visualPartial:`تعذر عرض بعض أجزاء هذا المحتوى المرئي.`,thinking:`يفكّر…`,thoughts:`الأفكار`,toolResult:`النتيجة`,sources:`المصادر`,feedbackUp:`رد جيد`,feedbackDown:`رد سيئ`,feedbackThanks:`شكرًا على ملاحظاتك`,copy:`نسخ`,copied:`تم النسخ`,tabHome:`الرئيسية`,tabConversations:`الدردشات`,tabHelp:`المساعدة`,tabNews:`الأخبار`,modulesEmpty:`لا شيء هنا بعد`,moduleBack:`رجوع`,contentLoading:`جارٍ التحميل…`,contentHelpful:`هل كان هذا مفيدًا؟`,homeGreeting:`كيف يمكننا مساعدتك؟`,homeGreetingNamed:`مرحبًا {name} 👋`,homeGreetingLead:`كيف يمكننا مساعدتك؟`,homeSearchPlaceholder:`ابحث عن مساعدة`,homeAskPlaceholder:`اطرح سؤالاً…`,homeWhatsNew:`ما الجديد`,homeContentTitle:`مقالات شائعة`,homeStatus:`الحالة`,helpTitle:`المساعدة`,helpSearchPlaceholder:`ابحث عن مساعدة`,helpEmpty:`لا توجد مقالات مساعدة بعد`,helpLoading:`جارٍ تحميل المساعدة…`,helpSearchEmpty:`لا نتائج لـ «{query}»`,helpShowMore:`عرض المزيد`,newsTitle:`الأخبار`,newsEmpty:`لا توجد أخبار بعد`,newsLoading:`جارٍ تحميل الأخبار…`,newsBack:`العودة إلى الأخبار`,newsPublishedAt:`نُشر في {date}`,newsShowMore:`عرض المزيد`,newsUnseen:`منشور جديد`,formSubmit:`إرسال`,formSkip:`لاحقًا`,formSubmitted:`تم`,formSkipped:`لاحقًا`,formFillOut:`تعبئة`,formRequired:`هذا الحقل مطلوب`,formInvalidEmail:`أدخل بريدًا إلكترونيًا صحيحًا`,formInvalidTel:`أدخل رقم هاتف صحيحًا`,formInvalidUrl:`أدخل رابطًا صحيحًا`,formInvalidNumber:`أدخل رقمًا صحيحًا`,formTooShort:`قصير جدًا (الحد الأدنى {min} حرفًا)`,formTooLong:`طويل جدًا (الحد الأقصى {max} حرفًا)`,formNumberTooSmall:`يجب ألا يقل عن {min}`,formNumberTooLarge:`يجب ألا يزيد عن {max}`,formPatternMismatch:`يرجى مطابقة الصيغة المطلوبة`,formChooseAtLeast:`اختر {min} على الأقل`,formChooseAtMost:`اختر {max} على الأكثر`,formOther:`أخرى`,formOtherPlaceholder:`اكتب إجابتك…`,inputRequired:`أسئلة لك`,inputBadge:`أسئلة`,inputAnswered:`تمت الإجابة`,inputSkipped:`تم التخطي`,showOptions:`إظهار الخيارات`,hideOptions:`إخفاء الخيارات`,qtypeText:`إجابتك`,qtypeEmail:`عنوان البريد الإلكتروني`,qtypePhone:`رقم الهاتف`,qtypeNumber:`رقم`,qtypeDate:`تاريخ`,qtypeChooseOne:`اختر واحدًا`,qtypeChooseAny:`اختر أيًا`,qtypeBoolean:`نعم / لا`,inputSubmit:`إرسال الإجابات`,inputSubmitHint:`Enter للإرسال · Shift+Enter = سطر جديد`,inputSkip:`تخطٍّ`,confirmYes:`نعم`,confirmNo:`لا`,approve:`موافقة`,reject:`رفض`,approvalPrompt:`تتطلب {tool} موافقتك للتنفيذ.`,approvalBody:`راجع مُعطيات الأداة أعلاه وقرّر السماح بهذا الإجراء أو رفضه.`,approvalYourResponse:`ردّك: {decision}`,approvalEditHint:`يمكنك تعديل ردّك حتى تستأنف هذه الخطوة.`,approvalSubmitting:`تم إرسال الرد. جارٍ التنفيذ…`,edit:`تعديل`,toolParameters:`المعطيات`,statusAwaiting:`بانتظار الموافقة`,statusResponded:`تم الإرسال`,statusRunning:`قيد التنفيذ`,statusCompleted:`مكتمل`,statusDenied:`مرفوض`,statusError:`خطأ`,statusSuperseded:`تم التخطي`},es:{attach:`Adjuntar archivos`,attachmentMimeRejected:`Tipo de archivo no admitido`,attachmentTooLarge:`El archivo es demasiado grande`,attachmentTooMany:`Se alcanzó el límite de adjuntos`,conversationClosed:`Este chat está cerrado`,conversationLoading:`Cargando chat…`,loadPreviousMessages:`Cargar mensajes anteriores`,close:`Cerrar`,collapse:`Contraer`,collapseSidebar:`Contraer la barra lateral`,composerPlaceholder:`Escribe un mensaje…`,dateLastWeek:`Últimos 7 días`,dateOlder:`Anteriores`,dateToday:`Hoy`,dateYesterday:`Ayer`,dropZone:`Suelta los archivos para adjuntarlos`,errorGeneric:`Algo salió mal`,errorRateLimited:`Demasiadas solicitudes: inténtalo de nuevo en un momento.`,errorRetry:`Reintentar`,expand:`Ampliar`,expandSidebar:`Expandir la barra lateral`,exitFullscreen:`Salir de pantalla completa`,fullscreen:`Pantalla completa`,history:`Historial`,historyBack:`Volver al chat`,historyEmpty:`Aún no tienes chats`,historyContinue:`Continuar el chat`,historyLoading:`Cargando tus chats…`,historyTitle:`Historial de chats`,loadMoreConversations:`Cargar más conversaciones`,language:`Idioma`,launcherOpen:`Abrir el chat`,launcherLabel:`Chatea con nosotros`,micStart:`Iniciar entrada de voz`,micStop:`Detener entrada de voz`,micUnsupported:`Este navegador no admite la entrada de voz`,moreActions:`Más acciones`,newConversation:`Nuevo chat`,panelTitle:`Chat`,popOut:`Abrir en una pestaña nueva`,resizeHandle:`Arrastra para cambiar el tamaño`,scrollToBottom:`Ir a lo más reciente`,send:`Enviar`,queueMessage:`Poner mensaje en cola`,removeQueuedMessage:`Quitar mensaje de la cola`,compactingContext:`Optimizando el contexto de la conversación…`,soundOff:`Sonido desactivado`,soundOn:`Sonido activado`,startNewConversation:`Iniciar un chat nuevo`,talkToOperator:`Hablar con una persona`,connectingOperator:`Conectándote con una persona…`,noOperatorAvailable:`Nadie está disponible ahora — deja tus datos y te contactaremos.`,chattingWithOperator:`Estás chateando con {operator}`,cancelOperatorRequest:`Seguir con la IA`,stop:`Detener`,theme:`Tema`,themeAuto:`Automático`,themeDark:`Oscuro`,themeLight:`Claro`,textSize:`Tamaño del texto`,textSizeSmall:`Pequeño`,textSizeNormal:`Normal`,textSizeLarge:`Grande`,loading:`Cargando…`,visualPreparing:`Preparando visualización…`,visualError:`No se pudo mostrar esta visualización.`,visualPartial:`No se pudieron mostrar algunas partes de esta visualización.`,thinking:`Pensando…`,thoughts:`Razonamiento`,toolResult:`Resultado`,sources:`Fuentes`,feedbackUp:`Buena respuesta`,feedbackDown:`Mala respuesta`,feedbackThanks:`Gracias por tu opinión`,copy:`Copiar`,copied:`Copiado`,tabHome:`Inicio`,tabConversations:`Chats`,tabHelp:`Ayuda`,tabNews:`Novedades`,modulesEmpty:`Aún no hay nada aquí`,moduleBack:`Atrás`,contentLoading:`Cargando…`,contentHelpful:`¿Te resultó útil?`,homeGreeting:`¿Cómo podemos ayudarte?`,homeGreetingNamed:`Hola, {name} 👋`,homeGreetingLead:`¿Cómo podemos ayudarte?`,homeSearchPlaceholder:`Buscar ayuda`,homeAskPlaceholder:`Haz una pregunta…`,homeWhatsNew:`Lo nuevo`,homeContentTitle:`Artículos populares`,homeStatus:`Estado`,helpTitle:`Ayuda`,helpSearchPlaceholder:`Buscar ayuda`,helpEmpty:`Aún no hay artículos de ayuda`,helpLoading:`Cargando la ayuda…`,helpSearchEmpty:`Sin resultados para «{query}»`,helpShowMore:`Mostrar más`,newsTitle:`Novedades`,newsEmpty:`Aún no hay novedades`,newsLoading:`Cargando novedades…`,newsBack:`Volver a novedades`,newsPublishedAt:`Publicado el {date}`,newsShowMore:`Mostrar más`,newsUnseen:`Publicación nueva`,formSubmit:`Enviar`,formSkip:`Quizá más tarde`,formSubmitted:`Completado`,formSkipped:`Quizá más tarde`,formFillOut:`Completar`,formRequired:`Este campo es obligatorio`,formInvalidEmail:`Introduce un correo electrónico válido`,formInvalidTel:`Introduce un número de teléfono válido`,formInvalidUrl:`Introduce una URL válida`,formInvalidNumber:`Introduce un número válido`,formTooShort:`Demasiado corto (mín. {min} caracteres)`,formTooLong:`Demasiado largo (máx. {max} caracteres)`,formNumberTooSmall:`Debe ser al menos {min}`,formNumberTooLarge:`Debe ser como máximo {max}`,formPatternMismatch:`Respeta el formato solicitado`,formChooseAtLeast:`Elige al menos {min}`,formChooseAtMost:`Elige como máximo {max}`,formOther:`Otro`,formOtherPlaceholder:`Escribe tu respuesta…`,inputRequired:`Preguntas para ti`,inputBadge:`Preguntas`,inputAnswered:`Respondido`,inputSkipped:`Omitido`,showOptions:`Mostrar opciones`,hideOptions:`Ocultar opciones`,qtypeText:`Tu respuesta`,qtypeEmail:`Correo electrónico`,qtypePhone:`Número de teléfono`,qtypeNumber:`Número`,qtypeDate:`Fecha`,qtypeChooseOne:`Elige una`,qtypeChooseAny:`Elige varias`,qtypeBoolean:`Sí / No`,inputSubmit:`Enviar respuestas`,inputSubmitHint:`Enter para enviar · Mayús+Enter = nueva línea`,inputSkip:`Omitir`,confirmYes:`Sí`,confirmNo:`No`,approve:`Aprobar`,reject:`Rechazar`,approvalPrompt:`{tool} requiere tu aprobación para ejecutarse.`,approvalBody:`Revisa los parámetros de arriba y decide si permites esta acción.`,approvalYourResponse:`Tu respuesta: {decision}`,approvalEditHint:`Puedes cambiar tu respuesta hasta que este paso continúe.`,approvalSubmitting:`Respuesta enviada. Procesando…`,edit:`Editar`,toolParameters:`Parámetros`,statusAwaiting:`Esperando aprobación`,statusResponded:`Enviado`,statusRunning:`En curso`,statusCompleted:`Completado`,statusDenied:`Denegado`,statusError:`Error`,statusSuperseded:`Omitido`},he:{attach:`צירוף קבצים`,attachmentMimeRejected:`סוג הקובץ אינו נתמך`,attachmentTooLarge:`הקובץ גדול מדי`,attachmentTooMany:`הגעת למספר המרבי של קבצים מצורפים`,conversationClosed:`הצ׳אט הזה נסגר`,conversationLoading:`טוען צ׳אט…`,loadPreviousMessages:`טעינת הודעות קודמות`,close:`סגירה`,collapse:`כיווץ`,collapseSidebar:`כיווץ סרגל הצד`,composerPlaceholder:`כתוב הודעה…`,dateLastWeek:`7 הימים האחרונים`,dateOlder:`ישן יותר`,dateToday:`היום`,dateYesterday:`אתמול`,dropZone:`שחרר קבצים כדי לצרף`,errorGeneric:`משהו השתבש`,errorRateLimited:`יותר מדי בקשות — נסה שוב בעוד רגע.`,errorRetry:`נסה שוב`,expand:`הרחבה`,expandSidebar:`הרחבת סרגל הצד`,exitFullscreen:`יציאה ממסך מלא`,fullscreen:`מסך מלא`,history:`היסטוריה`,historyBack:`חזרה לצ׳אט`,historyEmpty:`אין עדיין צ׳אטים קודמים`,historyContinue:`המשך צ׳אט`,historyLoading:`טוען את הצ׳אטים שלך…`,historyTitle:`היסטוריית צ׳אטים`,loadMoreConversations:`טעינת שיחות נוספות`,language:`שפה`,launcherOpen:`פתיחת צ׳אט`,launcherLabel:`דברו איתנו`,micStart:`התחלת קלט קולי`,micStop:`עצירת קלט קולי`,micUnsupported:`קלט קולי אינו נתמך בדפדפן זה`,moreActions:`פעולות נוספות`,newConversation:`צ׳אט חדש`,panelTitle:`צ׳אט`,popOut:`פתיחה בכרטיסייה חדשה`,resizeHandle:`גרור לשינוי הגודל`,scrollToBottom:`מעבר לחדש ביותר`,send:`שליחה`,queueMessage:`הוספת ההודעה לתור`,removeQueuedMessage:`הסרת ההודעה מהתור`,compactingContext:`מבצע אופטימיזציה להקשר השיחה…`,soundOff:`השתקת הצליל`,soundOn:`הפעלת הצליל`,startNewConversation:`התחלת צ׳אט חדש`,talkToOperator:`דברו עם אדם`,connectingOperator:`מחברים אותך לאדם…`,noOperatorAvailable:`אין נציגים זמינים כעת — השאר את הפרטים שלך ונחזור אליך.`,chattingWithOperator:`אתה מצ׳וטט עם {operator}`,cancelOperatorRequest:`המשך לשוחח עם ה-AI`,stop:`עצירה`,theme:`ערכת נושא`,themeAuto:`אוטומטי`,themeDark:`כהה`,themeLight:`בהיר`,textSize:`גודל טקסט`,textSizeSmall:`קטן`,textSizeNormal:`רגיל`,textSizeLarge:`גדול`,loading:`טוען…`,visualPreparing:`מכין תצוגה…`,visualError:`לא ניתן היה להציג תצוגה זו.`,visualPartial:`לא ניתן היה להציג חלקים מתצוגה זו.`,thinking:`חושב…`,thoughts:`מחשבות`,toolResult:`תוצאה`,sources:`מקורות`,feedbackUp:`תשובה טובה`,feedbackDown:`תשובה גרועה`,feedbackThanks:`תודה על המשוב`,copy:`העתק`,copied:`הועתק`,tabHome:`בית`,tabConversations:`צ׳אטים`,tabHelp:`עזרה`,tabNews:`חדשות`,modulesEmpty:`אין כאן עדיין כלום`,moduleBack:`חזרה`,contentLoading:`טוען…`,contentHelpful:`האם זה עזר?`,homeGreeting:`כיצד נוכל לעזור?`,homeGreetingNamed:`שלום {name} 👋`,homeGreetingLead:`כיצד נוכל לעזור?`,homeSearchPlaceholder:`חיפוש עזרה`,homeAskPlaceholder:`שאלו שאלה…`,homeWhatsNew:`מה חדש`,homeContentTitle:`מאמרים פופולריים`,homeStatus:`סטטוס`,helpTitle:`עזרה`,helpSearchPlaceholder:`חיפוש עזרה`,helpEmpty:`אין עדיין מאמרי עזרה`,helpLoading:`טוען עזרה…`,helpSearchEmpty:`אין תוצאות עבור „{query}”`,helpShowMore:`הצגת עוד`,newsTitle:`חדשות`,newsEmpty:`אין עדיין חדשות`,newsLoading:`טוען חדשות…`,newsBack:`חזרה לחדשות`,newsPublishedAt:`פורסם ב-{date}`,newsShowMore:`הצגת עוד`,newsUnseen:`פוסט חדש`,formSubmit:`שליחה`,formSkip:`אחר כך`,formSubmitted:`נשלח`,formSkipped:`דולג`,formFillOut:`מילוי`,formRequired:`שדה חובה`,formInvalidEmail:`הזן כתובת אימייל תקינה`,formInvalidTel:`הזן מספר טלפון תקין`,formInvalidUrl:`הזן כתובת URL תקינה`,formInvalidNumber:`הזן מספר תקין`,formTooShort:`קצר מדי (לפחות {min} תווים)`,formTooLong:`ארוך מדי (לכל היותר {max} תווים)`,formNumberTooSmall:`חייב להיות לפחות {min}`,formNumberTooLarge:`חייב להיות לכל היותר {max}`,formPatternMismatch:`התאם לתבנית הנדרשת`,formChooseAtLeast:`בחר לפחות {min}`,formChooseAtMost:`בחר לכל היותר {max}`,formOther:`אחר`,formOtherPlaceholder:`כתוב את תשובתך…`,inputRequired:`שאלות עבורך`,inputBadge:`שאלות`,inputAnswered:`נענה`,inputSkipped:`דולג`,showOptions:`הצג אפשרויות`,hideOptions:`הסתר אפשרויות`,qtypeText:`התשובה שלך`,qtypeEmail:`כתובת אימייל`,qtypePhone:`מספר טלפון`,qtypeNumber:`מספר`,qtypeDate:`תאריך`,qtypeChooseOne:`בחר אחת`,qtypeChooseAny:`בחר כמה`,qtypeBoolean:`כן / לא`,inputSubmit:`שליחת תשובות`,inputSubmitHint:`Enter לשליחה · Shift+Enter = שורה חדשה`,inputSkip:`דילוג`,confirmYes:`כן`,confirmNo:`לא`,approve:`אישור`,reject:`דחייה`,approvalPrompt:`הכלי {tool} דורש את אישורך כדי לפעול.`,approvalBody:`בדוק את פרמטרי הכלי שלמעלה והחלט אם לאשר פעולה זו.`,approvalYourResponse:`התגובה שלך: {decision}`,approvalEditHint:`ניתן לערוך את תגובתך עד שהשלב הזה יתחדש.`,approvalSubmitting:`התגובה נשלחה. מבצע…`,edit:`עריכה`,toolParameters:`פרמטרים`,statusAwaiting:`ממתין לאישור`,statusResponded:`נשלח`,statusRunning:`פועל`,statusCompleted:`הושלם`,statusDenied:`נדחה`,statusError:`שגיאה`,statusSuperseded:`דולג`}};function E(e,t){let n=D(e),r=j(t),i=n===`en`?{}:T[n]??{},a=r?t[n]??{}:t??{},o=r?t.en??{}:{};return{...w,...i,...o,...a}}function D(e){return(e.split(`-`)[0]??`en`).toLowerCase()}const O=/* @__PURE__ */ new Set([`ar`,`he`,`iw`,`fa`,`ur`,`ps`,`sd`,`ug`,`yi`,`dv`,`ckb`,`ks`,`nqo`,`prs`,`syr`]);function k(e){return O.has(D(e))}function A(e,t){return e[t]??t}function j(e){if(!e)return!1;for(let t of Object.values(e))if(t&&typeof t==`object`)return!0;return!1}const M={id:`help-ai`,name:`@helpai/elements`,global:`HelpAI`,tagName:`web-ai-chat`,cssPrefix:`helpai`,defaultBaseUrl:`https://help.ai`,displayName:`Help AI`,domain:`help.ai`,siteUrl:`https://help.ai`},ee=new class{get(e){try{return localStorage.getItem(e)}catch{return null}}set(e,t){try{localStorage.setItem(e,t)}catch{}}remove(e){try{localStorage.removeItem(e)}catch{}}},te={maxBytes:10485760,maxCount:10,accept:`*/*`},N={voice:`local`},ne={list:[],byTrigger:{}},re={enabled:!0,sampleRate:1},ie={upload:`/pai/upload-file`,transcribe:`/pai/transcribe-audio`,submitForm:`/pai/submit-form`},P={variant:`circle`,size:`md`,label:void 0,icon:`chat`,hidden:!1},ae={floating:[`theme`,`textSize`,`history`,`close`,`clear`,`expand`,`fullscreen`,`popOut`,`sound`,`language`],inline:[`theme`,`textSize`,`history`,`close`,`clear`,`fullscreen`,`popOut`,`sound`,`language`],standalone:[`theme`,`textSize`,`history`,`clear`,`sound`,`language`],page:[`theme`,`textSize`,`history`,`clear`,`sound`,`language`],modal:[`theme`,`textSize`,`history`,`close`,`clear`,`fullscreen`,`popOut`,`sound`,`language`],drawer:[`theme`,`textSize`,`history`,`close`,`clear`,`fullscreen`,`popOut`,`sound`,`language`]},oe={enabled:!0,volume:.3,events:void 0},F={enabled:!0,events:void 0},I=[{label:`tabConversations`,layout:`chat`}],se=[`off`,`error`,`warn`,`info`,`debug`,`trace`],ce=M.cssPrefix,le=`${ce}.debug`,ue=`__${M.global}_DEBUG__`,de=`${ce}-debug`;let fe=2,pe=null;function me(){if(typeof window>`u`)return 2;try{let e=new URLSearchParams(window.location.search).get(de);if(e!==null){let t=he(e);if(t>=0)return t}}catch{}try{let e=window.localStorage?.getItem(le);if(e){let t=he(e);if(t>=0)return t}}catch{}return Reflect.get(window,ue)?4:2}function he(e){if(e===!0||e===`1`||e===`true`)return 4;if(e===!1||e===`0`||e===`false`||e===`off`)return 0;if(typeof e==`number`)return Math.max(0,Math.min(5,Math.floor(e)));if(typeof e==`string`){let t=se.findIndex(t=>t===e);if(t>=0)return t}return-1}function L(e){let t=he(e);if(!(t<0)){fe=t;try{window.localStorage?.setItem(le,se[t]??`off`)}catch{}}}function ge(){return se[fe]??`warn`}fe=me();function _e(e){let t=`[${ce}:${e}]`;function n(n,r,i){return(a,o)=>{if(!(fe<n)&&(o===void 0?console[r](t,a):console[r](t,a,o),pe))try{pe({level:i,scope:e,message:a,payload:o})}catch{}}}return{error:n(1,`error`,`error`),warn:n(2,`warn`,`warn`),info:n(3,`info`,`info`),debug:n(4,`debug`,`debug`),trace:n(5,`debug`,`trace`),scope:t=>_e(`${e}:${t}`)}}const R=_e(`core`);function ve(e){pe=e}const z=R.scope(`context`),ye=/* @__PURE__ */ new Set([`visitorId`,`conversationId`,`jwt`,`token`,`authorization`,`password`]),be=1024,xe=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function Se(e){return we(e,`userContext`,!0)}function Ce(e){return we(e,`pageContext`,!1)}function we(e,t,n){if(e==null)return;if(typeof e!=`object`||Array.isArray(e)){z.warn(`ignored ${t} — expected an object`,{type:Array.isArray(e)?`array`:typeof e});return}let r={},i=0;for(let[n,a]of Object.entries(e)){if(ye.has(n)){z.warn(`dropped reserved ${t} key "${n}" — managed by the widget, not host-settable`);continue}if(a==null)continue;if(i>=50){z.warn(`${t} truncated at 50 keys — dropped "${n}"`);continue}let e=Te(t,n,a);e!==void 0&&(r[n]=e,i++)}return n&&typeof r.email==`string`&&!xe.test(r.email)&&(z.warn(`dropped malformed context field`,{field:`${t}.email`,reason:`invalid format`}),delete r.email),Object.keys(r).length>0?r:void 0}function Te(e,t,n){if(typeof n==`boolean`)return n;if(typeof n==`number`){if(!Number.isFinite(n)){z.warn(`dropped non-finite ${e}.${t}`);return}return n}if(typeof n==`string`){let r=n.trim();return r===``?void 0:r.length>be?(z.warn(`truncated ${e}.${t} to ${be} chars`),r.slice(0,be)):r}z.warn(`dropped ${e}.${t} — only string/number/boolean values are allowed`,{type:typeof n})}function Ee(e){let t=typeof e==`object`&&e?e:{},n=t.presentation??{},r=t.behavior??{},i=t.i18n??{},a=t.feedback??{},o=t.footer??{},s=t.header??{},{themeMode:c,themeOverrides:l}=De(t.theme),u=n.mode??`floating`,d=Oe(i.defaultLocale),f=i.availableLocales??[i.locale??d],p=ke(i.locale??d,f,d),m=(t.baseUrl??M.defaultBaseUrl).replace(/\/$/,``),h=(t.agentApiBaseUrl??`${m}/api/agent`).replace(/\/$/,``),g=(t.dataApiBaseUrl??`${m}/api/data`).replace(/\/$/,``);return{widgetId:t.widgetId??`default`,publicKey:t.publicKey,aiAgentDeploymentId:t.aiAgentDeploymentId,baseUrl:m,agentApiBaseUrl:h,dataApiBaseUrl:g,userContext:Se(t.userContext),pageContext:Ce(t.pageContext),position:n.position??`bottom-right`,themeMode:c,textSize:`normal`,themeOverrides:l,mode:u,iframe:n.iframe??!1,responseMode:r.responseMode??`streaming`,showReasoning:r.showReasoning??!1,showToolCalls:r.showToolCalls??!1,showSources:r.showSources??!1,enableMessageFeedback:!(r.disableMessageFeedback??!1),autoSendSuggestions:r.autoSendSuggestions??!1,popOutUrl:r.popOutUrl,features:{voice:t.features?.voice??N.voice,fileUpload:!(t.features?.disableFileUpload??!1),humanInLoop:!(t.features?.disableHumanInLoop??!1),operatorRequest:t.features?.enableOperatorRequest===!0},forms:Le(t.forms,p),endpoints:{upload:t.endpoints?.upload??ie.upload,transcribe:t.endpoints?.transcribe??ie.transcribe,submitForm:t.endpoints?.submitForm??ie.submitForm},attachments:{accept:t.composer?.attachments?.accept??te.accept,maxBytes:t.composer?.attachments?.maxBytes??te.maxBytes,maxCount:t.composer?.attachments?.maxCount??te.maxCount},locale:p,defaultLocale:d,availableLocales:f,startMinimized:r.startMinimized??!0,actions:Ae(u,s.actions),size:n.size??{},launcher:ze(t.launcher),sound:je(a.sound),haptics:Me(a.haptics),strings:E(p,i.strings),stringsOverride:i.strings,composerDisclaimer:o.composerDisclaimer??``,poweredBy:Pe(o.poweredBy),composer:Fe(t.composer),modules:Ie(t.modules),tracking:Ne(t.tracking,g),storage:t.storage??ee,onMessage:t.onMessage,onOpen:t.onOpen,onClose:t.onClose,onError:t.onError}}function De(e){return typeof e==`string`?{themeMode:e,themeOverrides:{}}:e&&typeof e==`object`?{themeMode:`auto`,themeOverrides:e}:{themeMode:`auto`,themeOverrides:{}}}function Oe(e){return e&&e!==`auto`?e:globalThis.navigator?.language||`en`}function ke(e,t,n){return t.length<=1||t.includes(e)?e:t.includes(n)?n:t[0]??e}function Ae(e,t){return t??ae[e]}function je(e){return{enabled:e?.enabled??oe.enabled,volume:e?.volume??oe.volume,events:e?.events}}function Me(e){return{enabled:e?.enabled??F.enabled,events:e?.events}}function Ne(e,t){let n=e?.sampleRate??re.sampleRate;return{enabled:e?.enabled??re.enabled,endpoint:e?.endpoint??`${t}/pai/elements-px.gif`,sampleRate:Math.min(1,Math.max(0,Number.isFinite(n)?n:1)),token:e?.token}}function Pe(e){let t={text:`Powered by ${M.displayName}`,href:M.siteUrl,...e};return t.text||t.logoUrl?t:null}function Fe(e){let t=e?.sendButton;return{sendButton:{shape:t?.shape??`circle`,icon:t?.icon??`arrowUp`,variant:t?.variant??`filled`}}}function Ie(e){let t=e??I,n=/* @__PURE__ */ new Set,r=[];for(let e of t.slice(0,4)){if(!e?.label||!e?.layout)continue;let t=e.contentCollectionIds?.filter(Boolean),i=e.id??t?.[0]??e.layout;for(;n.has(i);)i=`${i}-${r.length}`;n.add(i);let a={id:i,label:e.label,layout:e.layout};t?.length&&(a.contentCollectionIds=t),e.layout===`home`&&(a.brandName=e.brandName,a.greetingText=e.greetingText,a.showGreeting=!(e.hideGreeting??!1),a.showSearchBar=!(e.hideSearchBar??!1),a.showRecentConversations=!(e.hideRecentConversations??!1),e.userAvatars?.length&&(a.userAvatars=e.userAvatars),e.status&&(a.status=e.status),a.contentBlockTitle=e.contentBlockTitle),r.push(a)}return{list:r,byId:Object.fromEntries(r.map(e=>[e.id,e]))}}function Le(e,t){if(!e?.length)return ne;let n=[],r=/* @__PURE__ */ new Set;for(let i of e){if(!i?.id||r.has(i.id))continue;let e=C(i,t),a=(e.fields??[]).filter(e=>!!(e?.name&&e.label&&e.type)),o=(Array.isArray(e.on)?e.on:[e.on]).map(Re).filter(e=>e!==null);a.length!==0&&o.length!==0&&(r.add(e.id),n.push({id:e.id,triggers:o,when:e.when,fields:a,title:e.title,description:e.description,submitLabel:e.submitLabel,skippable:e.skippable??!1,frequency:e.frequency??`once`,mirrorToContext:e.mirrorToContext??!0,reopenable:e.reopenable??!0,reviewable:e.reviewable??!0}))}let i={};for(let e of n){var a;for(let t of e.triggers)(i[a=t.kind]??(i[a]=[])).push(e)}return{list:n,byTrigger:i}}function Re(e){if(typeof e!=`string`)return null;if(e===`pre-chat`||e===`conversation-closed`||e===`panel-close`||e===`manual`)return{kind:e};let[t,n]=e.split(`:`,2);if(t===`after-messages`){let e=Number(n);return Number.isFinite(e)&&e>0?{kind:`after-messages`,param:e}:null}if(t===`idle`){let e=Number(n);return Number.isFinite(e)&&e>0?{kind:`idle`,param:e}:null}return t===`page-area`&&n?{kind:`page-area`,param:n}:null}function ze(e){let t=e?.callout?.text?{shape:`pill`,position:`auto`,delayMs:1200,autoDismissMs:0,animated:!0,persistent:!0,...e.callout}:null;return{variant:e?.variant??P.variant,size:e?.size??P.size,label:e?.label??P.label,icon:e?.icon??P.icon,hidden:e?.hidden??P.hidden,callout:t}}function Be(e,t,n,r){let i=ke(t,e.availableLocales,e.defaultLocale);if(i===e.locale&&n===e.themeMode&&r===e.textSize)return e;let a={...e};return i!==e.locale&&(a.locale=i,a.strings=E(i,e.stringsOverride)),n!==e.themeMode&&(a.themeMode=n),r!==e.textSize&&(a.textSize=r),a}const Ve=[`presentation`,`behavior`,`theme`,`launcher`,`header`,`composer`,`feedback`,`i18n`,`footer`,`features`,`tracking`,`endpoints`];function He(e,t){if(!t)return e;let n={...e};for(let r of Ve){let i=t[r];if(i===void 0)continue;let a=e[r];r===`theme`?a===void 0&&(n[r]=i):r!==`i18n`&&(n[r]=Ue(i,a))}t.modules!==void 0&&e.modules===void 0&&(n.modules=t.modules),t.dataApiBaseUrl!==void 0&&e.dataApiBaseUrl===void 0&&(n.dataApiBaseUrl=t.dataApiBaseUrl);let r=e.i18n,i=t.i18n;if(r||i){let e=Ue(i??{},r);i?.availableLocales!==void 0&&(e.availableLocales=i.availableLocales),i?.defaultLocale!==void 0&&(e.defaultLocale=i.defaultLocale);let t=r?.strings,a=i?.strings;(t||a)&&(e.strings=We(a,t)),n.i18n=e}return n}function Ue(e,t){if(!t)return e;let n={...e};for(let[e,r]of Object.entries(t))r!==void 0&&(n[e]=r);return n}function We(e,t){if(!e)return t;if(!t)return e;let n=j(e),r=j(t);if(!n&&!r)return{...e,...t};let i={},a=n?e:{en:e},o=r?t:{en:t};for(let[e,t]of Object.entries(a))i[e]={...t};for(let[e,t]of Object.entries(o))i[e]={...i[e],...t};return i}const Ge=[`clear`,`expand`,`fullscreen`,`popOut`,`sound`,`history`,`language`,`theme`,`textSize`,`close`];function Ke(e){return e!==`false`}const qe=[[`public-key`,`publicKey`],[`ai-agent-deployment-id`,`aiAgentDeploymentId`],[`base-url`,`baseUrl`],[`agent-api-base-url`,`agentApiBaseUrl`],[`data-api-base-url`,`dataApiBaseUrl`],[`theme`,`theme`,e=>e]],Je=[[`mode`,`mode`,e=>e],[`position`,`position`,e=>e],[`iframe`,`iframe`,Ke]],B=[[`width`,`width`],[`height`,`height`]],Ye=[[`response-mode`,`responseMode`,e=>e],[`start-minimized`,`startMinimized`,Ke],[`show-reasoning`,`showReasoning`,Ke],[`show-tool-calls`,`showToolCalls`,Ke],[`show-sources`,`showSources`,Ke],[`disable-message-feedback`,`disableMessageFeedback`,Ke],[`auto-send-suggestions`,`autoSendSuggestions`,Ke],[`pop-out-url`,`popOutUrl`]],Xe=[[`locale`,`locale`]];new Set(Ge);const Ze=[[`launcher-variant`,`variant`,e=>e],[`launcher-size`,`size`,e=>e],[`launcher-icon`,`icon`],[`launcher-hidden`,`hidden`,Ke]],Qe=[[`features-disable-file-upload`,`disableFileUpload`,Ke],[`features-voice`,`voice`,e=>e]],$e=[[`endpoint-upload`,`upload`],[`endpoint-transcribe`,`transcribe`]],et=[[`user-id`,`id`],[`user-email`,`email`],[`user-name`,`name`]],tt=[[`page-area`,`area`],[`page-url`,`url`],[`page-path`,`path`],[`page-title`,`title`]],nt=[`launcher-label`,`callout-text`,`callout-delay`,`actions`,`user-context`,`page-context`],rt=[qe,Je,B,Ye,Xe,Ze,Qe,$e,et,tt],it=/* @__PURE__ */ new Set([`iframe`,`start-minimized`]);[...rt.flatMap(e=>e.map(([e])=>e).filter(e=>!it.has(e))),...nt];function at(){let e=Date.now(),t=/* @__PURE__ */ new Uint8Array(16);t[0]=Math.floor(e/2**40)&255,t[1]=Math.floor(e/2**32)&255,t[2]=e>>>24&255,t[3]=e>>>16&255,t[4]=e>>>8&255,t[5]=e&255,ot(t.subarray(6)),t[6]=t[6]&15|112,t[8]=t[8]&63|128;let n=Array.from(t,e=>e.toString(16).padStart(2,`0`)).join(``);return`${n.slice(0,8)}-${n.slice(8,12)}-${n.slice(12,16)}-${n.slice(16,20)}-${n.slice(20)}`}function ot(e){if(typeof crypto<`u`&&typeof crypto.getRandomValues==`function`)crypto.getRandomValues(e);else for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256)}const st=R.scope(`persistence`);function ct(e,t=ee,n){let r=n?`${e}.${n}`:e,i=`${M.cssPrefix}.storageVersion`,a=t.get(i)??void 0,o=a?`.v${a}`:``,s=`${M.cssPrefix}.${r}${o}`,c=`${M.cssPrefix}${o}.visitorId`,l=`${s}.conversationId`,u=`${s}.userPrefs`,d=`${s}.panelOpen`,f=`${s}.panelSize`,p=`${s}.calloutDismissed`,m=`${s}.sidebarCollapsed`,h=`${s}.activeModule`,g=`${s}.seenNewsId`,_=`${s}.historyCount`,v=`${s}.formsDone`,y={getVisitorId(){let e=t.get(c);if(e)return e;let n=at();return t.set(c,n),n},loadConversationId(){return t.get(l)??void 0},saveConversationId(e){st.trace(`saveConversationId`,{id:e,scope:r}),e?t.set(l,e):t.remove(l)},loadDraft(e){return t.get(`${s}.draft.${e}`)??``},saveDraft(e,n){let r=`${s}.draft.${e}`;n?t.set(r,n):t.remove(r)},loadMessageQueue(e){let n=t.get(`${s}.messageQueue.${e}`);if(!n)return[];try{let e=JSON.parse(n);return!Array.isArray(e)||!e.every(ut)?[]:e}catch(e){return st.warn(`loadMessageQueue parse failed`,{error:e}),[]}},saveMessageQueue(e,n){let r=`${s}.messageQueue.${e}`;if(n.length===0)t.remove(r);else try{t.set(r,JSON.stringify(n))}catch(e){st.warn(`saveMessageQueue serialise failed`,{error:e})}},loadUserPrefs(){let e=t.get(u);if(!e)return{};try{return dt(JSON.parse(e))}catch(e){return st.warn(`loadUserPrefs parse failed`,{error:e}),{}}},saveUserPrefs(e){try{t.set(u,JSON.stringify(e))}catch(e){st.warn(`saveUserPrefs serialise failed`,{error:e})}},patchUserPrefs(e){let t=y.loadUserPrefs();y.saveUserPrefs({...t,...e})},loadPanelOpen(){let e=t.get(d);return e===`1`||e!==`0`&&null},savePanelOpen(e){t.set(d,e?`1`:`0`)},loadPanelSize(){let e=t.get(f);return e===`normal`||e===`expanded`||e===`fullscreen`?e:null},savePanelSize(e){t.set(f,e)},loadCalloutDismissed(e){if(!e)return!1;let n=t.get(p);return!!n&&n===e},saveCalloutDismissed(e){e?t.set(p,e):t.remove(p)},loadSidebarCollapsed(){let e=t.get(m);return e===`1`||e!==`0`&&null},saveSidebarCollapsed(e){t.set(m,e?`1`:`0`)},loadActiveModule(){return t.get(h)||null},saveActiveModule(e){t.set(h,e)},loadSeenNewsId(){return t.get(g)||null},saveSeenNewsId(e){t.set(g,e)},loadHistoryCount(){let e=t.get(_);if(!e)return null;let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=0?n:null},saveHistoryCount(e){t.set(_,String(e))},loadFormsDone(){let e=t.get(v);if(!e)return{};try{let t=JSON.parse(e);return lt(t)?Object.fromEntries(Object.entries(t).filter(e=>typeof e[1]==`number`)):{}}catch(e){return st.warn(`loadFormsDone parse failed`,{error:e}),{}}},saveFormDone(e){try{let n=y.loadFormsDone();n[e]=Date.now(),t.set(v,JSON.stringify(n))}catch(e){st.warn(`saveFormDone serialise failed`,{error:e})}},rememberStorageVersion(e){e&&e!==t.get(i)&&(st.debug(`rememberStorageVersion (force-reset on next load)`,{version:e}),t.set(i,e))},clearConversation(){t.remove(l)}};return y}function lt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ut(e){return lt(e)&&typeof e.id==`string`&&e.id.length>0&&typeof e.text==`string`}function dt(e){if(!lt(e))return{};let t={};return typeof e.locale==`string`&&(t.locale=e.locale),typeof e.soundMuted==`boolean`&&(t.soundMuted=e.soundMuted),(e.themeMode===`auto`||e.themeMode===`light`||e.themeMode===`dark`)&&(t.themeMode=e.themeMode),(e.textSize===`small`||e.textSize===`normal`||e.textSize===`large`)&&(t.textSize=e.textSize),lt(e.widgetSize)&&typeof e.widgetSize.width==`number`&&typeof e.widgetSize.height==`number`&&(t.widgetSize={width:e.widgetSize.width,height:e.widgetSize.height}),t}const ft=`1.5.10`,pt={open:()=>void 0,close:()=>void 0,expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>void 0,clear:()=>void 0,suggestion:()=>void 0,toggleHistory:e=>({view:e.view}),handshake:()=>void 0,formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>void 0,toolDecision:e=>({approved:e.approved}),messageFeedback:e=>({value:e.value??`none`}),contentView:e=>({section:e.section,count:e.count}),contentOpen:e=>({contentId:e.contentId,contentCollectionId:e.contentCollectionId}),contentSearch:e=>({qlen:e.queryLength,hits:e.hitCount}),contentRead:e=>({contentId:e.contentId}),contentLinkClick:e=>({contentId:e.contentId}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>void 0,voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>void 0,localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>void 0,error:()=>void 0};function mt(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack===`1`}function ht(){return location.origin+location.pathname}function gt(){try{return document.referrer?new URL(document.referrer).origin:``}catch{return``}}function _t(e,t){let n=Math.random(),r=0,i=0,a=/* @__PURE__ */ new Set;function o(e,o){let{tracking:s,publicKey:c,aiAgentDeploymentId:l,mode:u,themeMode:d}=t.getOptions();if(!s.enabled||mt()||n>=s.sampleRate)return;let f=performance.now();if(f-r>6e4&&(r=f,i=0),++i>60)return;let p=new URLSearchParams;p.set(`v`,`1`),p.set(`_ev`,ft),p.set(`e`,e),s.token&&p.set(`tk`,s.token),c&&p.set(`pk`,c),l&&p.set(`dep`,l),p.set(`vid`,t.getVisitorId());let m=t.getConversationId();m&&p.set(`cid`,m),p.set(`url`,ht());let h=gt();h&&p.set(`ref`,h),p.set(`sw`,String(screen.width)),p.set(`sh`,String(screen.height)),p.set(`vw`,String(innerWidth)),p.set(`vh`,String(innerHeight)),p.set(`dpr`,String(devicePixelRatio)),p.set(`lang`,navigator.language);try{p.set(`tz`,Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(p.set(`m`,u),p.set(`th`,d),o)for(let[e,t]of Object.entries(o))t!==void 0&&p.set(e,String(t));p.set(`ts`,String(Date.now()));let g=`${s.endpoint}?${p}`;if(g.length>2e3)return;let _=new Image(1,1);a.add(_);function v(){return a.delete(_)}_.addEventListener(`load`,v,{once:!0}),_.addEventListener(`error`,v,{once:!0}),_.src=g}let s=Object.keys(pt).map(t=>e.on(t,e=>o(t,pt[t]?.(e))));return()=>{for(let e of s)e();a.clear()}}const vt=`:host{--__P__-accent-user: __BRAND_ACCENT__;--__P__-accent: var(--__P__-accent-user);--__P__-accent-text-user: __BRAND_ACCENT_TEXT__;--__P__-accent-text: var(--__P__-accent-text-user);--__P__-accent-fg: var(--__P__-accent);--__P__-radius: __BRAND_RADIUS__;--__P__-radius-sm: 8px;--__P__-radius-md: 10px;--__P__-radius-lg: 16px;--__P__-font: __BRAND_FONT__;--__P__-font-display: var(--__P__-font);--__P__-font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--__P__-bg: oklch(1 0 0);--__P__-bg-elevated: oklch(.9789 .0029 278.3);--__P__-surface: var(--__P__-bg-elevated);--__P__-muted: var(--__P__-fg-muted);--__P__-hover: oklch(.1686 .011 278.3 / .06);--__P__-fg: oklch(.1686 .011 278.3);--__P__-fg-muted: oklch(.4932 .0301 278.3);--__P__-border: oklch(.9312 .0084 278.3);--__P__-border-strong: oklch(.8757 .0131 278.3);--__P__-bubble-user: var(--__P__-accent);--__P__-bubble-user-text: var(--__P__-accent-text);--__P__-bubble-assistant: oklch(.9638 .0058 278.3);--__P__-bubble-assistant-text: var(--__P__-fg);--__P__-on-accent: var(--__P__-accent-text);--__P__-success: oklch(.6456 .1654 151.53);--__P__-warning: oklch(.7135 .1494 74.05);--__P__-danger: oklch(.5966 .1818 24.51);--__P__-danger-text: oklch(.5054 .1905 27.52);--__P__-danger-bg: oklch(.5966 .1818 24.51 / .1);--__P__-neutral: oklch(.7137 .0192 278.3);--__P__-pill-l-min: .3;--__P__-pill-l-max: .46;--__P__-focus: var(--__P__-accent);--__P__-shadow-panel: 0 8px 24px -8px rgba(13, 15, 20, .18), 0 24px 64px -24px rgba(13, 15, 20, .24);--__P__-shadow-card: 0 1px 2px rgba(13, 15, 20, .06), 0 4px 12px -6px rgba(13, 15, 20, .12);--__P__-backdrop: oklch(.1686 .011 278.3 / .55);--__P__-shadow-fab: 0 6px 16px -4px color-mix(in oklch, var(--__P__-accent) 45%, transparent), 0 12px 32px -12px rgba(13, 15, 20, .25);--__P__-z-fab: 2147483600;--__P__-z-panel: 2147483601;--__P__-panel-w: 380px;--__P__-panel-h: 600px;--__P__-fab-size: 56px;--__P__-conversation-max: 768px;--__P__-space-1: 4px;--__P__-space-2: 8px;--__P__-space-3: 12px;--__P__-space-4: 16px;--__P__-space-5: 20px;--__P__-space-6: 24px;--__P__-space-8: 32px;--__P__-text-scale: 1;--__P__-text-xs: calc(12px * var(--__P__-text-scale));--__P__-text-sm: calc(13px * var(--__P__-text-scale));--__P__-text-base: calc(15px * var(--__P__-text-scale));--__P__-text-md: calc(16px * var(--__P__-text-scale));--__P__-text-lg: calc(18px * var(--__P__-text-scale));--__P__-text-xl: calc(22px * var(--__P__-text-scale));--__P__-text-2xl: calc(30px * var(--__P__-text-scale))}:host([data-mode="modal"]),:host([data-mode="drawer"]){--__P__-conversation-max: 100%}:host([data-text-size="small"]){--__P__-text-scale: .9}:host([data-text-size="large"]){--__P__-text-scale: 1.15}:host{--__P__-ease: cubic-bezier(.2, .7, .2, 1);--__P__-ease-out: cubic-bezier(.2, .7, .2, 1);--__P__-ease-in: cubic-bezier(.4, 0, 1, 1);--__P__-ease-in-out: cubic-bezier(.65, 0, .35, 1);--__P__-dur-quick: .12s;--__P__-dur-base: .22s;--__P__-dur-slow: .32s;font-family:var(--__P__-font);color:var(--__P__-fg);color-scheme:light;--__P__-color-scheme: light}:host([data-theme="dark"]){--__P__-bg: oklch(.1783 .0128 278.3);--__P__-bg-elevated: oklch(.2232 .0182 278.3);--__P__-fg: oklch(.9368 .01 278.3);--__P__-fg-muted: oklch(.7048 .0296 278.3);--__P__-border: oklch(.2752 .0266 278.3);--__P__-border-strong: oklch(.335 .0291 278.3);--__P__-hover: oklch(.9368 .01 278.3 / .08);--__P__-bubble-assistant: oklch(.2474 .0311 278.3);--__P__-bubble-assistant-text: var(--__P__-fg);--__P__-danger-text: oklch(.8077 .1035 19.57);--__P__-danger-bg: oklch(.5966 .1818 24.51 / .18);--__P__-shadow-panel: 0 8px 24px -8px rgba(0, 0, 0, .6), 0 24px 64px -24px rgba(0, 0, 0, .7);--__P__-shadow-card: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 12px -6px rgba(0, 0, 0, .5);--__P__-backdrop: rgba(0, 0, 0, .65);--__P__-pill-l-min: .75;--__P__-pill-l-max: .92;color-scheme:dark;--__P__-color-scheme: dark}@media(prefers-color-scheme:dark){:host([data-theme="auto"]){--__P__-bg: oklch(.1783 .0128 278.3);--__P__-bg-elevated: oklch(.2232 .0182 278.3);--__P__-fg: oklch(.9368 .01 278.3);--__P__-fg-muted: oklch(.7048 .0296 278.3);--__P__-border: oklch(.2752 .0266 278.3);--__P__-border-strong: oklch(.335 .0291 278.3);--__P__-hover: oklch(.9368 .01 278.3 / .08);--__P__-bubble-assistant: oklch(.2474 .0311 278.3);--__P__-bubble-assistant-text: var(--__P__-fg);--__P__-pill-l-min: .75;--__P__-pill-l-max: .92;--__P__-shadow-panel: 0 8px 24px -8px rgba(0, 0, 0, .6), 0 24px 64px -24px rgba(0, 0, 0, .7);color-scheme:dark;--__P__-color-scheme: dark}}@supports (color: oklch(from red l c h)){:host{--__P__-accent: oklch(from var(--__P__-accent-user) clamp(.3, l, .62) c h);--__P__-accent-text: oklch(from var(--__P__-accent) clamp(0, (l / .623 - 1) * -infinity, 1) 0 h);--__P__-accent-fg: oklch(from var(--__P__-accent-user) clamp(.3, l, .46) c h)}:host([data-theme="dark"]){--__P__-accent: oklch(from var(--__P__-accent-user) clamp(.65, l, .85) c h);--__P__-accent-fg: var(--__P__-accent)}@media(prefers-color-scheme:dark){:host([data-theme="auto"]){--__P__-accent: oklch(from var(--__P__-accent-user) clamp(.65, l, .85) c h);--__P__-accent-fg: var(--__P__-accent)}}}@media(prefers-reduced-motion:reduce){:host{--__P__-dur-quick: 1ms;--__P__-dur-base: 1ms;--__P__-dur-slow: 1ms}}
|
|
1
|
+
import{Component as e,h as t,render as n}from"preact";import{batch as r,computed as i,effect as a,signal as o,useComputed as s,useSignal as c}from"@preact/signals";import{useCallback as l,useEffect as u,useLayoutEffect as d,useMemo as f,useRef as p,useState as m}from"preact/hooks";import{Fragment as h,jsx as g,jsxs as _}from"preact/jsx-runtime";import*as v from"streaming-markdown";import{memo as y}from"preact/compat";function b(e,t){if(e?.length&&t)return e.find(e=>e.locale===t)}function x(e,t){let{translations:n,defaultLocale:r,...i}=e,a=b(n,t);return a?{...i,title:a.title??i.title,description:a.description??i.description,content:a.content??i.content}:i}function S(e,t){let{translations:n,defaultLocale:r,...i}=e,a=b(n,t);return a?{...i,title:a.title??i.title,description:a.description??i.description}:i}function C(e,t){let{translations:n,defaultLocale:r,...i}=e,a=b(n,t);if(!a)return i;let o=new Map((a.fields??[]).map(e=>[e.name,e])),s=i.fields.map(e=>{let t=o.get(e.name);if(!t)return e;let n=new Map((t.options??[]).map(e=>[e.value,e]));return{...e,label:t.label??e.label,placeholder:t.placeholder??e.placeholder,validationHint:t.validationHint??e.validationHint,options:e.options?.map(e=>{let t=n.get(e.value);return t?{...e,label:t.label??e.label,description:t.description??e.description}:e})}});return{...i,title:a.title??i.title,description:a.description??i.description,submitLabel:a.submitLabel??i.submitLabel,fields:s}}const w={attach:`Attach files`,attachmentMimeRejected:`File type not supported`,attachmentTooLarge:`File is too large`,attachmentTooMany:`Attachment limit reached`,conversationClosed:`This chat is closed`,conversationLoading:`Loading chat…`,loadPreviousMessages:`Load previous messages`,close:`Close`,collapse:`Collapse`,collapseSidebar:`Collapse sidebar`,composerPlaceholder:`Type a message…`,dateLastWeek:`Last 7 days`,dateOlder:`Older`,dateToday:`Today`,dateYesterday:`Yesterday`,dropZone:`Drop files to attach`,errorGeneric:`Something went wrong`,errorRateLimited:`Too many requests — please try again in a moment.`,errorRetry:`Retry`,expand:`Expand`,expandSidebar:`Expand sidebar`,exitFullscreen:`Exit fullscreen`,fullscreen:`Fullscreen`,history:`History`,historyBack:`Back to chat`,historyEmpty:`No previous chats yet`,historyLoading:`Loading your chats…`,historyContinue:`Continue the chat`,historyTitle:`Chat history`,loadMoreConversations:`Load more conversations`,language:`Language`,launcherOpen:`Open chat`,launcherLabel:`Chat with us`,micStart:`Start voice input`,micStop:`Stop voice input`,micUnsupported:`Voice input is not supported in this browser`,moreActions:`More actions`,newConversation:`New chat`,panelTitle:`Chat`,popOut:`Open in new tab`,resizeHandle:`Drag to resize`,scrollToBottom:`Scroll to latest`,send:`Send`,queueMessage:`Queue message`,removeQueuedMessage:`Remove queued message`,compactingContext:`Optimizing conversation context…`,soundOff:`Sound off`,soundOn:`Sound on`,startNewConversation:`Start a new chat`,talkToOperator:`Talk to a person`,connectingOperator:`Connecting you to a person…`,noOperatorAvailable:`No one's available right now — leave your details and we'll follow up.`,chattingWithOperator:`You're chatting with {operator}`,cancelOperatorRequest:`Keep chatting with the AI`,stop:`Stop`,theme:`Theme`,themeAuto:`Auto`,themeDark:`Dark`,themeLight:`Light`,textSize:`Text size`,textSizeSmall:`Small`,textSizeNormal:`Normal`,textSizeLarge:`Large`,loading:`Loading…`,visualPreparing:`Preparing visual…`,visualError:`This visual could not be displayed.`,visualPartial:`Some parts of this visual could not be displayed.`,thinking:`Thinking…`,thoughts:`Thoughts`,toolResult:`Result`,sources:`Sources`,feedbackUp:`Good response`,feedbackDown:`Bad response`,feedbackThanks:`Thanks for your feedback`,copy:`Copy`,copied:`Copied`,tabHome:`Home`,tabConversations:`Chats`,tabHelp:`Help`,tabNews:`News`,modulesEmpty:`Nothing here yet`,moduleBack:`Back`,contentLoading:`Loading…`,contentHelpful:`Was this helpful?`,homeGreeting:`How can we help?`,homeGreetingNamed:`Hi {name} 👋`,homeGreetingLead:`How can we help?`,homeSearchPlaceholder:`Search for help`,homeAskPlaceholder:`Ask a question…`,homeWhatsNew:`What's new`,homeContentTitle:`Popular articles`,homeStatus:`Status`,helpTitle:`Help`,helpSearchPlaceholder:`Search for help`,helpEmpty:`No help articles yet`,helpLoading:`Loading help…`,helpSearchEmpty:`No results for “{query}”`,helpShowMore:`Show more`,newsTitle:`News`,newsEmpty:`No news yet`,newsLoading:`Loading news…`,newsBack:`Back to news`,newsPublishedAt:`Published {date}`,newsShowMore:`Show more`,newsUnseen:`New post`,formSubmit:`Submit`,formSkip:`Maybe later`,formSubmitted:`Completed`,formSkipped:`Maybe later`,formFillOut:`Fill out`,formRequired:`This field is required`,formInvalidEmail:`Enter a valid email address`,formInvalidTel:`Enter a valid phone number`,formInvalidUrl:`Enter a valid URL`,formInvalidNumber:`Enter a valid number`,formTooShort:`Too short (min {min} characters)`,formTooLong:`Too long (max {max} characters)`,formNumberTooSmall:`Must be at least {min}`,formNumberTooLarge:`Must be at most {max}`,formPatternMismatch:`Please match the requested format`,formChooseAtLeast:`Choose at least {min}`,formChooseAtMost:`Choose at most {max}`,formOther:`Other`,formOtherPlaceholder:`Type your answer…`,inputRequired:`Questions for you`,inputBadge:`Questions`,inputAnswered:`Answered`,inputSkipped:`Skipped`,showOptions:`Show options`,hideOptions:`Hide options`,qtypeText:`Your answer`,qtypeEmail:`Email address`,qtypePhone:`Phone number`,qtypeNumber:`Number`,qtypeDate:`Date`,qtypeChooseOne:`Pick one`,qtypeChooseAny:`Pick any`,qtypeBoolean:`Yes / No`,inputSubmit:`Submit answers`,inputSubmitHint:`Enter to send · Shift+Enter = new line`,inputSkip:`Skip`,confirmYes:`Yes`,confirmNo:`No`,approve:`Approve`,reject:`Reject`,approvalPrompt:`{tool} requires your approval to execute.`,approvalBody:`Review the tool input above and decide whether to allow this action.`,approvalYourResponse:`Your response: {decision}`,approvalEditHint:`You can edit this response until this step continues.`,approvalSubmitting:`Response submitted. Request in progress…`,edit:`Edit`,toolParameters:`Parameters`,statusAwaiting:`Awaiting Approval`,statusResponded:`Submitted`,statusRunning:`Running`,statusCompleted:`Completed`,statusDenied:`Denied`,statusError:`Error`,statusSuperseded:`Skipped`},T={en:w,fr:{attach:`Joindre des fichiers`,attachmentMimeRejected:`Type de fichier non pris en charge`,attachmentTooLarge:`Le fichier est trop volumineux`,attachmentTooMany:`Limite de pièces jointes atteinte`,conversationClosed:`Ce chat est fermé`,conversationLoading:`Chargement du chat…`,loadPreviousMessages:`Charger les messages précédents`,close:`Fermer`,collapse:`Réduire`,collapseSidebar:`Réduire la barre latérale`,composerPlaceholder:`Écrivez un message…`,dateLastWeek:`7 derniers jours`,dateOlder:`Plus ancien`,dateToday:`Aujourd'hui`,dateYesterday:`Hier`,dropZone:`Déposez les fichiers à joindre`,errorGeneric:`Une erreur s'est produite`,errorRateLimited:`Trop de requêtes — veuillez réessayer dans un instant.`,errorRetry:`Réessayer`,expand:`Agrandir`,expandSidebar:`Développer la barre latérale`,exitFullscreen:`Quitter le plein écran`,fullscreen:`Plein écran`,history:`Historique`,historyBack:`Retour au chat`,historyEmpty:`Aucun chat pour le moment`,historyContinue:`Poursuivre le chat`,historyLoading:`Chargement de vos chats…`,historyTitle:`Historique des chats`,loadMoreConversations:`Charger plus de conversations`,language:`Langue`,launcherOpen:`Ouvrir le chat`,launcherLabel:`Discuter avec nous`,micStart:`Démarrer la saisie vocale`,micStop:`Arrêter la saisie vocale`,micUnsupported:`La saisie vocale n'est pas prise en charge par ce navigateur`,moreActions:`Plus d'actions`,newConversation:`Nouveau chat`,panelTitle:`Chat`,popOut:`Ouvrir dans un nouvel onglet`,resizeHandle:`Glisser pour redimensionner`,scrollToBottom:`Aller au plus récent`,send:`Envoyer`,queueMessage:`Mettre le message en attente`,removeQueuedMessage:`Retirer le message en attente`,compactingContext:`Optimisation du contexte de la conversation…`,soundOff:`Son désactivé`,soundOn:`Son activé`,startNewConversation:`Démarrer un nouveau chat`,talkToOperator:`Parler à une personne`,connectingOperator:`Mise en relation avec une personne…`,noOperatorAvailable:`Personne n'est disponible pour le moment — laissez vos coordonnées et nous reviendrons vers vous.`,chattingWithOperator:`Vous discutez avec {operator}`,cancelOperatorRequest:`Continuer avec l'IA`,stop:`Arrêter`,theme:`Thème`,themeAuto:`Auto`,themeDark:`Sombre`,themeLight:`Clair`,textSize:`Taille du texte`,textSizeSmall:`Petite`,textSizeNormal:`Normale`,textSizeLarge:`Grande`,loading:`Chargement…`,visualPreparing:`Préparation du visuel…`,visualError:`Ce visuel n’a pas pu être affiché.`,visualPartial:`Certaines parties de ce visuel n’ont pas pu être affichées.`,thinking:`Réflexion…`,thoughts:`Réflexions`,toolResult:`Résultat`,sources:`Sources`,feedbackUp:`Bonne réponse`,feedbackDown:`Mauvaise réponse`,feedbackThanks:`Merci pour votre retour`,copy:`Copier`,copied:`Copié`,tabHome:`Accueil`,tabConversations:`Chats`,tabHelp:`Aide`,tabNews:`Actualités`,modulesEmpty:`Rien pour le moment`,moduleBack:`Retour`,contentLoading:`Chargement…`,contentHelpful:`Cela vous a-t-il aidé ?`,homeGreeting:`Comment pouvons-nous vous aider ?`,homeGreetingNamed:`Bonjour {name} 👋`,homeGreetingLead:`Comment pouvons-nous vous aider ?`,homeSearchPlaceholder:`Rechercher de l'aide`,homeAskPlaceholder:`Posez une question…`,homeWhatsNew:`Nouveautés`,homeContentTitle:`Articles populaires`,homeStatus:`Statut`,helpTitle:`Aide`,helpSearchPlaceholder:`Rechercher de l'aide`,helpEmpty:`Aucun article d'aide pour le moment`,helpLoading:`Chargement de l'aide…`,helpSearchEmpty:`Aucun résultat pour «\xA0{query}\xA0»`,helpShowMore:`Afficher plus`,newsTitle:`Actualités`,newsEmpty:`Aucune actualité pour le moment`,newsLoading:`Chargement des actualités…`,newsBack:`Retour aux actualités`,newsPublishedAt:`Publié le {date}`,newsShowMore:`Afficher plus`,newsUnseen:`Nouvelle publication`,formSubmit:`Envoyer`,formSkip:`Plus tard`,formSubmitted:`Terminé`,formSkipped:`Plus tard`,formFillOut:`Remplir`,formRequired:`Ce champ est obligatoire`,formInvalidEmail:`Saisissez une adresse e-mail valide`,formInvalidTel:`Saisissez un numéro de téléphone valide`,formInvalidUrl:`Saisissez une URL valide`,formInvalidNumber:`Saisissez un nombre valide`,formTooShort:`Trop court (min. {min} caractères)`,formTooLong:`Trop long (max. {max} caractères)`,formNumberTooSmall:`Doit être au moins {min}`,formNumberTooLarge:`Doit être au plus {max}`,formPatternMismatch:`Veuillez respecter le format demandé`,formChooseAtLeast:`Choisissez au moins {min}`,formChooseAtMost:`Choisissez au plus {max}`,formOther:`Autre`,formOtherPlaceholder:`Saisissez votre réponse…`,inputRequired:`Questions pour vous`,inputBadge:`Questions`,inputAnswered:`Répondu`,inputSkipped:`Ignoré`,showOptions:`Afficher les options`,hideOptions:`Masquer les options`,qtypeText:`Votre réponse`,qtypeEmail:`Adresse e-mail`,qtypePhone:`Numéro de téléphone`,qtypeNumber:`Nombre`,qtypeDate:`Date`,qtypeChooseOne:`Choisir une`,qtypeChooseAny:`Choisir plusieurs`,qtypeBoolean:`Oui / Non`,inputSubmit:`Envoyer les réponses`,inputSubmitHint:`Entrée pour envoyer · Maj+Entrée = saut de ligne`,inputSkip:`Ignorer`,confirmYes:`Oui`,confirmNo:`Non`,approve:`Approuver`,reject:`Refuser`,approvalPrompt:`{tool} nécessite votre approbation pour s'exécuter.`,approvalBody:`Vérifiez les paramètres ci-dessus et décidez d'autoriser ou non cette action.`,approvalYourResponse:`Votre réponse : {decision}`,approvalEditHint:`Vous pouvez modifier votre réponse jusqu'à la reprise de cette étape.`,approvalSubmitting:`Réponse envoyée. Traitement en cours…`,edit:`Modifier`,toolParameters:`Paramètres`,statusAwaiting:`En attente d'approbation`,statusResponded:`Envoyé`,statusRunning:`En cours`,statusCompleted:`Terminé`,statusDenied:`Refusé`,statusError:`Erreur`,statusSuperseded:`Ignoré`},ar:{attach:`إرفاق ملفات`,attachmentMimeRejected:`نوع الملف غير مدعوم`,attachmentTooLarge:`حجم الملف كبير جدًا`,attachmentTooMany:`تم بلوغ الحد الأقصى للمرفقات`,conversationClosed:`تم إغلاق هذه الدردشة`,conversationLoading:`جارٍ تحميل الدردشة…`,loadPreviousMessages:`تحميل الرسائل السابقة`,close:`إغلاق`,collapse:`طيّ`,collapseSidebar:`طيّ الشريط الجانبي`,composerPlaceholder:`اكتب رسالة…`,dateLastWeek:`آخر ٧ أيام`,dateOlder:`أقدم`,dateToday:`اليوم`,dateYesterday:`أمس`,dropZone:`أفلت الملفات لإرفاقها`,errorGeneric:`حدث خطأ ما`,errorRateLimited:`طلبات كثيرة جدًا — يرجى المحاولة بعد لحظة.`,errorRetry:`إعادة المحاولة`,expand:`توسيع`,expandSidebar:`توسيع الشريط الجانبي`,exitFullscreen:`إنهاء ملء الشاشة`,fullscreen:`ملء الشاشة`,history:`السجل`,historyBack:`العودة إلى الدردشة`,historyEmpty:`لا توجد دردشات سابقة بعد`,historyContinue:`متابعة الدردشة`,historyLoading:`جارٍ تحميل دردشاتك…`,historyTitle:`سجل الدردشات`,loadMoreConversations:`تحميل المزيد من المحادثات`,language:`اللغة`,launcherOpen:`فتح الدردشة`,launcherLabel:`تحدث معنا`,micStart:`بدء الإدخال الصوتي`,micStop:`إيقاف الإدخال الصوتي`,micUnsupported:`الإدخال الصوتي غير مدعوم في هذا المتصفح`,moreActions:`إجراءات إضافية`,newConversation:`دردشة جديدة`,panelTitle:`الدردشة`,popOut:`فتح في علامة تبويب جديدة`,resizeHandle:`اسحب لتغيير الحجم`,scrollToBottom:`الانتقال إلى الأحدث`,send:`إرسال`,queueMessage:`إضافة الرسالة إلى قائمة الانتظار`,removeQueuedMessage:`إزالة الرسالة من قائمة الانتظار`,compactingContext:`جارٍ تحسين سياق المحادثة…`,soundOff:`كتم الصوت`,soundOn:`تشغيل الصوت`,startNewConversation:`بدء دردشة جديدة`,talkToOperator:`التحدث إلى شخص`,connectingOperator:`جارٍ توصيلك بشخص…`,noOperatorAvailable:`لا يوجد موظفون متاحون الآن — اترك بياناتك وسنتواصل معك.`,chattingWithOperator:`أنت تتحدث مع {operator}`,cancelOperatorRequest:`متابعة المحادثة مع الذكاء الاصطناعي`,stop:`إيقاف`,theme:`المظهر`,themeAuto:`تلقائي`,themeDark:`داكن`,themeLight:`فاتح`,textSize:`حجم النص`,textSizeSmall:`صغير`,textSizeNormal:`عادي`,textSizeLarge:`كبير`,loading:`جارٍ التحميل…`,visualPreparing:`جارٍ إعداد المحتوى المرئي…`,visualError:`تعذر عرض هذا المحتوى المرئي.`,visualPartial:`تعذر عرض بعض أجزاء هذا المحتوى المرئي.`,thinking:`يفكّر…`,thoughts:`الأفكار`,toolResult:`النتيجة`,sources:`المصادر`,feedbackUp:`رد جيد`,feedbackDown:`رد سيئ`,feedbackThanks:`شكرًا على ملاحظاتك`,copy:`نسخ`,copied:`تم النسخ`,tabHome:`الرئيسية`,tabConversations:`الدردشات`,tabHelp:`المساعدة`,tabNews:`الأخبار`,modulesEmpty:`لا شيء هنا بعد`,moduleBack:`رجوع`,contentLoading:`جارٍ التحميل…`,contentHelpful:`هل كان هذا مفيدًا؟`,homeGreeting:`كيف يمكننا مساعدتك؟`,homeGreetingNamed:`مرحبًا {name} 👋`,homeGreetingLead:`كيف يمكننا مساعدتك؟`,homeSearchPlaceholder:`ابحث عن مساعدة`,homeAskPlaceholder:`اطرح سؤالاً…`,homeWhatsNew:`ما الجديد`,homeContentTitle:`مقالات شائعة`,homeStatus:`الحالة`,helpTitle:`المساعدة`,helpSearchPlaceholder:`ابحث عن مساعدة`,helpEmpty:`لا توجد مقالات مساعدة بعد`,helpLoading:`جارٍ تحميل المساعدة…`,helpSearchEmpty:`لا نتائج لـ «{query}»`,helpShowMore:`عرض المزيد`,newsTitle:`الأخبار`,newsEmpty:`لا توجد أخبار بعد`,newsLoading:`جارٍ تحميل الأخبار…`,newsBack:`العودة إلى الأخبار`,newsPublishedAt:`نُشر في {date}`,newsShowMore:`عرض المزيد`,newsUnseen:`منشور جديد`,formSubmit:`إرسال`,formSkip:`لاحقًا`,formSubmitted:`تم`,formSkipped:`لاحقًا`,formFillOut:`تعبئة`,formRequired:`هذا الحقل مطلوب`,formInvalidEmail:`أدخل بريدًا إلكترونيًا صحيحًا`,formInvalidTel:`أدخل رقم هاتف صحيحًا`,formInvalidUrl:`أدخل رابطًا صحيحًا`,formInvalidNumber:`أدخل رقمًا صحيحًا`,formTooShort:`قصير جدًا (الحد الأدنى {min} حرفًا)`,formTooLong:`طويل جدًا (الحد الأقصى {max} حرفًا)`,formNumberTooSmall:`يجب ألا يقل عن {min}`,formNumberTooLarge:`يجب ألا يزيد عن {max}`,formPatternMismatch:`يرجى مطابقة الصيغة المطلوبة`,formChooseAtLeast:`اختر {min} على الأقل`,formChooseAtMost:`اختر {max} على الأكثر`,formOther:`أخرى`,formOtherPlaceholder:`اكتب إجابتك…`,inputRequired:`أسئلة لك`,inputBadge:`أسئلة`,inputAnswered:`تمت الإجابة`,inputSkipped:`تم التخطي`,showOptions:`إظهار الخيارات`,hideOptions:`إخفاء الخيارات`,qtypeText:`إجابتك`,qtypeEmail:`عنوان البريد الإلكتروني`,qtypePhone:`رقم الهاتف`,qtypeNumber:`رقم`,qtypeDate:`تاريخ`,qtypeChooseOne:`اختر واحدًا`,qtypeChooseAny:`اختر أيًا`,qtypeBoolean:`نعم / لا`,inputSubmit:`إرسال الإجابات`,inputSubmitHint:`Enter للإرسال · Shift+Enter = سطر جديد`,inputSkip:`تخطٍّ`,confirmYes:`نعم`,confirmNo:`لا`,approve:`موافقة`,reject:`رفض`,approvalPrompt:`تتطلب {tool} موافقتك للتنفيذ.`,approvalBody:`راجع مُعطيات الأداة أعلاه وقرّر السماح بهذا الإجراء أو رفضه.`,approvalYourResponse:`ردّك: {decision}`,approvalEditHint:`يمكنك تعديل ردّك حتى تستأنف هذه الخطوة.`,approvalSubmitting:`تم إرسال الرد. جارٍ التنفيذ…`,edit:`تعديل`,toolParameters:`المعطيات`,statusAwaiting:`بانتظار الموافقة`,statusResponded:`تم الإرسال`,statusRunning:`قيد التنفيذ`,statusCompleted:`مكتمل`,statusDenied:`مرفوض`,statusError:`خطأ`,statusSuperseded:`تم التخطي`},es:{attach:`Adjuntar archivos`,attachmentMimeRejected:`Tipo de archivo no admitido`,attachmentTooLarge:`El archivo es demasiado grande`,attachmentTooMany:`Se alcanzó el límite de adjuntos`,conversationClosed:`Este chat está cerrado`,conversationLoading:`Cargando chat…`,loadPreviousMessages:`Cargar mensajes anteriores`,close:`Cerrar`,collapse:`Contraer`,collapseSidebar:`Contraer la barra lateral`,composerPlaceholder:`Escribe un mensaje…`,dateLastWeek:`Últimos 7 días`,dateOlder:`Anteriores`,dateToday:`Hoy`,dateYesterday:`Ayer`,dropZone:`Suelta los archivos para adjuntarlos`,errorGeneric:`Algo salió mal`,errorRateLimited:`Demasiadas solicitudes: inténtalo de nuevo en un momento.`,errorRetry:`Reintentar`,expand:`Ampliar`,expandSidebar:`Expandir la barra lateral`,exitFullscreen:`Salir de pantalla completa`,fullscreen:`Pantalla completa`,history:`Historial`,historyBack:`Volver al chat`,historyEmpty:`Aún no tienes chats`,historyContinue:`Continuar el chat`,historyLoading:`Cargando tus chats…`,historyTitle:`Historial de chats`,loadMoreConversations:`Cargar más conversaciones`,language:`Idioma`,launcherOpen:`Abrir el chat`,launcherLabel:`Chatea con nosotros`,micStart:`Iniciar entrada de voz`,micStop:`Detener entrada de voz`,micUnsupported:`Este navegador no admite la entrada de voz`,moreActions:`Más acciones`,newConversation:`Nuevo chat`,panelTitle:`Chat`,popOut:`Abrir en una pestaña nueva`,resizeHandle:`Arrastra para cambiar el tamaño`,scrollToBottom:`Ir a lo más reciente`,send:`Enviar`,queueMessage:`Poner mensaje en cola`,removeQueuedMessage:`Quitar mensaje de la cola`,compactingContext:`Optimizando el contexto de la conversación…`,soundOff:`Sonido desactivado`,soundOn:`Sonido activado`,startNewConversation:`Iniciar un chat nuevo`,talkToOperator:`Hablar con una persona`,connectingOperator:`Conectándote con una persona…`,noOperatorAvailable:`Nadie está disponible ahora — deja tus datos y te contactaremos.`,chattingWithOperator:`Estás chateando con {operator}`,cancelOperatorRequest:`Seguir con la IA`,stop:`Detener`,theme:`Tema`,themeAuto:`Automático`,themeDark:`Oscuro`,themeLight:`Claro`,textSize:`Tamaño del texto`,textSizeSmall:`Pequeño`,textSizeNormal:`Normal`,textSizeLarge:`Grande`,loading:`Cargando…`,visualPreparing:`Preparando visualización…`,visualError:`No se pudo mostrar esta visualización.`,visualPartial:`No se pudieron mostrar algunas partes de esta visualización.`,thinking:`Pensando…`,thoughts:`Razonamiento`,toolResult:`Resultado`,sources:`Fuentes`,feedbackUp:`Buena respuesta`,feedbackDown:`Mala respuesta`,feedbackThanks:`Gracias por tu opinión`,copy:`Copiar`,copied:`Copiado`,tabHome:`Inicio`,tabConversations:`Chats`,tabHelp:`Ayuda`,tabNews:`Novedades`,modulesEmpty:`Aún no hay nada aquí`,moduleBack:`Atrás`,contentLoading:`Cargando…`,contentHelpful:`¿Te resultó útil?`,homeGreeting:`¿Cómo podemos ayudarte?`,homeGreetingNamed:`Hola, {name} 👋`,homeGreetingLead:`¿Cómo podemos ayudarte?`,homeSearchPlaceholder:`Buscar ayuda`,homeAskPlaceholder:`Haz una pregunta…`,homeWhatsNew:`Lo nuevo`,homeContentTitle:`Artículos populares`,homeStatus:`Estado`,helpTitle:`Ayuda`,helpSearchPlaceholder:`Buscar ayuda`,helpEmpty:`Aún no hay artículos de ayuda`,helpLoading:`Cargando la ayuda…`,helpSearchEmpty:`Sin resultados para «{query}»`,helpShowMore:`Mostrar más`,newsTitle:`Novedades`,newsEmpty:`Aún no hay novedades`,newsLoading:`Cargando novedades…`,newsBack:`Volver a novedades`,newsPublishedAt:`Publicado el {date}`,newsShowMore:`Mostrar más`,newsUnseen:`Publicación nueva`,formSubmit:`Enviar`,formSkip:`Quizá más tarde`,formSubmitted:`Completado`,formSkipped:`Quizá más tarde`,formFillOut:`Completar`,formRequired:`Este campo es obligatorio`,formInvalidEmail:`Introduce un correo electrónico válido`,formInvalidTel:`Introduce un número de teléfono válido`,formInvalidUrl:`Introduce una URL válida`,formInvalidNumber:`Introduce un número válido`,formTooShort:`Demasiado corto (mín. {min} caracteres)`,formTooLong:`Demasiado largo (máx. {max} caracteres)`,formNumberTooSmall:`Debe ser al menos {min}`,formNumberTooLarge:`Debe ser como máximo {max}`,formPatternMismatch:`Respeta el formato solicitado`,formChooseAtLeast:`Elige al menos {min}`,formChooseAtMost:`Elige como máximo {max}`,formOther:`Otro`,formOtherPlaceholder:`Escribe tu respuesta…`,inputRequired:`Preguntas para ti`,inputBadge:`Preguntas`,inputAnswered:`Respondido`,inputSkipped:`Omitido`,showOptions:`Mostrar opciones`,hideOptions:`Ocultar opciones`,qtypeText:`Tu respuesta`,qtypeEmail:`Correo electrónico`,qtypePhone:`Número de teléfono`,qtypeNumber:`Número`,qtypeDate:`Fecha`,qtypeChooseOne:`Elige una`,qtypeChooseAny:`Elige varias`,qtypeBoolean:`Sí / No`,inputSubmit:`Enviar respuestas`,inputSubmitHint:`Enter para enviar · Mayús+Enter = nueva línea`,inputSkip:`Omitir`,confirmYes:`Sí`,confirmNo:`No`,approve:`Aprobar`,reject:`Rechazar`,approvalPrompt:`{tool} requiere tu aprobación para ejecutarse.`,approvalBody:`Revisa los parámetros de arriba y decide si permites esta acción.`,approvalYourResponse:`Tu respuesta: {decision}`,approvalEditHint:`Puedes cambiar tu respuesta hasta que este paso continúe.`,approvalSubmitting:`Respuesta enviada. Procesando…`,edit:`Editar`,toolParameters:`Parámetros`,statusAwaiting:`Esperando aprobación`,statusResponded:`Enviado`,statusRunning:`En curso`,statusCompleted:`Completado`,statusDenied:`Denegado`,statusError:`Error`,statusSuperseded:`Omitido`},he:{attach:`צירוף קבצים`,attachmentMimeRejected:`סוג הקובץ אינו נתמך`,attachmentTooLarge:`הקובץ גדול מדי`,attachmentTooMany:`הגעת למספר המרבי של קבצים מצורפים`,conversationClosed:`הצ׳אט הזה נסגר`,conversationLoading:`טוען צ׳אט…`,loadPreviousMessages:`טעינת הודעות קודמות`,close:`סגירה`,collapse:`כיווץ`,collapseSidebar:`כיווץ סרגל הצד`,composerPlaceholder:`כתוב הודעה…`,dateLastWeek:`7 הימים האחרונים`,dateOlder:`ישן יותר`,dateToday:`היום`,dateYesterday:`אתמול`,dropZone:`שחרר קבצים כדי לצרף`,errorGeneric:`משהו השתבש`,errorRateLimited:`יותר מדי בקשות — נסה שוב בעוד רגע.`,errorRetry:`נסה שוב`,expand:`הרחבה`,expandSidebar:`הרחבת סרגל הצד`,exitFullscreen:`יציאה ממסך מלא`,fullscreen:`מסך מלא`,history:`היסטוריה`,historyBack:`חזרה לצ׳אט`,historyEmpty:`אין עדיין צ׳אטים קודמים`,historyContinue:`המשך צ׳אט`,historyLoading:`טוען את הצ׳אטים שלך…`,historyTitle:`היסטוריית צ׳אטים`,loadMoreConversations:`טעינת שיחות נוספות`,language:`שפה`,launcherOpen:`פתיחת צ׳אט`,launcherLabel:`דברו איתנו`,micStart:`התחלת קלט קולי`,micStop:`עצירת קלט קולי`,micUnsupported:`קלט קולי אינו נתמך בדפדפן זה`,moreActions:`פעולות נוספות`,newConversation:`צ׳אט חדש`,panelTitle:`צ׳אט`,popOut:`פתיחה בכרטיסייה חדשה`,resizeHandle:`גרור לשינוי הגודל`,scrollToBottom:`מעבר לחדש ביותר`,send:`שליחה`,queueMessage:`הוספת ההודעה לתור`,removeQueuedMessage:`הסרת ההודעה מהתור`,compactingContext:`מבצע אופטימיזציה להקשר השיחה…`,soundOff:`השתקת הצליל`,soundOn:`הפעלת הצליל`,startNewConversation:`התחלת צ׳אט חדש`,talkToOperator:`דברו עם אדם`,connectingOperator:`מחברים אותך לאדם…`,noOperatorAvailable:`אין נציגים זמינים כעת — השאר את הפרטים שלך ונחזור אליך.`,chattingWithOperator:`אתה מצ׳וטט עם {operator}`,cancelOperatorRequest:`המשך לשוחח עם ה-AI`,stop:`עצירה`,theme:`ערכת נושא`,themeAuto:`אוטומטי`,themeDark:`כהה`,themeLight:`בהיר`,textSize:`גודל טקסט`,textSizeSmall:`קטן`,textSizeNormal:`רגיל`,textSizeLarge:`גדול`,loading:`טוען…`,visualPreparing:`מכין תצוגה…`,visualError:`לא ניתן היה להציג תצוגה זו.`,visualPartial:`לא ניתן היה להציג חלקים מתצוגה זו.`,thinking:`חושב…`,thoughts:`מחשבות`,toolResult:`תוצאה`,sources:`מקורות`,feedbackUp:`תשובה טובה`,feedbackDown:`תשובה גרועה`,feedbackThanks:`תודה על המשוב`,copy:`העתק`,copied:`הועתק`,tabHome:`בית`,tabConversations:`צ׳אטים`,tabHelp:`עזרה`,tabNews:`חדשות`,modulesEmpty:`אין כאן עדיין כלום`,moduleBack:`חזרה`,contentLoading:`טוען…`,contentHelpful:`האם זה עזר?`,homeGreeting:`כיצד נוכל לעזור?`,homeGreetingNamed:`שלום {name} 👋`,homeGreetingLead:`כיצד נוכל לעזור?`,homeSearchPlaceholder:`חיפוש עזרה`,homeAskPlaceholder:`שאלו שאלה…`,homeWhatsNew:`מה חדש`,homeContentTitle:`מאמרים פופולריים`,homeStatus:`סטטוס`,helpTitle:`עזרה`,helpSearchPlaceholder:`חיפוש עזרה`,helpEmpty:`אין עדיין מאמרי עזרה`,helpLoading:`טוען עזרה…`,helpSearchEmpty:`אין תוצאות עבור „{query}”`,helpShowMore:`הצגת עוד`,newsTitle:`חדשות`,newsEmpty:`אין עדיין חדשות`,newsLoading:`טוען חדשות…`,newsBack:`חזרה לחדשות`,newsPublishedAt:`פורסם ב-{date}`,newsShowMore:`הצגת עוד`,newsUnseen:`פוסט חדש`,formSubmit:`שליחה`,formSkip:`אחר כך`,formSubmitted:`נשלח`,formSkipped:`דולג`,formFillOut:`מילוי`,formRequired:`שדה חובה`,formInvalidEmail:`הזן כתובת אימייל תקינה`,formInvalidTel:`הזן מספר טלפון תקין`,formInvalidUrl:`הזן כתובת URL תקינה`,formInvalidNumber:`הזן מספר תקין`,formTooShort:`קצר מדי (לפחות {min} תווים)`,formTooLong:`ארוך מדי (לכל היותר {max} תווים)`,formNumberTooSmall:`חייב להיות לפחות {min}`,formNumberTooLarge:`חייב להיות לכל היותר {max}`,formPatternMismatch:`התאם לתבנית הנדרשת`,formChooseAtLeast:`בחר לפחות {min}`,formChooseAtMost:`בחר לכל היותר {max}`,formOther:`אחר`,formOtherPlaceholder:`כתוב את תשובתך…`,inputRequired:`שאלות עבורך`,inputBadge:`שאלות`,inputAnswered:`נענה`,inputSkipped:`דולג`,showOptions:`הצג אפשרויות`,hideOptions:`הסתר אפשרויות`,qtypeText:`התשובה שלך`,qtypeEmail:`כתובת אימייל`,qtypePhone:`מספר טלפון`,qtypeNumber:`מספר`,qtypeDate:`תאריך`,qtypeChooseOne:`בחר אחת`,qtypeChooseAny:`בחר כמה`,qtypeBoolean:`כן / לא`,inputSubmit:`שליחת תשובות`,inputSubmitHint:`Enter לשליחה · Shift+Enter = שורה חדשה`,inputSkip:`דילוג`,confirmYes:`כן`,confirmNo:`לא`,approve:`אישור`,reject:`דחייה`,approvalPrompt:`הכלי {tool} דורש את אישורך כדי לפעול.`,approvalBody:`בדוק את פרמטרי הכלי שלמעלה והחלט אם לאשר פעולה זו.`,approvalYourResponse:`התגובה שלך: {decision}`,approvalEditHint:`ניתן לערוך את תגובתך עד שהשלב הזה יתחדש.`,approvalSubmitting:`התגובה נשלחה. מבצע…`,edit:`עריכה`,toolParameters:`פרמטרים`,statusAwaiting:`ממתין לאישור`,statusResponded:`נשלח`,statusRunning:`פועל`,statusCompleted:`הושלם`,statusDenied:`נדחה`,statusError:`שגיאה`,statusSuperseded:`דולג`}};function E(e,t){let n=D(e),r=j(t),i=n===`en`?{}:T[n]??{},a=r?t[n]??{}:t??{},o=r?t.en??{}:{};return{...w,...i,...o,...a}}function D(e){return(e.split(`-`)[0]??`en`).toLowerCase()}const O=/* @__PURE__ */ new Set([`ar`,`he`,`iw`,`fa`,`ur`,`ps`,`sd`,`ug`,`yi`,`dv`,`ckb`,`ks`,`nqo`,`prs`,`syr`]);function k(e){return O.has(D(e))}function A(e,t){return e[t]??t}function j(e){if(!e)return!1;for(let t of Object.values(e))if(t&&typeof t==`object`)return!0;return!1}const M={id:`help-ai`,name:`@helpai/elements`,global:`HelpAI`,tagName:`web-ai-chat`,cssPrefix:`helpai`,defaultBaseUrl:`https://help.ai`,displayName:`Help AI`,domain:`help.ai`,siteUrl:`https://help.ai`},ee=new class{get(e){try{return localStorage.getItem(e)}catch{return null}}set(e,t){try{localStorage.setItem(e,t)}catch{}}remove(e){try{localStorage.removeItem(e)}catch{}}},te={maxBytes:10485760,maxCount:10,accept:`*/*`},N={voice:`local`},ne={list:[],byTrigger:{}},re={enabled:!0,sampleRate:1},ie={upload:`/pai/upload-file`,transcribe:`/pai/transcribe-audio`,submitForm:`/pai/submit-form`},P={variant:`circle`,size:`md`,label:void 0,icon:`chat`,hidden:!1},ae={floating:[`theme`,`textSize`,`history`,`close`,`clear`,`expand`,`fullscreen`,`popOut`,`sound`,`language`],inline:[`theme`,`textSize`,`history`,`close`,`clear`,`fullscreen`,`popOut`,`sound`,`language`],standalone:[`theme`,`textSize`,`history`,`clear`,`sound`,`language`],page:[`theme`,`textSize`,`history`,`clear`,`sound`,`language`],modal:[`theme`,`textSize`,`history`,`close`,`clear`,`fullscreen`,`popOut`,`sound`,`language`],drawer:[`theme`,`textSize`,`history`,`close`,`clear`,`fullscreen`,`popOut`,`sound`,`language`]},oe={enabled:!0,volume:.3,events:void 0},F={enabled:!0,events:void 0},I=[{label:`tabConversations`,layout:`chat`}],se=[`off`,`error`,`warn`,`info`,`debug`,`trace`],ce=M.cssPrefix,le=`${ce}.debug`,ue=`__${M.global}_DEBUG__`,de=`${ce}-debug`;let fe=2,pe=null;function me(){if(typeof window>`u`)return 2;try{let e=new URLSearchParams(window.location.search).get(de);if(e!==null){let t=he(e);if(t>=0)return t}}catch{}try{let e=window.localStorage?.getItem(le);if(e){let t=he(e);if(t>=0)return t}}catch{}return Reflect.get(window,ue)?4:2}function he(e){if(e===!0||e===`1`||e===`true`)return 4;if(e===!1||e===`0`||e===`false`||e===`off`)return 0;if(typeof e==`number`)return Math.max(0,Math.min(5,Math.floor(e)));if(typeof e==`string`){let t=se.findIndex(t=>t===e);if(t>=0)return t}return-1}function L(e){let t=he(e);if(!(t<0)){fe=t;try{window.localStorage?.setItem(le,se[t]??`off`)}catch{}}}function ge(){return se[fe]??`warn`}fe=me();function _e(e){let t=`[${ce}:${e}]`;function n(n,r,i){return(a,o)=>{if(!(fe<n)&&(o===void 0?console[r](t,a):console[r](t,a,o),pe))try{pe({level:i,scope:e,message:a,payload:o})}catch{}}}return{error:n(1,`error`,`error`),warn:n(2,`warn`,`warn`),info:n(3,`info`,`info`),debug:n(4,`debug`,`debug`),trace:n(5,`debug`,`trace`),scope:t=>_e(`${e}:${t}`)}}const R=_e(`core`);function ve(e){pe=e}const z=R.scope(`context`),ye=/* @__PURE__ */ new Set([`visitorId`,`conversationId`,`jwt`,`token`,`authorization`,`password`]),be=1024,xe=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function Se(e){return we(e,`userContext`,!0)}function Ce(e){return we(e,`pageContext`,!1)}function we(e,t,n){if(e==null)return;if(typeof e!=`object`||Array.isArray(e)){z.warn(`ignored ${t} — expected an object`,{type:Array.isArray(e)?`array`:typeof e});return}let r={},i=0;for(let[n,a]of Object.entries(e)){if(ye.has(n)){z.warn(`dropped reserved ${t} key "${n}" — managed by the widget, not host-settable`);continue}if(a==null)continue;if(i>=50){z.warn(`${t} truncated at 50 keys — dropped "${n}"`);continue}let e=Te(t,n,a);e!==void 0&&(r[n]=e,i++)}return n&&typeof r.email==`string`&&!xe.test(r.email)&&(z.warn(`dropped malformed context field`,{field:`${t}.email`,reason:`invalid format`}),delete r.email),Object.keys(r).length>0?r:void 0}function Te(e,t,n){if(typeof n==`boolean`)return n;if(typeof n==`number`){if(!Number.isFinite(n)){z.warn(`dropped non-finite ${e}.${t}`);return}return n}if(typeof n==`string`){let r=n.trim();return r===``?void 0:r.length>be?(z.warn(`truncated ${e}.${t} to ${be} chars`),r.slice(0,be)):r}z.warn(`dropped ${e}.${t} — only string/number/boolean values are allowed`,{type:typeof n})}function Ee(e){let t=typeof e==`object`&&e?e:{},n=t.presentation??{},r=t.behavior??{},i=t.i18n??{},a=t.feedback??{},o=t.footer??{},s=t.header??{},{themeMode:c,themeOverrides:l}=De(t.theme),u=n.mode??`floating`,d=Oe(i.defaultLocale),f=i.availableLocales??[i.locale??d],p=ke(i.locale??d,f,d),m=(t.baseUrl??M.defaultBaseUrl).replace(/\/$/,``),h=(t.agentApiBaseUrl??`${m}/api/agent`).replace(/\/$/,``),g=(t.dataApiBaseUrl??`${m}/api/data`).replace(/\/$/,``);return{widgetId:t.widgetId??`default`,publicKey:t.publicKey,aiAgentDeploymentId:t.aiAgentDeploymentId,baseUrl:m,agentApiBaseUrl:h,dataApiBaseUrl:g,userContext:Se(t.userContext),pageContext:Ce(t.pageContext),position:n.position??`bottom-right`,themeMode:c,textSize:`normal`,themeOverrides:l,mode:u,iframe:n.iframe??!1,responseMode:r.responseMode??`streaming`,showReasoning:r.showReasoning??!1,showToolCalls:r.showToolCalls??!1,showSources:r.showSources??!1,enableMessageFeedback:!(r.disableMessageFeedback??!1),autoSendSuggestions:r.autoSendSuggestions??!1,popOutUrl:r.popOutUrl,features:{voice:t.features?.voice??N.voice,fileUpload:!(t.features?.disableFileUpload??!1),humanInLoop:!(t.features?.disableHumanInLoop??!1),operatorRequest:t.features?.enableOperatorRequest===!0},forms:Le(t.forms,p),endpoints:{upload:t.endpoints?.upload??ie.upload,transcribe:t.endpoints?.transcribe??ie.transcribe,submitForm:t.endpoints?.submitForm??ie.submitForm},attachments:{accept:t.composer?.attachments?.accept??te.accept,maxBytes:t.composer?.attachments?.maxBytes??te.maxBytes,maxCount:t.composer?.attachments?.maxCount??te.maxCount},locale:p,defaultLocale:d,availableLocales:f,startMinimized:r.startMinimized??!0,actions:Ae(u,s.actions),size:n.size??{},launcher:ze(t.launcher),sound:je(a.sound),haptics:Me(a.haptics),strings:E(p,i.strings),stringsOverride:i.strings,composerDisclaimer:o.composerDisclaimer??``,poweredBy:Pe(o.poweredBy),composer:Fe(t.composer),modules:Ie(t.modules),tracking:Ne(t.tracking,g),storage:t.storage??ee,onMessage:t.onMessage,onOpen:t.onOpen,onClose:t.onClose,onError:t.onError}}function De(e){return typeof e==`string`?{themeMode:e,themeOverrides:{}}:e&&typeof e==`object`?{themeMode:`auto`,themeOverrides:e}:{themeMode:`auto`,themeOverrides:{}}}function Oe(e){return e&&e!==`auto`?e:globalThis.navigator?.language||`en`}function ke(e,t,n){return t.length<=1||t.includes(e)?e:t.includes(n)?n:t[0]??e}function Ae(e,t){return t??ae[e]}function je(e){return{enabled:e?.enabled??oe.enabled,volume:e?.volume??oe.volume,events:e?.events}}function Me(e){return{enabled:e?.enabled??F.enabled,events:e?.events}}function Ne(e,t){let n=e?.sampleRate??re.sampleRate;return{enabled:e?.enabled??re.enabled,endpoint:e?.endpoint??`${t}/pai/elements-px.gif`,sampleRate:Math.min(1,Math.max(0,Number.isFinite(n)?n:1)),token:e?.token}}function Pe(e){let t={text:`Powered by ${M.displayName}`,href:M.siteUrl,...e};return t.text||t.logoUrl?t:null}function Fe(e){let t=e?.sendButton;return{sendButton:{shape:t?.shape??`circle`,icon:t?.icon??`arrowUp`,variant:t?.variant??`filled`}}}function Ie(e){let t=e??I,n=/* @__PURE__ */ new Set,r=[];for(let e of t.slice(0,4)){if(!e?.label||!e?.layout)continue;let t=e.contentCollectionIds?.filter(Boolean),i=e.id??t?.[0]??e.layout;for(;n.has(i);)i=`${i}-${r.length}`;n.add(i);let a={id:i,label:e.label,layout:e.layout};t?.length&&(a.contentCollectionIds=t),e.layout===`home`&&(a.brandName=e.brandName,a.greetingText=e.greetingText,a.showGreeting=!(e.hideGreeting??!1),a.showSearchBar=!(e.hideSearchBar??!1),a.showRecentConversations=!(e.hideRecentConversations??!1),e.userAvatars?.length&&(a.userAvatars=e.userAvatars),e.status&&(a.status=e.status),a.contentBlockTitle=e.contentBlockTitle),r.push(a)}return{list:r,byId:Object.fromEntries(r.map(e=>[e.id,e]))}}function Le(e,t){if(!e?.length)return ne;let n=[],r=/* @__PURE__ */ new Set;for(let i of e){if(!i?.id||r.has(i.id))continue;let e=C(i,t),a=(e.fields??[]).filter(e=>!!(e?.name&&e.label&&e.type)),o=(Array.isArray(e.on)?e.on:[e.on]).map(Re).filter(e=>e!==null);a.length!==0&&o.length!==0&&(r.add(e.id),n.push({id:e.id,triggers:o,when:e.when,fields:a,title:e.title,description:e.description,submitLabel:e.submitLabel,skippable:e.skippable??!1,frequency:e.frequency??`once`,mirrorToContext:e.mirrorToContext??!0,reopenable:e.reopenable??!0,reviewable:e.reviewable??!0}))}let i={};for(let e of n){var a;for(let t of e.triggers)(i[a=t.kind]??(i[a]=[])).push(e)}return{list:n,byTrigger:i}}function Re(e){if(typeof e!=`string`)return null;if(e===`pre-chat`||e===`conversation-closed`||e===`panel-close`||e===`manual`)return{kind:e};let[t,n]=e.split(`:`,2);if(t===`after-messages`){let e=Number(n);return Number.isFinite(e)&&e>0?{kind:`after-messages`,param:e}:null}if(t===`idle`){let e=Number(n);return Number.isFinite(e)&&e>0?{kind:`idle`,param:e}:null}return t===`page-area`&&n?{kind:`page-area`,param:n}:null}function ze(e){let t=e?.callout?.text?{shape:`pill`,position:`auto`,delayMs:1200,autoDismissMs:0,animated:!0,persistent:!0,...e.callout}:null;return{variant:e?.variant??P.variant,size:e?.size??P.size,label:e?.label??P.label,icon:e?.icon??P.icon,hidden:e?.hidden??P.hidden,callout:t}}function Be(e,t,n,r){let i=ke(t,e.availableLocales,e.defaultLocale);if(i===e.locale&&n===e.themeMode&&r===e.textSize)return e;let a={...e};return i!==e.locale&&(a.locale=i,a.strings=E(i,e.stringsOverride)),n!==e.themeMode&&(a.themeMode=n),r!==e.textSize&&(a.textSize=r),a}const Ve=[`presentation`,`behavior`,`theme`,`launcher`,`header`,`composer`,`feedback`,`i18n`,`footer`,`features`,`tracking`,`endpoints`];function He(e,t){if(!t)return e;let n={...e};for(let r of Ve){let i=t[r];if(i===void 0)continue;let a=e[r];r===`theme`?a===void 0&&(n[r]=i):r!==`i18n`&&(n[r]=Ue(i,a))}t.modules!==void 0&&e.modules===void 0&&(n.modules=t.modules),t.dataApiBaseUrl!==void 0&&e.dataApiBaseUrl===void 0&&(n.dataApiBaseUrl=t.dataApiBaseUrl);let r=e.i18n,i=t.i18n;if(r||i){let e=Ue(i??{},r);i?.availableLocales!==void 0&&(e.availableLocales=i.availableLocales),i?.defaultLocale!==void 0&&(e.defaultLocale=i.defaultLocale);let t=r?.strings,a=i?.strings;(t||a)&&(e.strings=We(a,t)),n.i18n=e}return n}function Ue(e,t){if(!t)return e;let n={...e};for(let[e,r]of Object.entries(t))r!==void 0&&(n[e]=r);return n}function We(e,t){if(!e)return t;if(!t)return e;let n=j(e),r=j(t);if(!n&&!r)return{...e,...t};let i={},a=n?e:{en:e},o=r?t:{en:t};for(let[e,t]of Object.entries(a))i[e]={...t};for(let[e,t]of Object.entries(o))i[e]={...i[e],...t};return i}const Ge=[`clear`,`expand`,`fullscreen`,`popOut`,`sound`,`history`,`language`,`theme`,`textSize`,`close`];function Ke(e){return e!==`false`}const qe=[[`public-key`,`publicKey`],[`ai-agent-deployment-id`,`aiAgentDeploymentId`],[`base-url`,`baseUrl`],[`agent-api-base-url`,`agentApiBaseUrl`],[`data-api-base-url`,`dataApiBaseUrl`],[`theme`,`theme`,e=>e]],Je=[[`mode`,`mode`,e=>e],[`position`,`position`,e=>e],[`iframe`,`iframe`,Ke]],B=[[`width`,`width`],[`height`,`height`]],Ye=[[`response-mode`,`responseMode`,e=>e],[`start-minimized`,`startMinimized`,Ke],[`show-reasoning`,`showReasoning`,Ke],[`show-tool-calls`,`showToolCalls`,Ke],[`show-sources`,`showSources`,Ke],[`disable-message-feedback`,`disableMessageFeedback`,Ke],[`auto-send-suggestions`,`autoSendSuggestions`,Ke],[`pop-out-url`,`popOutUrl`]],Xe=[[`locale`,`locale`]];new Set(Ge);const Ze=[[`launcher-variant`,`variant`,e=>e],[`launcher-size`,`size`,e=>e],[`launcher-icon`,`icon`],[`launcher-hidden`,`hidden`,Ke]],Qe=[[`features-disable-file-upload`,`disableFileUpload`,Ke],[`features-voice`,`voice`,e=>e]],$e=[[`endpoint-upload`,`upload`],[`endpoint-transcribe`,`transcribe`]],et=[[`user-id`,`id`],[`user-email`,`email`],[`user-name`,`name`]],tt=[[`page-area`,`area`],[`page-url`,`url`],[`page-path`,`path`],[`page-title`,`title`]],nt=[`launcher-label`,`callout-text`,`callout-delay`,`actions`,`user-context`,`page-context`],rt=[qe,Je,B,Ye,Xe,Ze,Qe,$e,et,tt],it=/* @__PURE__ */ new Set([`iframe`,`start-minimized`]);[...rt.flatMap(e=>e.map(([e])=>e).filter(e=>!it.has(e))),...nt];function at(){let e=Date.now(),t=/* @__PURE__ */ new Uint8Array(16);t[0]=Math.floor(e/2**40)&255,t[1]=Math.floor(e/2**32)&255,t[2]=e>>>24&255,t[3]=e>>>16&255,t[4]=e>>>8&255,t[5]=e&255,ot(t.subarray(6)),t[6]=t[6]&15|112,t[8]=t[8]&63|128;let n=Array.from(t,e=>e.toString(16).padStart(2,`0`)).join(``);return`${n.slice(0,8)}-${n.slice(8,12)}-${n.slice(12,16)}-${n.slice(16,20)}-${n.slice(20)}`}function ot(e){if(typeof crypto<`u`&&typeof crypto.getRandomValues==`function`)crypto.getRandomValues(e);else for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256)}const st=R.scope(`persistence`);function ct(e,t=ee,n){let r=n?`${e}.${n}`:e,i=`${M.cssPrefix}.storageVersion`,a=t.get(i)??void 0,o=a?`.v${a}`:``,s=`${M.cssPrefix}.${r}${o}`,c=`${M.cssPrefix}${o}.visitorId`,l=`${s}.conversationId`,u=`${s}.userPrefs`,d=`${s}.panelOpen`,f=`${s}.panelSize`,p=`${s}.calloutDismissed`,m=`${s}.sidebarCollapsed`,h=`${s}.activeModule`,g=`${s}.seenNewsId`,_=`${s}.historyCount`,v=`${s}.formsDone`,y={getVisitorId(){let e=t.get(c);if(e)return e;let n=at();return t.set(c,n),n},loadConversationId(){return t.get(l)??void 0},saveConversationId(e){st.trace(`saveConversationId`,{id:e,scope:r}),e?t.set(l,e):t.remove(l)},loadDraft(e){return t.get(`${s}.draft.${e}`)??``},saveDraft(e,n){let r=`${s}.draft.${e}`;n?t.set(r,n):t.remove(r)},loadMessageQueue(e){let n=t.get(`${s}.messageQueue.${e}`);if(!n)return[];try{let e=JSON.parse(n);return!Array.isArray(e)||!e.every(ut)?[]:e}catch(e){return st.warn(`loadMessageQueue parse failed`,{error:e}),[]}},saveMessageQueue(e,n){let r=`${s}.messageQueue.${e}`;if(n.length===0)t.remove(r);else try{t.set(r,JSON.stringify(n))}catch(e){st.warn(`saveMessageQueue serialise failed`,{error:e})}},loadUserPrefs(){let e=t.get(u);if(!e)return{};try{return dt(JSON.parse(e))}catch(e){return st.warn(`loadUserPrefs parse failed`,{error:e}),{}}},saveUserPrefs(e){try{t.set(u,JSON.stringify(e))}catch(e){st.warn(`saveUserPrefs serialise failed`,{error:e})}},patchUserPrefs(e){let t=y.loadUserPrefs();y.saveUserPrefs({...t,...e})},loadPanelOpen(){let e=t.get(d);return e===`1`||e!==`0`&&null},savePanelOpen(e){t.set(d,e?`1`:`0`)},loadPanelSize(){let e=t.get(f);return e===`normal`||e===`expanded`||e===`fullscreen`?e:null},savePanelSize(e){t.set(f,e)},loadCalloutDismissed(e){if(!e)return!1;let n=t.get(p);return!!n&&n===e},saveCalloutDismissed(e){e?t.set(p,e):t.remove(p)},loadSidebarCollapsed(){let e=t.get(m);return e===`1`||e!==`0`&&null},saveSidebarCollapsed(e){t.set(m,e?`1`:`0`)},loadActiveModule(){return t.get(h)||null},saveActiveModule(e){t.set(h,e)},loadSeenNewsId(){return t.get(g)||null},saveSeenNewsId(e){t.set(g,e)},loadHistoryCount(){let e=t.get(_);if(!e)return null;let n=Number.parseInt(e,10);return Number.isFinite(n)&&n>=0?n:null},saveHistoryCount(e){t.set(_,String(e))},loadFormsDone(){let e=t.get(v);if(!e)return{};try{let t=JSON.parse(e);return lt(t)?Object.fromEntries(Object.entries(t).filter(e=>typeof e[1]==`number`)):{}}catch(e){return st.warn(`loadFormsDone parse failed`,{error:e}),{}}},saveFormDone(e){try{let n=y.loadFormsDone();n[e]=Date.now(),t.set(v,JSON.stringify(n))}catch(e){st.warn(`saveFormDone serialise failed`,{error:e})}},rememberStorageVersion(e){e&&e!==t.get(i)&&(st.debug(`rememberStorageVersion (force-reset on next load)`,{version:e}),t.set(i,e))},clearConversation(){t.remove(l)}};return y}function lt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ut(e){return lt(e)&&typeof e.id==`string`&&e.id.length>0&&typeof e.text==`string`}function dt(e){if(!lt(e))return{};let t={};return typeof e.locale==`string`&&(t.locale=e.locale),typeof e.soundMuted==`boolean`&&(t.soundMuted=e.soundMuted),(e.themeMode===`auto`||e.themeMode===`light`||e.themeMode===`dark`)&&(t.themeMode=e.themeMode),(e.textSize===`small`||e.textSize===`normal`||e.textSize===`large`)&&(t.textSize=e.textSize),lt(e.widgetSize)&&typeof e.widgetSize.width==`number`&&typeof e.widgetSize.height==`number`&&(t.widgetSize={width:e.widgetSize.width,height:e.widgetSize.height}),t}const ft=`1.6.0`,pt={open:()=>void 0,close:()=>void 0,expand:e=>({on:e}),fullscreen:e=>({on:e}),send:e=>({attachments:e.attachmentCount}),message:e=>({role:e.role}),stop:()=>void 0,clear:()=>void 0,suggestion:()=>void 0,toggleHistory:e=>({view:e.view}),handshake:()=>void 0,formSubmit:e=>({formId:e.formId,skipped:e.skipped}),toolResult:()=>void 0,toolDecision:e=>({approved:e.approved}),messageFeedback:e=>({value:e.value??`none`}),contentView:e=>({section:e.section,count:e.count}),contentOpen:e=>({contentId:e.contentId,contentCollectionId:e.contentCollectionId}),contentSearch:e=>({qlen:e.queryLength,hits:e.hitCount}),contentRead:e=>({contentId:e.contentId}),contentLinkClick:e=>({contentId:e.contentId}),attach:e=>({count:e.count,bytes:e.totalBytes}),voiceStart:()=>void 0,voiceStop:e=>({ms:e.durationMs}),voiceCancel:()=>void 0,localeChange:e=>({locale:e}),themeChange:e=>({theme:e}),textSizeChange:e=>({size:e}),soundToggle:e=>({muted:e.muted}),sidebarToggle:e=>({collapsed:e.collapsed}),calloutDismiss:()=>void 0,error:()=>void 0};function mt(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack===`1`}function ht(){return location.origin+location.pathname}function gt(){try{return document.referrer?new URL(document.referrer).origin:``}catch{return``}}function _t(e,t){let n=Math.random(),r=0,i=0,a=/* @__PURE__ */ new Set;function o(e,o){let{tracking:s,publicKey:c,aiAgentDeploymentId:l,mode:u,themeMode:d}=t.getOptions();if(!s.enabled||mt()||n>=s.sampleRate)return;let f=performance.now();if(f-r>6e4&&(r=f,i=0),++i>60)return;let p=new URLSearchParams;p.set(`v`,`1`),p.set(`_ev`,ft),p.set(`e`,e),s.token&&p.set(`tk`,s.token),c&&p.set(`pk`,c),l&&p.set(`dep`,l),p.set(`vid`,t.getVisitorId());let m=t.getConversationId();m&&p.set(`cid`,m),p.set(`url`,ht());let h=gt();h&&p.set(`ref`,h),p.set(`sw`,String(screen.width)),p.set(`sh`,String(screen.height)),p.set(`vw`,String(innerWidth)),p.set(`vh`,String(innerHeight)),p.set(`dpr`,String(devicePixelRatio)),p.set(`lang`,navigator.language);try{p.set(`tz`,Intl.DateTimeFormat().resolvedOptions().timeZone)}catch{}if(p.set(`m`,u),p.set(`th`,d),o)for(let[e,t]of Object.entries(o))t!==void 0&&p.set(e,String(t));p.set(`ts`,String(Date.now()));let g=`${s.endpoint}?${p}`;if(g.length>2e3)return;let _=new Image(1,1);a.add(_);function v(){return a.delete(_)}_.addEventListener(`load`,v,{once:!0}),_.addEventListener(`error`,v,{once:!0}),_.src=g}let s=Object.keys(pt).map(t=>e.on(t,e=>o(t,pt[t]?.(e))));return()=>{for(let e of s)e();a.clear()}}const vt=`:host{--__P__-accent-user: __BRAND_ACCENT__;--__P__-accent: var(--__P__-accent-user);--__P__-accent-text-user: __BRAND_ACCENT_TEXT__;--__P__-accent-text: var(--__P__-accent-text-user);--__P__-accent-fg: var(--__P__-accent);--__P__-radius: __BRAND_RADIUS__;--__P__-radius-sm: 8px;--__P__-radius-md: 10px;--__P__-radius-lg: 16px;--__P__-font: __BRAND_FONT__;--__P__-font-display: var(--__P__-font);--__P__-font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--__P__-bg: oklch(1 0 0);--__P__-bg-elevated: oklch(.9789 .0029 278.3);--__P__-surface: var(--__P__-bg-elevated);--__P__-muted: var(--__P__-fg-muted);--__P__-hover: oklch(.1686 .011 278.3 / .06);--__P__-fg: oklch(.1686 .011 278.3);--__P__-fg-muted: oklch(.4932 .0301 278.3);--__P__-border: oklch(.9312 .0084 278.3);--__P__-border-strong: oklch(.8757 .0131 278.3);--__P__-bubble-user: var(--__P__-accent);--__P__-bubble-user-text: var(--__P__-accent-text);--__P__-bubble-assistant: oklch(.9638 .0058 278.3);--__P__-bubble-assistant-text: var(--__P__-fg);--__P__-on-accent: var(--__P__-accent-text);--__P__-success: oklch(.6456 .1654 151.53);--__P__-warning: oklch(.7135 .1494 74.05);--__P__-danger: oklch(.5966 .1818 24.51);--__P__-danger-text: oklch(.5054 .1905 27.52);--__P__-danger-bg: oklch(.5966 .1818 24.51 / .1);--__P__-neutral: oklch(.7137 .0192 278.3);--__P__-pill-l-min: .3;--__P__-pill-l-max: .46;--__P__-focus: var(--__P__-accent);--__P__-shadow-panel: 0 8px 24px -8px rgba(13, 15, 20, .18), 0 24px 64px -24px rgba(13, 15, 20, .24);--__P__-shadow-card: 0 1px 2px rgba(13, 15, 20, .06), 0 4px 12px -6px rgba(13, 15, 20, .12);--__P__-backdrop: oklch(.1686 .011 278.3 / .55);--__P__-shadow-fab: 0 6px 16px -4px color-mix(in oklch, var(--__P__-accent) 45%, transparent), 0 12px 32px -12px rgba(13, 15, 20, .25);--__P__-z-fab: 2147483600;--__P__-z-panel: 2147483601;--__P__-panel-w: 380px;--__P__-panel-h: 600px;--__P__-fab-size: 56px;--__P__-conversation-max: 768px;--__P__-space-1: 4px;--__P__-space-2: 8px;--__P__-space-3: 12px;--__P__-space-4: 16px;--__P__-space-5: 20px;--__P__-space-6: 24px;--__P__-space-8: 32px;--__P__-text-scale: 1;--__P__-text-xs: calc(12px * var(--__P__-text-scale));--__P__-text-sm: calc(13px * var(--__P__-text-scale));--__P__-text-base: calc(15px * var(--__P__-text-scale));--__P__-text-md: calc(16px * var(--__P__-text-scale));--__P__-text-lg: calc(18px * var(--__P__-text-scale));--__P__-text-xl: calc(22px * var(--__P__-text-scale));--__P__-text-2xl: calc(30px * var(--__P__-text-scale))}:host([data-mode="modal"]),:host([data-mode="drawer"]){--__P__-conversation-max: 100%}:host([data-text-size="small"]){--__P__-text-scale: .9}:host([data-text-size="large"]){--__P__-text-scale: 1.15}:host{--__P__-ease: cubic-bezier(.2, .7, .2, 1);--__P__-ease-out: cubic-bezier(.2, .7, .2, 1);--__P__-ease-in: cubic-bezier(.4, 0, 1, 1);--__P__-ease-in-out: cubic-bezier(.65, 0, .35, 1);--__P__-dur-quick: .12s;--__P__-dur-base: .22s;--__P__-dur-slow: .32s;font-family:var(--__P__-font);color:var(--__P__-fg);color-scheme:light;--__P__-color-scheme: light}:host([data-theme="dark"]){--__P__-bg: oklch(.1783 .0128 278.3);--__P__-bg-elevated: oklch(.2232 .0182 278.3);--__P__-fg: oklch(.9368 .01 278.3);--__P__-fg-muted: oklch(.7048 .0296 278.3);--__P__-border: oklch(.2752 .0266 278.3);--__P__-border-strong: oklch(.335 .0291 278.3);--__P__-hover: oklch(.9368 .01 278.3 / .08);--__P__-bubble-assistant: oklch(.2474 .0311 278.3);--__P__-bubble-assistant-text: var(--__P__-fg);--__P__-danger-text: oklch(.8077 .1035 19.57);--__P__-danger-bg: oklch(.5966 .1818 24.51 / .18);--__P__-shadow-panel: 0 8px 24px -8px rgba(0, 0, 0, .6), 0 24px 64px -24px rgba(0, 0, 0, .7);--__P__-shadow-card: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 12px -6px rgba(0, 0, 0, .5);--__P__-backdrop: rgba(0, 0, 0, .65);--__P__-pill-l-min: .75;--__P__-pill-l-max: .92;color-scheme:dark;--__P__-color-scheme: dark}@media(prefers-color-scheme:dark){:host([data-theme="auto"]){--__P__-bg: oklch(.1783 .0128 278.3);--__P__-bg-elevated: oklch(.2232 .0182 278.3);--__P__-fg: oklch(.9368 .01 278.3);--__P__-fg-muted: oklch(.7048 .0296 278.3);--__P__-border: oklch(.2752 .0266 278.3);--__P__-border-strong: oklch(.335 .0291 278.3);--__P__-hover: oklch(.9368 .01 278.3 / .08);--__P__-bubble-assistant: oklch(.2474 .0311 278.3);--__P__-bubble-assistant-text: var(--__P__-fg);--__P__-pill-l-min: .75;--__P__-pill-l-max: .92;--__P__-shadow-panel: 0 8px 24px -8px rgba(0, 0, 0, .6), 0 24px 64px -24px rgba(0, 0, 0, .7);color-scheme:dark;--__P__-color-scheme: dark}}@supports (color: oklch(from red l c h)){:host{--__P__-accent: oklch(from var(--__P__-accent-user) clamp(.3, l, .62) c h);--__P__-accent-text: oklch(from var(--__P__-accent) clamp(0, (l / .623 - 1) * -infinity, 1) 0 h);--__P__-accent-fg: oklch(from var(--__P__-accent-user) clamp(.3, l, .46) c h)}:host([data-theme="dark"]){--__P__-accent: oklch(from var(--__P__-accent-user) clamp(.65, l, .85) c h);--__P__-accent-fg: var(--__P__-accent)}@media(prefers-color-scheme:dark){:host([data-theme="auto"]){--__P__-accent: oklch(from var(--__P__-accent-user) clamp(.65, l, .85) c h);--__P__-accent-fg: var(--__P__-accent)}}}@media(prefers-reduced-motion:reduce){:host{--__P__-dur-quick: 1ms;--__P__-dur-base: 1ms;--__P__-dur-slow: 1ms}}
|
|
2
2
|
|
|
3
3
|
*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;border:0}button{font:inherit;color:inherit;background:none;cursor:pointer;-webkit-appearance:none;appearance:none;line-height:1}button:focus-visible,[tabindex]:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px}textarea,input{font:inherit;color:inherit;background:none;border:0;outline:0;resize:none}a{color:var(--__P__-accent-fg);text-decoration:underline;text-underline-offset:2px}img,svg{display:block;max-width:100%}ul,ol{list-style:none}.__P__-app{display:block;width:100%;height:100%;font-family:var(--__P__-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01","ss03"}.__P__-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
|
|
4
4
|
|
|
@@ -27,7 +27,7 @@ import{Component as e,h as t,render as n}from"preact";import{batch as r,computed
|
|
|
27
27
|
`&&(i=r+1);return v.parser_end(c),o&&s(e.length),t+e.slice(n)}function Rr(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function zr(e){return`tool-${e.startsWith(`tool:`)?e.slice(5):e}`}function Br(e){return e.startsWith(`tool-`)?e.slice(5):e}const Vr={handshake:`/pai/handshake`,streamMessage:`/pai/stream-message`,streamResume:`/pai/stream-resume`,cancelStream:`/pai/cancel-stream`,listConversations:`/pai/list-conversations`,listMessages:`/pai/list-messages`,updateSettings:`/pai/update-settings`,markRead:`/pai/mark-read`,messageFeedback:`/pai/message-feedback`,requestOperator:`/pai/request-operator`,cancelOperatorRequest:`/pai/cancel-request-operator`,bootstrap:`/pai/bootstrap`,content:`/pai/content`,contentCollections:`/pai/content/collection/list`,contentVoteSet:`/pai/content/vote/set`,submitForm:`/pai/submit-form`};function Hr(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ur(e){if(!Hr(e))return;let t=e,n=t.controlMode,r=t.controlRevision;if(!(n!==`ai-agent`&&n!==`awaiting-operator`&&n!==`operator`||typeof r!=`number`||!Number.isSafeInteger(r)||r<0))return{controlMode:n,controlRevision:r,assignedOperatorInitials:typeof t.assignedOperatorInitials==`string`&&t.assignedOperatorInitials?t.assignedOperatorInitials:void 0,operatorAvailable:typeof t.operatorAvailable==`boolean`?t.operatorAvailable:void 0}}function Wr(e){if(!Hr(e))return;let t=e.status,n=e.postFinishSequence;if(!(t!==`compacting`&&t!==`ready`||typeof n!=`number`||!Number.isSafeInteger(n)||n<0))return{status:t,postFinishSequence:n}}function Gr(e){let t=Hr(e)?e.suggestions:void 0;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!Hr(e))continue;let{id:t,label:r,text:i}=e;typeof r==`string`&&r&&n.push({id:typeof t==`string`&&t?t:`s${n.length}`,label:r,text:typeof i==`string`&&i?i:r})}return n}function Kr(e){let t={messages:e.messages.map(e=>({id:e.serverMessageId??e.id,parts:Jr(e),role:e.role})),conversationId:e.conversationId,responseType:`ack`};return e.visitorId&&(t.visitorId=e.visitorId),e.userPrefs&&(t.userPrefs=e.userPrefs),t}function qr(e){return e.state===`output-available`||e.state===`output-error`||e.state===`output-denied`||e.approval?.approved!==void 0}function Jr(e){let t=[];for(let n of e.parts)if(n.kind===`step-start`&&t.push({type:`step-start`}),n.kind===`reasoning`&&n.text&&t.push({type:`reasoning`,text:n.text,state:n.done?`done`:`streaming`}),n.kind===`text`&&n.text&&t.push({text:n.text,type:`text`}),n.kind===`file`&&n.url&&t.push({mediaType:n.mediaType,type:`file`,url:n.url}),n.kind===`tool`&&qr(n)){let e=n.dynamic?{type:`dynamic-tool`,toolName:n.toolName,toolCallId:n.toolCallId,state:n.state}:{type:zr(n.toolName),toolCallId:n.toolCallId,state:n.state};n.input!==void 0&&(e.input=n.input),n.output!==void 0&&(e.output=n.output),n.error!==void 0&&(e.errorText=n.error),n.approval?.approved!==void 0&&(e.approval=n.approval),t.push(e)}for(let n of e.attachments??[])n.url&&t.push({type:`file`,url:n.url,mediaType:n.mediaType,filename:n.name,fileId:n.id,fileSize:n.size});return t}function Yr(e,t,n=at()){let r=e?[{kind:`text`,id:`t0`,textSig:o(e),doneSig:o(!0)}]:[];return{id:n,role:`user`,createdAt:Date.now(),status:`complete`,attachments:t,partsSig:o(r)}}function Xr(){return{id:at(),role:`assistant`,createdAt:Date.now(),status:`streaming`,partsSig:o([])}}function Zr(e){let t=at();return Qr({id:t,role:e.role,createdAt:Date.now(),status:`complete`,ephemeral:!0,parts:[{kind:`text`,id:`${t}-t0`,text:e.text,done:!0}]})}function Qr(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,canceled:e.canceled,errorText:e.errorText,finishReason:e.finishReason,serverMessageId:e.serverMessageId,ephemeral:e.ephemeral,attachments:e.attachments,feedback:e.feedback,partsSig:o(e.parts.map(Pi))}}function $r(e){return e.status===`failed`?`error`:e.role===`assistant`&&e.status===`streaming`?`streaming`:`complete`}function ei(e){let t=/* @__PURE__ */ new Set,n=e.parts.map((t,n)=>t.type===`text`?{kind:`text`,id:`${e.id}-t${n}`,textSig:o(t.text),doneSig:o(!0)}:t.type===`reasoning`?{kind:`reasoning`,id:`${e.id}-r${n}`,textSig:o(t.text),doneSig:o(t.state!==`streaming`)}:t.type===`step-start`?{kind:`step-start`,id:`${e.id}-ss${n}`}:t.type===`file`?{kind:`file`,url:t.url,mediaType:t.mediaType}:t.type===`source-url`?{kind:`source`,sourceId:t.sourceId,url:t.url,title:t.title}:t.type===`source-document`?{kind:`source`,sourceId:t.sourceId,title:t.title,filename:t.filename,mediaType:t.mediaType}:t.type===`data-suggestions`?null:t.type===`dynamic-tool`||t.type.startsWith(`tool-`)?{kind:`tool`,toolCallId:t.toolCallId,toolName:t.type===`dynamic-tool`?t.toolName:Br(t.type),dynamic:t.type===`dynamic-tool`||void 0,inputPartialSig:o(``),inputSig:o(t.input),outputSig:o(t.output),errorSig:o(t.errorText),stateSig:o(t.state),approvalSig:o(t.approval)}:null).filter(e=>e!==null).filter(e=>e.kind!==`source`||!t.has(e.sourceId)&&(t.add(e.sourceId),!0)),r=e.parts.find(e=>e.type===`data-suggestions`);return{id:e.id,role:e.role,operatorInitials:e.operatorInitials,suggestions:r?.type===`data-suggestions`?Gr(r.data):void 0,serverMessageId:e.id,createdAt:Date.parse(e.createdAt),status:$r(e),canceled:e.status===`canceled`,feedback:e.feedback??null,partsSig:o(n)}}function ti(e){return!e.parts.some(e=>e.type===`text`&&e.text.trim()!==``||e.type===`dynamic-tool`||e.type.startsWith(`tool-`)||e.type===`file`||e.type===`source-url`||e.type===`source-document`)}function ni(e){return e.role===`assistant`&&e.status===`streaming`&&ti(e)}function ri(e){let t=e.length-1;return e.filter((e,n)=>n===t||!ni(e)).map(ei)}function ii(e,t){let n=!t&&e.at(-1)?.role===`assistant`?-2:-1,r=e.at(n);return!r||r.ephemeral?[]:[r]}function ai(e){return{id:e.id,role:e.role,createdAt:e.createdAt,status:e.status,canceled:e.canceled,errorText:e.errorText,finishReason:e.finishReason,serverMessageId:e.serverMessageId,ephemeral:e.ephemeral,attachments:e.attachments,parts:e.partsSig.value.map(Fi)}}function oi(e){let t=``;for(let n of e.partsSig.value)n.kind===`text`&&(t+=n.textSig.value);return t}function si(e,t,n,r,i,a=t.createdAt){let o=e.find(e=>e.role===`user`&&!e.ephemeral);function s(e,t){return(e.role===`assistant`?Lr(oi(e)):oi(e)).replace(/\s+/g,` `).trim().slice(0,t)}let c=o?s(o,80):``,l=s(t,120);return{conversationId:n,title:c||r,lastMessageAt:new Date(a).toISOString(),preview:l||void 0,canContinue:i}}function ci(e){return oi(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`||e.kind===`source`)}function li(e){return oi(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`)}function ui(e){return e===`approval-responded`||e===`output-available`||e===`output-denied`||e===`output-error`}function di(e){return e.kind===`tool`}function fi(e){return e.kind===`text`&&e.textSig.value.trim()!==``||e.kind===`file`}function pi(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);return t.slice(n+1).some(fi)}function mi(e){if(e.role!==`assistant`)return!1;let t=e.partsSig.value.filter(di);return t.length>0&&t.every(e=>ui(e.stateSig.value))}function hi(e){return e.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`)&&!pi(e)}function gi(e,t){return!e.partsSig.value.slice(t+1).some(e=>e.kind===`step-start`||fi(e))}function _i(e){return e.partsSig.value.some(e=>di(e)&&!ui(e.stateSig.value))}function vi(e,t){if(t.length===0)return e;let n=/* @__PURE__ */ new Set;for(let t of e)n.add(t.id),t.serverMessageId&&n.add(t.serverMessageId);let r=t.filter(e=>{let t=[e.id,e.serverMessageId].filter(e=>e!==void 0);return!t.some(e=>n.has(e))&&(t.forEach(e=>n.add(e)),!0)});if(r.length===0)return e;let i=e.findIndex(e=>!e.ephemeral),a=i<0?e.length:i;return[...e.slice(0,a),...r,...e.slice(a)]}function yi(e,t){return t.id=e.id,e.canceled&&(t.canceled=!0),e.feedback!==void 0&&(t.feedback=e.feedback),t.suggestions??(t.suggestions=e.suggestions),t}function bi(e,t,n,r){if(!xi(e))return;if(t.length===0){let t=Math.max(...r.values());return n.find(n=>n.role===`assistant`&&r.get(n.serverMessageId??n.id)===t&&oi(n).length>=oi(e).length)}let i=t.at(-1);if(i?.role!==`user`)return;let a=r.get(i.serverMessageId??i.id);if(a!==void 0)return n.find(t=>t.role===`assistant`&&r.get(t.serverMessageId??t.id)===a+1&&oi(t).length>=oi(e).length)}function xi(e){return e?.role===`assistant`&&e.status===`streaming`&&e.serverMessageId===void 0}function Si(e,t){let n=new Map(t.partsSig.value.filter(di).filter(e=>ui(e.stateSig.value)).map(e=>[e.toolCallId,e]));if(n.size===0)return;let r=!1,i=e.partsSig.value.map(e=>{if(!di(e))return e;let t=n.get(e.toolCallId);if(!t)return e;let i=e.approvalSig.value,a=t.approvalSig.value,o=i===void 0||i.approved===void 0&&a?.approved!==void 0?t.approvalSig:e.approvalSig,s=e.inputSig.value===void 0?t.inputSig:e.inputSig,c=e.toolName===`tool`?t.toolName:e.toolName,l=e.dynamic??t.dynamic;return o===e.approvalSig&&s===e.inputSig&&c===e.toolName&&l===e.dynamic?e:(r=!0,{...e,toolName:c,dynamic:l,inputSig:s,approvalSig:o})});r&&(e.partsSig.value=i)}function Ci(e,t){let n=t.filter(e=>!e.ephemeral&&(e.status===`streaming`||e.status===`pending`||e.status===`error`||e.retryAction!==void 0||(e.attachments?.length??0)>0||ci(e))),r=/* @__PURE__ */ new Map;for(let e of n)r.set(e.id,e),e.serverMessageId!==void 0&&r.set(e.serverMessageId,e);let i=/* @__PURE__ */ new Set,a=[],o=e.map(e=>{let t=(e.serverMessageId===void 0?void 0:r.get(e.serverMessageId))??r.get(e.id);return t===void 0?(a.push(e),e):(i.add(t),t.role===e.role?t.role===`user`&&t.serverMessageId===void 0&&(t.status===`pending`||t.status===`error`)?yi(t,e):t.status===`streaming`||oi(t).length>=oi(e).length?(Si(t,e),t.suggestions??(t.suggestions=e.suggestions),t.feedback===void 0&&(t.feedback=e.feedback),e.canceled&&(t.canceled=!0),t):yi(t,e):e)}),s=n.filter(e=>!i.has(e)),c=s.findLast(xi),l=/* @__PURE__ */ new Map;e.forEach((e,t)=>{l.set(e.id,t),e.serverMessageId!==void 0&&l.set(e.serverMessageId,t)});let u=bi(c,c?n.slice(0,n.indexOf(c)):[],a,l);if(c&&u){let e=o.indexOf(u);e>=0&&(o[e]=yi(c,u)),s=s.filter(e=>e!==c)}return[...o,...s]}function wi(e,t){let n=new Map(t.filter(e=>e.serverMessageId!==void 0).map(e=>[e.serverMessageId,e])),r=/* @__PURE__ */ new Map;t.forEach((e,t)=>{r.set(e.id,t),e.serverMessageId!==void 0&&r.set(e.serverMessageId,t)});let i=new Set(e.flatMap(e=>[e.serverMessageId,e.id].filter(e=>e!==void 0))),a=!1,o=e.map(e=>{let t=n.get(e.serverMessageId??e.id);if(t===void 0||t.role!==e.role)return e;if(e.role===`user`&&e.serverMessageId===void 0)return a=!0,yi(e,t);if(e.serverMessageId===void 0)return e;let r=oi(t),i=oi(e),o=t.status!==`streaming`&&r.length>=i.length&&ki(e,t);if(r.length>i.length||r===i&&t.partsSig.value.length>e.partsSig.value.length||o)return a=!0,yi(e,t);if(e.status===`streaming`&&t.status!==`streaming`&&Ei(e,t)){if(e.continuationStreaming&&_i(t))return e;if(!ki(t,e))return a=!0,yi(e,t)}return e}),s=[...n.values()].filter(e=>!i.has(e.serverMessageId)),c=o.findLastIndex(xi),l=o[c],u=bi(l,o.slice(0,c),s,r);if(l!==void 0&&u!==void 0&&oi(u).length>=oi(l).length&&(yi(l,u),o[c]=u,s.splice(s.indexOf(u),1),a=!0),s.length===0)return{messages:a?o:e,changed:a};for(let e of s){let t=r.get(e.serverMessageId??e.id),n=!1,i=o.findIndex(e=>{let i=r.get(e.serverMessageId??e.id);return t===void 0?!1:i===void 0?n:i>t||(n=!0,!1)});i===-1?o.push(e):o.splice(i,0,e)}return{messages:o,changed:!0}}function Ti(e,t){if(e.role!==t.role)return!1;let n=oi(t),r=oi(e);return n.length>r.length||t.partsSig.value.length>e.partsSig.value.length||ki(e,t)}function Ei(e,t){let n=e.partsSig.value,r=t.partsSig.value;return n.length===r.length&&n.every((e,t)=>{let n=r[t];switch(e.kind){case`text`:return n?.kind===`text`&&n.textSig.value===e.textSig.value;case`reasoning`:return n?.kind===`reasoning`&&n.textSig.value===e.textSig.value;case`step-start`:return n?.kind===`step-start`;case`tool`:return n?.kind===`tool`&&n.toolCallId===e.toolCallId&&Di(n.toolName,e.toolName);case`file`:return n?.kind===`file`&&n.url===e.url&&n.mediaType===e.mediaType;case`source`:return n?.kind===`source`&&n.sourceId===e.sourceId&&n.url===e.url&&n.title===e.title&&n.filename===e.filename&&n.mediaType===e.mediaType;default:return e}})}function Di(e,t){return(e.startsWith(`tool:`)?e.slice(5):e)===(t.startsWith(`tool:`)?t.slice(5):t)}const Oi={"input-streaming":0,"input-available":1,"approval-requested":2,"approval-responded":3,"output-available":4,"output-denied":4,"output-error":4};function ki(e,t){let n=new Map(e.partsSig.value.filter(di).map(e=>[e.toolCallId,e]));return t.partsSig.value.filter(di).some(e=>{let t=n.get(e.toolCallId);if(!t||Oi[e.stateSig.value]>Oi[t.stateSig.value])return!0;let r=e.approvalSig.value?.approved;return r!==void 0&&r!==t.approvalSig.value?.approved})}function Ai(e){return e.role===`assistant`&&e.status!==`streaming`&&!ci(e)}function ji(e,t){if(!e.includes(t)||t.retryAction===null)return;if(t.retryAction)return t.retryAction;if(t!==e.at(-1)||t.role!==`assistant`||t.serverMessageId===void 0||t.status!==`error`&&!Ai(t))return;let n=e.indexOf(t);for(let t=n-1;t>=0;t--){let n=e[t];if(n?.role===`user`&&!n.ephemeral)return{kind:`repeat-user`,messageId:n.id}}}function Mi(e){return e.canceled===!0&&e.role===`assistant`&&e.status!==`streaming`&&!li(e)}function Ni(e,t){return e.operatorRoutedTurn?Ai(e)?`drop`:`complete-operator-routed`:t||Ai(e)?`error`:`complete`}function Pi(e){return e.kind===`text`||e.kind===`reasoning`?{kind:e.kind,id:e.id,textSig:o(e.text),doneSig:o(e.done)}:e.kind===`tool`?{kind:`tool`,toolCallId:e.toolCallId,toolName:e.toolName,dynamic:e.dynamic,inputPartialSig:o(e.inputPartial),inputSig:o(e.input),outputSig:o(e.output),errorSig:o(e.error),stateSig:o(e.state),approvalSig:o(e.approval)}:e}function Fi(e){return e.kind===`text`||e.kind===`reasoning`?{kind:e.kind,id:e.id,text:e.textSig.value,done:e.doneSig.value}:e.kind===`tool`?{kind:`tool`,toolCallId:e.toolCallId,toolName:e.toolName,dynamic:e.dynamic,inputPartial:e.inputPartialSig.value,input:e.inputSig.value,output:e.outputSig.value,error:e.errorSig.value,state:e.stateSig.value,approval:e.approvalSig.value}:e}function Ii(e,t){return new Promise(n=>{if(t?.aborted)return n();let r=setTimeout(a,e);function i(){return a()}t?.addEventListener(`abort`,i,{once:!0});function a(){clearTimeout(r),t?.removeEventListener(`abort`,i),n()}})}function Li(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return btoa(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function Ri(e){return e&&Object.keys(e).length>0?e:void 0}function zi(e,t){let n=Ri(e),r=Ri(t);if(!n&&!r)return;let i={};return n&&(i.user=n),r&&(i.page=r),Li(JSON.stringify(i))}var Bi=class extends Error{constructor(e,t,n,r){super(e),this.code=t,this.status=n,this.cause=r,this.name=`StreamError`}};const Vi=R.scope(`parser`);async function*Hi(e,t,n){if(!e.ok){let t=await e.text().catch(()=>``);throw new Bi(`server responded ${e.status}: ${t.slice(0,200)}`,`server`,e.status)}for await(let r of Ui(e,t)){let e=Wi(r,n);if(e===`done`)return;e&&(yield e)}}async function*Ui(e,t){if(!e.body)throw new Bi(`response has no body`,`no-body`);let n=e.body.pipeThrough(new TextDecoderStream).getReader(),r=``;try{for(;;){if(t.aborted)throw new DOMException(`aborted`,`AbortError`);let{done:e,value:i}=await n.read();if(e){let e=r.trim();e&&(yield e);return}r+=i;let a;for(;(a=r.indexOf(`
|
|
28
28
|
|
|
29
29
|
`))!==-1;){let e=r.slice(0,a);r=r.slice(a+2),yield e}}}finally{n.releaseLock()}}function Wi(e,t){let n=``,r;for(let i of e.split(`
|
|
30
|
-
`))if(i!==``){if(i.startsWith(`:`))t?.(i.slice(1).trim());else if(i.startsWith(`data:`)){let e=i.slice(5).replace(/^ /,``);n=n?`${n}\n${e}`:e}else i.startsWith(`id:`)&&(r=i.slice(3).trim())}if(n===`[DONE]`)return`done`;if(!n)return null;try{let e=JSON.parse(n);return Vi.trace(`chunk`,{type:e.type,eventId:r}),{chunk:e,eventId:r}}catch(e){throw Vi.trace(`frame parse failed`,{errorType:e instanceof Error?e.name:typeof e,payloadLength:n.length}),new Bi(`invalid SSE frame`,`network`,void 0,e)}}const q=R.scope(`transport`),Gi=6e4,Ki=/* @__PURE__ */ new WeakMap;function qi(e){return Ki.get(e)}function Ji(e,t){return Ki.set(e,t),e}function Yi(e){return Math.max(e?.upsertRevision??0,e?.read?.revision??0)}function Xi(e,t){return e.conversationId===t.conversationId&&e.title===t.title&&e.lastMessageAt===t.lastMessageAt&&e.preview===t.preview&&e.canContinue===t.canContinue&&e.hasUnread===t.hasUnread&&e.controlState===t.controlState}function Zi(e,t,n=!0){switch(t.type){case`snapshot`:{let n=new Map(e.map(e=>[e.conversationId,e])),r=e.filter(e=>(qi(e)?.activityRevision??0)>t.requestedRevision).toSorted((e,t)=>qi(t).activityRevision-qi(e).activityRevision),i=new Set(r.map(e=>e.conversationId));return[...r,...t.result.conversations.filter(e=>!i.has(e.conversationId)).map(e=>{let r=n.get(e.conversationId);if(!r)return e;let i=qi(r);return(i?.upsertRevision??0)>t.requestedRevision?r:i?.read&&!r.hasUnread&&i.read.lastMessageAt===e.lastMessageAt?Ji({...e,hasUnread:!1},{upsertRevision:0,read:i.read}):e})]}case`read`:{let n=e.findIndex(e=>e.conversationId===t.conversationId&&(t.lastMessageAt===void 0||e.lastMessageAt===t.lastMessageAt));if(n<0)return e;let r=e[n],i=qi(r);if(Yi(i)>t.revision)return e;let a=t.lastMessageAt??r.lastMessageAt,o={upsertRevision:i?.upsertRevision??0,...i?.activityRevision===void 0?{}:{activityRevision:i.activityRevision},read:{revision:t.revision,...a?{lastMessageAt:a}:{}}};return r.hasUnread?e.map((e,t)=>t===n?Ji({...e,hasUnread:!1},o):e):(Ji(r,o),e)}case`upsert`:{let r=e.findIndex(e=>e.conversationId===t.conversation.conversationId);if(r<0&&!n)return e;let i=r<0?void 0:e[r],a=i?qi(i):void 0;if(Yi(a)>t.revision)return e;let o=t.activity?t.revision:a?.activityRevision,s={upsertRevision:t.revision,...o===void 0?{}:{activityRevision:o},...!t.conversation.hasUnread&&a?.read?{read:a.read}:{}},c=i?{...i,...t.conversation,title:i.title}:{...t.conversation};return i&&Xi(i,c)?(Ji(i,s),e):(Ji(c,s),t.activity?[c,...e.filter(e=>e.conversationId!==c.conversationId)]:i?e.map((e,t)=>t===r?c:e):[...e,c])}default:return t}}const Qi=/* @__PURE__ */ new Set([408,425,429,500,502,503,504]);function $i(e){return 400*2**e+Math.floor(Math.random()*250)}function ea(e){return 6e4+Math.ceil(e/1048576)*15e3}function ta(e){let t=e.get(`retry-after`);if(!t)return null;let n=Number(t),r=Number.isFinite(n)?n*1e3:Date.parse(t)-Date.now();return Number.isFinite(r)&&r>=0?Math.min(r,3e4):null}var na=class{constructor(e){this.ttlMs=e,V(this,`map`,/* @__PURE__ */ new Map)}getOrFetch(e,t){let n=this.map.get(e);if(n&&performance.now()-n.at<this.ttlMs)return n.result;let r={at:performance.now(),result:t().then(e=>(r.value=e,e)).catch(t=>{throw this.map.get(e)===r&&this.map.delete(e),t})};return this.map.set(e,r),r.result}peek(e){let t=this.map.get(e);if(t?.value!==void 0&&performance.now()-t.at<this.ttlMs)return t.value}update(e){for(let t of this.map.values())if(t.value!==void 0){let n=e(t.value);t.value=n,t.result=Promise.resolve(n)}else t.result=t.result.then(n=>{let r=e(n);return t.value=r,r})}delete(e){this.map.delete(e)}},ra=class{constructor(e){this.opts=e,V(this,`conversationListeners`,/* @__PURE__ */ new Set),V(this,`conversationRevision`,0),V(this,`visitorId`,void 0),V(this,`conversationId`,void 0),V(this,`userContext`,void 0),V(this,`pageContext`,void 0),V(this,`locale`,void 0),V(this,`conversationsCache`,new na(1e4)),V(this,`contentCache`,new na(Gi)),V(this,`contentCollectionsCache`,new na(Gi))}setContext(e,t){this.userContext=e,this.pageContext=t}setLocale(e){this.locale=e}primeIdentity(e,t){e&&(this.visitorId=e),t&&(this.conversationId=t)}envelope(){let e={_ev:ft};this.visitorId&&(e.visitorId=this.visitorId),this.conversationId&&(e.conversationId=this.conversationId),this.locale&&(e.locale=this.locale);let t=zi(this.userContext,this.pageContext);return t&&(e.context=t),e}withEnvelope(e){return{...this.envelope(),...e}}appendEnvelope(e){for(let[t,n]of Object.entries(this.envelope()))e.append(t,n);return e}withEnvelopeQuery(e){let t=new URL(this.url(e));for(let[e,n]of Object.entries(this.envelope()))t.searchParams.has(e)||t.searchParams.set(e,n);return t.toString()}async handshake(e){q.debug(`handshake →`,{visitorId:e.visitorId,conversationId:e.conversationId,locale:e.locale});let t=await this.postJson(Vr.handshake,e,`handshake`);return q.debug(`handshake ←`,{visitorId:t.visitorId,conversationId:t.conversationId,hasWelcome:!!t.welcome,hasConfig:!!t.config,rebind:t.rebind}),this.visitorId=e.visitorId,this.conversationId=t.conversationId,t}async uploadFile(e,t){q.debug(`uploadFile →`,{name:e.name,size:e.size,type:e.type});let n=new FormData;n.append(`file`,e,e.name);let r=await this.postForm(this.uploadPath,n,`upload`,t,ea(e.size));return q.debug(`uploadFile ←`,{id:r.id,url:r.url}),r}async transcribe(e,t=`audio/webm`){q.debug(`transcribe →`,{size:e.size,mimeType:t});let n=new FormData;n.append(`audio`,e,`voice.${ia(t)}`),n.append(`mimeType`,t);let r=await this.postForm(this.transcribePath,n,`transcribe`);return q.debug(`transcribe ←`,{textLen:r.text.length}),r}subscribeConversationChanges(e){return this.conversationListeners.add(e),()=>this.conversationListeners.delete(e)}publishConversation(e,t=!1){let n={type:`upsert`,conversation:e,revision:++this.conversationRevision,...t?{activity:!0}:{}};this.conversationsCache.update(r=>{let i=r.pagination.page===1,a=r.conversations.some(t=>t.conversationId===e.conversationId),o=Zi(r.conversations,n,i&&t),s=i&&o.length>r.pagination.limit?o.slice(0,r.pagination.limit):o;if(!i||!t||a||r.pagination.hasNext)return s===r.conversations?r:{...r,conversations:s};let c=Math.max(r.pagination.total,r.conversations.length)+1,l=Math.ceil(c/r.pagination.limit);return{...r,conversations:s,pagination:{...r.pagination,total:c,totalPages:l,hasNext:r.pagination.page<l}}});for(let e of this.conversationListeners)e(n)}localeCacheKey(e){return`${this.locale??``}|${JSON.stringify(e,Object.keys(e).toSorted())}`}peekConversations(e={}){return this.conversationsCache.peek(this.localeCacheKey(e))}listConversations(e={},t=!1){if((e.page??1)>1)return this.fetchConversations(e);let n=this.localeCacheKey(e),r=this.conversationRevision;t&&this.conversationsCache.delete(n);let i=this.conversationsCache.getOrFetch(n,()=>this.fetchConversations(e));return t?i.then(e=>{let t={type:`snapshot`,result:e,requestedRevision:r};for(let e of this.conversationListeners)e(t);return e}):i}async fetchConversations(e){let t=new URL(this.url(Vr.listConversations));return e.visitorId&&t.searchParams.set(`visitorId`,e.visitorId),e.page&&t.searchParams.set(`page`,String(e.page)),e.limit&&t.searchParams.set(`limit`,String(e.limit)),e.ids?.length&&t.searchParams.set(`ids`,e.ids.join(`,`)),this.getJson(t.toString(),`listConversations`)}async loadConversation(e,{ids:t=[],beforeId:n,beforeCreatedAt:r}={}){let i=new URL(this.url(Vr.listMessages));i.searchParams.set(`conversationId`,e),i.searchParams.set(`limit`,`50`),t.length>0&&i.searchParams.set(`ids`,t.join(`,`)),n&&i.searchParams.set(`beforeId`,n),r&&i.searchParams.set(`beforeCreatedAt`,r);let a=await this.getJson(i.toString(),`loadConversation`);return{...a,messages:a.messages.toReversed()}}async markRead(e,t){if(!this.visitorId||!e)return;let n={type:`read`,conversationId:e,...t===void 0?{}:{lastMessageAt:t},revision:++this.conversationRevision};this.conversationsCache.update(e=>{let t=Zi(e.conversations,n);return t===e.conversations?e:{...e,conversations:t}});for(let e of this.conversationListeners)e(n);try{await this.postJson(Vr.markRead,{conversationId:e},`markRead`,!0)}catch(e){q.debug(`markRead failed (non-fatal)`,{err:e})}}async requestOperator(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(Vr.requestOperator,{},`requestOperator`)).controlState}catch(e){q.debug(`requestOperator failed (non-fatal)`,{err:e});return}}async cancelOperatorRequest(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(Vr.cancelOperatorRequest,{},`cancelOperatorRequest`)).controlState}catch(e){q.debug(`cancelOperatorRequest failed (non-fatal)`,{err:e});return}}listContent(e={}){return this.contentCache.getOrFetch(this.localeCacheKey(e),()=>this.fetchContent(e))}async fetchContent(e){let t=new URL(this.dataUrl(Vr.content));for(let[n,r]of Object.entries(e))r!==void 0&&t.searchParams.set(n,Array.isArray(r)?r.join(`,`):String(r));let n=await this.getJson(t.toString(),`listContent`),r=n.items?.map(e=>x(e,this.locale))??[];return{...n,items:r}}async setContentVote(e){try{await this.postJson(this.dataUrl(Vr.contentVoteSet),e,`setContentVote`)}catch{}}listContentCollections(e){return this.contentCollectionsCache.getOrFetch(this.localeCacheKey({ids:e}),()=>this.fetchContentCollections(e))}async fetchContentCollections(e){let t=new URL(this.dataUrl(Vr.contentCollections));return e.length&&t.searchParams.set(`ids`,e.join(`,`)),{items:(await this.getJson(t.toString(),`listContentCollections`)).items?.map(e=>S(e,this.locale))??[]}}async bootstrap(e){let t=new URL(this.dataUrl(Vr.bootstrap));e&&t.searchParams.set(`conversationId`,e);let n=await this.getJson(t.toString(),`bootstrap`);return{forms:n.forms??[],formSubmissions:n.formSubmissions??[]}}async saveUserPrefs(e){return this.postJson(Vr.updateSettings,{userPrefs:e},`saveUserPrefs`)}get uploadPath(){return this.opts.endpoints?.upload??`/pai/upload-file`}get transcribePath(){return this.opts.endpoints?.transcribe??`/pai/transcribe-audio`}get submitFormPath(){return this.opts.endpoints?.submitForm??Vr.submitForm}async submitForm(e){q.debug(`submitForm →`,{formId:e.formId,trigger:e.trigger,fields:Object.keys(e.values).length});try{await this.postJson(this.dataUrl(this.submitFormPath),e,`submitForm`)}catch(e){q.debug(`submitForm failed (non-fatal)`,{err:e})}}async submitFeedback(e){q.debug(`submitFeedback →`,{messageId:e.messageId,value:e.value});try{await this.postJson(Vr.messageFeedback,{messageId:e.messageId,set:{feedback:e.value}},`submitFeedback`)}catch(e){q.debug(`submitFeedback failed (non-fatal)`,{err:e})}}async sendTurn(e){q.debug(`message →`,{conversationId:e.conversationId,visitorId:e.visitorId,messageCount:e.messages.length});try{return await this.runWithAbort(async t=>{let n=await this.fetchImpl(this.url(Vr.streamMessage),{method:`POST`,credentials:`omit`,headers:{accept:`application/json`,"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(e)),signal:t});if(n.status!==202)throw new Bi(`sendTurn failed: expected 202, received ${n.status}`,`server`,n.status);let r;try{r=await n.json()}catch(e){throw t?.aborted?e:new Bi(`sendTurn failed: invalid acknowledgement`,`server`,n.status,e)}if(!aa(r))throw new Bi(`sendTurn failed: invalid acknowledgement`,`server`,n.status);return r},void 0,3e4)}catch(e){throw e instanceof Bi?e:new Bi(`sendTurn failed: network error`,`network`,void 0,e)}}cancelTurn(e,t){this.visitorId&&e&&t&&(q.debug(`cancel stream`,{conversationId:e,runId:t,visitorId:this.visitorId}),this.fetchImpl(this.url(Vr.cancelStream),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({conversationId:e,runId:t})),keepalive:!0}).catch(e=>q.debug(`cancel POST failed (non-fatal)`,{err:e})))}async connectResumeStream(e){let t=new AbortController;function n(){return t.abort(e.signal.reason)}e.signal.aborted?n():e.signal.addEventListener(`abort`,n,{once:!0});let r=setTimeout(()=>t.abort(),1e4);function i(){clearTimeout(r),e.signal.removeEventListener(`abort`,n)}let a;try{a=await this.fetchImpl(this.resumeUrl(),{method:`GET`,credentials:`omit`,headers:{accept:`text/event-stream`,...this.opts.auth.headers()},signal:t.signal})}catch(t){return i(),e.signal.aborted||q.debug(`resume-stream fetch failed — reconnecting`,{err:t}),`held`}if(!a.ok)return i(),a.status===409||Qi.has(a.status)?(q.debug(`resume-stream → transient response; reconnecting`,{status:a.status}),`held`):(q.debug(`resume-stream → endpoint unavailable`,{status:a.status}),`unavailable`);if(!a.body)return i(),q.debug(`resume-stream → bodyless response; stopping`,{status:a.status}),`unavailable`;if(!(a.headers.get(`content-type`)??``).includes(`text/event-stream`))return i(),q.debug(`resume-stream → non-SSE response; stopping`),`unavailable`;let o=!1;try{for await(let{chunk:n}of Hi(a,t.signal,t=>{o||t!==`connected`||(o=!0,clearTimeout(r),e.onConnected())})){if(e.signal.aborted)return`held`;e.onChunk(n)}}catch(t){if(e.signal.aborted)return`held`;q.debug(`resume-stream segment dropped — reconnecting`,{err:t})}finally{i()}return`held`}resumeUrl(){return this.withEnvelopeQuery(Vr.streamResume)}async postJson(e,t,n,r=!1){let i=await this.fetchWithRetry(()=>[this.url(e),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(t)),...r?{keepalive:!0}:{}}],n);return this.assertOk(i,n)}async postForm(e,t,n,r,i){return this.runWithAbort(async r=>{let i=await this.fetchImpl(this.url(e),{method:`POST`,credentials:`omit`,headers:this.opts.auth.headers(),body:this.appendEnvelope(t),signal:r});return this.assertOk(i,n)},r,i)}async runWithAbort(e,t,n){if(!t&&n===void 0)return e();let r=new AbortController;function i(){return r.abort(t?.reason)}t?.aborted?i():t?.addEventListener(`abort`,i,{once:!0});let a=n===void 0?void 0:setTimeout(()=>r.abort(),n);try{return await e(r.signal)}finally{a!==void 0&&clearTimeout(a),t?.removeEventListener(`abort`,i)}}async getJson(e,t){let n=await this.fetchWithRetry(()=>[this.withEnvelopeQuery(e),{method:`GET`,credentials:`omit`,headers:{accept:`application/json`,...this.opts.auth.headers()}}],t);return this.assertOk(n,t)}async fetchWithRetry(e,t){for(let n=0;;n++){let[r,i]=e(),a;try{a=await this.fetchImpl(r,i)}catch(e){if(n>=3)throw new Bi(`${t} failed: network error`,`network`,void 0,e);q.debug(`request network error — retrying`,{label:t,attempt:n}),await Ii($i(n));continue}if(a.ok||!Qi.has(a.status)||n>=3)return a;let o=ta(a.headers)??$i(n);q.debug(`request retryable status — retrying`,{label:t,status:a.status,attempt:n,wait:o}),await Ii(o)}}async assertOk(e,t){if(!e.ok)throw new Bi(`${t} failed: ${e.status}`,`server`,e.status);return await e.json()}url(e){return/^https?:\/\//i.test(e)?e:`${this.opts.agentApiBaseUrl}${e}`}dataUrl(e){return/^https?:\/\//i.test(e)?e:`${this.opts.dataApiBaseUrl}${e}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function ia(e){return e.includes(`webm`)?`webm`:e.includes(`ogg`)?`ogg`:e.includes(`mp4`)||e.includes(`m4a`)?`m4a`:e.includes(`mpeg`)?`mp3`:e.includes(`wav`)?`wav`:`bin`}function aa(e){if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`status`),n=Reflect.get(e,`conversationId`),r=Reflect.get(e,`runId`);return t===`accepted`&&typeof n==`string`&&n.length>0&&(r===void 0||typeof r==`string`&&r.length>0)}function oa(e,t,n){switch(e){case`clear`:case`sound`:case`history`:case`language`:case`theme`:case`textSize`:return!0;case`popOut`:return t!==`standalone`&&t!==`page`;case`expand`:return t===`floating`;case`fullscreen`:return t!==`standalone`;case`close`:return t===`standalone`||t===`page`?!1:t!==`inline`||n===`fullscreen`}}function sa(e,t,n){return oa(`close`,e,t)?n.includes(`close`):!1}function ca(e,t){return e===`inline`&&t===`fullscreen`?`exit-fullscreen`:`close`}function la(e,t,n,r){let i={role:n,text:r};e.emit(`message`,i),t.onMessage?.(i)}function ua(e){let t=p(e);t.current=e;let n=p(null);return n.current??(n.current=da(t)),n.current}function da(e){let t=o(null),n=/* @__PURE__ */ new Set;function r(t){return`${e.current.conversationId()??``}:${t}`}function i(t){return t.frequency===`always`?!1:t.frequency===`conversation`?n.has(r(t.id)):t.id in e.current.persistence.loadFormsDone()}function a(n,r){if(t.value)return;let a=e.current;if(n===`manual`){let e=a.forms.list.find(e=>e.id===r);e&&(t.value={form:e,trigger:`manual`})}else for(let e of a.forms.byTrigger[n]??[]){let r=e.triggers.find(e=>e.kind===n);if(r&&fa(r,a)&&!i(e)&&pa(e,a)){t.value={form:e,trigger:n};return}}}function s(i,a){let o=t.value;if(!o)return;t.value=null;let{form:s,trigger:c}=o;s.frequency===`conversation`?n.add(r(s.id)):s.frequency!==`always`&&e.current.persistence.saveFormDone(s.id),e.current.onComplete(s,c,i,a)}function c(){let n=t.value;if(!n)return;let r=e.current.forms.list.find(e=>e.id===n.form.id);r&&r!==n.form&&(t.value={form:r,trigger:n.trigger})}return{activeForm:t,fire:a,refresh:c,complete:e=>s(e,!1),skip:()=>s({},!0)}}function fa(e,t){return e.kind===`after-messages`?t.messageCount()>=Number(e.param??0):e.kind!==`page-area`||t.pageArea()===e.param}function pa(e,t){let n=e.when;if(!n)return!0;if(n.missingContext?.length){let e=t.userContext()??{};if(n.missingContext.some(t=>e[t]!==void 0&&e[t]!==``))return!1}if(n.pageArea&&!(Array.isArray(n.pageArea)?n.pageArea:[n.pageArea]).includes(t.pageArea()??``))return!1;let r=t.messageCount();return!(n.minMessages!=null&&r<n.minMessages||n.maxMessages!=null&&r>n.maxMessages)}function ma(e){return Object.fromEntries(e.map(e=>[e,[]]))}function ha(e,t,n){return e.includes(t)?t:e.includes(n)?n:e[0]??``}function ga(e,t,n){let r=[...new Set(t)],i=ha(r,e,``),a=o({activeTab:i,stacks:ma(r)});return{sig:a,reconcile(e,t){let i=[...new Set(e)],o=a.value,s=ha(i,o.activeTab,t),c=Object.fromEntries(i.map(e=>[e,o.stacks[e]??[]])),l=s===o.activeTab&&i.length===Object.keys(o.stacks).length&&i.every(e=>o.stacks[e]===c[e]);r=i,!l&&(a.value={activeTab:s,stacks:c},s!==o.activeTab&&s&&n?.(s))},switchTab(e){e in a.value.stacks&&a.value.activeTab!==e&&(a.value={...a.value,activeTab:e},n?.(e))},open(e,t){let r=a.value;e in r.stacks&&(a.value={activeTab:e,stacks:{...r.stacks,[e]:t?[t]:[]}},r.activeTab!==e&&n?.(e))},push(e){let t=a.value,n=t.stacks[t.activeTab]??[];a.value={...t,stacks:{...t.stacks,[t.activeTab]:[...n,e]}}},pop(){let e=a.value,t=e.stacks[e.activeTab]??[];t.length!==0&&(a.value={...e,stacks:{...e.stacks,[e.activeTab]:t.slice(0,-1)}})},reset(e){a.value={activeTab:ha(r,e,``),stacks:ma(r)}}}}function _a(e){return e.stacks[e.activeTab]??[]}function va(e){return _a(e).at(-1)}function ya(e){return _a(e).length===0}function ba(e,t,n){return e===`page`?`page`:e===`standalone`?`standalone`:e===`inline`?t===`fullscreen`?`fullscreen`:`inline`:e===`modal`||e===`drawer`?n?t===`fullscreen`?`fullscreen`:e:`closed`:n?t===`fullscreen`?`fullscreen`:t===`expanded`?`expanded`:`open`:`closed`}function xa(e,t,n){if(e===`standalone`||e===`page`)return`fullscreen`;let r=t.initialSize;return r===`expanded`||r===`fullscreen`||r===`normal`?r:n>0&&n<640?`fullscreen`:n>=(t.autoSizeBreakpoint??900)?`expanded`:`normal`}function Sa(e,t,n,r=null){return{panelOpen:e.mode===`inline`||e.mode===`standalone`||e.mode===`page`||(n??!e.startMinimized),panelSize:e.mode!==`standalone`&&e.mode!==`page`&&e.mode!==`inline`&&r?r:xa(e.mode,e.size,t)}}function Ca(){return typeof window>`u`?0:window.innerWidth}const J={fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,viewBox:`0 0 24 24`},wa=`${M.cssPrefix}-icon-dir`;function Ta(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M21 12a8 8 0 0 1-12 6.93L3 21l1.65-5.16A8 8 0 1 1 21 12Z`})})}function Ea(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M18 6 6 18M6 6l12 12`})})}function Da(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 5v14M5 12h14`})})}function Oa(){return/* @__PURE__ */ _(`svg`,{...J,class:wa,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m22 2-7 20-4-9-9-4Z`}),/* @__PURE__ */ g(`path`,{d:`M22 2 11 13`})]})}function ka(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 19V5M5 12l7-7 7 7`})})}function Aa(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 20V4l18 8-18 8Z`})})}function ja(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m9 18 6-6-6-6`})})}function Ma(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})})}function Na(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m21 11-9 9a5.5 5.5 0 0 1-7.78-7.78l8.49-8.49a3.67 3.67 0 0 1 5.19 5.19l-8.49 8.49a1.83 1.83 0 0 1-2.6-2.6l7.78-7.78`})})}function Pa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`rect`,{x:`9`,y:`2`,width:`6`,height:`12`,rx:`3`}),/* @__PURE__ */ g(`path`,{d:`M5 10a7 7 0 0 0 14 0M12 19v3`})]})}function Fa(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5`})})}function Ia(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5`})})}function La(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z`})})}function Ra(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7`})})}function za(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M14 3h7v7M21 3l-9 9`}),/* @__PURE__ */ g(`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`})]})}function Ba(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,viewBox:`0 0 10 10`,children:/* @__PURE__ */ g(`path`,{d:`M9 1L1 9M9 5L5 9M9 9H9`,strokeWidth:`1.5`})})}function Va(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`5`,r:`1.5`,fill:`currentColor`,stroke:`none`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`1.5`,fill:`currentColor`,stroke:`none`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`19`,r:`1.5`,fill:`currentColor`,stroke:`none`})]})}function Ha(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M11 5 6 9H2v6h4l5 4zM15 9a5 5 0 0 1 0 6M18 7a9 9 0 0 1 0 10`})})}function Ua(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6`})})}function Wa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M3 18 8 6l5 12M4.7 14h6.6`}),/* @__PURE__ */ g(`path`,{d:`M14.5 18l3.2-7 3.2 7M15.6 15.8h4.2`})]})}function Ga(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m5 6 6 6-6 6M13 6l6 6-6 6`})})}function Ka(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M20 6 9 17l-5-5`})})}function qa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M3 3v6h6`}),/* @__PURE__ */ g(`path`,{d:`M3.05 13A9 9 0 1 0 6 5.3L3 9`}),/* @__PURE__ */ g(`path`,{d:`M12 7v5l3 2`})]})}function Ja(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`path`,{d:`M2 12h20`}),/* @__PURE__ */ g(`path`,{d:`M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z`})]})}function Ya(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M19 12H5M12 19l-7-7 7-7`})})}function Xa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M12 20h9`}),/* @__PURE__ */ g(`path`,{d:`M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z`})]})}function Za(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m6 9 6 6 6-6`})})}function Qa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z`}),/* @__PURE__ */ g(`path`,{d:`M14 2v6h6`})]})}function $a(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m12 3-1.5 4.5L6 9l4.5 1.5L12 15l1.5-4.5L18 9l-4.5-1.5Z`}),/* @__PURE__ */ g(`path`,{d:`M19 15v4M17 17h4M5 3v2M4 4h2`})]})}function eo(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z`})})}function to(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}),/* @__PURE__ */ g(`path`,{d:`M12 17h.01`})]})}function no(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m15 4 3 3-9 9-3-3z`}),/* @__PURE__ */ g(`path`,{d:`M18 2v2M20 4h2M3 20l3-3M3 16h2M5 14v2`})]})}function ro(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`rect`,{x:`4`,y:`8`,width:`16`,height:`12`,rx:`2`}),/* @__PURE__ */ g(`path`,{d:`M12 8V4`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`3`,r:`1`}),/* @__PURE__ */ g(`path`,{d:`M2 14h2M20 14h2M9 13h.01M15 13h.01M9.5 17h5`})]})}function io(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M4 14v-2a8 8 0 0 1 16 0v2`}),/* @__PURE__ */ g(`rect`,{x:`2`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),/* @__PURE__ */ g(`rect`,{x:`18`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),/* @__PURE__ */ g(`path`,{d:`M20 20v1a3 3 0 0 1-3 3h-5`})]})}function ao(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`4`}),/* @__PURE__ */ g(`path`,{d:`m4.93 4.93 4.24 4.24M14.83 14.83l4.24 4.24M14.83 9.17l4.24-4.24M4.93 19.07l4.24-4.24`})]})}function oo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`11`,cy:`11`,r:`7`}),/* @__PURE__ */ g(`path`,{d:`m21 21-4.3-4.3`})]})}function so(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]})}function co(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M3 9.5 12 3l9 6.5`}),/* @__PURE__ */ g(`path`,{d:`M5 9v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9`})]})}function lo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m3 11 15-5v12L3 13z`}),/* @__PURE__ */ g(`path`,{d:`M3 11v2a2 2 0 0 0 2 2h1V9H5a2 2 0 0 0-2 2z`}),/* @__PURE__ */ g(`path`,{d:`M7 15v3a2 2 0 0 0 4 0v-2`}),/* @__PURE__ */ g(`path`,{d:`M21 10a3 3 0 0 1 0 4`})]})}function uo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z`}),/* @__PURE__ */ g(`path`,{d:`M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1`})]})}function fo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`4`}),/* @__PURE__ */ g(`path`,{d:`M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41`})]})}function po(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z`})})}function mo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`M12 3v18`}),/* @__PURE__ */ g(`path`,{d:`M12 3a9 9 0 0 1 0 18z`,fill:`currentColor`,stroke:`none`})]})}function ho(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`10.5`,cy:`10.5`,r:`6.5`}),/* @__PURE__ */ g(`path`,{d:`M8 11a2.5 2.5 0 0 0 5 0`}),/* @__PURE__ */ g(`path`,{d:`m20 20-4.4-4.4`})]})}function go(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M12 3.5 13.6 9 19 10.5 13.6 12 12 17.5 10.4 12 5 10.5 10.4 9z`}),/* @__PURE__ */ g(`path`,{d:`M18.5 4v3M20 5.5h-3M5.5 16v2.5M6.75 17.25h-2.5`})]})}function _o(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M4 18h16`}),/* @__PURE__ */ g(`path`,{d:`M5 18a7 7 0 0 1 14 0`}),/* @__PURE__ */ g(`path`,{d:`M12 8V6`}),/* @__PURE__ */ g(`path`,{d:`M10 6h4`})]})}function vo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M7 11V6.5a1.5 1.5 0 0 1 3 0V10`}),/* @__PURE__ */ g(`path`,{d:`M10 10V5.5a1.5 1.5 0 0 1 3 0V10`}),/* @__PURE__ */ g(`path`,{d:`M13 10V6.5a1.5 1.5 0 0 1 3 0V12`}),/* @__PURE__ */ g(`path`,{d:`M16 9.5a1.5 1.5 0 0 1 3 0v2.5a7 7 0 0 1-7 7 7 7 0 0 1-6.4-4.2L4 12.5a1.5 1.5 0 0 1 2.6-1.5L7 11`})]})}function yo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`rect`,{x:`9`,y:`9`,width:`11`,height:`11`,rx:`2`}),/* @__PURE__ */ g(`path`,{d:`M5 15a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2`})]})}function bo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M7 10v11H4a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1z`}),/* @__PURE__ */ g(`path`,{d:`M7 10l4-7a2.5 2.5 0 0 1 2.5 2.5V8h5a2 2 0 0 1 2 2.3l-1.2 8A2 2 0 0 1 17.3 20H7`})]})}function xo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M17 14V3h3a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1z`}),/* @__PURE__ */ g(`path`,{d:`M17 14l-4 7a2.5 2.5 0 0 1-2.5-2.5V16h-5a2 2 0 0 1-2-2.3l1.2-8A2 2 0 0 1 6.7 4H17`})]})}function So(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`3.5`}),/* @__PURE__ */ g(`path`,{d:`M12 2v3M12 19v3M2 12h3M19 12h3M4.9 4.9l2.1 2.1M17 17l2.1 2.1M19.1 4.9l-2.1 2.1M7 17l-2.1 2.1`})]})}function Co(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`M12 7v5l3 2`})]})}function wo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]})}function To(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m15 9-6 6M9 9l6 6`})]})}const Eo={chat:Ta,message:eo,bubbles:uo,spark:$a,wand:no,bot:ro,help:to,lifebuoy:ao,headset:io,search:ho,sparkles:go,concierge:_o,wave:vo},Y=M.cssPrefix,X={launcher:`${Y}-launcher`,callout:`${Y}-callout`,calloutDismiss:`${Y}-callout-dismiss`,panel:`${Y}-panel`,panelHeader:`${Y}-panel-header`,resizeGrip:`${Y}-resize-grip`,scrollToBottom:`${Y}-scroll-to-bottom`,loadPreviousMessages:`${Y}-load-previous-messages`,actionHistory:`${Y}-action-history`,actionClose:`${Y}-action-close`,langSegment:`${Y}-lang-segment`,composer:`${Y}-composer`,composerInput:`${Y}-composer-input`,composerSend:`${Y}-composer-send`,composerStop:`${Y}-composer-stop`,compactionStatus:`${Y}-compaction-status`,messageQueue:`${Y}-message-queue`,queuedMessage:`${Y}-queued-message`,queuedMessageRemove:`${Y}-queued-message-remove`,composerAttach:`${Y}-composer-attach`,composerFileInput:`${Y}-composer-file-input`,composerVoice:`${Y}-composer-voice`,attachmentChip:`${Y}-attachment-chip`,attachmentRemove:`${Y}-attachment-remove`,suggestion:`${Y}-suggestion`,messageBubble:`${Y}-message`,messageRetry:`${Y}-message-retry`,messageFeedback:`${Y}-message-feedback`,feedbackUp:`${Y}-feedback-up`,feedbackDown:`${Y}-feedback-down`,messageCopy:`${Y}-message-copy`,historyPane:`${Y}-history-pane`,historyBack:`${Y}-history-back`,historyItem:`${Y}-history-item`,historyLoadMore:`${Y}-history-load-more`,sidebar:`${Y}-sidebar`,sidebarToggle:`${Y}-sidebar-toggle`,sidebarNewConversation:`${Y}-sidebar-new-conversation`,sidebarItem:`${Y}-sidebar-item`,messengerHome:`${Y}-messenger-home`,modulesEmpty:`${Y}-modules-empty`,tab:`${Y}-tab`,tabBadge:`${Y}-tab-badge`,homeView:`${Y}-home-view`,homeGreeting:`${Y}-home-greeting`,homeBrand:`${Y}-home-brand`,backHeader:`${Y}-back-header`,contentView:`${Y}-content-view`,contentScroll:`${Y}-content-scroll`,homeSearch:`${Y}-home-search`,helpSearch:`${Y}-help-search`,homeRecent:`${Y}-home-recent`,homeAsk:`${Y}-home-ask`,homeWhatsNew:`${Y}-home-whats-new`,homeContentRow:`${Y}-home-content-row`,helpArticle:`${Y}-help-article`,newsItem:`${Y}-news-item`,newsMore:`${Y}-news-more`,formGate:`${Y}-form-gate`,formDone:`${Y}-form-done`,formDoneToggle:`${Y}-form-done-toggle`,formAnswers:`${Y}-form-answers`,formFill:`${Y}-form-fill`,formSubmit:`${Y}-form-submit`,formSkip:`${Y}-form-skip`,formField:`${Y}-form-field`,toolAskQuestions:`${Y}-tool-ask-questions`,toolInputSubmit:`${Y}-tool-input-submit`,toolInputSkip:`${Y}-tool-input-skip`,toolApproval:`${Y}-tool-approval`,toolApprove:`${Y}-tool-approve`,toolReject:`${Y}-tool-reject`,toolEdit:`${Y}-tool-edit`,toolDecision:`${Y}-tool-decision`,typingDots:`${Y}-typing-dots`,reasoning:`${Y}-reasoning`,toolAskSummary:`${Y}-ask-questions-summary`,toolAskOptions:`${Y}-ask-questions-options-toggle`,toolCall:`${Y}-tool-call`,source:`${Y}-source`,operatorRequest:`${Y}-operator-request`,operatorBanner:`${Y}-operator-banner`,cancelOperatorRequest:`${Y}-cancel-operator-request`};function Do(e,t){return`${e}-${t}`}const Oo=M.cssPrefix;function ko({onToggle:e,launcher:t,strings:n,leaving:r,edgeTab:i}){let a=t.variant!==`circle`&&!!t.label;return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Oo}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?`true`:void 0,"data-leaving":r?`true`:void 0,"data-testid":X.launcher,onClick:e,"aria-label":n.launcherOpen,children:[Ao(t.icon),a?/* @__PURE__ */ g(`span`,{class:`${Oo}-fab-label`,children:A(n,t.label??``)}):null]})}function Ao(e){let t=Eo[e];return t?/* @__PURE__ */ g(t,{}):/* @__PURE__ */ g(jo,{source:e})}function jo({source:e}){return/* @__PURE__ */ g(`span`,{ref:t=>{t&&Mo(t,e)},"aria-hidden":`true`})}function Mo(e,t){if(e.dataset.svgMounted!==t)try{let n=new DOMParser().parseFromString(t,`image/svg+xml`).documentElement;n.tagName.toLowerCase()===`svg`&&(e.replaceChildren(document.importNode(n,!0)),e.dataset.svgMounted=t)}catch{}}function No({callout:e,launcherPosition:t,strings:n,closeLabel:r,onDismiss:i}){let[a,o]=m(!1);return u(()=>{let t=setTimeout(()=>o(!0),e.delayMs);return()=>clearTimeout(t)},[e.delayMs]),u(()=>{if(!a||e.autoDismissMs<=0)return;let t=setTimeout(i,e.autoDismissMs);return()=>clearTimeout(t)},[a,e.autoDismissMs,i]),a?/* @__PURE__ */ _(`div`,{class:`${Oo}-callout`,role:`status`,"data-shape":e.shape,"data-position":Po(e.position,t),"data-animated":e.animated?`true`:void 0,"data-testid":X.callout,children:[/* @__PURE__ */ g(`span`,{children:A(n,e.text)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Oo}-callout-close`,onClick:i,"aria-label":r,title:r,"data-testid":X.calloutDismiss,children:/* @__PURE__ */ g(Ea,{})})]}):null}function Po(e,t){let n=t.endsWith(`-right`),r=t.startsWith(`bottom-`);return e===`vertical`?r?`top`:`bottom`:n?`left`:`right`}function Fo(e){function t(t){if(t.key!==`Tab`)return;let n=[...e.querySelectorAll(`a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])`)].filter(e=>e.offsetParent!==null||e===document.activeElement);if(n.length===0){t.preventDefault();return}let r=n[0],i=n[n.length-1];if(!r||!i)return;let a=e.getRootNode().activeElement;t.shiftKey&&a===r?(t.preventDefault(),i.focus()):!t.shiftKey&&a===i&&(t.preventDefault(),r.focus())}return e.addEventListener(`keydown`,t),()=>e.removeEventListener(`keydown`,t)}const Io=M.cssPrefix;function Lo({title:e,actions:t}){return/* @__PURE__ */ _(`header`,{class:`${Io}-back-header`,"data-variant":`title`,children:[/* @__PURE__ */ g(`span`,{class:`${Io}-back-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ g(`h1`,{class:`${Io}-back-title`,children:e}),t??/* @__PURE__ */ g(`span`,{class:`${Io}-back-spacer`,"aria-hidden":`true`})]})}function Ro({title:e,backLabel:t,onBack:n,actions:r,testid:i}){return/* @__PURE__ */ _(`header`,{class:`${Io}-back-header`,"data-testid":i,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${Io}-icon-btn`,onClick:n,"aria-label":t,title:t,children:/* @__PURE__ */ g(Ya,{})}),/* @__PURE__ */ g(`h1`,{class:`${Io}-back-title`,children:e}),r??/* @__PURE__ */ g(`span`,{class:`${Io}-back-spacer`,"aria-hidden":`true`})]})}function zo({textSig:e,doneSig:t,generativeUi:n=!1,strings:r=w}){let i=p(null);return d(()=>{let o=i.current;if(!o)return;o.classList.add(`${M.cssPrefix}-md`),o.replaceChildren();let s=n?Nr(o,{cssPrefix:M.cssPrefix,strings:r}):void 0,c=v.parser(s??v.default_renderer(o)),l=0,u=a(()=>{let i=e.value,a=t.value;i.length<l&&(s?.dispose(),o.replaceChildren(),s=n?Nr(o,{cssPrefix:M.cssPrefix,strings:r}):void 0,c=v.parser(s??v.default_renderer(o)),l=0);let u=i.slice(l);u&&v.parser_write(c,u),l=i.length,a&&(v.parser_end(c),s?.finish())}),d=new MutationObserver(e=>{for(let t of e)for(let e of t.addedNodes){if(!(e instanceof HTMLElement))continue;let t=e.matches?.(`a`)?[e]:[...e.querySelectorAll?.(`a`)??[]];for(let e of t)Vo(e)}});d.observe(o,{childList:!0,subtree:!0});for(let e of o.querySelectorAll(`a`))Vo(e);function f(e){let t=e.target?.closest?.(`a`);if(!t||!(t instanceof HTMLAnchorElement))return;let n=t.getAttribute(`href`)??``;n&&!n.startsWith(`#`)&&(e.preventDefault(),window.open(n,`_blank`,`noopener,noreferrer`))}return o.addEventListener(`click`,f),()=>{u(),s?.dispose(),d.disconnect(),o.removeEventListener(`click`,f)}},[e,t,n,r]),/* @__PURE__ */ g(`div`,{ref:i})}function Bo({text:e}){let t=f(()=>o(e),[e]),n=f(()=>o(!0),[]);return/* @__PURE__ */ g(zo,{textSig:t,doneSig:n})}function Vo(e){let t=e.getAttribute(`href`)??``;if(!t||t.startsWith(`#`))return;e.target!==`_blank`&&(e.target=`_blank`);let n=new Set((e.rel||``).split(/\s+/).filter(Boolean));n.add(`noopener`),n.add(`noreferrer`),e.rel=[...n].join(` `)}const Ho=/* @__PURE__ */ new Set([v.CODE_INLINE,v.ITALIC_AST,v.ITALIC_UND,v.STRONG_AST,v.STRONG_UND,v.STRIKE,v.LINK,v.RAW_URL,v.IMAGE,v.EQUATION_INLINE]);function Uo(e){let t=``,n=[],r=v.parser({data:void 0,add_token:(e,r)=>{n.push(r),Ho.has(r)||(t+=` `)},end_token:()=>{let e=n.pop();e!==void 0&&!Ho.has(e)&&(t+=` `)},add_text:(e,n)=>void(t+=n),set_attr:()=>void 0});return v.parser_write(r,e),v.parser_end(r),t.replace(/\s+/g,` `).trim()}const Wo=M.cssPrefix;function Go({tone:e=`info`,message:t,onRetry:n,strings:r}){return/* @__PURE__ */ _(`div`,{class:`${Wo}-module-empty`,role:e===`error`?`alert`:`status`,"aria-live":`polite`,children:[/* @__PURE__ */ g(`span`,{children:t}),n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Wo}-module-retry`,onClick:n,children:r.errorRetry}):null]})}const Ko=M.cssPrefix,qo=R.scope(`content`);function Jo({id:e,title:t,transport:n,strings:r,bus:i,onBack:a,actions:o}){let[s,c]=m(null),[d,f]=m(!1),[p,v]=m(!1),[y,b]=m(0),[x,S]=m(null),C=l(()=>{v(!1),c(null),b(e=>e+1)},[]);u(()=>{let t=!1,r=n.listContentCollections([]).catch(()=>void 0);return Promise.all([n.listContent({ids:[e],limit:1}),r]).then(([n,r])=>{if(t)return;let a=n.items[0];a?(c(a),f(r?.items.find(e=>e.id===a.contentCollectionId)?.settings?.voteAccess===`portal`),i.emit(`contentOpen`,{contentId:e,contentCollectionId:a.contentCollectionId})):v(!0)}).catch(e=>{t||(qo.warn(`listContent (reader) failed`,{err:e}),v(!0))}),()=>{t=!0}},[n,e,y,i]),u(()=>{if(!s)return;let t=setTimeout(()=>i.emit(`contentRead`,{contentId:e}),5e3);return()=>clearTimeout(t)},[s,e,i]);let w=l(t=>{let n=(t.target?.closest?.(`a`))?.getAttribute(`href`)??``;n&&!n.startsWith(`#`)&&i.emit(`contentLinkClick`,{contentId:e})},[i,e]);function T(t){S(e),n.setContentVote({contentId:e,value:t})}function E(){return p?/* @__PURE__ */ g(Go,{tone:`error`,message:r.errorGeneric,onRetry:C,strings:r}):s===null?/* @__PURE__ */ g(Go,{message:r.contentLoading,strings:r}):/* @__PURE__ */ _(`article`,{class:`${Ko}-content`,"data-testid":X.contentView,onClick:w,children:[s.image?/* @__PURE__ */ g(`img`,{class:`${Ko}-content-hero`,src:s.image,alt:``,loading:`lazy`}):null,s.description?/* @__PURE__ */ g(`p`,{class:`${Ko}-content-subtitle`,children:s.description}):null,/* @__PURE__ */ g(Bo,{text:s.content??``}),d?/* @__PURE__ */ g(`div`,{class:`${Ko}-content-vote`,"aria-live":`polite`,children:x===e?r.feedbackThanks:/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`span`,{children:r.contentHelpful}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ko}-module-retry`,onClick:()=>T(1),children:r.confirmYes}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ko}-module-retry`,onClick:()=>T(0),children:r.confirmNo})]})}):null]})}return/* @__PURE__ */ _(`div`,{class:`${Ko}-module`,children:[/* @__PURE__ */ g(Ro,{title:s?.title||t||r.moduleBack,backLabel:r.moduleBack,onBack:a,actions:o,testid:X.backHeader}),/* @__PURE__ */ g(`div`,{class:`${Ko}-module-scroll`,"data-testid":X.contentScroll,children:E()})]})}function Yo({itemCount:e,initialFocusIndex:t}){let[n,r]=m(!1),i=p(null),a=p(null),[o,s]=m(-1),c=l(()=>{r(!1),s(-1),i.current?.focus()},[]),d=l(()=>r(e=>!e),[]);return u(()=>{if(!n)return;function e(e){let t=a.current,n=i.current;if(!t||!n)return;let o=e.composedPath();o.includes(t)||o.includes(n)||(r(!1),s(-1))}return document.addEventListener(`click`,e,!0),()=>document.removeEventListener(`click`,e,!0)},[n]),u(()=>{if(!n||e===0)return;let r=t?.()??0;s(r<0||r>=e?0:r)},[n,e,t]),u(()=>{!n||o<0||(a.current?.querySelectorAll(`[role='menuitem']`))?.[o]?.focus()},[n,o]),{open:n,focusIndex:o,triggerRef:i,menuRef:a,toggle:d,close:c,onTriggerKey:l(e=>{(e.key===`ArrowDown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),r(!0))},[]),onMenuKey:l(t=>{if(e!==0)switch(t.key){case`Escape`:t.preventDefault(),c();return;case`ArrowDown`:t.preventDefault(),s(t=>(t+1)%e);return;case`ArrowUp`:t.preventDefault(),s(t=>(t-1+e)%e);return;case`Home`:t.preventDefault(),s(0);return;case`End`:t.preventDefault(),s(e-1)}},[e,c])}}function Xo({items:e,triggerLabel:t}){let n=M.cssPrefix,r=Yo({itemCount:e.length});function i(e){e.disabled||(e.onSelect?.(),e.keepOpen||r.close())}function a(e,t){return e.onSelectValue?.(t)}function o(e,t){let n=t.segments;if(!n?.length)return;let r=Math.max(0,n.findIndex(e=>e.value===t.value)),i=-1;if(e.key===`ArrowRight`||e.key===`Enter`||e.key===` `)i=(r+1)%n.length;else if(e.key===`ArrowLeft`)i=(r-1+n.length)%n.length;else return;e.preventDefault(),e.stopPropagation(),a(t,n[i].value)}return/* @__PURE__ */ _(`div`,{class:`${n}-menu-wrap`,children:[/* @__PURE__ */ g(`button`,{ref:r.triggerRef,type:`button`,class:`${n}-icon-btn`,"aria-label":t,"aria-haspopup":`menu`,"aria-expanded":r.open,title:t,onClick:r.toggle,onKeyDown:r.onTriggerKey,children:/* @__PURE__ */ g(Va,{})}),r.open?/* @__PURE__ */ g(`div`,{ref:r.menuRef,class:`${n}-menu`,role:`menu`,"aria-label":t,onKeyDown:r.onMenuKey,tabIndex:-1,children:e.map(e=>e.segments?/* @__PURE__ */ _(`div`,{role:`menuitem`,class:`${n}-menu-item ${n}-menu-item-segmented`,"aria-label":e.label,tabIndex:-1,onKeyDown:t=>o(t,e),children:[e.icon?/* @__PURE__ */ g(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,/* @__PURE__ */ g(`span`,{class:`${n}-menu-label`,children:e.label}),/* @__PURE__ */ g(`span`,{class:`${n}-segmented`,role:`group`,"aria-label":e.label,children:e.segments.map(t=>{let r=t.value===e.value;return/* @__PURE__ */ g(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":r,class:`${n}-segment`,"data-on":r?`true`:void 0,lang:t.lang,title:t.value,tabIndex:-1,"data-testid":`${X.langSegment}-${t.value}`,onClick:()=>a(e,t.value),children:t.label},t.value)})})]},e.id):/* @__PURE__ */ _(`button`,{type:`button`,role:`menuitem`,class:`${n}-menu-item`,"aria-pressed":e.type===`switch`?e.on:void 0,disabled:e.disabled,onClick:()=>i(e),children:[e.icon?/* @__PURE__ */ g(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,/* @__PURE__ */ g(`span`,{class:`${n}-menu-label`,children:e.label}),e.type===`switch`&&e.on?/* @__PURE__ */ g(`span`,{class:`${n}-menu-check`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Ka,{})}):null]},e.id))}):null]})}const Zo=M.cssPrefix;function Qo(e){let t=typeof matchMedia!=`function`||matchMedia(`(prefers-color-scheme: dark)`).matches;return e===`auto`?t?`light`:`dark`:t?e===`light`?`dark`:`auto`:e===`dark`?`light`:`auto`}const $o={normal:`large`,large:`small`,small:`normal`};function es(e){return g(e===`light`?fo:e===`dark`?po:mo,{})}function ts(e){return(e.split(`-`)[0]??e).toUpperCase()}function ns(e,t){let n;try{n=new URL(e,window.location.href)}catch{return}if(n.protocol===`http:`||n.protocol===`https:`)return t.conversationId&&n.searchParams.set(`chat`,t.conversationId),n.searchParams.set(`widgetId`,t.widgetId),t.publicKey&&n.searchParams.set(`public_key`,t.publicKey),n.searchParams.set(`ai_agent_deployment_id`,t.aiAgentDeploymentId),n.href}function rs({panelProps:e,variant:t}){let{options:n,panelSize:r,feedback:i,onClose:a,onClear:o,onExpand:c,onFullscreen:l,onSoundToggle:u}=e,{onToggleHistory:d,onLocaleChange:f,onThemeChange:p,onTextSizeChange:m}=e,h=n.strings,v=n.mode,y=t===`chat`,b=s(()=>i.mutedSig.value).value,x=new Set(n.actions);function S(e){return x.has(e)}let C=typeof matchMedia==`function`&&matchMedia(`(max-width: 640px)`).matches;function w(e){return!C&&oa(e,v,r)}let T=n.themeMode,E={auto:h.themeAuto,light:h.themeLight,dark:h.themeDark},D=n.textSize,O={small:h.textSizeSmall,normal:h.textSizeNormal,large:h.textSizeLarge},k=[];if(y&&S(`clear`)&&k.push({id:`clear`,icon:/* @__PURE__ */ g(Xa,{}),label:h.newConversation,onSelect:o}),S(`expand`)&&w(`expand`)){let e=r===`expanded`;k.push({id:`expand`,icon:g(e?Ia:Fa,{}),label:e?h.collapse:h.expand,type:`switch`,on:e,onSelect:c})}if(S(`fullscreen`)&&w(`fullscreen`)){let e=r===`fullscreen`;k.push({id:`fullscreen`,icon:g(e?Ra:La,{}),label:e?h.exitFullscreen:h.fullscreen,type:`switch`,on:e,onSelect:l})}let A=n.popOutUrl,j=n.aiAgentDeploymentId;S(`popOut`)&&A&&j&&oa(`popOut`,v,r)&&k.push({id:`popOut`,icon:/* @__PURE__ */ g(za,{}),label:h.popOut,onSelect:()=>{let t=ns(A,{conversationId:e.conversationId,widgetId:n.widgetId,publicKey:n.publicKey,aiAgentDeploymentId:j});t&&window.open(t,`_blank`,`noopener,noreferrer`)}}),y&&S(`sound`)&&k.push({id:`sound`,icon:g(b?Ua:Ha,{}),label:b?h.soundOff:h.soundOn,type:`switch`,on:!b,onSelect:u}),S(`theme`)&&k.push({id:`theme`,icon:es(T),label:`${h.theme}: ${E[T]}`,onSelect:()=>p(Qo(T)),keepOpen:!0}),S(`textSize`)&&k.push({id:`textSize`,icon:/* @__PURE__ */ g(Wa,{}),label:`${h.textSize}: ${O[D]}`,onSelect:()=>m($o[D]),keepOpen:!0}),S(`language`)&&n.availableLocales.length>1&&k.push({id:`language`,icon:/* @__PURE__ */ g(Ja,{}),label:h.language,segments:n.availableLocales.map(e=>({value:e,label:ts(e),lang:e})),value:n.locale,onSelectValue:f});let M=!!a&&sa(v,r,n.actions),ee=y&&S(`history`);return/* @__PURE__ */ _(`div`,{class:`${Zo}-header-actions`,children:[ee?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Zo}-icon-btn`,onClick:d,"aria-label":h.history,title:h.history,"data-testid":X.actionHistory,children:/* @__PURE__ */ g(qa,{})}):null,k.length>0?/* @__PURE__ */ g(Xo,{items:k,triggerLabel:h.moreActions}):null,M?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Zo}-icon-btn`,onClick:a,"aria-label":h.close,title:h.close,"data-testid":X.actionClose,children:/* @__PURE__ */ g(Ea,{})}):null]})}const is={Icon:uo};function as(e,t){return e instanceof Bi&&e.status===429?t.errorRateLimited:t.errorGeneric}const os=M.cssPrefix;function ss({placeholder:e,onActivate:t}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${os}-home-search`,onClick:t,"data-testid":X.homeSearch,children:[/* @__PURE__ */ g(`span`,{class:`${os}-home-search-text`,children:e}),/* @__PURE__ */ g(`span`,{class:`${os}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(oo,{})})]})}function cs({placeholder:e,value:t,onInput:n}){return/* @__PURE__ */ _(`div`,{class:`${os}-home-search`,"data-input":`true`,children:[/* @__PURE__ */ g(`input`,{type:`search`,class:`${os}-home-search-input`,placeholder:e,value:t,maxLength:200,onInput:e=>n(e.currentTarget.value),"data-testid":X.helpSearch}),/* @__PURE__ */ g(`span`,{class:`${os}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(oo,{})})]})}const ls=M.cssPrefix;function us({title:e,subtitle:t,onClick:n,testid:r}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${ls}-list-row`,onClick:n,"data-testid":r,children:[/* @__PURE__ */ _(`span`,{class:`${ls}-list-row-body`,children:[/* @__PURE__ */ g(`span`,{class:`${ls}-list-row-title`,children:e}),t?/* @__PURE__ */ g(`span`,{class:`${ls}-list-row-sub`,children:t}):null]}),/* @__PURE__ */ g(`span`,{class:`${ls}-list-row-chevron`,"aria-hidden":`true`,children:/* @__PURE__ */ g(ja,{})})]})}const ds=M.cssPrefix,fs=R.scope(`help`);function ps(e,t,n){let r=new Map(n.map(e=>[e.id,e.title]));return t.map(t=>({id:t,title:r.get(t),rows:e.filter(e=>e.contentCollectionId===t)})).filter(e=>e.rows.length>0)}function ms({transport:e,strings:t,bus:n},r,i){let[a,o]=m(),s=p(void 0);function c(a){if(!r?.length)return;let c={};s.current=c,o(e=>({search:i,items:[],collections:[],...e,pagination:a>1?e?.pagination:void 0,loading:!0,error:void 0})),Promise.all([e.listContent({contentCollectionIds:r,sortBy:`order`,page:a,limit:20,search:i}),a>1?void 0:e.listContentCollections(r)]).then(([e,t])=>{s.current===c&&(o(n=>({search:i,items:[...a>1?n?.items??[]:[],...e.items],collections:t?.items??n?.collections??[],pagination:e.pagination,loading:!1})),!(a>1)&&(i?n.emit(`contentSearch`,{queryLength:i.length,hitCount:e.pagination.total}):n.emit(`contentView`,{section:`help`,count:e.items.length})))}).catch(e=>{s.current===c&&(fs.warn(`listContent (help) failed`,{err:e,page:a}),o(n=>n&&{...n,loading:!1,error:as(e,t)}))})}return u(()=>{if(!r?.length)o(void 0);else return c(1),()=>{s.current=void 0}},[e,r,i]),[a,()=>!a?.loading&&c((a?.pagination?.page??0)+1)]}function hs(e){let{strings:t,config:n,nav:r,panelProps:i}=e,a=n.contentCollectionIds,[o,s]=m(``),[c,l]=m(``),d=ms(e,a),f=ms(e,c?a:void 0,c),[p,v]=o.trim()?f:d;u(()=>{let e=setTimeout(()=>l(o.trim()),300);return()=>clearTimeout(e)},[o]);function y(){if(!a?.length)return/* @__PURE__ */ g(Go,{message:t.helpEmpty,strings:t});let e=p?.error?/* @__PURE__ */ g(Go,{tone:`error`,message:p.error,onRetry:v,strings:t}):null;return e&&!p?.pagination?e:!p||!p.pagination&&!p.items.length?/* @__PURE__ */ g(Go,{message:t.helpLoading,strings:t}):p.items.length?/* @__PURE__ */ _(h,{children:[ps(p.items,a,p.collections).map(e=>/* @__PURE__ */ _(`section`,{class:`${ds}-help-group`,children:[e.title?/* @__PURE__ */ g(`h2`,{class:`${ds}-help-section-title`,children:e.title}):null,/* @__PURE__ */ g(`div`,{class:`${ds}-help-card`,children:e.rows.map(e=>/* @__PURE__ */ g(us,{title:e.title,subtitle:e.description,onClick:()=>r.push(e.url?{kind:`iframe`,url:e.url,title:e.title}:{kind:`content`,id:e.id,title:e.title}),testid:Do(X.helpArticle,e.id)},e.id))})]},e.id)),e,p.pagination?.hasNext&&!e?/* @__PURE__ */ g(`div`,{children:/* @__PURE__ */ g(`div`,{class:`${ds}-help-card`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${ds}-list-row ${ds}-help-more`,onClick:v,"aria-busy":p.loading,children:[p.loading?/* @__PURE__ */ g(`span`,{class:`${ds}-loading-spinner`,"aria-hidden":`true`}):null,t.helpShowMore]})})}):null]}):/* @__PURE__ */ g(Go,{message:p.search?t.helpSearchEmpty.replace(`{query}`,p.search):t.helpEmpty,strings:t})}return/* @__PURE__ */ _(`div`,{class:`${ds}-module`,children:[/* @__PURE__ */ g(Lo,{title:t.helpTitle,actions:/* @__PURE__ */ g(rs,{panelProps:i,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${ds}-module-pad`,children:/* @__PURE__ */ g(cs,{placeholder:t.helpSearchPlaceholder,value:o,onInput:s})}),/* @__PURE__ */ g(`div`,{class:`${ds}-help-list`,children:y()})]})}const gs={Icon:to,Root:e=>/* @__PURE__ */ g(hs,{...e})},_s=R.scope(`attachments`);function vs(e,t,n){let r=xs(e),i=[],a=[],o=ws(n.accept),s=t.reduce((e,t)=>e+t.size,0),c=t.length;for(let e of r){let t=bs(e,c,s,n,o);t?a.push({file:e,reason:t}):(i.push(Cs(e)),s+=e.size,c+=1)}return(i.length||a.length)&&_s.debug(`ingest`,{accepted:i.length,rejected:a.map(e=>({name:e.file.name,reason:e.reason}))}),{accepted:i,rejected:a}}function ys(e){try{URL.revokeObjectURL(e.previewUrl)}catch(e){_s.debug(`revokeObjectURL failed`,{error:e})}}function bs(e,t,n,r,i){return t>=r.maxCount?`count`:n+e.size>r.maxBytes?`bytes`:Ts(e,i)?null:`mime`}function xs(e){return e?Array.isArray(e)?e.filter(e=>e instanceof File):[...e].map(e=>e instanceof File?e:Ss(e)).filter(e=>e!==null):[]}function Ss(e){let t=e;return!t?.getAsFile||t.kind!==`file`?null:t.getAsFile()}function Cs(e){return{file:e,id:at(),mediaType:e.type||`application/octet-stream`,name:e.name||`pasted-file`,previewUrl:URL.createObjectURL(e),size:e.size}}function ws(e){return e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean).map(e=>{if(e.startsWith(`.`))return{kind:`ext`,ext:e};let[t=`*`,n=`*`]=e.split(`/`);return{kind:`mime`,type:t,subtype:n}})}function Ts(e,t){if(t.length===0)return!0;let[n=`*`,r=`*`]=(e.type||``).toLowerCase().split(`/`),i=(e.name||``).toLowerCase();return t.some(e=>e.kind===`ext`?i.endsWith(e.ext):e.type===`image`&&e.subtype===`*`&&/\.(heic|heif|avif|bmp|tif|tiff)$/.test(i)?!0:(e.type===`*`||e.type===n)&&(e.subtype===`*`||e.subtype===r))}const Es=M.cssPrefix;function Ds({attachment:e,onRemove:t,disabled:n=!1}){let r=/^image\/(jpeg|png|gif|webp|avif|bmp|x-ms-bmp|svg\+xml)$/i.test(e.mediaType);return/* @__PURE__ */ _(`span`,{class:`${Es}-attachment-chip`,title:e.name,"data-testid":Do(X.attachmentChip,e.id),children:[r?/* @__PURE__ */ g(`img`,{class:`${Es}-attachment-thumb`,src:e.previewUrl,alt:``}):/* @__PURE__ */ g(`span`,{class:`${Es}-attachment-thumb`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Qa,{})}),/* @__PURE__ */ g(`span`,{class:`${Es}-attachment-name`,children:e.name}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Es}-attachment-remove`,onClick:t,disabled:n,"aria-label":`Remove ${e.name}`,"data-testid":Do(X.attachmentRemove,e.id),children:/* @__PURE__ */ g(Ea,{})})]})}const Os={isSupported:!1,start:()=>void 0,stop:()=>void 0,cancel:()=>void 0};function ks(e,t,n){return e===`disabled`?Os:e===`server`?Ns(n):As(t)}function As(e){let t=js();if(!t)return Os;let n=null,r=0;return{isSupported:!0,start(i,a){let o=n,s=++r;n=null,o?.abort();let c=new t;n=c,c.continuous=!0,c.interimResults=!0,c.lang=e;let l=!1;c.addEventListener(`result`,e=>{if(r!==s||n!==c)return;let t=e,a=``,o=!1;for(let e=t.resultIndex;e<t.results.length;e++){let n=t.results[e];n&&(a+=n[0].transcript,n.isFinal&&(o=!0))}i(a,o)});function u(){l||r!==s||n!==c||(l=!0,n=null,a())}c.addEventListener(`end`,u),c.addEventListener(`error`,u);try{c.start()}catch{u()}},stop(){n?.stop()},cancel(){r++;let e=n;n=null,e?.abort()}}}function js(){return window.SpeechRecognition??window.webkitSpeechRecognition}const Ms=[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`];function Ns(e){if(typeof MediaRecorder>`u`||!navigator?.mediaDevices?.getUserMedia)return Os;let t=0,n=null;function r(e){for(let t of e.stream?.getTracks()??[])t.stop();e.stream=null}function i(){t++;let e=n;n=null,e&&(r(e),e.recorder?.state!==`inactive`&&e.recorder?.stop())}async function a(i){if(i.finishing)return;i.finishing=!0;let a=i.recorder?.mimeType??`audio/webm`;r(i);let o=new Blob(i.chunks,{type:a});i.chunks=[];try{let{text:r}=await e(o,a);n===i&&t===i.generation&&r&&i.onText(r,!0)}catch{}finally{n===i&&t===i.generation&&(n=null,i.onEnd())}}return{isSupported:!0,async start(e,o){i();let s={generation:t,recorder:null,stream:null,chunks:[],onText:e,onEnd:o,finishing:!1};n=s;try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});if(n!==s||t!==s.generation){for(let t of e.getTracks())t.stop();return}s.stream=e;let r=Ps(),i=new MediaRecorder(e,r?{mimeType:r}:void 0);s.recorder=i,i.addEventListener(`dataavailable`,e=>{n===s&&t===s.generation&&e.data.size>0&&s.chunks.push(e.data)}),i.addEventListener(`stop`,()=>{n===s&&t===s.generation&&a(s)}),i.start()}catch{r(s),n===s&&t===s.generation&&(n=null,o())}},stop(){let e=n;e&&(e.recorder?e.recorder.state!==`inactive`&&e.recorder.stop():i())},cancel(){i()}}}function Ps(){for(let e of Ms)if(MediaRecorder.isTypeSupported(e))return e}const Fs=M.cssPrefix,Is=R.scope(`composer`);function Ls(e){return e.reduce((e,t)=>e+t.size,0)}const Rs={arrowUp:ka,paperPlane:Oa,send:Aa,chevron:ja};function zs(e){return`activeElement`in e}function Bs(e){return`host`in e&&`activeElement`in e}function Vs({options:e,transport:t,feedback:n,bus:r,persistence:i,conversationId:a,isStreaming:o,isMemoryCompacting:s=!1,canReleaseQueuedMessages:c=!0,queueManualMessages:f=!1,active:h=!0,isPreparing:v=!1,operatorRequestEnabled:y,canRequestOperator:b=!1,controlMode:x=`ai-agent`,onRequestOperator:S,onSend:C,onStop:w,apiRef:T}){let E=e.strings,[D,O]=m(()=>i.loadDraft(a)),[k,A]=m([]),[j,M]=m(()=>i.loadMessageQueue(a).map(e=>({id:e.id,text:e.text,attachments:[]}))),ee=p(j),te=p(!1),[N,ne]=m(!1),[re,ie]=m(!1),P=p(!1),ae=p(null),oe=p(null),F=p(null),I=p(0),se=p(a);se.current=a;let ce=p(h);ce.current=h;let le=p(v);le.current=v;let ue=re||v||!h,de=o&&x===`ai-agent`,fe=de||s&&x===`ai-agent`,pe=x===`ai-agent`&&(fe||f||j.length>0),me=l(e=>{M(t=>{let n=e(t);return i.saveMessageQueue(se.current,n.filter(e=>e.attachments.length===0).map(({id:e,text:t})=>({id:e,text:t}))),ee.current=n,n})},[i]),he=l(e=>{me(t=>(t.find(t=>t.id===e)?.attachments.forEach(ys),t.filter(t=>t.id!==e)))},[me]),L=l(e=>{O(t=>{let n=typeof e==`function`?e(t):e;return n===t?t:(i.saveDraft(se.current,n),n)})},[i]),ge=e.features.fileUpload,_e=e.features.voice,[R,ve]=m(()=>ks(_e,e.locale,(e,n)=>t.transcribe(e,n))),z=p(R);z.current=R;let ye=p({mode:_e,locale:e.locale,transport:t});u(()=>{let n=ye.current;(n.mode!==_e||n.locale!==e.locale||n.transport!==t)&&(ye.current={mode:_e,locale:e.locale,transport:t},I.current++,z.current.cancel(),F.current=null,ne(!1),ve(ks(_e,e.locale,(e,n)=>t.transcribe(e,n))))},[e.locale,_e,t]),d(()=>()=>{I.current++,R.cancel()},[R]);let be=l(e=>{let t=F.current;if(t===null)return!1;let n=Math.round(performance.now()-t);return Is[e](`voiceStop`,{durationMs:n}),r.emit(`voiceStop`,{durationMs:n}),F.current=null,!0},[r]),xe=l(()=>{F.current!==null&&(R.stop(),ne(!1),be(`info`)&&n.play(`voiceStop`))},[be,n,R]),Se=l(()=>{I.current++,R.cancel(),ne(!1),be(`info`)&&n.play(`voiceStop`)},[be,n,R]);u(()=>{(v||!h)&&Se()},[h,Se,v]),u(()=>{let e=ae.current;if(!e)return;let t=e.getRootNode(),n=zs(t)?t.activeElement:null;n&&e.closest(`.${Fs}-panel`)?.contains(n)||e.focus({preventScroll:!0})},[]),u(()=>{let e=ae.current;if(!e)return;if(D.length===0){e.style.height=``;return}e.style.height=`auto`;let t=getComputedStyle(e),n=Number.parseFloat(t.getPropertyValue(`--${Fs}-textarea-base-height`)),r=Number.parseFloat(t.borderTopWidth)+Number.parseFloat(t.borderBottomWidth),i=Math.min(e.scrollHeight+r,Number.parseFloat(t.maxHeight)),a=Number.parseFloat(t.fontSize)*.7;e.style.height=`${i<n+a?n:i}px`},[D]);let Ce=p(k);Ce.current=k,u(()=>()=>{Ce.current.forEach(ys);for(let e of ee.current)e.attachments.forEach(ys)},[]),u(()=>{if(T)return T.current={attachFromDrop:t=>{if(!ge||!ce.current||P.current||le.current)return;let n=vs(t,Ce.current,e.attachments);n.accepted.length!==0&&(Is.info(`attach (drop)`,{count:n.accepted.length,totalBytes:Ls(n.accepted)}),r.emit(`attach`,{count:n.accepted.length,totalBytes:Ls(n.accepted)}),A(e=>[...e,...n.accepted]))},fill:e=>{if(!ce.current||P.current||le.current)return;L(e);let t=ae.current;t&&(t.focus({preventScroll:!0}),requestAnimationFrame(()=>t.setSelectionRange(t.value.length,t.value.length)))},acceptQueuedMessage:he},()=>{T.current&&(T.current=null)}},[T,ge,v,e.attachments,he,L]),u(()=>{let t=ae.current;if(!t)return;let n=t.closest(`.${Fs}-panel`);if(!n)return;let i=n=>{if(!ce.current||P.current||le.current)return;let i=n.clipboardData;if(!i)return;let a=n.target?.closest?.(`input, textarea, [contenteditable]:not([contenteditable='false'])`);if(a&&a!==t)return;if(ge){let t=vs(i.items,Ce.current,e.attachments);if(t.accepted.length>0){n.preventDefault(),Is.info(`attach (paste)`,{count:t.accepted.length,totalBytes:Ls(t.accepted)}),r.emit(`attach`,{count:t.accepted.length,totalBytes:Ls(t.accepted)}),A(e=>[...e,...t.accepted]);return}}if(a===t)return;let o=i.getData(`text/plain`);o&&(n.preventDefault(),L(e=>e+o),t.focus())};return n.addEventListener(`paste`,i),()=>n.removeEventListener(`paste`,i)},[ge,e.attachments,L]);async function we(){let e=D.trim();if(!e&&k.length===0||!h||de||P.current||v)return;Se(),P.current=!0,ie(!0);let t=D,n=k;try{await C(e,n)&&(L(e=>e===t?``:e),A(e=>e===n?(n.forEach(ys),Ce.current=[],[]):e))}finally{P.current=!1,ie(!1),requestAnimationFrame(()=>{let e=ae.current;if(!e||e.disabled||!ce.current)return;let t=e.getRootNode(),n=zs(t)?t.activeElement:null,r=n?.getAttribute(`data-testid`);if(!(n&&n!==e&&r!==X.composerSend&&r!==X.composerStop)){if(Bs(t)){let e=t.host.ownerDocument;if(!e.hasFocus())return;let n=e.activeElement;if(n&&n!==t.host&&n!==e.body)return}e.focus({preventScroll:!0})}})}}function Te(){let e=D.trim();if(!e&&k.length===0||!h||!pe||P.current||v)return;Se();let t=k;me(n=>[...n,{id:at(),text:e,attachments:t}]),L(``),A(e=>e===t?(Ce.current=[],[]):e),ae.current?.focus({preventScroll:!0})}u(()=>{fe&&(te.current=!1)},[fe]),u(()=>{let e=j[0];if(!e||!c||fe||te.current||re||v||!h)return;let t=setTimeout(()=>{te.current=!0,C(e.text,e.attachments,e.id).then(t=>{t?he(e.id):te.current=!1})},300);return()=>clearTimeout(t)},[h,c,v,C,fe,j,he,re]);function Ee(e){e.key!==`Enter`||e.shiftKey||e.isComposing||(e.preventDefault(),pe&&(D.trim()||k.length>0)?Te():de?w():we())}function De(t){let n=t.target;if(!h||P.current||v){n.value=``;return}let i=vs(n.files,k,e.attachments);i.accepted.length>0&&(Is.info(`attach (file picker)`,{count:i.accepted.length,totalBytes:Ls(i.accepted)}),r.emit(`attach`,{count:i.accepted.length,totalBytes:Ls(i.accepted)}),A(e=>[...e,...i.accepted])),n.value=``}function Oe(e){!h||P.current||v||(Is.info(`removeAttachment`,{id:e}),r.emit(`removeAttachment`,{id:e}),A(t=>{let n=t.find(t=>t.id===e);return n&&ys(n),t.filter(t=>t.id!==e)}))}function ke(){if(N){xe();return}if(!h||!R.isSupported||P.current||v)return;let e=++I.current;F.current=performance.now(),Is.info(`voiceStart`),r.emit(`voiceStart`,void 0),ne(!0),n.play(`voiceStart`),R.start((t,n)=>{I.current===e&&ce.current&&!le.current&&!P.current&&n&&L(e=>`${e}${t} `)},()=>{I.current===e&&ce.current&&(ne(!1),be(`debug`))})}let Ae=Rs[e.composer.sendButton.icon],je=!!(D.trim()||k.length>0);return/* @__PURE__ */ _(`div`,{class:`${Fs}-composer`,"data-testid":X.composer,children:[j.length>0?/* @__PURE__ */ g(`div`,{class:`${Fs}-message-queue`,"aria-label":E.queueMessage,"data-testid":X.messageQueue,children:j.map(e=>/* @__PURE__ */ _(`div`,{class:`${Fs}-attachment-chip ${Fs}-queued-message`,"data-testid":`${X.queuedMessage}-${e.id}`,children:[/* @__PURE__ */ g(`span`,{class:`${Fs}-attachment-name ${Fs}-queued-text`,children:e.text||e.attachments.map(e=>e.name).join(`, `)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-attachment-remove`,onClick:()=>he(e.id),"aria-label":E.removeQueuedMessage,title:E.removeQueuedMessage,"data-testid":`${X.queuedMessageRemove}-${e.id}`,children:/* @__PURE__ */ g(Ea,{})})]},e.id))}):null,k.length>0?/* @__PURE__ */ g(`div`,{class:`${Fs}-attachments`,children:k.map(e=>/* @__PURE__ */ g(Ds,{attachment:e,onRemove:()=>Oe(e.id),disabled:ue},e.id))}):null,/* @__PURE__ */ _(`div`,{class:`${Fs}-composer-row`,children:[/* @__PURE__ */ _(`div`,{class:`${Fs}-composer-actions`,children:[ge?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-icon-btn`,onClick:()=>oe.current?.click(),disabled:ue,"aria-label":E.attach,"data-testid":X.composerAttach,children:/* @__PURE__ */ g(Na,{})}):null,R.isSupported?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-icon-btn`,onClick:ke,disabled:ue,"aria-label":N?E.micStop:E.micStart,"aria-pressed":N,"data-recording":N?`true`:void 0,"data-testid":X.composerVoice,children:/* @__PURE__ */ g(Pa,{})}):null]}),/* @__PURE__ */ g(`textarea`,{ref:ae,name:`message`,class:`${Fs}-textarea`,rows:1,value:D,placeholder:E.composerPlaceholder,onInput:e=>L(e.currentTarget.value),onKeyDown:Ee,disabled:ue,"aria-label":E.composerPlaceholder,"data-testid":X.composerInput}),pe&&je?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:Te,disabled:ue,"aria-label":E.queueMessage,title:E.queueMessage,"data-testid":X.composerSend,children:/* @__PURE__ */ g(Ae,{})}):null,de?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-send`,onClick:w,disabled:ue,"aria-label":E.stop,"data-testid":X.composerStop,children:/* @__PURE__ */ g(Ma,{})}):null,!de&&(!pe||!je)?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:()=>void we(),disabled:ue||!D.trim()&&k.length===0,"aria-label":E.send,"data-testid":X.composerSend,children:/* @__PURE__ */ g(Ae,{})}):null,y&&x===`ai-agent`&&S?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-icon-btn`,onClick:S,disabled:ue||!b,"aria-label":E.talkToOperator,title:E.talkToOperator,"data-testid":X.operatorRequest,children:/* @__PURE__ */ g(io,{})}):null]}),/* @__PURE__ */ g(`input`,{ref:oe,name:`attachments`,type:`file`,multiple:!0,accept:e.attachments.accept,onChange:De,disabled:ue,class:`${Fs}-sr-only`,"data-testid":X.composerFileInput})]})}const Hs=M.cssPrefix;function Us({onClick:e,children:t,testid:n}){return e?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Hs}-home-card`,"data-interactive":`true`,onClick:e,"data-testid":n,children:t}):/* @__PURE__ */ g(`div`,{class:`${Hs}-home-card`,"data-testid":n,children:t})}function Ws(e){return e.trim().split(/\s+/).slice(0,2).map(e=>e.charAt(0).toUpperCase()).join(``)}const Gs=M.cssPrefix,Ks=R.scope(`news`);function qs(e,t){let n=e?new Date(e):void 0;if(n&&!Number.isNaN(n.getTime()))return new Intl.DateTimeFormat(t,{dateStyle:`medium`}).format(n)}function Js({options:e,transport:t,strings:n,config:r,nav:i,bus:a,panelProps:o,latestNews:s}){let c=r.contentCollectionIds,[l,d]=m({items:[],loading:!0}),f=p(void 0);function h(e){if(!c?.length)return;let r={};f.current=r,d(e=>({...e,loading:!0,error:void 0})),t.listContent({contentCollectionIds:c,sortBy:`publishedAt`,sortOrder:`desc`,page:e,limit:10}).then(t=>{if(f.current!==r||(d(n=>({items:e>1?[...n.items,...t.items]:t.items,pagination:t.pagination,loading:!1})),e>1))return;a.emit(`contentView`,{section:`news`,count:t.items.length});let n=t.items[0];n&&s.markSeen(n.id)}).catch(t=>{f.current===r&&(Ks.warn(`listContent (news) failed`,{err:t,page:e}),d(e=>({...e,loading:!1,error:as(t,n)})))})}function v(){l.loading||h((l.pagination?.page??0)+1)}u(()=>(d({items:[],loading:!0}),h(1),()=>{f.current=void 0}),[t,c]);function y(t){let n=qs(t.publishedAt,e.locale);return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Gs}-news-card`,onClick:()=>i.push({kind:`content`,id:t.id,title:t.title}),"data-testid":Do(X.newsItem,t.id),children:[t.image?/* @__PURE__ */ g(`img`,{class:`${Gs}-news-hero`,src:t.image,alt:``,loading:`lazy`}):null,/* @__PURE__ */ _(`span`,{class:`${Gs}-news-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Gs}-news-title`,children:t.title}),n||t.tags?.length?/* @__PURE__ */ _(`span`,{class:`${Gs}-news-meta`,children:[n?/* @__PURE__ */ g(`time`,{dateTime:t.publishedAt,children:n}):null,t.tags?.map(e=>/* @__PURE__ */ g(`span`,{class:`${Gs}-news-tag`,children:e},e))]}):null,t.description?/* @__PURE__ */ g(`span`,{class:`${Gs}-news-summary`,children:t.description}):null]})]},t.id)}function b(){if(!c?.length)return/* @__PURE__ */ g(Go,{message:n.newsEmpty,strings:n});let e=l.error?/* @__PURE__ */ g(Go,{tone:`error`,message:l.error,onRetry:v,strings:n}):null;return e&&!l.pagination?e:l.pagination?l.items.length?/* @__PURE__ */ _(`div`,{class:`${Gs}-news-list`,children:[l.items.map(y),e,l.pagination.hasNext&&!e?/* @__PURE__ */ _(`button`,{type:`button`,class:`${Gs}-news-more`,onClick:v,"aria-busy":l.loading,"data-testid":X.newsMore,children:[l.loading?/* @__PURE__ */ g(`span`,{class:`${Gs}-loading-spinner`,"aria-hidden":`true`}):null,n.newsShowMore]}):null]}):/* @__PURE__ */ g(Go,{message:n.newsEmpty,strings:n}):/* @__PURE__ */ g(Go,{message:n.newsLoading,strings:n})}return/* @__PURE__ */ _(`div`,{class:`${Gs}-module`,children:[/* @__PURE__ */ g(Lo,{title:n.newsTitle,actions:/* @__PURE__ */ g(rs,{panelProps:o,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${Gs}-module-scroll`,children:b()})]})}const Ys={Icon:lo,Root:e=>/* @__PURE__ */ g(Js,{...e})},Z=M.cssPrefix,Xs=R.scope(`home`);function Zs(e){let t=e.options.userContext?.name,n=e.config.greetingText?A(e.strings,e.config.greetingText):void 0;if(n){let r=t?n.replace(`{name}`,t):n.replace(/\s*\{name\}\s*/,` `).trim(),i=e.strings.homeGreetingLead;return{title:r,subtitle:r.toLowerCase()===i.toLowerCase()?void 0:i}}return t?{title:e.strings.homeGreetingNamed.replace(`{name}`,t),subtitle:e.strings.homeGreetingLead}:{title:e.strings.homeGreeting}}function Qs(e,t){return t.url?e.push({kind:`iframe`,url:t.url,title:t.title}):e.push({kind:`content`,id:t.id,title:t.title})}function $s({options:e,onAsk:t}){let[n,r]=m(``),{sendButton:i}=e.composer,a=Rs[i.icon];function o(e){e.preventDefault();let i=n.trim();i&&(r(``),t(i))}return/* @__PURE__ */ _(`form`,{class:`${Z}-home-search ${Z}-home-ask`,"data-input":`true`,onSubmit:o,"data-testid":X.homeAsk,children:[/* @__PURE__ */ g(`input`,{type:`text`,class:`${Z}-home-search-input`,placeholder:e.strings.homeAskPlaceholder,"aria-label":e.strings.homeAskPlaceholder,value:n,enterKeyHint:`send`,onInput:e=>r(e.currentTarget.value)}),/* @__PURE__ */ g(`button`,{type:`submit`,class:`${Z}-send`,"data-shape":i.shape,"data-variant":i.variant,disabled:!n.trim(),"aria-label":e.strings.send,children:/* @__PURE__ */ g(a,{})})]})}function ec(e,t){return Zi(e,t,t.type!==`upsert`||t.activity===!0)}function tc(e){let{transport:t,strings:n,config:r,nav:i,bus:a,panelProps:o,latestNews:s}=e,[c,l]=m(null),[d,f]=m([]),p=r.contentCollectionIds?.join(`,`),v=e.options.modules.list.some(e=>e.layout===`chat`);u(()=>{if(r.showRecentConversations===!1)return;let e=!1,n=!0,i=[],a=t.subscribeConversationChanges(e=>{n&&i.push(e),l(t=>ec(t?[t]:[],e)[0]??null)});return t.listConversations({limit:v?50:1}).then(t=>{if(e)return;let r=i.reduce(ec,t.conversations);i=[],n=!1,l(r[0]??null)}).catch(t=>{e||(i=[],n=!1,Xs.warn(`listConversations (home) failed`,{err:t}))}),()=>{e=!0,a()}},[t,r.showRecentConversations,v]),u(()=>{if(!r.contentCollectionIds?.length)return;let e=!1;return t.listContent({contentCollectionIds:r.contentCollectionIds,pinned:!0,limit:6}).then(t=>{e||(f(t.items),a.emit(`contentView`,{section:`home`,count:t.items.length}))}).catch(t=>!e&&Xs.warn(`listContent (home) failed`,{err:t})),()=>{e=!0}},[t,p,a]);let y=Zs(e),b=r.userAvatars??[],x=r.status,S=x?.text?A(n,x.text):n.homeStatus,C=r.contentBlockTitle?A(n,r.contentBlockTitle):n.homeContentTitle,w=s.item,T=qs(w?.publishedAt,e.options.locale);return/* @__PURE__ */ g(`div`,{class:`${Z}-module ${Z}-home`,"data-testid":X.homeView,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-scroll`,children:[/* @__PURE__ */ _(`div`,{class:`${Z}-home-hero`,children:[/* @__PURE__ */ _(`div`,{class:`${Z}-home-hero-top`,children:[r.brandName?/* @__PURE__ */ g(`span`,{class:`${Z}-home-brand`,"data-testid":X.homeBrand,children:r.brandName}):/* @__PURE__ */ g(`span`,{class:`${Z}-home-brand-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ _(`div`,{class:`${Z}-home-hero-actions`,children:[b.length>0?/* @__PURE__ */ g(`div`,{class:`${Z}-home-avatars`,children:b.map(e=>/* @__PURE__ */ g(`span`,{class:`${Z}-home-avatar`,title:e.role?`${e.name} · ${e.role}`:e.name,children:e.avatar?/* @__PURE__ */ g(`img`,{src:e.avatar,alt:``,loading:`lazy`}):/* @__PURE__ */ g(`span`,{children:Ws(e.name)})},e.name))}):null,/* @__PURE__ */ g(rs,{panelProps:o,variant:`plain`})]})]}),r.showGreeting===!1?null:/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`h1`,{class:`${Z}-home-greeting`,"data-testid":X.homeGreeting,children:y.title}),y.subtitle?/* @__PURE__ */ g(`p`,{class:`${Z}-home-lead`,children:y.subtitle}):null]})]}),/* @__PURE__ */ _(`div`,{class:`${Z}-home-cards`,children:[v?/* @__PURE__ */ g($s,{options:e.options,onAsk:e=>i.startNewConversation(e)}):null,r.showSearchBar===!1?null:/* @__PURE__ */ g(ss,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout(`help`)}),w?/* @__PURE__ */ g(Us,{onClick:()=>{s.markSeen(w.id),i.push({kind:`content`,id:w.id,title:w.title})},testid:X.homeWhatsNew,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-recent-row`,"data-unread":s.unseen?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(lo,{})}),/* @__PURE__ */ _(`span`,{class:`${Z}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-title`,children:n.homeWhatsNew}),/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-preview`,children:T?`${w.title} · ${T}`:w.title})]}),s.unseen?/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-dot`,role:`img`,"aria-label":n.newsUnseen}):null]})}):null,c?/* @__PURE__ */ g(Us,{onClick:()=>i.selectConversation(c),testid:X.homeRecent,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-recent-row`,"data-unread":c.hasUnread?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(uo,{})}),/* @__PURE__ */ _(`span`,{class:`${Z}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-title`,children:c.title}),c.preview?/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-preview`,children:Uo(c.preview)}):null]}),c.hasUnread?/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-dot`,"aria-label":`Unread`}):null]})}):null,x?/* @__PURE__ */ g(Us,{onClick:x.url?()=>i.push({kind:`iframe`,url:x.url,title:S}):void 0,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-status`,"data-level":x.level??`operational`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-status-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(so,{})}),/* @__PURE__ */ g(`span`,{class:`${Z}-home-status-text`,children:S})]})}):null,d.length>0?/* @__PURE__ */ _(`section`,{class:`${Z}-home-content`,children:[/* @__PURE__ */ g(`div`,{class:`${Z}-home-content-title`,children:C}),/* @__PURE__ */ g(`div`,{class:`${Z}-home-content-list`,children:d.map(e=>/* @__PURE__ */ g(us,{title:e.title,subtitle:e.description,onClick:()=>Qs(i,e),testid:Do(X.homeContentRow,e.id)},e.id))})]}):null]})]})})}const nc={chat:is,home:{Icon:co,Root:e=>/* @__PURE__ */ g(tc,{...e})},help:gs,news:Ys},rc=M.cssPrefix;function ic({modules:e,activeTab:t,strings:n,hasUnread:r,onSelect:i}){return/* @__PURE__ */ g(`nav`,{class:`${rc}-tabbar`,role:`tablist`,"aria-label":n.panelTitle,children:e.map(e=>{let a=nc[e.layout].Icon,o=e.id===t,s=e.layout===`chat`&&r;return/* @__PURE__ */ _(`button`,{type:`button`,role:`tab`,"aria-selected":o,class:`${rc}-tab`,onClick:()=>i(e.id),"data-testid":Do(X.tab,e.id),children:[/* @__PURE__ */ _(`span`,{class:`${rc}-tab-icon`,"aria-hidden":`true`,children:[/* @__PURE__ */ g(a,{}),s?/* @__PURE__ */ g(`span`,{class:`${rc}-tab-badge`,"data-testid":X.tabBadge,"aria-label":`Unread`}):null]}),/* @__PURE__ */ g(`span`,{class:`${rc}-tab-label`,children:A(n,e.label)})]},e.id)})})}const ac=M.cssPrefix;function oc({url:e,title:t,strings:n,onBack:r,actions:i}){return/* @__PURE__ */ _(`div`,{class:`${ac}-module`,children:[/* @__PURE__ */ g(Ro,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:r,actions:i}),/* @__PURE__ */ g(`iframe`,{class:`${ac}-content-frame`,src:e,title:t||`content`,sandbox:`allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads`,referrerpolicy:`no-referrer`,loading:`lazy`,allow:`fullscreen`})]})}const sc=M.cssPrefix;function cc({agent:e,strings:t}){let n=e.status??`online`,r=A(t,e.name),i=e.title?A(t,e.title):null;return/* @__PURE__ */ _(`div`,{class:`${sc}-agent`,children:[/* @__PURE__ */ g(`div`,{class:`${sc}-agent-avatar`,"data-status":n,children:e.avatar?/* @__PURE__ */ g(`img`,{src:e.avatar,alt:``}):/* @__PURE__ */ g(`span`,{children:Ws(r)})}),/* @__PURE__ */ _(`div`,{class:`${sc}-agent-meta`,children:[/* @__PURE__ */ g(`strong`,{children:r}),i?/* @__PURE__ */ g(`span`,{children:i}):null]})]})}const lc=[`today`,`yesterday`,`lastWeek`,`older`];function uc(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return`older`;let r=Math.floor((fc(e)-fc(n))/864e5);return r<=0?`today`:r===1?`yesterday`:r<7?`lastWeek`:`older`}function dc(e,t){let n=/* @__PURE__ */ new Map;for(let r of t){let t=uc(e,r.lastMessageAt),i=n.get(t);i?i.push(r):n.set(t,[r])}return lc.filter(e=>n.has(e)).map(e=>({bucket:e,conversations:n.get(e)}))}function fc(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}const pc=R.scope(`history`),mc={today:`dateToday`,yesterday:`dateYesterday`,lastWeek:`dateLastWeek`,older:`dateOlder`};function hc(e,t){let n=t.type!==`upsert`||t.activity===!0;if(t.type===`snapshot`&&t.result.pagination.page===1&&e.pagination.page>1){let r=Zi(e.conversations.slice(0,t.result.pagination.limit),t,n);if(t.result.conversations.length===0){if(r.length===0)return t.result;let e=Math.max(t.result.pagination.total,r.length);return{...t.result,conversations:r,pagination:{...t.result.pagination,total:e,totalPages:Math.ceil(e/t.result.pagination.limit)}}}let i=new Set(r.map(e=>e.conversationId)),a=e.conversations.slice(t.result.pagination.limit).filter(e=>!i.has(e.conversationId)),o=e.pagination.page,s={...t.result.pagination,page:o,hasPrev:o>1,hasNext:o<t.result.pagination.totalPages};return{conversations:[...r,...a],pagination:s}}let r=Zi(e.conversations,t,n);return r===e.conversations?e:{...t.type===`snapshot`?t.result:e,conversations:r}}function gc(e,t,n){let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:`numeric`,minute:`2-digit`}).format(r):t-r<6048e5?new Intl.DateTimeFormat(n,{weekday:`short`}).format(r):new Intl.DateTimeFormat(n,{month:`short`,day:`numeric`}).format(r):``}function _c({transport:e,strings:t,locale:n,persistence:r,onSelect:i,onNewConversation:a}){let o=M.cssPrefix,s=e.peekConversations({limit:50}),[c,l]=m(s?`loaded`:`loading`),[d,f]=m(s),[v,y]=m(!1),b=p(void 0),x=d?.conversations??[],S=d?.pagination;u(()=>{let t=!1,n=!0,i=[],a=e.subscribeConversationChanges(e=>{n&&i.push(e),f(t=>t&&hc(t,e))});b.current=void 0,y(!1);let o=e.peekConversations({limit:50});return f(o),l(o?`loaded`:`loading`),e.listConversations({limit:50}).then(e=>{if(t)return;let a=e;for(let e of i)a=hc(a,e);i=[],n=!1,f(a),l(`loaded`),r.saveHistoryCount(a.conversations.length)}).catch(e=>{t||(i=[],n=!1,pc.warn(`listConversations failed`,{err:e}),l(`error`))}),()=>{t=!0,a(),b.current=void 0}},[e,r,n]);async function C(){if(b.current||!S?.hasNext)return;let t={};b.current=t,y(!0);try{let n=await e.listConversations({page:S.page+1,limit:S.limit});if(b.current!==t)return;f(e=>{if(!e)return e;let t=new Set(e.conversations.map(e=>e.conversationId)),i=n.conversations.filter(e=>!t.has(e.conversationId)&&(t.add(e.conversationId),!0)),a={conversations:[...e.conversations,...i],pagination:n.pagination};return r.saveHistoryCount(a.conversations.length),a})}catch(e){if(b.current!==t)return;pc.warn(`listConversations page failed`,{err:e,page:S.page+1})}finally{b.current===t&&(b.current=void 0,y(!1))}}let w=a?/* @__PURE__ */ g(`div`,{class:`${o}-history-footer`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${o}-history-new`,onClick:a,"data-testid":X.sidebarNewConversation,children:[/* @__PURE__ */ g(Da,{}),t.newConversation]})}):null;if(c===`loading`){let e=Math.min(r.loadHistoryCount()??3,6);return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`div`,{class:`${o}-history`,"aria-busy":`true`,"aria-label":t.historyLoading,children:/* @__PURE__ */ _(`div`,{class:`${o}-history-group`,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`div`,{class:`${o}-history-heading`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-heading`})}),/* @__PURE__ */ g(`div`,{class:`${o}-history-card`,children:Array.from({length:Math.max(1,e)},(e,t)=>/* @__PURE__ */ _(`div`,{class:`${o}-history-item ${o}-history-item-skeleton`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-avatar ${o}-skeleton`}),/* @__PURE__ */ _(`span`,{class:`${o}-history-body`,children:[/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-title`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-title`})}),/* @__PURE__ */ g(`span`,{class:`${o}-history-time`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-time`})})]}),/* @__PURE__ */ g(`span`,{class:`${o}-history-row`,children:/* @__PURE__ */ g(`span`,{class:`${o}-history-preview`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-preview`})})})]})]},t))})]})}),w]})}if(c===`error`||x.length===0)return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`div`,{class:`${o}-history-empty`,children:t.historyEmpty}),w]});let T=Date.now(),E=dc(T,x);return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`div`,{class:`${o}-history`,role:`list`,children:[E.map(e=>/* @__PURE__ */ _(`div`,{class:`${o}-history-group`,children:[/* @__PURE__ */ g(`div`,{class:`${o}-history-heading`,children:t[mc[e.bucket]]}),/* @__PURE__ */ g(`div`,{class:`${o}-history-card`,children:e.conversations.map(e=>/* @__PURE__ */ g(`div`,{role:`listitem`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${o}-history-item`,onClick:()=>i(e),"data-closed":e.canContinue?void 0:`true`,"data-unread":e.hasUnread?`true`:void 0,"data-testid":Do(X.historyItem,e.conversationId),children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(eo,{})}),/* @__PURE__ */ _(`span`,{class:`${o}-history-body`,children:[/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-title`,children:e.title}),/* @__PURE__ */ g(`span`,{class:`${o}-history-time`,children:gc(e.lastMessageAt,T,n)})]}),/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-preview`,children:e.preview&&Uo(e.preview)||(e.canContinue?t.historyContinue:t.conversationClosed)}),e.hasUnread?/* @__PURE__ */ g(`span`,{class:`${o}-history-dot`}):null]})]})]})},e.conversationId))})]},e.bucket)),S?.hasNext?/* @__PURE__ */ g(`div`,{class:`${o}-history-more`,children:/* @__PURE__ */ g(`button`,{type:`button`,onClick:C,disabled:v,"aria-busy":v,"data-testid":X.historyLoadMore,children:t.loadMoreConversations})}):null]}),w]})}const vc=M.cssPrefix;function yc({visible:e,strings:t}){return e?/* @__PURE__ */ g(`div`,{class:`${vc}-dropzone`,role:`status`,"aria-live":`polite`,children:t.dropZone}):null}const bc=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,xc=/^https?:\/\/[^\s.]+\.[^\s]+$/i,Sc=/^[+]?[\d\s().-]{6,}$/;function Cc(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>String(t[n]??`{${n}}`))}function wc(e){return Array.isArray(e)?e.length:+!!e?.trim()}function Tc(e,t,n){let r=e.required??!0,i=e.validation;if(e.type===`multiselect`){let e=wc(t);return r&&e===0?n.formRequired:e===0?void 0:i?.minSelections!=null&&e<i.minSelections?Cc(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&e>i.maxSelections?Cc(n.formChooseAtMost,{max:i.maxSelections}):void 0}let a=typeof t==`string`?t.trim():``;if(!a)return r?n.formRequired:void 0;switch(e.type){case`email`:if(!bc.test(a))return n.formInvalidEmail;break;case`url`:if(!xc.test(a))return n.formInvalidUrl;break;case`tel`:if(!Sc.test(a))return n.formInvalidTel;break;case`number`:{let e=Number(a);if(!Number.isFinite(e))return n.formInvalidNumber;if(i?.min!=null&&e<i.min)return Cc(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&e>i.max)return Cc(n.formNumberTooLarge,{max:i.max});break}}if(i?.minLength!=null&&a.length<i.minLength)return Cc(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return Cc(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function Ec(e,t,n){let r={};for(let i of e){let e=Tc(i,t[i.name],n);e&&(r[i.name]=e)}return r}function Dc(e){let t={};for(let[n,r]of Object.entries(e)){let e=Array.isArray(r)?r.join(`, `):r;e.trim()&&(t[n]=e.trim())}return t}const Q=M.cssPrefix,Oc=`__other__`;function kc({fields:e,strings:t,submitLabel:n,onSubmit:r,skipLabel:i,onSkip:a,footerHint:o,submitOnEnter:s,disabled:c,initialValues:l,hideActions:u,fieldTypeLabels:d,rootTestId:f,submitTestId:p,skipTestId:h}){let[v,y]=m(()=>({...Nc(e),...l})),[b,x]=m({}),[S,C]=m({});function w(e){S[e]&&C(t=>({...t,[e]:``}))}function T(e,t){y(n=>({...n,[e]:t})),w(e)}function E(e,t){x(n=>({...n,[e]:t})),w(e)}function D(n){if(n.preventDefault(),c)return;let i=Pc(e,v,b),a=Ec(e,i,t);Object.keys(a).length>0?C(a):r(Dc(i))}function O(e){!s||e.key!==`Enter`||e.shiftKey||e.isComposing||e.target&&`tagName`in e.target&&e.target.tagName===`TEXTAREA`&&D(e)}return/* @__PURE__ */ _(`form`,{class:`${Q}-form`,onSubmit:D,onKeyDown:O,"data-testid":f,noValidate:!0,children:[e.map(e=>/* @__PURE__ */ g(Ac,{field:e,value:v[e.name],otherText:b[e.name]??``,error:S[e.name],disabled:c,typeLabel:d?.[e.name],strings:t,onChange:t=>T(e.name,t),onOtherChange:t=>E(e.name,t)},e.name)),u?null:/* @__PURE__ */ _(`div`,{class:`${Q}-form-actions`,children:[o?/* @__PURE__ */ g(`span`,{class:`${Q}-form-hint`,children:o}):null,i&&a?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Q}-form-skip`,onClick:a,disabled:c,"data-testid":h,children:i}):null,/* @__PURE__ */ g(`button`,{type:`submit`,class:`${Q}-form-submit`,disabled:c,"data-testid":p,children:n})]})]})}function Ac({field:e,value:t,otherText:n,error:r,disabled:i,typeLabel:a,strings:o,onChange:s,onOtherChange:c}){let l=jc({field:e,value:t,otherText:n,disabled:i,strings:o,onChange:s,onOtherChange:c,fieldTid:Do(X.formField,e.name)});return/* @__PURE__ */ _(`label`,{class:`${Q}-field`,"data-field":e.name,"data-invalid":r?`true`:void 0,children:[/* @__PURE__ */ _(`span`,{class:`${Q}-field-head`,children:[/* @__PURE__ */ _(`span`,{class:`${Q}-field-label`,children:[e.label,e.required??!0?/* @__PURE__ */ g(`span`,{class:`${Q}-field-req`,"aria-hidden":`true`,children:` *`}):null]}),a?/* @__PURE__ */ g(`span`,{class:`${Q}-field-type`,children:a}):null]}),l,e.validationHint&&!r?/* @__PURE__ */ g(`span`,{class:`${Q}-field-hint`,children:e.validationHint}):null,r?/* @__PURE__ */ g(`span`,{class:`${Q}-field-error`,role:`alert`,children:r}):null]})}function jc(e){let{field:t,value:n,otherText:r,disabled:i,strings:a,onChange:o,onOtherChange:s,fieldTid:c}=e,l=typeof n==`string`?n:``;switch(t.type){case`textarea`:return/* @__PURE__ */ g(`textarea`,{class:`${Q}-field-input`,rows:3,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c});case`select`:return/* @__PURE__ */ _(`select`,{class:`${Q}-field-input`,value:l,disabled:i,onChange:e=>o(e.currentTarget.value),"data-testid":c,children:[/* @__PURE__ */ g(`option`,{value:``,children:t.placeholder??`—`}),(t.options??[]).map(e=>/* @__PURE__ */ g(`option`,{value:e.value,children:e.label??e.value},e.value))]});case`radio`:{let e=t.allowOther&&l===Oc;return/* @__PURE__ */ _(`div`,{class:`${Q}-field-choices`,role:`radiogroup`,"data-testid":c,children:[(t.options??[]).map(e=>/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${Q}-${t.name}`,checked:l===e.value,disabled:i,onChange:()=>o(e.value)}),/* @__PURE__ */ g(`span`,{children:e.label??e.value})]},e.value)),t.allowOther?/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${Q}-${t.name}`,checked:l===Oc,disabled:i,onChange:()=>o(Oc)}),/* @__PURE__ */ g(`span`,{children:a.formOther})]}):null,e?/* @__PURE__ */ g(`input`,{class:`${Q}-field-input`,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.currentTarget.value)}):null]})}case`checkbox`:return/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`checkbox`,checked:l===`true`,disabled:i,onChange:e=>o(e.currentTarget.checked?`true`:``),"data-testid":c}),/* @__PURE__ */ g(`span`,{children:t.placeholder??t.label})]});case`multiselect`:{let e=Array.isArray(n)?n:[];function l(t,n){return o(n?[...e,t]:e.filter(e=>e!==t))}return/* @__PURE__ */ _(`div`,{class:`${Q}-field-choices`,"data-testid":c,children:[(t.options??[]).map(t=>/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`checkbox`,checked:e.includes(t.value),disabled:i,onChange:e=>l(t.value,e.currentTarget.checked)}),/* @__PURE__ */ g(`span`,{children:t.label??t.value})]},t.value)),t.allowOther||(t.options??[]).length===0?/* @__PURE__ */ g(`textarea`,{class:`${Q}-field-input`,rows:2,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.currentTarget.value)}):null]})}default:return/* @__PURE__ */ g(`input`,{...Mc(t.type),class:`${Q}-field-input`,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c})}}function Mc(e){switch(e){case`number`:return{type:e};case`email`:return{type:e};case`tel`:return{type:e};case`url`:return{type:e};case`date`:case`time`:return{type:e};default:return{type:`text`}}}function Nc(e){let t={};for(let n of e)n.defaultValue!=null&&(t[n.name]=n.type===`multiselect`?n.defaultValue.split(`,`).map(e=>e.trim()).filter(Boolean):n.defaultValue);return t}function Pc(e,t,n){let r={...t};for(let i of e){let e=n[i.name]?.trim();if(i.type===`radio`&&i.allowOther&&t[i.name]===Oc)r[i.name]=e??``;else if(i.type===`multiselect`&&e){let n=e.split(/[,\n;]+/).map(e=>e.trim()).filter(Boolean),a=t[i.name];r[i.name]=[...Array.isArray(a)?a:[],...n]}}return r}const Fc=M.cssPrefix;function Ic({form:e,strings:t,onSubmit:n,onSkip:r}){return/* @__PURE__ */ _(`div`,{class:`${Fc}-form-gate`,"data-testid":X.formGate,children:[e.title?/* @__PURE__ */ g(`h3`,{class:`${Fc}-form-gate-title`,children:e.title}):null,e.description?/* @__PURE__ */ g(`p`,{class:`${Fc}-form-gate-desc`,children:e.description}):null,/* @__PURE__ */ g(kc,{fields:e.fields,strings:t,submitLabel:e.submitLabel??t.formSubmit,onSubmit:n,skipLabel:e.skippable?t.formSkip:void 0,onSkip:e.skippable?r:void 0,submitTestId:X.formSubmit,skipTestId:X.formSkip})]})}function Lc({marker:e,strings:t,onFill:n}){let r=e.outcome===`skipped`,i=r?t.formSkipped:t.formSubmitted,a=e.title?/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`span`,{children:e.title}),/* @__PURE__ */ g(`span`,{class:`${Fc}-sr-only`,children:i})]}):/* @__PURE__ */ g(`span`,{children:i}),o=e.form?.reviewable??!1,s=!r&&o&&e.values&&Object.keys(e.values).length>0?e.values:null;if(s){function t(t){return e.form?.fields.find(e=>e.name===t)?.label??t}return/* @__PURE__ */ _(`details`,{class:`${Fc}-form-done`,"data-outcome":e.outcome,"data-testid":X.formDone,children:[/* @__PURE__ */ _(`summary`,{class:`${Fc}-form-done-summary`,"data-testid":X.formDoneToggle,children:[/* @__PURE__ */ g(Ka,{}),a,/* @__PURE__ */ g(ja,{})]}),/* @__PURE__ */ g(`dl`,{class:`${Fc}-form-answers`,"data-testid":X.formAnswers,children:Object.entries(s).map(([e,n])=>/* @__PURE__ */ _(`div`,{class:`${Fc}-form-answer`,children:[/* @__PURE__ */ g(`dt`,{children:t(e)}),/* @__PURE__ */ g(`dd`,{children:n})]},e))})]})}return/* @__PURE__ */ _(`div`,{class:`${Fc}-form-done`,"data-outcome":e.outcome,"data-testid":X.formDone,role:`status`,children:[g(r?Ga:Ka,{}),a,r&&e.form?.reopenable&&n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fc}-form-done-fill`,"data-testid":X.formFill,onClick:n,children:t.formFillOut}):null]})}function Rc(e){return e?(e.startsWith(`tool:`)?e.slice(5):e)===`ask-user-questions`:!1}const zc=M.cssPrefix;function Bc({messageId:e,initial:t,strings:n,onFeedback:r}){let[i,a]=m(t);u(()=>a(t),[e,t]);function o(t){let n=i===t?null:t;a(n),r(e,n)}return/* @__PURE__ */ _(`div`,{class:`${zc}-feedback`,role:`group`,"data-testid":X.messageFeedback,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${zc}-msg-action`,"data-active":i===`up`?`true`:void 0,"aria-pressed":i===`up`,"aria-label":n.feedbackUp,title:n.feedbackUp,onClick:()=>o(`up`),"data-testid":X.feedbackUp,children:/* @__PURE__ */ g(bo,{})}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${zc}-msg-action`,"data-active":i===`down`?`true`:void 0,"aria-pressed":i===`down`,"aria-label":n.feedbackDown,title:n.feedbackDown,onClick:()=>o(`down`),"data-testid":X.feedbackDown,children:/* @__PURE__ */ g(xo,{})}),/* @__PURE__ */ g(`span`,{class:`${zc}-sr-only`,role:`status`,"aria-live":`polite`,children:i?n.feedbackThanks:``})]})}const Vc=M.cssPrefix;function Hc(e){return e.startsWith(`tool:`)||e.startsWith(`tool-`)?e.slice(5):e}function Uc(e,t){let n=e===`output-available`||e===`output-error`||e===`output-denied`,r=e===`approval-responded`||t?.approved!==void 0;return{terminal:n,responded:r,decided:n||r}}function Wc({status:e,icon:t,label:n}){return/* @__PURE__ */ _(`span`,{class:`${Vc}-toolui-badge ${Vc}-toolui-status`,"data-status":e,children:[/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-status-icon`,children:t}),n]})}function Gc(e,t){return e===`output-error`?`error`:e===`output-denied`||t?.approved===!1?`denied`:e===`output-available`?`completed`:e===`approval-responded`||t?.approved===!0?`responded`:e===`approval-requested`?`awaiting`:`running`}function Kc(e,t,n={}){return n.submitted?`responded`:Yc(Gc(e,t),n.superseded,n.live??!0)}function qc({status:e}){return g(e===`denied`||e===`error`||e===`superseded`?To:e===`completed`||e===`responded`?wo:Co,{})}function Jc(e,t){switch(e){case`awaiting`:return t.statusAwaiting;case`responded`:return t.statusResponded;case`completed`:return t.statusCompleted;case`denied`:return t.statusDenied;case`error`:return t.statusError;case`superseded`:return t.statusSuperseded;default:return t.statusRunning}}function Yc(e,t,n){return t&&(e===`awaiting`||e===`running`)?`superseded`:!n&&e===`running`?`error`:e}function Xc({state:e,approval:t,strings:n,superseded:r,live:i=!0,submitted:a=!1}){let o=Kc(e,t,{superseded:r,live:i,submitted:a});return/* @__PURE__ */ g(Wc,{status:o,icon:/* @__PURE__ */ g(qc,{status:o}),label:Jc(o,n)})}function Zc({name:e,state:t,approval:n,strings:r,superseded:i,live:a,submitted:o}){return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`span`,{class:`${Vc}-toolui-name-pill`,children:[/* @__PURE__ */ g(So,{}),/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-name-text`,children:e})]}),/* @__PURE__ */ g(Xc,{state:t,approval:n,strings:r,superseded:i,live:a,submitted:o}),/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-chevron`,children:/* @__PURE__ */ g(Za,{})})]})}function Qc({part:e,strings:t,testid:n,superseded:r,live:a,submitted:o}){let s=f(()=>i(()=>e.inputSig.value),[e]),c=f(()=>i(()=>e.outputSig.value),[e]),l=f(()=>i(()=>e.errorSig.value),[e]),u=f(()=>i(()=>e.stateSig.value),[e]),d=f(()=>i(()=>e.approvalSig.value),[e]);return/* @__PURE__ */ _(`details`,{class:`${Vc}-toolui ${Vc}-toolui-collapsible`,"data-testid":n,children:[/* @__PURE__ */ g(`summary`,{class:`${Vc}-toolui-head`,children:/* @__PURE__ */ g(Zc,{name:Hc(e.toolName),state:u.value,approval:d.value,strings:t,superseded:r,live:a,submitted:o})}),/* @__PURE__ */ g($c,{label:t.toolParameters,value:s.value}),c.value===void 0?null:/* @__PURE__ */ g($c,{label:t.toolResult,value:c.value}),l.value?/* @__PURE__ */ g($c,{label:t.statusError,value:l.value,error:!0}):null]})}function $c({label:e,value:t,error:n}){let r=n?typeof t==`string`?t:``:tl(el(t));return r?/* @__PURE__ */ _(`div`,{class:`${Vc}-toolui-section`,children:[/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-label`,children:e}),/* @__PURE__ */ g(`pre`,{class:`${Vc}-toolui-code`,"data-error":n?`true`:void 0,children:r})]}):null}function el(e){if(e&&typeof e==`object`){let t=e;if(t.storage===`tool-result-ref`&&`summary`in t)return t.summary}return e}function tl(e){if(e==null)return``;try{let t=typeof e==`string`?e:JSON.stringify(e,null,2);return!t||t===`{}`||t===`[]`||t===`""`?``:t.length>800?`${t.slice(0,800)}…`:t}catch{return``}}function nl(e){return e.partsSig.value.some(e=>e.kind===`text`&&e.textSig.value.length>0)}function rl(e){return e.partsSig.value.some(e=>e.kind===`reasoning`)}function il(e){return e.streaming&&!e.bufferedHold&&!(e.reasoningVisible&&e.working)}function al(e){let{streaming:t,reasoningVisible:n,emptyReply:r,hidden:i}=e,a=e.responseMode===`buffered`&&t,o=t&&!e.hasAnswerText;return{streaming:t,bufferedHold:a,reasoningVisible:n,working:o,showStreamDots:il({streaming:t,bufferedHold:a,reasoningVisible:n,working:o}),emptyReply:r,hidden:i}}function ol(e,t){let n=e.stateSig.value,r=e.approvalSig.value,{terminal:i,responded:a,decided:o}=Uc(n,r),s=t.continuationStreaming===!0&&!o,c=t.superseded&&!o&&!s;return{pill:Kc(n,r,{superseded:c,live:t.live,submitted:s}),state:n,terminal:i,decided:o||s,showApproveReject:!o&&!t.superseded&&!s,showAnswered:a&&!i&&!c,showSubmitted:s,showEdit:a&&t.active&&!i,skipped:c,answeredApproved:r?.approved}}const sl=M.cssPrefix;function cl({part:e,strings:t}){let n=e.title||e.filename||e.url||t.sources;return e.url?/* @__PURE__ */ _(`a`,{class:`${sl}-source`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,"data-testid":X.source,children:[/* @__PURE__ */ g(`span`,{class:`${sl}-source-icon`,"aria-hidden":`true`,children:`🔗`}),/* @__PURE__ */ g(`span`,{class:`${sl}-source-label`,children:n})]}):/* @__PURE__ */ _(`span`,{class:`${sl}-source`,"data-testid":X.source,children:[/* @__PURE__ */ g(`span`,{class:`${sl}-source-icon`,"aria-hidden":`true`,children:`📄`}),/* @__PURE__ */ g(`span`,{class:`${sl}-source-label`,children:n})]})}const ll=M.cssPrefix;function ul({part:e,strings:t,active:n,superseded:r=!1,continuationStreaming:a=!1,onDecision:o,onEdit:s}){let c=f(()=>i(()=>e.approvalSig.value),[e]),l=f(()=>i(()=>ol(e,{active:n,superseded:r,continuationStreaming:a})),[e,n,r,a]).value,{terminal:u,showApproveReject:d,showAnswered:p,showSubmitted:m,showEdit:v,skipped:y}=l,b=Hc(e.toolName),x=l.answeredApproved,S=e.toolCallId,C=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`p`,{class:`${ll}-toolui-prompt`,children:t.approvalPrompt.replace(`{tool}`,b)}),/* @__PURE__ */ g(`p`,{class:`${ll}-toolui-subtle`,children:t.approvalBody})]});m?C=/* @__PURE__ */ g(`p`,{class:`${ll}-toolui-subtle`,children:t.approvalSubmitting}):p&&x!==!1?C=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`p`,{class:`${ll}-toolui-prompt`,children:[t.approvalYourResponse.replace(`{decision}`,x?t.approve:t.reject),c.value?.reason?` — ${c.value.reason}`:``]}),v?/* @__PURE__ */ g(`p`,{class:`${ll}-toolui-subtle`,children:t.approvalEditHint}):null,v?null:/* @__PURE__ */ g(`p`,{class:`${ll}-toolui-subtle`,children:t.approvalSubmitting})]}):p&&(C=/* @__PURE__ */ g(h,{}));let w=d||m||v||p&&x!==!1;return/* @__PURE__ */ _(`div`,{class:`${ll}-toolui-group`,"data-testid":l.decided?X.toolDecision:X.toolApproval,children:[/* @__PURE__ */ g(Qc,{part:e,strings:t,superseded:y,submitted:m}),y||u||!w?null:/* @__PURE__ */ _(`div`,{class:`${ll}-toolui ${ll}-toolui-body`,children:[C,d?/* @__PURE__ */ _(`div`,{class:`${ll}-toolui-actions`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${ll}-form-skip`,disabled:!n,onClick:()=>o(S,!1),"data-testid":X.toolReject,children:t.reject}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${ll}-form-submit`,disabled:!n,onClick:()=>o(S,!0),"data-testid":X.toolApprove,children:t.approve})]}):null,v?/* @__PURE__ */ g(`div`,{class:`${ll}-toolui-actions`,children:/* @__PURE__ */ g(`button`,{type:`button`,class:`${ll}-form-skip`,onClick:()=>s(S),"data-testid":X.toolEdit,children:t.edit})}):null]})]})}const dl=[`text`,`email`,`phone`,`number`,`date`,`single-select`,`multi-select`,`boolean`];function fl(e){return typeof e==`object`&&!!e}function pl(e){let t=fl(e)?e:{},n=(Array.isArray(t.questions)?t.questions:[]).map(ml).filter(e=>e!==null);return{intro:_l(t.intro),questions:n}}function ml(e,t){if(!fl(e))return null;let n=dl.find(t=>t===e.type)??`text`;return{key:_l(e.key)??`q${t+1}`,question:_l(e.question)??`Please provide the missing information.`,type:n,options:Array.isArray(e.options)?e.options.filter(e=>typeof e==`string`&&e.trim().length>0):void 0,required:typeof e.required==`boolean`?e.required:void 0,helpText:_l(e.helpText)}}function hl(e){switch(e){case`text`:return`textarea`;case`phone`:return`tel`;case`single-select`:case`boolean`:return`radio`;case`multi-select`:return`multiselect`;default:return e}}function gl(e,t,n){return e.questions.map(e=>{let r=hl(e.type),i=e.type===`boolean`?[{value:`yes`,label:t},{value:`no`,label:n}]:(e.options??[]).map(e=>({value:e,label:e}));return{name:e.key,label:e.question,type:r,required:e.required??!1,options:i.length>0?i:void 0,validationHint:e.helpText}})}function _l(e){return typeof e==`string`&&e.trim()?e.trim():void 0}const vl=M.cssPrefix;function yl({skipped:e,submitted:t,strings:n}){return e?{status:`superseded`,statusLabel:n.inputSkipped}:t?{status:`responded`,statusLabel:n.statusResponded}:{status:`completed`,statusLabel:n.inputAnswered}}const bl={text:`qtypeText`,email:`qtypeEmail`,phone:`qtypePhone`,number:`qtypeNumber`,date:`qtypeDate`,"single-select":`qtypeChooseOne`,"multi-select":`qtypeChooseAny`,boolean:`qtypeBoolean`};function xl(e,t){let n={};for(let r of e)n[r.key]=t[bl[r.type]];return n}function Sl({part:e,strings:t,active:n,superseded:r=!1,continuationStreaming:a=!1,onDecision:o,onEdit:s}){let c=f(()=>i(()=>e.stateSig.value),[e]).value,l=f(()=>i(()=>e.approvalSig.value),[e]).value,u=f(()=>i(()=>pl(e.inputSig.value)),[e]).value,{terminal:d,decided:p}=Uc(c,l),h=p&&l?.approved===!0,v=a&&!p,y=!p&&!r&&!v,b=!y&&!h&&!v,x=h&&n&&!d,S=u.questions,[C,w]=m(null),T=C??(y||h||v),[E,D]=m(!1),O=S.length>1?Ta:to,k=y?t.inputRequired:t.inputBadge,A=v?/* @__PURE__ */ g(`p`,{class:`${vl}-toolui-subtle`,children:t.approvalSubmitting}):y?/* @__PURE__ */ g(Cl,{req:u,strings:t,active:n,resolve:(t,n)=>o(e.toolCallId,n,t)}):E?/* @__PURE__ */ g(kc,{fields:gl(u,t.confirmYes,t.confirmNo),strings:t,submitLabel:t.inputSubmit,onSubmit:()=>{},disabled:!0,hideActions:!0,fieldTypeLabels:xl(S,t),initialValues:h?kl(S,l?.reason):void 0}):/* @__PURE__ */ g(wl,{questions:S,answers:h?Ol(l?.reason):{},strings:t}),{status:j,statusLabel:M}=yl({skipped:b,submitted:v,strings:t});return/* @__PURE__ */ _(`details`,{class:`${vl}-toolui ${vl}-toolui-collapsible${r?` ${vl}-toolui-stale`:``}`,open:T,onToggle:e=>{let t=e.currentTarget.open;t!==T&&w(t)},"data-testid":y?X.toolAskQuestions:X.toolDecision,children:[/* @__PURE__ */ _(`summary`,{class:`${vl}-toolui-head`,children:[/* @__PURE__ */ _(`span`,{class:`${vl}-toolui-q-pill`,children:[/* @__PURE__ */ g(O,{}),k]}),/* @__PURE__ */ _(`span`,{class:`${vl}-toolui-head-end`,children:[y?null:/* @__PURE__ */ g(Wc,{status:j,icon:g(b?To:wo,{}),label:M}),/* @__PURE__ */ g(`span`,{class:`${vl}-toolui-chevron`,children:/* @__PURE__ */ g(Za,{})})]})]}),/* @__PURE__ */ _(`div`,{class:`${vl}-toolui-collapse-body`,children:[u.intro?/* @__PURE__ */ g(`div`,{class:`${vl}-toolui-desc`,children:u.intro}):null,A,y||v?null:/* @__PURE__ */ _(`div`,{class:`${vl}-toolui-footer`,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${vl}-toolui-options-toggle`,onClick:()=>D(e=>!e),"data-testid":X.toolAskOptions,children:[/* @__PURE__ */ g(`span`,{class:`${vl}-toolui-options-chevron${E?` ${vl}-open`:``}`,children:/* @__PURE__ */ g(Za,{})}),E?t.hideOptions:t.showOptions]}),x?/* @__PURE__ */ g(`button`,{type:`button`,class:`${vl}-form-skip`,onClick:()=>s(e.toolCallId),"data-testid":X.toolEdit,children:t.edit}):null]})]})]})}function Cl({req:e,strings:t,active:n,resolve:r}){let i=gl(e,t.confirmYes,t.confirmNo),a=e.questions.length===1&&e.questions[0]?.type===`text`;return/* @__PURE__ */ g(kc,{fields:i,strings:t,disabled:!n,submitLabel:t.inputSubmit,footerHint:a?t.inputSubmitHint:void 0,onSubmit:t=>r(El(e.questions,t),!0),skipLabel:t.inputSkip,onSkip:()=>r(void 0,!1),submitOnEnter:a,fieldTypeLabels:xl(e.questions,t),submitTestId:X.toolInputSubmit,skipTestId:X.toolInputSkip})}function wl({questions:e,answers:t,strings:n}){return/* @__PURE__ */ g(`div`,{class:`${vl}-toolui-summary`,"data-testid":X.toolAskSummary,children:e.map(e=>/* @__PURE__ */ _(`div`,{class:`${vl}-field`,children:[/* @__PURE__ */ g(`span`,{class:`${vl}-field-head`,children:/* @__PURE__ */ _(`span`,{class:`${vl}-field-label`,children:[e.question,e.required?/* @__PURE__ */ g(`span`,{class:`${vl}-field-req`,"aria-hidden":`true`,children:` *`}):null]})}),/* @__PURE__ */ g(`p`,{class:`${vl}-toolui-answer`,children:Tl(e,t[e.key],n)||`—`})]},e.key))})}function Tl(e,t,n){return e.type===`boolean`?t===`yes`?n.confirmYes:t===`no`?n.confirmNo:t??``:t??``}function El(e,t){let n=e.flatMap(e=>{let n=t[e.key];if(n==null||n.trim()===``)return[];let r=e.type===`multi-select`?n.split(`,`).map(e=>e.trim()).filter(Boolean):n;return[{key:e.key,value:r}]});return JSON.stringify({answers:n})}function Dl(e){if(!e)return{};let t=(()=>{try{return JSON.parse(e)}catch{return}})()?.answers;if(!Array.isArray(t))return{};let n={};for(let e of t)if(e&&typeof e==`object`&&`key`in e){let{key:t,value:r}=e;if(typeof t!=`string`)continue;typeof r==`string`?n[t]=r:Array.isArray(r)&&(n[t]=r.filter(e=>typeof e==`string`))}return n}function Ol(e){let t=Dl(e),n={};for(let[e,r]of Object.entries(t))n[e]=Array.isArray(r)?r.join(`, `):r;return n}function kl(e,t){let n=Dl(t),r={};for(let t of e){let e=n[t.key];e!==void 0&&(t.type===`multi-select`?r[t.key]=Array.isArray(e)?e:[e]:r[t.key]=Array.isArray(e)?e[0]??``:e)}return r}function Al({part:e,strings:t,live:n}){let r=f(()=>i(()=>e.inputSig.value),[e]),a=f(()=>i(()=>e.outputSig.value),[e]),o=f(()=>i(()=>e.errorSig.value),[e]);return f(()=>i(()=>!!tl(r.value)||!!o.value||!!tl(el(a.value))),[r,a,o]).value?/* @__PURE__ */ g(Qc,{part:e,strings:t,testid:X.toolCall,live:n}):null}const jl=M.cssPrefix,Ml=y(Nl);function Nl({message:e,status:t,strings:n,responseMode:r,showReasoning:a,showToolCalls:o,showSources:s,interactive:c=!1,superseded:l=!1,tool:u,onRetry:d,enableMessageFeedback:p=!1,onFeedback:m}){let h=[...f(()=>i(()=>e.partsSig.value),[e]).value];for(let t of e.attachments??[])t.url&&!h.some(e=>e.kind===`file`&&e.url===t.url)&&h.push({kind:`file`,url:t.url,mediaType:t.mediaType});let v=f(()=>i(()=>Ai(e)),[e]),y=f(()=>i(()=>Mi(e)),[e]),b=f(()=>i(()=>nl(e)),[e]),x=f(()=>i(()=>a&&rl(e)),[e,a]),S=t===`streaming`,C=e.role===`assistant`&&S,w=al({streaming:C,responseMode:r,reasoningVisible:x.value,hasAnswerText:b.value,emptyReply:v.value,hidden:y.value}),{bufferedHold:T,working:E,showStreamDots:D}=w;if(w.hidden)return null;let O=Fl(e.createdAt),k=e.role===`assistant`||e.role===`operator`,A=p&&!!m&&!!e.serverMessageId&&k&&!S&&t!==`error`&&!v.value,j=S?``:h.filter(e=>e.kind===`text`).map(t=>e.role===`assistant`?Lr(t.textSig.peek()):t.textSig.peek()).join(`
|
|
30
|
+
`))if(i!==``){if(i.startsWith(`:`))t?.(i.slice(1).trim());else if(i.startsWith(`data:`)){let e=i.slice(5).replace(/^ /,``);n=n?`${n}\n${e}`:e}else i.startsWith(`id:`)&&(r=i.slice(3).trim())}if(n===`[DONE]`)return`done`;if(!n)return null;try{let e=JSON.parse(n);return Vi.trace(`chunk`,{type:e.type,eventId:r}),{chunk:e,eventId:r}}catch(e){throw Vi.trace(`frame parse failed`,{errorType:e instanceof Error?e.name:typeof e,payloadLength:n.length}),new Bi(`invalid SSE frame`,`network`,void 0,e)}}const q=R.scope(`transport`),Gi=6e4,Ki=/* @__PURE__ */ new WeakMap;function qi(e){return Ki.get(e)}function Ji(e,t){return Ki.set(e,t),e}function Yi(e){return Math.max(e?.upsertRevision??0,e?.read?.revision??0)}function Xi(e,t){return e.conversationId===t.conversationId&&e.title===t.title&&e.lastMessageAt===t.lastMessageAt&&e.preview===t.preview&&e.canContinue===t.canContinue&&e.hasUnread===t.hasUnread&&e.controlState===t.controlState}function Zi(e,t,n=!0){switch(t.type){case`snapshot`:{let n=new Map(e.map(e=>[e.conversationId,e])),r=e.filter(e=>(qi(e)?.activityRevision??0)>t.requestedRevision).toSorted((e,t)=>qi(t).activityRevision-qi(e).activityRevision),i=new Set(r.map(e=>e.conversationId));return[...r,...t.result.conversations.filter(e=>!i.has(e.conversationId)).map(e=>{let r=n.get(e.conversationId);if(!r)return e;let i=qi(r);return(i?.upsertRevision??0)>t.requestedRevision?r:i?.read&&!r.hasUnread&&i.read.lastMessageAt===e.lastMessageAt?Ji({...e,hasUnread:!1},{upsertRevision:0,read:i.read}):e})]}case`read`:{let n=e.findIndex(e=>e.conversationId===t.conversationId&&(t.lastMessageAt===void 0||e.lastMessageAt===t.lastMessageAt));if(n<0)return e;let r=e[n],i=qi(r);if(Yi(i)>t.revision)return e;let a=t.lastMessageAt??r.lastMessageAt,o={upsertRevision:i?.upsertRevision??0,...i?.activityRevision===void 0?{}:{activityRevision:i.activityRevision},read:{revision:t.revision,...a?{lastMessageAt:a}:{}}};return r.hasUnread?e.map((e,t)=>t===n?Ji({...e,hasUnread:!1},o):e):(Ji(r,o),e)}case`upsert`:{let r=e.findIndex(e=>e.conversationId===t.conversation.conversationId);if(r<0&&!n)return e;let i=r<0?void 0:e[r],a=i?qi(i):void 0;if(Yi(a)>t.revision)return e;let o=t.activity?t.revision:a?.activityRevision,s={upsertRevision:t.revision,...o===void 0?{}:{activityRevision:o},...!t.conversation.hasUnread&&a?.read?{read:a.read}:{}},c=i?{...i,...t.conversation,title:i.title}:{...t.conversation};return i&&Xi(i,c)?(Ji(i,s),e):(Ji(c,s),t.activity?[c,...e.filter(e=>e.conversationId!==c.conversationId)]:i?e.map((e,t)=>t===r?c:e):[...e,c])}default:return t}}const Qi=/* @__PURE__ */ new Set([408,425,429,500,502,503,504]);function $i(e){return 400*2**e+Math.floor(Math.random()*250)}function ea(e){return 6e4+Math.ceil(e/1048576)*15e3}function ta(e){let t=e.get(`retry-after`);if(!t)return null;let n=Number(t),r=Number.isFinite(n)?n*1e3:Date.parse(t)-Date.now();return Number.isFinite(r)&&r>=0?Math.min(r,3e4):null}var na=class{constructor(e){this.ttlMs=e,V(this,`map`,/* @__PURE__ */ new Map)}getOrFetch(e,t){let n=this.map.get(e);if(n&&performance.now()-n.at<this.ttlMs)return n.result;let r={at:performance.now(),result:t().then(e=>(r.value=e,e)).catch(t=>{throw this.map.get(e)===r&&this.map.delete(e),t})};return this.map.set(e,r),r.result}peek(e){let t=this.map.get(e);if(t?.value!==void 0&&performance.now()-t.at<this.ttlMs)return t.value}update(e){for(let t of this.map.values())if(t.value!==void 0){let n=e(t.value);t.value=n,t.result=Promise.resolve(n)}else t.result=t.result.then(n=>{let r=e(n);return t.value=r,r})}delete(e){this.map.delete(e)}},ra=class{constructor(e){this.opts=e,V(this,`conversationListeners`,/* @__PURE__ */ new Set),V(this,`conversationRevision`,0),V(this,`visitorId`,void 0),V(this,`conversationId`,void 0),V(this,`userContext`,void 0),V(this,`pageContext`,void 0),V(this,`locale`,void 0),V(this,`conversationsCache`,new na(1e4)),V(this,`contentCache`,new na(Gi)),V(this,`contentCollectionsCache`,new na(Gi))}setContext(e,t){this.userContext=e,this.pageContext=t}setLocale(e){this.locale=e}primeIdentity(e,t){e&&(this.visitorId=e),t&&(this.conversationId=t)}envelope(){let e={_ev:ft};this.visitorId&&(e.visitorId=this.visitorId),this.conversationId&&(e.conversationId=this.conversationId),this.locale&&(e.locale=this.locale);let t=zi(this.userContext,this.pageContext);return t&&(e.context=t),e}withEnvelope(e){return{...this.envelope(),...e}}appendEnvelope(e){for(let[t,n]of Object.entries(this.envelope()))e.append(t,n);return e}withEnvelopeQuery(e){let t=new URL(this.url(e));for(let[e,n]of Object.entries(this.envelope()))t.searchParams.has(e)||t.searchParams.set(e,n);return t.toString()}async handshake(e){q.debug(`handshake →`,{visitorId:e.visitorId,conversationId:e.conversationId,locale:e.locale});let t=await this.postJson(Vr.handshake,e,`handshake`);return q.debug(`handshake ←`,{visitorId:t.visitorId,conversationId:t.conversationId,hasWelcome:!!t.welcome,hasConfig:!!t.config,rebind:t.rebind}),this.visitorId=e.visitorId,this.conversationId=t.conversationId,t}async uploadFile(e,t){q.debug(`uploadFile →`,{name:e.name,size:e.size,type:e.type});let n=new FormData;n.append(`file`,e,e.name);let r=await this.postForm(this.uploadPath,n,`upload`,t,ea(e.size));return q.debug(`uploadFile ←`,{id:r.id,url:r.url}),r}async transcribe(e,t=`audio/webm`){q.debug(`transcribe →`,{size:e.size,mimeType:t});let n=new FormData;n.append(`audio`,e,`voice.${ia(t)}`),n.append(`mimeType`,t);let r=await this.postForm(this.transcribePath,n,`transcribe`);return q.debug(`transcribe ←`,{textLen:r.text.length}),r}subscribeConversationChanges(e){return this.conversationListeners.add(e),()=>this.conversationListeners.delete(e)}publishConversation(e,t=!1){let n={type:`upsert`,conversation:e,revision:++this.conversationRevision,...t?{activity:!0}:{}};this.conversationsCache.update(r=>{let i=r.pagination.page===1,a=r.conversations.some(t=>t.conversationId===e.conversationId),o=Zi(r.conversations,n,i&&t),s=i&&o.length>r.pagination.limit?o.slice(0,r.pagination.limit):o;if(!i||!t||a||r.pagination.hasNext)return s===r.conversations?r:{...r,conversations:s};let c=Math.max(r.pagination.total,r.conversations.length)+1,l=Math.ceil(c/r.pagination.limit);return{...r,conversations:s,pagination:{...r.pagination,total:c,totalPages:l,hasNext:r.pagination.page<l}}});for(let e of this.conversationListeners)e(n)}localeCacheKey(e){return`${this.locale??``}|${JSON.stringify(e,Object.keys(e).toSorted())}`}peekConversations(e={}){return this.conversationsCache.peek(this.localeCacheKey(e))}listConversations(e={},t=!1){if((e.page??1)>1)return this.fetchConversations(e);let n=this.localeCacheKey(e),r=this.conversationRevision;t&&this.conversationsCache.delete(n);let i=this.conversationsCache.getOrFetch(n,()=>this.fetchConversations(e));return t?i.then(e=>{let t={type:`snapshot`,result:e,requestedRevision:r};for(let e of this.conversationListeners)e(t);return e}):i}async fetchConversations(e){let t=new URL(this.url(Vr.listConversations));return e.visitorId&&t.searchParams.set(`visitorId`,e.visitorId),e.page&&t.searchParams.set(`page`,String(e.page)),e.limit&&t.searchParams.set(`limit`,String(e.limit)),e.ids?.length&&t.searchParams.set(`ids`,e.ids.join(`,`)),this.getJson(t.toString(),`listConversations`)}async loadConversation(e,{ids:t=[],beforeId:n,beforeCreatedAt:r}={}){let i=new URL(this.url(Vr.listMessages));i.searchParams.set(`conversationId`,e),i.searchParams.set(`limit`,`50`),t.length>0&&i.searchParams.set(`ids`,t.join(`,`)),n&&i.searchParams.set(`beforeId`,n),r&&i.searchParams.set(`beforeCreatedAt`,r);let a=await this.getJson(i.toString(),`loadConversation`);return{...a,messages:a.messages.toReversed()}}async markRead(e,t){if(!this.visitorId||!e)return;let n={type:`read`,conversationId:e,...t===void 0?{}:{lastMessageAt:t},revision:++this.conversationRevision};this.conversationsCache.update(e=>{let t=Zi(e.conversations,n);return t===e.conversations?e:{...e,conversations:t}});for(let e of this.conversationListeners)e(n);try{await this.postJson(Vr.markRead,{conversationId:e},`markRead`,!0)}catch(e){q.debug(`markRead failed (non-fatal)`,{err:e})}}async requestOperator(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(Vr.requestOperator,{},`requestOperator`)).controlState}catch(e){q.debug(`requestOperator failed (non-fatal)`,{err:e});return}}async cancelOperatorRequest(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(Vr.cancelOperatorRequest,{},`cancelOperatorRequest`)).controlState}catch(e){q.debug(`cancelOperatorRequest failed (non-fatal)`,{err:e});return}}listContent(e={}){return this.contentCache.getOrFetch(this.localeCacheKey(e),()=>this.fetchContent(e))}async fetchContent(e){let t=new URL(this.dataUrl(Vr.content));for(let[n,r]of Object.entries(e))r!==void 0&&t.searchParams.set(n,Array.isArray(r)?r.join(`,`):String(r));let n=await this.getJson(t.toString(),`listContent`),r=n.items?.map(e=>x(e,this.locale))??[];return{...n,items:r}}async setContentVote(e){try{await this.postJson(this.dataUrl(Vr.contentVoteSet),e,`setContentVote`)}catch{}}listContentCollections(e){return this.contentCollectionsCache.getOrFetch(this.localeCacheKey({ids:e}),()=>this.fetchContentCollections(e))}async fetchContentCollections(e){let t=new URL(this.dataUrl(Vr.contentCollections));return e.length&&t.searchParams.set(`ids`,e.join(`,`)),{items:(await this.getJson(t.toString(),`listContentCollections`)).items?.map(e=>S(e,this.locale))??[]}}async bootstrap(e){let t=new URL(this.dataUrl(Vr.bootstrap));e&&t.searchParams.set(`conversationId`,e);let n=await this.getJson(t.toString(),`bootstrap`);return{forms:n.forms??[],formSubmissions:n.formSubmissions??[]}}async saveUserPrefs(e){return this.postJson(Vr.updateSettings,{userPrefs:e},`saveUserPrefs`)}get uploadPath(){return this.opts.endpoints?.upload??`/pai/upload-file`}get transcribePath(){return this.opts.endpoints?.transcribe??`/pai/transcribe-audio`}get submitFormPath(){return this.opts.endpoints?.submitForm??Vr.submitForm}async submitForm(e){q.debug(`submitForm →`,{formId:e.formId,trigger:e.trigger,fields:Object.keys(e.values).length});try{await this.postJson(this.dataUrl(this.submitFormPath),e,`submitForm`)}catch(e){q.debug(`submitForm failed (non-fatal)`,{err:e})}}async submitFeedback(e){q.debug(`submitFeedback →`,{messageId:e.messageId,value:e.value});try{await this.postJson(Vr.messageFeedback,{messageId:e.messageId,set:{feedback:e.value}},`submitFeedback`)}catch(e){q.debug(`submitFeedback failed (non-fatal)`,{err:e})}}async sendTurn(e){q.debug(`message →`,{conversationId:e.conversationId,visitorId:e.visitorId,messageCount:e.messages.length});try{return await this.runWithAbort(async t=>{let n=await this.fetchImpl(this.url(Vr.streamMessage),{method:`POST`,credentials:`omit`,headers:{accept:`application/json`,"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(e)),signal:t});if(n.status!==202)throw new Bi(`sendTurn failed: expected 202, received ${n.status}`,`server`,n.status);let r;try{r=await n.json()}catch(e){throw t?.aborted?e:new Bi(`sendTurn failed: invalid acknowledgement`,`server`,n.status,e)}if(!aa(r))throw new Bi(`sendTurn failed: invalid acknowledgement`,`server`,n.status);return r},void 0,3e4)}catch(e){throw e instanceof Bi?e:new Bi(`sendTurn failed: network error`,`network`,void 0,e)}}cancelTurn(e,t){this.visitorId&&e&&t&&(q.debug(`cancel stream`,{conversationId:e,runId:t,visitorId:this.visitorId}),this.fetchImpl(this.url(Vr.cancelStream),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope({conversationId:e,runId:t})),keepalive:!0}).catch(e=>q.debug(`cancel POST failed (non-fatal)`,{err:e})))}async connectResumeStream(e){let t=new AbortController;function n(){return t.abort(e.signal.reason)}e.signal.aborted?n():e.signal.addEventListener(`abort`,n,{once:!0});let r=setTimeout(()=>t.abort(),1e4);function i(){clearTimeout(r),e.signal.removeEventListener(`abort`,n)}let a;try{a=await this.fetchImpl(this.resumeUrl(),{method:`GET`,credentials:`omit`,headers:{accept:`text/event-stream`,...this.opts.auth.headers()},signal:t.signal})}catch(t){return i(),e.signal.aborted||q.debug(`resume-stream fetch failed — reconnecting`,{err:t}),`held`}if(!a.ok)return i(),a.status===409||Qi.has(a.status)?(q.debug(`resume-stream → transient response; reconnecting`,{status:a.status}),`held`):(q.debug(`resume-stream → endpoint unavailable`,{status:a.status}),`unavailable`);if(!a.body)return i(),q.debug(`resume-stream → bodyless response; stopping`,{status:a.status}),`unavailable`;if(!(a.headers.get(`content-type`)??``).includes(`text/event-stream`))return i(),q.debug(`resume-stream → non-SSE response; stopping`),`unavailable`;let o=!1;try{for await(let{chunk:n}of Hi(a,t.signal,t=>{o||t!==`connected`||(o=!0,clearTimeout(r),e.onConnected())})){if(e.signal.aborted)return`held`;e.onChunk(n)}}catch(t){if(e.signal.aborted)return`held`;q.debug(`resume-stream segment dropped — reconnecting`,{err:t})}finally{i()}return`held`}resumeUrl(){return this.withEnvelopeQuery(Vr.streamResume)}async postJson(e,t,n,r=!1){let i=await this.fetchWithRetry(()=>[this.url(e),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.opts.auth.headers()},body:JSON.stringify(this.withEnvelope(t)),...r?{keepalive:!0}:{}}],n);return this.assertOk(i,n)}async postForm(e,t,n,r,i){return this.runWithAbort(async r=>{let i=await this.fetchImpl(this.url(e),{method:`POST`,credentials:`omit`,headers:this.opts.auth.headers(),body:this.appendEnvelope(t),signal:r});return this.assertOk(i,n)},r,i)}async runWithAbort(e,t,n){if(!t&&n===void 0)return e();let r=new AbortController;function i(){return r.abort(t?.reason)}t?.aborted?i():t?.addEventListener(`abort`,i,{once:!0});let a=n===void 0?void 0:setTimeout(()=>r.abort(),n);try{return await e(r.signal)}finally{a!==void 0&&clearTimeout(a),t?.removeEventListener(`abort`,i)}}async getJson(e,t){let n=await this.fetchWithRetry(()=>[this.withEnvelopeQuery(e),{method:`GET`,credentials:`omit`,headers:{accept:`application/json`,...this.opts.auth.headers()}}],t);return this.assertOk(n,t)}async fetchWithRetry(e,t){for(let n=0;;n++){let[r,i]=e(),a;try{a=await this.fetchImpl(r,i)}catch(e){if(n>=3)throw new Bi(`${t} failed: network error`,`network`,void 0,e);q.debug(`request network error — retrying`,{label:t,attempt:n}),await Ii($i(n));continue}if(a.ok||!Qi.has(a.status)||n>=3)return a;let o=ta(a.headers)??$i(n);q.debug(`request retryable status — retrying`,{label:t,status:a.status,attempt:n,wait:o}),await Ii(o)}}async assertOk(e,t){if(!e.ok)throw new Bi(`${t} failed: ${e.status}`,`server`,e.status);return await e.json()}url(e){return/^https?:\/\//i.test(e)?e:`${this.opts.agentApiBaseUrl}${e}`}dataUrl(e){return/^https?:\/\//i.test(e)?e:`${this.opts.dataApiBaseUrl}${e}`}get fetchImpl(){return this.opts.fetchImpl??globalThis.fetch.bind(globalThis)}};function ia(e){return e.includes(`webm`)?`webm`:e.includes(`ogg`)?`ogg`:e.includes(`mp4`)||e.includes(`m4a`)?`m4a`:e.includes(`mpeg`)?`mp3`:e.includes(`wav`)?`wav`:`bin`}function aa(e){if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`status`),n=Reflect.get(e,`conversationId`),r=Reflect.get(e,`runId`);return t===`accepted`&&typeof n==`string`&&n.length>0&&(r===void 0||typeof r==`string`&&r.length>0)}function oa(e,t,n){switch(e){case`clear`:case`sound`:case`history`:case`language`:case`theme`:case`textSize`:return!0;case`popOut`:return t!==`standalone`&&t!==`page`;case`expand`:return t===`floating`;case`fullscreen`:return t!==`standalone`;case`close`:return t===`standalone`||t===`page`?!1:t!==`inline`||n===`fullscreen`}}function sa(e,t,n){return oa(`close`,e,t)?n.includes(`close`):!1}function ca(e,t){return e===`inline`&&t===`fullscreen`?`exit-fullscreen`:`close`}function la(e,t,n,r){let i={role:n,text:r};e.emit(`message`,i),t.onMessage?.(i)}function ua(e){let t=p(e);t.current=e;let n=p(null);return n.current??(n.current=da(t)),n.current}function da(e){let t=o(null),n=/* @__PURE__ */ new Set;function r(t){return`${e.current.conversationId()??``}:${t}`}function i(t){return t.frequency===`always`?!1:t.frequency===`conversation`?n.has(r(t.id)):t.id in e.current.persistence.loadFormsDone()}function a(n,r){if(t.value)return;let a=e.current;if(n===`manual`){let e=a.forms.list.find(e=>e.id===r);e&&(t.value={form:e,trigger:`manual`})}else for(let e of a.forms.byTrigger[n]??[]){let r=e.triggers.find(e=>e.kind===n);if(r&&fa(r,a)&&!i(e)&&pa(e,a)){t.value={form:e,trigger:n};return}}}function s(i,a){let o=t.value;if(!o)return;t.value=null;let{form:s,trigger:c}=o;s.frequency===`conversation`?n.add(r(s.id)):s.frequency!==`always`&&e.current.persistence.saveFormDone(s.id),e.current.onComplete(s,c,i,a)}function c(){let n=t.value;if(!n)return;let r=e.current.forms.list.find(e=>e.id===n.form.id);r&&r!==n.form&&(t.value={form:r,trigger:n.trigger})}return{activeForm:t,fire:a,refresh:c,complete:e=>s(e,!1),skip:()=>s({},!0)}}function fa(e,t){return e.kind===`after-messages`?t.messageCount()>=Number(e.param??0):e.kind!==`page-area`||t.pageArea()===e.param}function pa(e,t){let n=e.when;if(!n)return!0;if(n.missingContext?.length){let e=t.userContext()??{};if(n.missingContext.some(t=>e[t]!==void 0&&e[t]!==``))return!1}if(n.pageArea&&!(Array.isArray(n.pageArea)?n.pageArea:[n.pageArea]).includes(t.pageArea()??``))return!1;let r=t.messageCount();return!(n.minMessages!=null&&r<n.minMessages||n.maxMessages!=null&&r>n.maxMessages)}function ma(e){return Object.fromEntries(e.map(e=>[e,[]]))}function ha(e,t,n){return e.includes(t)?t:e.includes(n)?n:e[0]??``}function ga(e,t,n){let r=[...new Set(t)],i=ha(r,e,``),a=o({activeTab:i,stacks:ma(r)});return{sig:a,reconcile(e,t){let i=[...new Set(e)],o=a.value,s=ha(i,o.activeTab,t),c=Object.fromEntries(i.map(e=>[e,o.stacks[e]??[]])),l=s===o.activeTab&&i.length===Object.keys(o.stacks).length&&i.every(e=>o.stacks[e]===c[e]);r=i,!l&&(a.value={activeTab:s,stacks:c},s!==o.activeTab&&s&&n?.(s))},switchTab(e){e in a.value.stacks&&a.value.activeTab!==e&&(a.value={...a.value,activeTab:e},n?.(e))},open(e,t){let r=a.value;e in r.stacks&&(a.value={activeTab:e,stacks:{...r.stacks,[e]:t?[t]:[]}},r.activeTab!==e&&n?.(e))},push(e){let t=a.value,n=t.stacks[t.activeTab]??[];a.value={...t,stacks:{...t.stacks,[t.activeTab]:[...n,e]}}},pop(){let e=a.value,t=e.stacks[e.activeTab]??[];t.length!==0&&(a.value={...e,stacks:{...e.stacks,[e.activeTab]:t.slice(0,-1)}})},reset(e){a.value={activeTab:ha(r,e,``),stacks:ma(r)}}}}function _a(e){return e.stacks[e.activeTab]??[]}function va(e){return _a(e).at(-1)}function ya(e){return _a(e).length===0}function ba(e,t,n){return e===`page`?`page`:e===`standalone`?`standalone`:e===`inline`?t===`fullscreen`?`fullscreen`:`inline`:e===`modal`||e===`drawer`?n?t===`fullscreen`?`fullscreen`:e:`closed`:n?t===`fullscreen`?`fullscreen`:t===`expanded`?`expanded`:`open`:`closed`}function xa(e,t,n){if(e===`standalone`||e===`page`)return`fullscreen`;let r=t.initialSize;return r===`expanded`||r===`fullscreen`||r===`normal`?r:n>0&&n<640?`fullscreen`:n>=(t.autoSizeBreakpoint??900)?`expanded`:`normal`}function Sa(e,t,n,r=null){return{panelOpen:e.mode===`inline`||e.mode===`standalone`||e.mode===`page`||(n??!e.startMinimized),panelSize:e.mode!==`standalone`&&e.mode!==`page`&&e.mode!==`inline`&&r?r:xa(e.mode,e.size,t)}}function Ca(){return typeof window>`u`?0:window.innerWidth}const J={fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,viewBox:`0 0 24 24`},wa=`${M.cssPrefix}-icon-dir`;function Ta(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M21 12a8 8 0 0 1-12 6.93L3 21l1.65-5.16A8 8 0 1 1 21 12Z`})})}function Ea(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M18 6 6 18M6 6l12 12`})})}function Da(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 5v14M5 12h14`})})}function Oa(){return/* @__PURE__ */ _(`svg`,{...J,class:wa,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m22 2-7 20-4-9-9-4Z`}),/* @__PURE__ */ g(`path`,{d:`M22 2 11 13`})]})}function ka(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 19V5M5 12l7-7 7 7`})})}function Aa(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 20V4l18 8-18 8Z`})})}function ja(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m9 18 6-6-6-6`})})}function Ma(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})})}function Na(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m21 11-9 9a5.5 5.5 0 0 1-7.78-7.78l8.49-8.49a3.67 3.67 0 0 1 5.19 5.19l-8.49 8.49a1.83 1.83 0 0 1-2.6-2.6l7.78-7.78`})})}function Pa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`rect`,{x:`9`,y:`2`,width:`6`,height:`12`,rx:`3`}),/* @__PURE__ */ g(`path`,{d:`M5 10a7 7 0 0 0 14 0M12 19v3`})]})}function Fa(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5`})})}function Ia(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5`})})}function La(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z`})})}function Ra(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7`})})}function za(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M14 3h7v7M21 3l-9 9`}),/* @__PURE__ */ g(`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`})]})}function Ba(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,viewBox:`0 0 10 10`,children:/* @__PURE__ */ g(`path`,{d:`M9 1L1 9M9 5L5 9M9 9H9`,strokeWidth:`1.5`})})}function Va(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`5`,r:`1.5`,fill:`currentColor`,stroke:`none`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`1.5`,fill:`currentColor`,stroke:`none`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`19`,r:`1.5`,fill:`currentColor`,stroke:`none`})]})}function Ha(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M11 5 6 9H2v6h4l5 4zM15 9a5 5 0 0 1 0 6M18 7a9 9 0 0 1 0 10`})})}function Ua(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6`})})}function Wa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M3 18 8 6l5 12M4.7 14h6.6`}),/* @__PURE__ */ g(`path`,{d:`M14.5 18l3.2-7 3.2 7M15.6 15.8h4.2`})]})}function Ga(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m5 6 6 6-6 6M13 6l6 6-6 6`})})}function Ka(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M20 6 9 17l-5-5`})})}function qa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M3 3v6h6`}),/* @__PURE__ */ g(`path`,{d:`M3.05 13A9 9 0 1 0 6 5.3L3 9`}),/* @__PURE__ */ g(`path`,{d:`M12 7v5l3 2`})]})}function Ja(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`path`,{d:`M2 12h20`}),/* @__PURE__ */ g(`path`,{d:`M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z`})]})}function Ya(){return/* @__PURE__ */ g(`svg`,{...J,class:wa,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M19 12H5M12 19l-7-7 7-7`})})}function Xa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M12 20h9`}),/* @__PURE__ */ g(`path`,{d:`M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z`})]})}function Za(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m6 9 6 6 6-6`})})}function Qa(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z`}),/* @__PURE__ */ g(`path`,{d:`M14 2v6h6`})]})}function $a(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m12 3-1.5 4.5L6 9l4.5 1.5L12 15l1.5-4.5L18 9l-4.5-1.5Z`}),/* @__PURE__ */ g(`path`,{d:`M19 15v4M17 17h4M5 3v2M4 4h2`})]})}function eo(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z`})})}function to(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}),/* @__PURE__ */ g(`path`,{d:`M12 17h.01`})]})}function no(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m15 4 3 3-9 9-3-3z`}),/* @__PURE__ */ g(`path`,{d:`M18 2v2M20 4h2M3 20l3-3M3 16h2M5 14v2`})]})}function ro(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`rect`,{x:`4`,y:`8`,width:`16`,height:`12`,rx:`2`}),/* @__PURE__ */ g(`path`,{d:`M12 8V4`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`3`,r:`1`}),/* @__PURE__ */ g(`path`,{d:`M2 14h2M20 14h2M9 13h.01M15 13h.01M9.5 17h5`})]})}function io(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M4 14v-2a8 8 0 0 1 16 0v2`}),/* @__PURE__ */ g(`rect`,{x:`2`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),/* @__PURE__ */ g(`rect`,{x:`18`,y:`14`,width:`4`,height:`6`,rx:`1.5`}),/* @__PURE__ */ g(`path`,{d:`M20 20v1a3 3 0 0 1-3 3h-5`})]})}function ao(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`4`}),/* @__PURE__ */ g(`path`,{d:`m4.93 4.93 4.24 4.24M14.83 14.83l4.24 4.24M14.83 9.17l4.24-4.24M4.93 19.07l4.24-4.24`})]})}function oo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`11`,cy:`11`,r:`7`}),/* @__PURE__ */ g(`path`,{d:`m21 21-4.3-4.3`})]})}function so(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]})}function co(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M3 9.5 12 3l9 6.5`}),/* @__PURE__ */ g(`path`,{d:`M5 9v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9`})]})}function lo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`m3 11 15-5v12L3 13z`}),/* @__PURE__ */ g(`path`,{d:`M3 11v2a2 2 0 0 0 2 2h1V9H5a2 2 0 0 0-2 2z`}),/* @__PURE__ */ g(`path`,{d:`M7 15v3a2 2 0 0 0 4 0v-2`}),/* @__PURE__ */ g(`path`,{d:`M21 10a3 3 0 0 1 0 4`})]})}function uo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z`}),/* @__PURE__ */ g(`path`,{d:`M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1`})]})}function fo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`4`}),/* @__PURE__ */ g(`path`,{d:`M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41`})]})}function po(){return/* @__PURE__ */ g(`svg`,{...J,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z`})})}function mo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`M12 3v18`}),/* @__PURE__ */ g(`path`,{d:`M12 3a9 9 0 0 1 0 18z`,fill:`currentColor`,stroke:`none`})]})}function ho(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`10.5`,cy:`10.5`,r:`6.5`}),/* @__PURE__ */ g(`path`,{d:`M8 11a2.5 2.5 0 0 0 5 0`}),/* @__PURE__ */ g(`path`,{d:`m20 20-4.4-4.4`})]})}function go(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M12 3.5 13.6 9 19 10.5 13.6 12 12 17.5 10.4 12 5 10.5 10.4 9z`}),/* @__PURE__ */ g(`path`,{d:`M18.5 4v3M20 5.5h-3M5.5 16v2.5M6.75 17.25h-2.5`})]})}function _o(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M4 18h16`}),/* @__PURE__ */ g(`path`,{d:`M5 18a7 7 0 0 1 14 0`}),/* @__PURE__ */ g(`path`,{d:`M12 8V6`}),/* @__PURE__ */ g(`path`,{d:`M10 6h4`})]})}function vo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M7 11V6.5a1.5 1.5 0 0 1 3 0V10`}),/* @__PURE__ */ g(`path`,{d:`M10 10V5.5a1.5 1.5 0 0 1 3 0V10`}),/* @__PURE__ */ g(`path`,{d:`M13 10V6.5a1.5 1.5 0 0 1 3 0V12`}),/* @__PURE__ */ g(`path`,{d:`M16 9.5a1.5 1.5 0 0 1 3 0v2.5a7 7 0 0 1-7 7 7 7 0 0 1-6.4-4.2L4 12.5a1.5 1.5 0 0 1 2.6-1.5L7 11`})]})}function yo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`rect`,{x:`9`,y:`9`,width:`11`,height:`11`,rx:`2`}),/* @__PURE__ */ g(`path`,{d:`M5 15a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2`})]})}function bo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M7 10v11H4a1 1 0 0 1-1-1v-9a1 1 0 0 1 1-1z`}),/* @__PURE__ */ g(`path`,{d:`M7 10l4-7a2.5 2.5 0 0 1 2.5 2.5V8h5a2 2 0 0 1 2 2.3l-1.2 8A2 2 0 0 1 17.3 20H7`})]})}function xo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`path`,{d:`M17 14V3h3a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1z`}),/* @__PURE__ */ g(`path`,{d:`M17 14l-4 7a2.5 2.5 0 0 1-2.5-2.5V16h-5a2 2 0 0 1-2-2.3l1.2-8A2 2 0 0 1 6.7 4H17`})]})}function So(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`3.5`}),/* @__PURE__ */ g(`path`,{d:`M12 2v3M12 19v3M2 12h3M19 12h3M4.9 4.9l2.1 2.1M17 17l2.1 2.1M19.1 4.9l-2.1 2.1M7 17l-2.1 2.1`})]})}function Co(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`M12 7v5l3 2`})]})}function wo(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m8.5 12 2.5 2.5 4.5-5`})]})}function To(){return/* @__PURE__ */ _(`svg`,{...J,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m15 9-6 6M9 9l6 6`})]})}const Eo={chat:Ta,message:eo,bubbles:uo,spark:$a,wand:no,bot:ro,help:to,lifebuoy:ao,headset:io,search:ho,sparkles:go,concierge:_o,wave:vo},Y=M.cssPrefix,X={launcher:`${Y}-launcher`,callout:`${Y}-callout`,calloutDismiss:`${Y}-callout-dismiss`,panel:`${Y}-panel`,panelHeader:`${Y}-panel-header`,resizeGrip:`${Y}-resize-grip`,scrollToBottom:`${Y}-scroll-to-bottom`,loadPreviousMessages:`${Y}-load-previous-messages`,actionHistory:`${Y}-action-history`,actionClose:`${Y}-action-close`,langSegment:`${Y}-lang-segment`,composer:`${Y}-composer`,composerInput:`${Y}-composer-input`,composerSend:`${Y}-composer-send`,composerStop:`${Y}-composer-stop`,compactionStatus:`${Y}-compaction-status`,messageQueue:`${Y}-message-queue`,queuedMessage:`${Y}-queued-message`,queuedMessageRemove:`${Y}-queued-message-remove`,composerAttach:`${Y}-composer-attach`,composerFileInput:`${Y}-composer-file-input`,composerVoice:`${Y}-composer-voice`,attachmentChip:`${Y}-attachment-chip`,attachmentRemove:`${Y}-attachment-remove`,suggestion:`${Y}-suggestion`,messageBubble:`${Y}-message`,messageRetry:`${Y}-message-retry`,messageFeedback:`${Y}-message-feedback`,feedbackUp:`${Y}-feedback-up`,feedbackDown:`${Y}-feedback-down`,messageCopy:`${Y}-message-copy`,historyPane:`${Y}-history-pane`,historyBack:`${Y}-history-back`,historyItem:`${Y}-history-item`,historyLoadMore:`${Y}-history-load-more`,sidebar:`${Y}-sidebar`,sidebarToggle:`${Y}-sidebar-toggle`,sidebarNewConversation:`${Y}-sidebar-new-conversation`,sidebarItem:`${Y}-sidebar-item`,messengerHome:`${Y}-messenger-home`,modulesEmpty:`${Y}-modules-empty`,tab:`${Y}-tab`,tabBadge:`${Y}-tab-badge`,homeView:`${Y}-home-view`,homeGreeting:`${Y}-home-greeting`,homeBrand:`${Y}-home-brand`,backHeader:`${Y}-back-header`,contentView:`${Y}-content-view`,contentScroll:`${Y}-content-scroll`,homeSearch:`${Y}-home-search`,helpSearch:`${Y}-help-search`,homeRecent:`${Y}-home-recent`,homeAsk:`${Y}-home-ask`,homeWhatsNew:`${Y}-home-whats-new`,homeContentRow:`${Y}-home-content-row`,helpArticle:`${Y}-help-article`,newsItem:`${Y}-news-item`,newsMore:`${Y}-news-more`,formGate:`${Y}-form-gate`,formDone:`${Y}-form-done`,formDoneToggle:`${Y}-form-done-toggle`,formAnswers:`${Y}-form-answers`,formFill:`${Y}-form-fill`,formSubmit:`${Y}-form-submit`,formSkip:`${Y}-form-skip`,formField:`${Y}-form-field`,toolAskQuestions:`${Y}-tool-ask-questions`,toolInputSubmit:`${Y}-tool-input-submit`,toolInputSkip:`${Y}-tool-input-skip`,toolApproval:`${Y}-tool-approval`,toolApprove:`${Y}-tool-approve`,toolReject:`${Y}-tool-reject`,toolEdit:`${Y}-tool-edit`,toolDecision:`${Y}-tool-decision`,typingDots:`${Y}-typing-dots`,reasoning:`${Y}-reasoning`,toolAskSummary:`${Y}-ask-questions-summary`,toolAskOptions:`${Y}-ask-questions-options-toggle`,toolCall:`${Y}-tool-call`,source:`${Y}-source`,operatorRequest:`${Y}-operator-request`,operatorBanner:`${Y}-operator-banner`,cancelOperatorRequest:`${Y}-cancel-operator-request`};function Do(e,t){return`${e}-${t}`}const Oo=M.cssPrefix;function ko({onToggle:e,launcher:t,strings:n,leaving:r,edgeTab:i}){let a=t.variant!==`circle`&&!!t.label;return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Oo}-fab`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?`true`:void 0,"data-leaving":r?`true`:void 0,"data-testid":X.launcher,onClick:e,"aria-label":n.launcherOpen,children:[Ao(t.icon),a?/* @__PURE__ */ g(`span`,{class:`${Oo}-fab-label`,children:A(n,t.label??``)}):null]})}function Ao(e){let t=Eo[e];return t?/* @__PURE__ */ g(t,{}):/* @__PURE__ */ g(jo,{source:e})}function jo({source:e}){return/* @__PURE__ */ g(`span`,{ref:t=>{t&&Mo(t,e)},"aria-hidden":`true`})}function Mo(e,t){if(e.dataset.svgMounted!==t)try{let n=new DOMParser().parseFromString(t,`image/svg+xml`).documentElement;n.tagName.toLowerCase()===`svg`&&(e.replaceChildren(document.importNode(n,!0)),e.dataset.svgMounted=t)}catch{}}function No({callout:e,launcherPosition:t,strings:n,closeLabel:r,onDismiss:i}){let[a,o]=m(!1);return u(()=>{let t=setTimeout(()=>o(!0),e.delayMs);return()=>clearTimeout(t)},[e.delayMs]),u(()=>{if(!a||e.autoDismissMs<=0)return;let t=setTimeout(i,e.autoDismissMs);return()=>clearTimeout(t)},[a,e.autoDismissMs,i]),a?/* @__PURE__ */ _(`div`,{class:`${Oo}-callout`,role:`status`,"data-shape":e.shape,"data-position":Po(e.position,t),"data-animated":e.animated?`true`:void 0,"data-testid":X.callout,children:[/* @__PURE__ */ g(`span`,{children:A(n,e.text)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Oo}-callout-close`,onClick:i,"aria-label":r,title:r,"data-testid":X.calloutDismiss,children:/* @__PURE__ */ g(Ea,{})})]}):null}function Po(e,t){let n=t.endsWith(`-right`),r=t.startsWith(`bottom-`);return e===`vertical`?r?`top`:`bottom`:n?`left`:`right`}function Fo(e){function t(t){if(t.key!==`Tab`)return;let n=[...e.querySelectorAll(`a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]):not([type="hidden"]),select:not([disabled]),[tabindex]:not([tabindex="-1"])`)].filter(e=>e.offsetParent!==null||e===document.activeElement);if(n.length===0){t.preventDefault();return}let r=n[0],i=n[n.length-1];if(!r||!i)return;let a=e.getRootNode().activeElement;t.shiftKey&&a===r?(t.preventDefault(),i.focus()):!t.shiftKey&&a===i&&(t.preventDefault(),r.focus())}return e.addEventListener(`keydown`,t),()=>e.removeEventListener(`keydown`,t)}const Io=M.cssPrefix;function Lo({title:e,actions:t}){return/* @__PURE__ */ _(`header`,{class:`${Io}-back-header`,"data-variant":`title`,children:[/* @__PURE__ */ g(`span`,{class:`${Io}-back-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ g(`h1`,{class:`${Io}-back-title`,children:e}),t??/* @__PURE__ */ g(`span`,{class:`${Io}-back-spacer`,"aria-hidden":`true`})]})}function Ro({title:e,backLabel:t,onBack:n,actions:r,testid:i}){return/* @__PURE__ */ _(`header`,{class:`${Io}-back-header`,"data-testid":i,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${Io}-icon-btn`,onClick:n,"aria-label":t,title:t,children:/* @__PURE__ */ g(Ya,{})}),/* @__PURE__ */ g(`h1`,{class:`${Io}-back-title`,children:e}),r??/* @__PURE__ */ g(`span`,{class:`${Io}-back-spacer`,"aria-hidden":`true`})]})}function zo({textSig:e,doneSig:t,generativeUi:n=!1,strings:r=w}){let i=p(null);return d(()=>{let o=i.current;if(!o)return;o.classList.add(`${M.cssPrefix}-md`),o.replaceChildren();let s=n?Nr(o,{cssPrefix:M.cssPrefix,strings:r}):void 0,c=v.parser(s??v.default_renderer(o)),l=0,u=a(()=>{let i=e.value,a=t.value;i.length<l&&(s?.dispose(),o.replaceChildren(),s=n?Nr(o,{cssPrefix:M.cssPrefix,strings:r}):void 0,c=v.parser(s??v.default_renderer(o)),l=0);let u=i.slice(l);u&&v.parser_write(c,u),l=i.length,a&&(v.parser_end(c),s?.finish())}),d=new MutationObserver(e=>{for(let t of e)for(let e of t.addedNodes){if(!(e instanceof HTMLElement))continue;let t=e.matches?.(`a`)?[e]:[...e.querySelectorAll?.(`a`)??[]];for(let e of t)Vo(e)}});d.observe(o,{childList:!0,subtree:!0});for(let e of o.querySelectorAll(`a`))Vo(e);function f(e){let t=e.target?.closest?.(`a`);if(!t||!(t instanceof HTMLAnchorElement))return;let n=t.getAttribute(`href`)??``;n&&!n.startsWith(`#`)&&(e.preventDefault(),window.open(n,`_blank`,`noopener,noreferrer`))}return o.addEventListener(`click`,f),()=>{u(),s?.dispose(),d.disconnect(),o.removeEventListener(`click`,f)}},[e,t,n,r]),/* @__PURE__ */ g(`div`,{ref:i})}function Bo({text:e}){let t=f(()=>o(e),[e]),n=f(()=>o(!0),[]);return/* @__PURE__ */ g(zo,{textSig:t,doneSig:n})}function Vo(e){let t=e.getAttribute(`href`)??``;if(!t||t.startsWith(`#`))return;e.target!==`_blank`&&(e.target=`_blank`);let n=new Set((e.rel||``).split(/\s+/).filter(Boolean));n.add(`noopener`),n.add(`noreferrer`),e.rel=[...n].join(` `)}const Ho=/* @__PURE__ */ new Set([v.CODE_INLINE,v.ITALIC_AST,v.ITALIC_UND,v.STRONG_AST,v.STRONG_UND,v.STRIKE,v.LINK,v.RAW_URL,v.IMAGE,v.EQUATION_INLINE]);function Uo(e){let t=``,n=[],r=v.parser({data:void 0,add_token:(e,r)=>{n.push(r),Ho.has(r)||(t+=` `)},end_token:()=>{let e=n.pop();e!==void 0&&!Ho.has(e)&&(t+=` `)},add_text:(e,n)=>void(t+=n),set_attr:()=>void 0});return v.parser_write(r,e),v.parser_end(r),t.replace(/\s+/g,` `).trim()}const Wo=M.cssPrefix;function Go({tone:e=`info`,message:t,onRetry:n,strings:r}){return/* @__PURE__ */ _(`div`,{class:`${Wo}-module-empty`,role:e===`error`?`alert`:`status`,"aria-live":`polite`,children:[/* @__PURE__ */ g(`span`,{children:t}),n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Wo}-module-retry`,onClick:n,children:r.errorRetry}):null]})}const Ko=M.cssPrefix,qo=R.scope(`content`);function Jo({id:e,title:t,transport:n,strings:r,bus:i,onBack:a,actions:o}){let[s,c]=m(null),[d,f]=m(!1),[p,v]=m(!1),[y,b]=m(0),[x,S]=m(null),C=l(()=>{v(!1),c(null),b(e=>e+1)},[]);u(()=>{let t=!1,r=n.listContentCollections([]).catch(()=>void 0);return Promise.all([n.listContent({ids:[e],limit:1}),r]).then(([n,r])=>{if(t)return;let a=n.items[0];a?(c(a),f(r?.items.find(e=>e.id===a.contentCollectionId)?.settings?.voteAccess===`portal`),i.emit(`contentOpen`,{contentId:e,contentCollectionId:a.contentCollectionId})):v(!0)}).catch(e=>{t||(qo.warn(`listContent (reader) failed`,{err:e}),v(!0))}),()=>{t=!0}},[n,e,y,i]),u(()=>{if(!s)return;let t=setTimeout(()=>i.emit(`contentRead`,{contentId:e}),5e3);return()=>clearTimeout(t)},[s,e,i]);let w=l(t=>{let n=(t.target?.closest?.(`a`))?.getAttribute(`href`)??``;n&&!n.startsWith(`#`)&&i.emit(`contentLinkClick`,{contentId:e})},[i,e]);function T(t){S(e),n.setContentVote({contentId:e,value:t})}function E(){return p?/* @__PURE__ */ g(Go,{tone:`error`,message:r.errorGeneric,onRetry:C,strings:r}):s===null?/* @__PURE__ */ g(Go,{message:r.contentLoading,strings:r}):/* @__PURE__ */ _(`article`,{class:`${Ko}-content`,"data-testid":X.contentView,onClick:w,children:[s.image?/* @__PURE__ */ g(`img`,{class:`${Ko}-content-hero`,src:s.image,alt:``,loading:`lazy`}):null,s.description?/* @__PURE__ */ g(`p`,{class:`${Ko}-content-subtitle`,children:s.description}):null,/* @__PURE__ */ g(Bo,{text:s.content??``}),d?/* @__PURE__ */ g(`div`,{class:`${Ko}-content-vote`,"aria-live":`polite`,children:x===e?r.feedbackThanks:/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`span`,{children:r.contentHelpful}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ko}-module-retry`,onClick:()=>T(1),children:r.confirmYes}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ko}-module-retry`,onClick:()=>T(0),children:r.confirmNo})]})}):null]})}return/* @__PURE__ */ _(`div`,{class:`${Ko}-module`,children:[/* @__PURE__ */ g(Ro,{title:s?.title||t||r.moduleBack,backLabel:r.moduleBack,onBack:a,actions:o,testid:X.backHeader}),/* @__PURE__ */ g(`div`,{class:`${Ko}-module-scroll`,"data-testid":X.contentScroll,children:E()})]})}function Yo({itemCount:e,initialFocusIndex:t}){let[n,r]=m(!1),i=p(null),a=p(null),[o,s]=m(-1),c=l(()=>{r(!1),s(-1),i.current?.focus()},[]),d=l(()=>r(e=>!e),[]);return u(()=>{if(!n)return;function e(e){let t=a.current,n=i.current;if(!t||!n)return;let o=e.composedPath();o.includes(t)||o.includes(n)||(r(!1),s(-1))}return document.addEventListener(`click`,e,!0),()=>document.removeEventListener(`click`,e,!0)},[n]),u(()=>{if(!n||e===0)return;let r=t?.()??0;s(r<0||r>=e?0:r)},[n,e,t]),u(()=>{!n||o<0||(a.current?.querySelectorAll(`[role='menuitem']`))?.[o]?.focus()},[n,o]),{open:n,focusIndex:o,triggerRef:i,menuRef:a,toggle:d,close:c,onTriggerKey:l(e=>{(e.key===`ArrowDown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),r(!0))},[]),onMenuKey:l(t=>{if(e!==0)switch(t.key){case`Escape`:t.preventDefault(),c();return;case`ArrowDown`:t.preventDefault(),s(t=>(t+1)%e);return;case`ArrowUp`:t.preventDefault(),s(t=>(t-1+e)%e);return;case`Home`:t.preventDefault(),s(0);return;case`End`:t.preventDefault(),s(e-1)}},[e,c])}}function Xo({items:e,triggerLabel:t}){let n=M.cssPrefix,r=Yo({itemCount:e.length});function i(e){e.disabled||(e.onSelect?.(),e.keepOpen||r.close())}function a(e,t){return e.onSelectValue?.(t)}function o(e,t){let n=t.segments;if(!n?.length)return;let r=Math.max(0,n.findIndex(e=>e.value===t.value)),i=-1;if(e.key===`ArrowRight`||e.key===`Enter`||e.key===` `)i=(r+1)%n.length;else if(e.key===`ArrowLeft`)i=(r-1+n.length)%n.length;else return;e.preventDefault(),e.stopPropagation(),a(t,n[i].value)}return/* @__PURE__ */ _(`div`,{class:`${n}-menu-wrap`,children:[/* @__PURE__ */ g(`button`,{ref:r.triggerRef,type:`button`,class:`${n}-icon-btn`,"aria-label":t,"aria-haspopup":`menu`,"aria-expanded":r.open,title:t,onClick:r.toggle,onKeyDown:r.onTriggerKey,children:/* @__PURE__ */ g(Va,{})}),r.open?/* @__PURE__ */ g(`div`,{ref:r.menuRef,class:`${n}-menu`,role:`menu`,"aria-label":t,onKeyDown:r.onMenuKey,tabIndex:-1,children:e.map(e=>e.segments?/* @__PURE__ */ _(`div`,{role:`menuitem`,class:`${n}-menu-item ${n}-menu-item-segmented`,"aria-label":e.label,tabIndex:-1,onKeyDown:t=>o(t,e),children:[e.icon?/* @__PURE__ */ g(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,/* @__PURE__ */ g(`span`,{class:`${n}-menu-label`,children:e.label}),/* @__PURE__ */ g(`span`,{class:`${n}-segmented`,role:`group`,"aria-label":e.label,children:e.segments.map(t=>{let r=t.value===e.value;return/* @__PURE__ */ g(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":r,class:`${n}-segment`,"data-on":r?`true`:void 0,lang:t.lang,title:t.value,tabIndex:-1,"data-testid":`${X.langSegment}-${t.value}`,onClick:()=>a(e,t.value),children:t.label},t.value)})})]},e.id):/* @__PURE__ */ _(`button`,{type:`button`,role:`menuitem`,class:`${n}-menu-item`,"aria-pressed":e.type===`switch`?e.on:void 0,disabled:e.disabled,onClick:()=>i(e),children:[e.icon?/* @__PURE__ */ g(`span`,{class:`${n}-menu-icon`,children:e.icon}):null,/* @__PURE__ */ g(`span`,{class:`${n}-menu-label`,children:e.label}),e.type===`switch`&&e.on?/* @__PURE__ */ g(`span`,{class:`${n}-menu-check`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Ka,{})}):null]},e.id))}):null]})}const Zo=M.cssPrefix;function Qo(e){let t=typeof matchMedia!=`function`||matchMedia(`(prefers-color-scheme: dark)`).matches;return e===`auto`?t?`light`:`dark`:t?e===`light`?`dark`:`auto`:e===`dark`?`light`:`auto`}const $o={normal:`large`,large:`small`,small:`normal`};function es(e){return g(e===`light`?fo:e===`dark`?po:mo,{})}function ts(e){return(e.split(`-`)[0]??e).toUpperCase()}function ns(e,t){let n;try{n=new URL(e,window.location.href)}catch{return}if(n.protocol===`http:`||n.protocol===`https:`)return t.conversationId&&n.searchParams.set(`chat`,t.conversationId),n.searchParams.set(`widgetId`,t.widgetId),t.publicKey&&n.searchParams.set(`public_key`,t.publicKey),n.searchParams.set(`ai_agent_deployment_id`,t.aiAgentDeploymentId),n.href}function rs({panelProps:e,variant:t}){let{options:n,panelSize:r,feedback:i,onClose:a,onClear:o,onExpand:c,onFullscreen:l,onSoundToggle:u}=e,{onToggleHistory:d,onLocaleChange:f,onThemeChange:p,onTextSizeChange:m}=e,h=n.strings,v=n.mode,y=t===`chat`,b=s(()=>i.mutedSig.value).value,x=new Set(n.actions);function S(e){return x.has(e)}let C=typeof matchMedia==`function`&&matchMedia(`(max-width: 640px)`).matches;function w(e){return!C&&oa(e,v,r)}let T=n.themeMode,E={auto:h.themeAuto,light:h.themeLight,dark:h.themeDark},D=n.textSize,O={small:h.textSizeSmall,normal:h.textSizeNormal,large:h.textSizeLarge},k=[];if(y&&S(`clear`)&&k.push({id:`clear`,icon:/* @__PURE__ */ g(Xa,{}),label:h.newConversation,onSelect:o}),S(`expand`)&&w(`expand`)){let e=r===`expanded`;k.push({id:`expand`,icon:g(e?Ia:Fa,{}),label:e?h.collapse:h.expand,type:`switch`,on:e,onSelect:c})}if(S(`fullscreen`)&&w(`fullscreen`)){let e=r===`fullscreen`;k.push({id:`fullscreen`,icon:g(e?Ra:La,{}),label:e?h.exitFullscreen:h.fullscreen,type:`switch`,on:e,onSelect:l})}let A=n.popOutUrl,j=n.aiAgentDeploymentId;S(`popOut`)&&A&&j&&oa(`popOut`,v,r)&&k.push({id:`popOut`,icon:/* @__PURE__ */ g(za,{}),label:h.popOut,onSelect:()=>{let t=ns(A,{conversationId:e.conversationId,widgetId:n.widgetId,publicKey:n.publicKey,aiAgentDeploymentId:j});t&&window.open(t,`_blank`,`noopener,noreferrer`)}}),y&&S(`sound`)&&k.push({id:`sound`,icon:g(b?Ua:Ha,{}),label:b?h.soundOff:h.soundOn,type:`switch`,on:!b,onSelect:u}),S(`theme`)&&k.push({id:`theme`,icon:es(T),label:`${h.theme}: ${E[T]}`,onSelect:()=>p(Qo(T)),keepOpen:!0}),S(`textSize`)&&k.push({id:`textSize`,icon:/* @__PURE__ */ g(Wa,{}),label:`${h.textSize}: ${O[D]}`,onSelect:()=>m($o[D]),keepOpen:!0}),S(`language`)&&n.availableLocales.length>1&&k.push({id:`language`,icon:/* @__PURE__ */ g(Ja,{}),label:h.language,segments:n.availableLocales.map(e=>({value:e,label:ts(e),lang:e})),value:n.locale,onSelectValue:f});let M=!!a&&sa(v,r,n.actions),ee=y&&S(`history`);return/* @__PURE__ */ _(`div`,{class:`${Zo}-header-actions`,children:[ee?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Zo}-icon-btn`,onClick:d,"aria-label":h.history,title:h.history,"data-testid":X.actionHistory,children:/* @__PURE__ */ g(qa,{})}):null,k.length>0?/* @__PURE__ */ g(Xo,{items:k,triggerLabel:h.moreActions}):null,M?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Zo}-icon-btn`,onClick:a,"aria-label":h.close,title:h.close,"data-testid":X.actionClose,children:/* @__PURE__ */ g(Ea,{})}):null]})}const is={Icon:uo};function as(e,t){return e instanceof Bi&&e.status===429?t.errorRateLimited:t.errorGeneric}const os=M.cssPrefix;function ss({placeholder:e,onActivate:t}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${os}-home-search`,onClick:t,"data-testid":X.homeSearch,children:[/* @__PURE__ */ g(`span`,{class:`${os}-home-search-text`,children:e}),/* @__PURE__ */ g(`span`,{class:`${os}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(oo,{})})]})}function cs({placeholder:e,value:t,onInput:n}){return/* @__PURE__ */ _(`div`,{class:`${os}-home-search`,"data-input":`true`,children:[/* @__PURE__ */ g(`input`,{type:`search`,class:`${os}-home-search-input`,placeholder:e,value:t,maxLength:200,onInput:e=>n(e.currentTarget.value),"data-testid":X.helpSearch}),/* @__PURE__ */ g(`span`,{class:`${os}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(oo,{})})]})}const ls=M.cssPrefix;function us({title:e,subtitle:t,onClick:n,testid:r}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${ls}-list-row`,onClick:n,"data-testid":r,children:[/* @__PURE__ */ _(`span`,{class:`${ls}-list-row-body`,children:[/* @__PURE__ */ g(`span`,{class:`${ls}-list-row-title`,children:e}),t?/* @__PURE__ */ g(`span`,{class:`${ls}-list-row-sub`,children:t}):null]}),/* @__PURE__ */ g(`span`,{class:`${ls}-list-row-chevron`,"aria-hidden":`true`,children:/* @__PURE__ */ g(ja,{})})]})}const ds=M.cssPrefix,fs=R.scope(`help`);function ps(e,t,n){let r=new Map(n.map(e=>[e.id,e.title]));return t.map(t=>({id:t,title:r.get(t),rows:e.filter(e=>e.contentCollectionId===t)})).filter(e=>e.rows.length>0)}function ms({transport:e,strings:t,bus:n},r,i){let[a,o]=m(),s=p(void 0);function c(a){if(!r?.length)return;let c={};s.current=c,o(e=>({search:i,items:[],collections:[],...e,pagination:a>1?e?.pagination:void 0,loading:!0,error:void 0})),Promise.all([e.listContent({contentCollectionIds:r,sortBy:`order`,page:a,limit:20,search:i}),a>1?void 0:e.listContentCollections(r)]).then(([e,t])=>{s.current===c&&(o(n=>({search:i,items:[...a>1?n?.items??[]:[],...e.items],collections:t?.items??n?.collections??[],pagination:e.pagination,loading:!1})),!(a>1)&&(i?n.emit(`contentSearch`,{queryLength:i.length,hitCount:e.pagination.total}):n.emit(`contentView`,{section:`help`,count:e.items.length})))}).catch(e=>{s.current===c&&(fs.warn(`listContent (help) failed`,{err:e,page:a}),o(n=>n&&{...n,loading:!1,error:as(e,t)}))})}return u(()=>{if(!r?.length)o(void 0);else return c(1),()=>{s.current=void 0}},[e,r,i]),[a,()=>!a?.loading&&c((a?.pagination?.page??0)+1)]}function hs(e){let{strings:t,config:n,nav:r,panelProps:i}=e,a=n.contentCollectionIds,[o,s]=m(``),[c,l]=m(``),d=ms(e,a),f=ms(e,c?a:void 0,c),[p,v]=o.trim()?f:d;u(()=>{let e=setTimeout(()=>l(o.trim()),300);return()=>clearTimeout(e)},[o]);function y(){if(!a?.length)return/* @__PURE__ */ g(Go,{message:t.helpEmpty,strings:t});let e=p?.error?/* @__PURE__ */ g(Go,{tone:`error`,message:p.error,onRetry:v,strings:t}):null;return e&&!p?.pagination?e:!p||!p.pagination&&!p.items.length?/* @__PURE__ */ g(Go,{message:t.helpLoading,strings:t}):p.items.length?/* @__PURE__ */ _(h,{children:[ps(p.items,a,p.collections).map(e=>/* @__PURE__ */ _(`section`,{class:`${ds}-help-group`,children:[e.title?/* @__PURE__ */ g(`h2`,{class:`${ds}-help-section-title`,children:e.title}):null,/* @__PURE__ */ g(`div`,{class:`${ds}-help-card`,children:e.rows.map(e=>/* @__PURE__ */ g(us,{title:e.title,subtitle:e.description,onClick:()=>r.push(e.url?{kind:`iframe`,url:e.url,title:e.title}:{kind:`content`,id:e.id,title:e.title}),testid:Do(X.helpArticle,e.id)},e.id))})]},e.id)),e,p.pagination?.hasNext&&!e?/* @__PURE__ */ g(`div`,{children:/* @__PURE__ */ g(`div`,{class:`${ds}-help-card`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${ds}-list-row ${ds}-help-more`,onClick:v,"aria-busy":p.loading,children:[p.loading?/* @__PURE__ */ g(`span`,{class:`${ds}-loading-spinner`,"aria-hidden":`true`}):null,t.helpShowMore]})})}):null]}):/* @__PURE__ */ g(Go,{message:p.search?t.helpSearchEmpty.replace(`{query}`,p.search):t.helpEmpty,strings:t})}return/* @__PURE__ */ _(`div`,{class:`${ds}-module`,children:[/* @__PURE__ */ g(Lo,{title:t.helpTitle,actions:/* @__PURE__ */ g(rs,{panelProps:i,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${ds}-module-pad`,children:/* @__PURE__ */ g(cs,{placeholder:t.helpSearchPlaceholder,value:o,onInput:s})}),/* @__PURE__ */ g(`div`,{class:`${ds}-help-list`,children:y()})]})}const gs={Icon:to,Root:e=>/* @__PURE__ */ g(hs,{...e})},_s=R.scope(`attachments`);function vs(e,t,n){let r=xs(e),i=[],a=[],o=ws(n.accept),s=t.reduce((e,t)=>e+t.size,0),c=t.length;for(let e of r){let t=bs(e,c,s,n,o);t?a.push({file:e,reason:t}):(i.push(Cs(e)),s+=e.size,c+=1)}return(i.length||a.length)&&_s.debug(`ingest`,{accepted:i.length,rejected:a.map(e=>({name:e.file.name,reason:e.reason}))}),{accepted:i,rejected:a}}function ys(e){try{URL.revokeObjectURL(e.previewUrl)}catch(e){_s.debug(`revokeObjectURL failed`,{error:e})}}function bs(e,t,n,r,i){return t>=r.maxCount?`count`:n+e.size>r.maxBytes?`bytes`:Ts(e,i)?null:`mime`}function xs(e){return e?Array.isArray(e)?e.filter(e=>e instanceof File):[...e].map(e=>e instanceof File?e:Ss(e)).filter(e=>e!==null):[]}function Ss(e){let t=e;return!t?.getAsFile||t.kind!==`file`?null:t.getAsFile()}function Cs(e){return{file:e,id:at(),mediaType:e.type||`application/octet-stream`,name:e.name||`pasted-file`,previewUrl:URL.createObjectURL(e),size:e.size}}function ws(e){return e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean).map(e=>{if(e.startsWith(`.`))return{kind:`ext`,ext:e};let[t=`*`,n=`*`]=e.split(`/`);return{kind:`mime`,type:t,subtype:n}})}function Ts(e,t){if(t.length===0)return!0;let[n=`*`,r=`*`]=(e.type||``).toLowerCase().split(`/`),i=(e.name||``).toLowerCase();return t.some(e=>e.kind===`ext`?i.endsWith(e.ext):e.type===`image`&&e.subtype===`*`&&/\.(heic|heif|avif|bmp|tif|tiff)$/.test(i)?!0:(e.type===`*`||e.type===n)&&(e.subtype===`*`||e.subtype===r))}const Es=M.cssPrefix;function Ds({attachment:e,onRemove:t,disabled:n=!1}){let r=/^image\/(jpeg|png|gif|webp|avif|bmp|x-ms-bmp|svg\+xml)$/i.test(e.mediaType);return/* @__PURE__ */ _(`span`,{class:`${Es}-attachment-chip`,title:e.name,"data-testid":Do(X.attachmentChip,e.id),children:[r?/* @__PURE__ */ g(`img`,{class:`${Es}-attachment-thumb`,src:e.previewUrl,alt:``}):/* @__PURE__ */ g(`span`,{class:`${Es}-attachment-thumb`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Qa,{})}),/* @__PURE__ */ g(`span`,{class:`${Es}-attachment-name`,children:e.name}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Es}-attachment-remove`,onClick:t,disabled:n,"aria-label":`Remove ${e.name}`,"data-testid":Do(X.attachmentRemove,e.id),children:/* @__PURE__ */ g(Ea,{})})]})}const Os={isSupported:!1,start:()=>void 0,stop:()=>void 0,cancel:()=>void 0};function ks(e,t,n){return e===`disabled`?Os:e===`server`?Ns(n):As(t)}function As(e){let t=js();if(!t)return Os;let n=null,r=0;return{isSupported:!0,start(i,a){let o=n,s=++r;n=null,o?.abort();let c=new t;n=c,c.continuous=!0,c.interimResults=!0,c.lang=e;let l=!1;c.addEventListener(`result`,e=>{if(r!==s||n!==c)return;let t=e,a=``,o=!1;for(let e=t.resultIndex;e<t.results.length;e++){let n=t.results[e];n&&(a+=n[0].transcript,n.isFinal&&(o=!0))}i(a,o)});function u(){l||r!==s||n!==c||(l=!0,n=null,a())}c.addEventListener(`end`,u),c.addEventListener(`error`,u);try{c.start()}catch{u()}},stop(){n?.stop()},cancel(){r++;let e=n;n=null,e?.abort()}}}function js(){return window.SpeechRecognition??window.webkitSpeechRecognition}const Ms=[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`];function Ns(e){if(typeof MediaRecorder>`u`||!navigator?.mediaDevices?.getUserMedia)return Os;let t=0,n=null;function r(e){for(let t of e.stream?.getTracks()??[])t.stop();e.stream=null}function i(){t++;let e=n;n=null,e&&(r(e),e.recorder?.state!==`inactive`&&e.recorder?.stop())}async function a(i){if(i.finishing)return;i.finishing=!0;let a=i.recorder?.mimeType??`audio/webm`;r(i);let o=new Blob(i.chunks,{type:a});i.chunks=[];try{let{text:r}=await e(o,a);n===i&&t===i.generation&&r&&i.onText(r,!0)}catch{}finally{n===i&&t===i.generation&&(n=null,i.onEnd())}}return{isSupported:!0,async start(e,o){i();let s={generation:t,recorder:null,stream:null,chunks:[],onText:e,onEnd:o,finishing:!1};n=s;try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});if(n!==s||t!==s.generation){for(let t of e.getTracks())t.stop();return}s.stream=e;let r=Ps(),i=new MediaRecorder(e,r?{mimeType:r}:void 0);s.recorder=i,i.addEventListener(`dataavailable`,e=>{n===s&&t===s.generation&&e.data.size>0&&s.chunks.push(e.data)}),i.addEventListener(`stop`,()=>{n===s&&t===s.generation&&a(s)}),i.start()}catch{r(s),n===s&&t===s.generation&&(n=null,o())}},stop(){let e=n;e&&(e.recorder?e.recorder.state!==`inactive`&&e.recorder.stop():i())},cancel(){i()}}}function Ps(){for(let e of Ms)if(MediaRecorder.isTypeSupported(e))return e}const Fs=M.cssPrefix,Is=R.scope(`composer`);function Ls(e){return e.reduce((e,t)=>e+t.size,0)}const Rs={arrowUp:ka,paperPlane:Oa,send:Aa,chevron:ja};function zs(e){return`activeElement`in e}function Bs(e){return`host`in e&&`activeElement`in e}function Vs({options:e,transport:t,feedback:n,bus:r,persistence:i,conversationId:a,isStreaming:o,isMemoryCompacting:s=!1,canReleaseQueuedMessages:c=!0,queueManualMessages:f=!1,active:h=!0,isPreparing:v=!1,operatorRequestEnabled:y,canRequestOperator:b=!1,controlMode:x=`ai-agent`,onRequestOperator:S,onSend:C,onStop:w,apiRef:T}){let E=e.strings,[D,O]=m(()=>i.loadDraft(a)),[k,A]=m([]),[j,M]=m(()=>i.loadMessageQueue(a).map(e=>({id:e.id,text:e.text,attachments:[]}))),ee=p(j),te=p(!1),[N,ne]=m(!1),[re,ie]=m(!1),P=p(!1),ae=p(null),oe=p(null),F=p(null),I=p(0),se=p(a);se.current=a;let ce=p(h);ce.current=h;let le=p(v);le.current=v;let ue=re||v||!h,de=o&&x===`ai-agent`,fe=de||s&&x===`ai-agent`,pe=x===`ai-agent`&&(fe||f||j.length>0),me=l(e=>{M(t=>{let n=e(t);return i.saveMessageQueue(se.current,n.filter(e=>e.attachments.length===0).map(({id:e,text:t})=>({id:e,text:t}))),ee.current=n,n})},[i]),he=l(e=>{me(t=>(t.find(t=>t.id===e)?.attachments.forEach(ys),t.filter(t=>t.id!==e)))},[me]),L=l(e=>{O(t=>{let n=typeof e==`function`?e(t):e;return n===t?t:(i.saveDraft(se.current,n),n)})},[i]),ge=e.features.fileUpload,_e=e.features.voice,[R,ve]=m(()=>ks(_e,e.locale,(e,n)=>t.transcribe(e,n))),z=p(R);z.current=R;let ye=p({mode:_e,locale:e.locale,transport:t});u(()=>{let n=ye.current;(n.mode!==_e||n.locale!==e.locale||n.transport!==t)&&(ye.current={mode:_e,locale:e.locale,transport:t},I.current++,z.current.cancel(),F.current=null,ne(!1),ve(ks(_e,e.locale,(e,n)=>t.transcribe(e,n))))},[e.locale,_e,t]),d(()=>()=>{I.current++,R.cancel()},[R]);let be=l(e=>{let t=F.current;if(t===null)return!1;let n=Math.round(performance.now()-t);return Is[e](`voiceStop`,{durationMs:n}),r.emit(`voiceStop`,{durationMs:n}),F.current=null,!0},[r]),xe=l(()=>{F.current!==null&&(R.stop(),ne(!1),be(`info`)&&n.play(`voiceStop`))},[be,n,R]),Se=l(()=>{I.current++,R.cancel(),ne(!1),be(`info`)&&n.play(`voiceStop`)},[be,n,R]);u(()=>{(v||!h)&&Se()},[h,Se,v]),u(()=>{let e=ae.current;if(!e)return;let t=e.getRootNode(),n=zs(t)?t.activeElement:null;n&&e.closest(`.${Fs}-panel`)?.contains(n)||e.focus({preventScroll:!0})},[]),u(()=>{let e=ae.current;if(!e)return;if(D.length===0){e.style.height=``;return}e.style.height=`auto`;let t=getComputedStyle(e),n=Number.parseFloat(t.getPropertyValue(`--${Fs}-textarea-base-height`)),r=Number.parseFloat(t.borderTopWidth)+Number.parseFloat(t.borderBottomWidth),i=Math.min(e.scrollHeight+r,Number.parseFloat(t.maxHeight)),a=Number.parseFloat(t.fontSize)*.7;e.style.height=`${i<n+a?n:i}px`},[D]);let Ce=p(k);Ce.current=k,u(()=>()=>{Ce.current.forEach(ys);for(let e of ee.current)e.attachments.forEach(ys)},[]),u(()=>{if(T)return T.current={attachFromDrop:t=>{if(!ge||!ce.current||P.current||le.current)return;let n=vs(t,Ce.current,e.attachments);n.accepted.length!==0&&(Is.info(`attach (drop)`,{count:n.accepted.length,totalBytes:Ls(n.accepted)}),r.emit(`attach`,{count:n.accepted.length,totalBytes:Ls(n.accepted)}),A(e=>[...e,...n.accepted]))},fill:e=>{if(!ce.current||P.current||le.current)return;L(e);let t=ae.current;t&&(t.focus({preventScroll:!0}),requestAnimationFrame(()=>t.setSelectionRange(t.value.length,t.value.length)))},acceptQueuedMessage:he},()=>{T.current&&(T.current=null)}},[T,ge,v,e.attachments,he,L]),u(()=>{let t=ae.current;if(!t)return;let n=t.closest(`.${Fs}-panel`);if(!n)return;let i=n=>{if(!ce.current||P.current||le.current)return;let i=n.clipboardData;if(!i)return;let a=n.target?.closest?.(`input, textarea, [contenteditable]:not([contenteditable='false'])`);if(a&&a!==t)return;if(ge){let t=vs(i.items,Ce.current,e.attachments);if(t.accepted.length>0){n.preventDefault(),Is.info(`attach (paste)`,{count:t.accepted.length,totalBytes:Ls(t.accepted)}),r.emit(`attach`,{count:t.accepted.length,totalBytes:Ls(t.accepted)}),A(e=>[...e,...t.accepted]);return}}if(a===t)return;let o=i.getData(`text/plain`);o&&(n.preventDefault(),L(e=>e+o),t.focus())};return n.addEventListener(`paste`,i),()=>n.removeEventListener(`paste`,i)},[ge,e.attachments,L]);async function we(){let e=D.trim();if(!e&&k.length===0||!h||de||P.current||v)return;Se(),P.current=!0,ie(!0);let t=D,n=k;try{await C(e,n)&&(L(e=>e===t?``:e),A(e=>e===n?(n.forEach(ys),Ce.current=[],[]):e))}finally{P.current=!1,ie(!1),requestAnimationFrame(()=>{let e=ae.current;if(!e||e.disabled||!ce.current)return;let t=e.getRootNode(),n=zs(t)?t.activeElement:null,r=n?.getAttribute(`data-testid`);if(!(n&&n!==e&&r!==X.composerSend&&r!==X.composerStop)){if(Bs(t)){let e=t.host.ownerDocument;if(!e.hasFocus())return;let n=e.activeElement;if(n&&n!==t.host&&n!==e.body)return}e.focus({preventScroll:!0})}})}}function Te(){let e=D.trim();if(!e&&k.length===0||!h||!pe||P.current||v)return;Se();let t=k;me(n=>[...n,{id:at(),text:e,attachments:t}]),L(``),A(e=>e===t?(Ce.current=[],[]):e),ae.current?.focus({preventScroll:!0})}u(()=>{fe&&(te.current=!1)},[fe]),u(()=>{let e=j[0];if(!e||!c||fe||te.current||re||v||!h)return;let t=setTimeout(()=>{te.current=!0,C(e.text,e.attachments,e.id).then(t=>{t?he(e.id):te.current=!1})},300);return()=>clearTimeout(t)},[h,c,v,C,fe,j,he,re]);function Ee(e){e.key!==`Enter`||e.shiftKey||e.isComposing||(e.preventDefault(),pe&&(D.trim()||k.length>0)?Te():de?w():we())}function De(t){let n=t.target;if(!h||P.current||v){n.value=``;return}let i=vs(n.files,k,e.attachments);i.accepted.length>0&&(Is.info(`attach (file picker)`,{count:i.accepted.length,totalBytes:Ls(i.accepted)}),r.emit(`attach`,{count:i.accepted.length,totalBytes:Ls(i.accepted)}),A(e=>[...e,...i.accepted])),n.value=``}function Oe(e){!h||P.current||v||(Is.info(`removeAttachment`,{id:e}),r.emit(`removeAttachment`,{id:e}),A(t=>{let n=t.find(t=>t.id===e);return n&&ys(n),t.filter(t=>t.id!==e)}))}function ke(){if(N){xe();return}if(!h||!R.isSupported||P.current||v)return;let e=++I.current;F.current=performance.now(),Is.info(`voiceStart`),r.emit(`voiceStart`,void 0),ne(!0),n.play(`voiceStart`),R.start((t,n)=>{I.current===e&&ce.current&&!le.current&&!P.current&&n&&L(e=>`${e}${t} `)},()=>{I.current===e&&ce.current&&(ne(!1),be(`debug`))})}let Ae=Rs[e.composer.sendButton.icon],je=!!(D.trim()||k.length>0);return/* @__PURE__ */ _(`div`,{class:`${Fs}-composer`,"data-testid":X.composer,children:[j.length>0?/* @__PURE__ */ g(`div`,{class:`${Fs}-message-queue`,"aria-label":E.queueMessage,"data-testid":X.messageQueue,children:j.map(e=>/* @__PURE__ */ _(`div`,{class:`${Fs}-attachment-chip ${Fs}-queued-message`,"data-testid":`${X.queuedMessage}-${e.id}`,children:[/* @__PURE__ */ g(`span`,{class:`${Fs}-attachment-name ${Fs}-queued-text`,children:e.text||e.attachments.map(e=>e.name).join(`, `)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-attachment-remove`,onClick:()=>he(e.id),"aria-label":E.removeQueuedMessage,title:E.removeQueuedMessage,"data-testid":`${X.queuedMessageRemove}-${e.id}`,children:/* @__PURE__ */ g(Ea,{})})]},e.id))}):null,k.length>0?/* @__PURE__ */ g(`div`,{class:`${Fs}-attachments`,children:k.map(e=>/* @__PURE__ */ g(Ds,{attachment:e,onRemove:()=>Oe(e.id),disabled:ue},e.id))}):null,/* @__PURE__ */ _(`div`,{class:`${Fs}-composer-row`,children:[/* @__PURE__ */ _(`div`,{class:`${Fs}-composer-actions`,children:[ge?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-icon-btn`,onClick:()=>oe.current?.click(),disabled:ue,"aria-label":E.attach,"data-testid":X.composerAttach,children:/* @__PURE__ */ g(Na,{})}):null,R.isSupported?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-icon-btn`,onClick:ke,disabled:ue,"aria-label":N?E.micStop:E.micStart,"aria-pressed":N,"data-recording":N?`true`:void 0,"data-testid":X.composerVoice,children:/* @__PURE__ */ g(Pa,{})}):null]}),/* @__PURE__ */ g(`textarea`,{ref:ae,name:`message`,class:`${Fs}-textarea`,rows:1,value:D,placeholder:E.composerPlaceholder,onInput:e=>L(e.currentTarget.value),onKeyDown:Ee,disabled:ue,"aria-label":E.composerPlaceholder,"data-testid":X.composerInput}),pe&&je?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:Te,disabled:ue,"aria-label":E.queueMessage,title:E.queueMessage,"data-testid":X.composerSend,children:/* @__PURE__ */ g(Ae,{})}):null,de?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-send`,onClick:w,disabled:ue,"aria-label":E.stop,"data-testid":X.composerStop,children:/* @__PURE__ */ g(Ma,{})}):null,!de&&(!pe||!je)?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:()=>void we(),disabled:ue||!D.trim()&&k.length===0,"aria-label":E.send,"data-testid":X.composerSend,children:/* @__PURE__ */ g(Ae,{})}):null,y&&x===`ai-agent`&&S?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fs}-icon-btn`,onClick:S,disabled:ue||!b,"aria-label":E.talkToOperator,title:E.talkToOperator,"data-testid":X.operatorRequest,children:/* @__PURE__ */ g(io,{})}):null]}),/* @__PURE__ */ g(`input`,{ref:oe,name:`attachments`,type:`file`,multiple:!0,accept:e.attachments.accept,onChange:De,disabled:ue,class:`${Fs}-sr-only`,"data-testid":X.composerFileInput})]})}const Hs=M.cssPrefix;function Us({onClick:e,children:t,testid:n}){return e?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Hs}-home-card`,"data-interactive":`true`,onClick:e,"data-testid":n,children:t}):/* @__PURE__ */ g(`div`,{class:`${Hs}-home-card`,"data-testid":n,children:t})}function Ws(e){return e.trim().split(/\s+/).slice(0,2).map(e=>e.charAt(0).toUpperCase()).join(``)}const Gs=M.cssPrefix,Ks=R.scope(`news`);function qs(e,t){let n=e?new Date(e):void 0;if(n&&!Number.isNaN(n.getTime()))return new Intl.DateTimeFormat(t,{dateStyle:`medium`}).format(n)}function Js({options:e,transport:t,strings:n,config:r,nav:i,bus:a,panelProps:o,latestNews:s}){let c=r.contentCollectionIds,[l,d]=m({items:[],loading:!0}),f=p(void 0);function h(e){if(!c?.length)return;let r={};f.current=r,d(e=>({...e,loading:!0,error:void 0})),t.listContent({contentCollectionIds:c,sortBy:`publishedAt`,sortOrder:`desc`,page:e,limit:10}).then(t=>{if(f.current!==r||(d(n=>({items:e>1?[...n.items,...t.items]:t.items,pagination:t.pagination,loading:!1})),e>1))return;a.emit(`contentView`,{section:`news`,count:t.items.length});let n=t.items[0];n&&s.markSeen(n.id)}).catch(t=>{f.current===r&&(Ks.warn(`listContent (news) failed`,{err:t,page:e}),d(e=>({...e,loading:!1,error:as(t,n)})))})}function v(){l.loading||h((l.pagination?.page??0)+1)}u(()=>(d({items:[],loading:!0}),h(1),()=>{f.current=void 0}),[t,c]);function y(t){let n=qs(t.publishedAt,e.locale);return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Gs}-news-card`,onClick:()=>i.push({kind:`content`,id:t.id,title:t.title}),"data-testid":Do(X.newsItem,t.id),children:[t.image?/* @__PURE__ */ g(`img`,{class:`${Gs}-news-hero`,src:t.image,alt:``,loading:`lazy`}):null,/* @__PURE__ */ _(`span`,{class:`${Gs}-news-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Gs}-news-title`,children:t.title}),n||t.tags?.length?/* @__PURE__ */ _(`span`,{class:`${Gs}-news-meta`,children:[n?/* @__PURE__ */ g(`time`,{dateTime:t.publishedAt,children:n}):null,t.tags?.map(e=>/* @__PURE__ */ g(`span`,{class:`${Gs}-news-tag`,children:e},e))]}):null,t.description?/* @__PURE__ */ g(`span`,{class:`${Gs}-news-summary`,children:t.description}):null]})]},t.id)}function b(){if(!c?.length)return/* @__PURE__ */ g(Go,{message:n.newsEmpty,strings:n});let e=l.error?/* @__PURE__ */ g(Go,{tone:`error`,message:l.error,onRetry:v,strings:n}):null;return e&&!l.pagination?e:l.pagination?l.items.length?/* @__PURE__ */ _(`div`,{class:`${Gs}-news-list`,children:[l.items.map(y),e,l.pagination.hasNext&&!e?/* @__PURE__ */ _(`button`,{type:`button`,class:`${Gs}-news-more`,onClick:v,"aria-busy":l.loading,"data-testid":X.newsMore,children:[l.loading?/* @__PURE__ */ g(`span`,{class:`${Gs}-loading-spinner`,"aria-hidden":`true`}):null,n.newsShowMore]}):null]}):/* @__PURE__ */ g(Go,{message:n.newsEmpty,strings:n}):/* @__PURE__ */ g(Go,{message:n.newsLoading,strings:n})}return/* @__PURE__ */ _(`div`,{class:`${Gs}-module`,children:[/* @__PURE__ */ g(Lo,{title:n.newsTitle,actions:/* @__PURE__ */ g(rs,{panelProps:o,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${Gs}-module-scroll`,children:b()})]})}const Ys={Icon:lo,Root:e=>/* @__PURE__ */ g(Js,{...e})},Z=M.cssPrefix,Xs=R.scope(`home`);function Zs(e){let t=e.options.userContext?.name,n=e.config.greetingText?A(e.strings,e.config.greetingText):void 0;if(n){let r=t?n.replace(`{name}`,t):n.replace(/\s*\{name\}\s*/,` `).trim(),i=e.strings.homeGreetingLead;return{title:r,subtitle:r.toLowerCase()===i.toLowerCase()?void 0:i}}return t?{title:e.strings.homeGreetingNamed.replace(`{name}`,t),subtitle:e.strings.homeGreetingLead}:{title:e.strings.homeGreeting}}function Qs(e,t){return t.url?e.push({kind:`iframe`,url:t.url,title:t.title}):e.push({kind:`content`,id:t.id,title:t.title})}function $s({options:e,onAsk:t}){let[n,r]=m(``),{sendButton:i}=e.composer,a=Rs[i.icon];function o(e){e.preventDefault();let i=n.trim();i&&(r(``),t(i))}return/* @__PURE__ */ _(`form`,{class:`${Z}-home-search ${Z}-home-ask`,"data-input":`true`,onSubmit:o,"data-testid":X.homeAsk,children:[/* @__PURE__ */ g(`input`,{type:`text`,class:`${Z}-home-search-input`,placeholder:e.strings.homeAskPlaceholder,"aria-label":e.strings.homeAskPlaceholder,value:n,enterKeyHint:`send`,onInput:e=>r(e.currentTarget.value)}),/* @__PURE__ */ g(`button`,{type:`submit`,class:`${Z}-send`,"data-shape":i.shape,"data-variant":i.variant,disabled:!n.trim(),"aria-label":e.strings.send,children:/* @__PURE__ */ g(a,{})})]})}function ec(e,t){return Zi(e,t,t.type!==`upsert`||t.activity===!0)}function tc(e){let{transport:t,strings:n,config:r,nav:i,bus:a,panelProps:o,latestNews:s}=e,[c,l]=m(null),[d,f]=m([]),p=r.contentCollectionIds?.join(`,`),v=e.options.modules.list.some(e=>e.layout===`chat`);u(()=>{if(r.showRecentConversations===!1)return;let e=!1,n=!0,i=[],a=t.subscribeConversationChanges(e=>{n&&i.push(e),l(t=>ec(t?[t]:[],e)[0]??null)});return t.listConversations({limit:v?50:1}).then(t=>{if(e)return;let r=i.reduce(ec,t.conversations);i=[],n=!1,l(r[0]??null)}).catch(t=>{e||(i=[],n=!1,Xs.warn(`listConversations (home) failed`,{err:t}))}),()=>{e=!0,a()}},[t,r.showRecentConversations,v]),u(()=>{if(!r.contentCollectionIds?.length)return;let e=!1;return t.listContent({contentCollectionIds:r.contentCollectionIds,pinned:!0,limit:6}).then(t=>{e||(f(t.items),a.emit(`contentView`,{section:`home`,count:t.items.length}))}).catch(t=>!e&&Xs.warn(`listContent (home) failed`,{err:t})),()=>{e=!0}},[t,p,a]);let y=Zs(e),b=r.userAvatars??[],x=r.status,S=x?.text?A(n,x.text):n.homeStatus,C=r.contentBlockTitle?A(n,r.contentBlockTitle):n.homeContentTitle,w=s.item,T=qs(w?.publishedAt,e.options.locale);return/* @__PURE__ */ g(`div`,{class:`${Z}-module ${Z}-home`,"data-testid":X.homeView,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-scroll`,children:[/* @__PURE__ */ _(`div`,{class:`${Z}-home-hero`,children:[/* @__PURE__ */ _(`div`,{class:`${Z}-home-hero-top`,children:[r.brandName?/* @__PURE__ */ g(`span`,{class:`${Z}-home-brand`,"data-testid":X.homeBrand,children:r.brandName}):/* @__PURE__ */ g(`span`,{class:`${Z}-home-brand-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ _(`div`,{class:`${Z}-home-hero-actions`,children:[b.length>0?/* @__PURE__ */ g(`div`,{class:`${Z}-home-avatars`,children:b.map(e=>/* @__PURE__ */ g(`span`,{class:`${Z}-home-avatar`,title:e.role?`${e.name} · ${e.role}`:e.name,children:e.avatar?/* @__PURE__ */ g(`img`,{src:e.avatar,alt:``,loading:`lazy`}):/* @__PURE__ */ g(`span`,{children:Ws(e.name)})},e.name))}):null,/* @__PURE__ */ g(rs,{panelProps:o,variant:`plain`})]})]}),r.showGreeting===!1?null:/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`h1`,{class:`${Z}-home-greeting`,"data-testid":X.homeGreeting,children:y.title}),y.subtitle?/* @__PURE__ */ g(`p`,{class:`${Z}-home-lead`,children:y.subtitle}):null]})]}),/* @__PURE__ */ _(`div`,{class:`${Z}-home-cards`,children:[v?/* @__PURE__ */ g($s,{options:e.options,onAsk:e=>i.startNewConversation(e)}):null,r.showSearchBar===!1?null:/* @__PURE__ */ g(ss,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout(`help`)}),w?/* @__PURE__ */ g(Us,{onClick:()=>{s.markSeen(w.id),i.push({kind:`content`,id:w.id,title:w.title})},testid:X.homeWhatsNew,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-recent-row`,"data-unread":s.unseen?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(lo,{})}),/* @__PURE__ */ _(`span`,{class:`${Z}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-title`,children:n.homeWhatsNew}),/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-preview`,children:T?`${w.title} · ${T}`:w.title})]}),s.unseen?/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-dot`,role:`img`,"aria-label":n.newsUnseen}):null]})}):null,c?/* @__PURE__ */ g(Us,{onClick:()=>i.selectConversation(c),testid:X.homeRecent,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-recent-row`,"data-unread":c.hasUnread?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(uo,{})}),/* @__PURE__ */ _(`span`,{class:`${Z}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-title`,children:c.title}),c.preview?/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-preview`,children:Uo(c.preview)}):null]}),c.hasUnread?/* @__PURE__ */ g(`span`,{class:`${Z}-home-recent-dot`,"aria-label":`Unread`}):null]})}):null,x?/* @__PURE__ */ g(Us,{onClick:x.url?()=>i.push({kind:`iframe`,url:x.url,title:S}):void 0,children:/* @__PURE__ */ _(`div`,{class:`${Z}-home-status`,"data-level":x.level??`operational`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-home-status-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(so,{})}),/* @__PURE__ */ g(`span`,{class:`${Z}-home-status-text`,children:S})]})}):null,d.length>0?/* @__PURE__ */ _(`section`,{class:`${Z}-home-content`,children:[/* @__PURE__ */ g(`div`,{class:`${Z}-home-content-title`,children:C}),/* @__PURE__ */ g(`div`,{class:`${Z}-home-content-list`,children:d.map(e=>/* @__PURE__ */ g(us,{title:e.title,subtitle:e.description,onClick:()=>Qs(i,e),testid:Do(X.homeContentRow,e.id)},e.id))})]}):null]})]})})}const nc={chat:is,home:{Icon:co,Root:e=>/* @__PURE__ */ g(tc,{...e})},help:gs,news:Ys},rc=M.cssPrefix;function ic({modules:e,activeTab:t,strings:n,hasUnread:r,onSelect:i}){return/* @__PURE__ */ g(`nav`,{class:`${rc}-tabbar`,role:`tablist`,"aria-label":n.panelTitle,children:e.map(e=>{let a=nc[e.layout].Icon,o=e.id===t,s=e.layout===`chat`&&r;return/* @__PURE__ */ _(`button`,{type:`button`,role:`tab`,"aria-selected":o,class:`${rc}-tab`,onClick:()=>i(e.id),"data-testid":Do(X.tab,e.id),children:[/* @__PURE__ */ _(`span`,{class:`${rc}-tab-icon`,"aria-hidden":`true`,children:[/* @__PURE__ */ g(a,{}),s?/* @__PURE__ */ g(`span`,{class:`${rc}-tab-badge`,"data-testid":X.tabBadge,"aria-label":`Unread`}):null]}),/* @__PURE__ */ g(`span`,{class:`${rc}-tab-label`,children:A(n,e.label)})]},e.id)})})}const ac=M.cssPrefix;function oc({url:e,title:t,strings:n,onBack:r,actions:i}){return/* @__PURE__ */ _(`div`,{class:`${ac}-module`,children:[/* @__PURE__ */ g(Ro,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:r,actions:i}),/* @__PURE__ */ g(`iframe`,{class:`${ac}-content-frame`,src:e,title:t||`content`,sandbox:`allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-downloads`,referrerpolicy:`no-referrer`,loading:`lazy`,allow:`fullscreen`})]})}const sc=M.cssPrefix;function cc({agent:e,strings:t}){let n=e.status??`online`,r=A(t,e.name),i=e.title?A(t,e.title):null;return/* @__PURE__ */ _(`div`,{class:`${sc}-agent`,children:[/* @__PURE__ */ g(`div`,{class:`${sc}-agent-avatar`,"data-status":n,children:e.avatar?/* @__PURE__ */ g(`img`,{src:e.avatar,alt:``}):/* @__PURE__ */ g(`span`,{children:Ws(r)})}),/* @__PURE__ */ _(`div`,{class:`${sc}-agent-meta`,children:[/* @__PURE__ */ g(`strong`,{children:r}),i?/* @__PURE__ */ g(`span`,{children:i}):null]})]})}const lc=[`today`,`yesterday`,`lastWeek`,`older`];function uc(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return`older`;let r=Math.floor((fc(e)-fc(n))/864e5);return r<=0?`today`:r===1?`yesterday`:r<7?`lastWeek`:`older`}function dc(e,t){let n=/* @__PURE__ */ new Map;for(let r of t){let t=uc(e,r.lastMessageAt),i=n.get(t);i?i.push(r):n.set(t,[r])}return lc.filter(e=>n.has(e)).map(e=>({bucket:e,conversations:n.get(e)}))}function fc(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}const pc=R.scope(`history`),mc={today:`dateToday`,yesterday:`dateYesterday`,lastWeek:`dateLastWeek`,older:`dateOlder`};function hc(e,t){let n=t.type!==`upsert`||t.activity===!0;if(t.type===`snapshot`&&t.result.pagination.page===1&&e.pagination.page>1){let r=Zi(e.conversations.slice(0,t.result.pagination.limit),t,n);if(t.result.conversations.length===0){if(r.length===0)return t.result;let e=Math.max(t.result.pagination.total,r.length);return{...t.result,conversations:r,pagination:{...t.result.pagination,total:e,totalPages:Math.ceil(e/t.result.pagination.limit)}}}let i=new Set(r.map(e=>e.conversationId)),a=e.conversations.slice(t.result.pagination.limit).filter(e=>!i.has(e.conversationId)),o=e.pagination.page,s={...t.result.pagination,page:o,hasPrev:o>1,hasNext:o<t.result.pagination.totalPages};return{conversations:[...r,...a],pagination:s}}let r=Zi(e.conversations,t,n);return r===e.conversations?e:{...t.type===`snapshot`?t.result:e,conversations:r}}function gc(e,t,n){let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toDateString()===new Date(t).toDateString()?new Intl.DateTimeFormat(n,{hour:`numeric`,minute:`2-digit`}).format(r):t-r<6048e5?new Intl.DateTimeFormat(n,{weekday:`short`}).format(r):new Intl.DateTimeFormat(n,{month:`short`,day:`numeric`}).format(r):``}function _c({transport:e,strings:t,locale:n,persistence:r,onSelect:i,onNewConversation:a}){let o=M.cssPrefix,s=e.peekConversations({limit:50}),[c,l]=m(s?`loaded`:`loading`),[d,f]=m(s),[v,y]=m(!1),b=p(void 0),x=d?.conversations??[],S=d?.pagination;u(()=>{let t=!1,n=!0,i=[],a=e.subscribeConversationChanges(e=>{n&&i.push(e),f(t=>t&&hc(t,e))});b.current=void 0,y(!1);let o=e.peekConversations({limit:50});return f(o),l(o?`loaded`:`loading`),e.listConversations({limit:50}).then(e=>{if(t)return;let a=e;for(let e of i)a=hc(a,e);i=[],n=!1,f(a),l(`loaded`),r.saveHistoryCount(a.conversations.length)}).catch(e=>{t||(i=[],n=!1,pc.warn(`listConversations failed`,{err:e}),l(`error`))}),()=>{t=!0,a(),b.current=void 0}},[e,r,n]);async function C(){if(b.current||!S?.hasNext)return;let t={};b.current=t,y(!0);try{let n=await e.listConversations({page:S.page+1,limit:S.limit});if(b.current!==t)return;f(e=>{if(!e)return e;let t=new Set(e.conversations.map(e=>e.conversationId)),i=n.conversations.filter(e=>!t.has(e.conversationId)&&(t.add(e.conversationId),!0)),a={conversations:[...e.conversations,...i],pagination:n.pagination};return r.saveHistoryCount(a.conversations.length),a})}catch(e){if(b.current!==t)return;pc.warn(`listConversations page failed`,{err:e,page:S.page+1})}finally{b.current===t&&(b.current=void 0,y(!1))}}let w=a?/* @__PURE__ */ g(`div`,{class:`${o}-history-footer`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${o}-history-new`,onClick:a,"data-testid":X.sidebarNewConversation,children:[/* @__PURE__ */ g(Da,{}),t.newConversation]})}):null;if(c===`loading`){let e=Math.min(r.loadHistoryCount()??3,6);return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`div`,{class:`${o}-history`,"aria-busy":`true`,"aria-label":t.historyLoading,children:/* @__PURE__ */ _(`div`,{class:`${o}-history-group`,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`div`,{class:`${o}-history-heading`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-heading`})}),/* @__PURE__ */ g(`div`,{class:`${o}-history-card`,children:Array.from({length:Math.max(1,e)},(e,t)=>/* @__PURE__ */ _(`div`,{class:`${o}-history-item ${o}-history-item-skeleton`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-avatar ${o}-skeleton`}),/* @__PURE__ */ _(`span`,{class:`${o}-history-body`,children:[/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-title`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-title`})}),/* @__PURE__ */ g(`span`,{class:`${o}-history-time`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-time`})})]}),/* @__PURE__ */ g(`span`,{class:`${o}-history-row`,children:/* @__PURE__ */ g(`span`,{class:`${o}-history-preview`,children:/* @__PURE__ */ g(`span`,{class:`${o}-skeleton ${o}-skeleton-preview`})})})]})]},t))})]})}),w]})}if(c===`error`||x.length===0)return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`div`,{class:`${o}-history-empty`,children:t.historyEmpty}),w]});let T=Date.now(),E=dc(T,x);return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`div`,{class:`${o}-history`,role:`list`,children:[E.map(e=>/* @__PURE__ */ _(`div`,{class:`${o}-history-group`,children:[/* @__PURE__ */ g(`div`,{class:`${o}-history-heading`,children:t[mc[e.bucket]]}),/* @__PURE__ */ g(`div`,{class:`${o}-history-card`,children:e.conversations.map(e=>/* @__PURE__ */ g(`div`,{role:`listitem`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${o}-history-item`,onClick:()=>i(e),"data-closed":e.canContinue?void 0:`true`,"data-unread":e.hasUnread?`true`:void 0,"data-testid":Do(X.historyItem,e.conversationId),children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(eo,{})}),/* @__PURE__ */ _(`span`,{class:`${o}-history-body`,children:[/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-title`,children:e.title}),/* @__PURE__ */ g(`span`,{class:`${o}-history-time`,children:gc(e.lastMessageAt,T,n)})]}),/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-preview`,children:e.preview&&Uo(e.preview)||(e.canContinue?t.historyContinue:t.conversationClosed)}),e.hasUnread?/* @__PURE__ */ g(`span`,{class:`${o}-history-dot`}):null]})]})]})},e.conversationId))})]},e.bucket)),S?.hasNext?/* @__PURE__ */ g(`div`,{class:`${o}-history-more`,children:/* @__PURE__ */ g(`button`,{type:`button`,onClick:C,disabled:v,"aria-busy":v,"data-testid":X.historyLoadMore,children:t.loadMoreConversations})}):null]}),w]})}const vc=M.cssPrefix;function yc({visible:e,strings:t}){return e?/* @__PURE__ */ g(`div`,{class:`${vc}-dropzone`,role:`status`,"aria-live":`polite`,children:t.dropZone}):null}const bc=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,xc=/^https?:\/\/[^\s.]+\.[^\s]+$/i,Sc=/^[+]?[\d\s().-]{6,}$/;function Cc(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>String(t[n]??`{${n}}`))}function wc(e){return Array.isArray(e)?e.length:+!!e?.trim()}function Tc(e,t,n){let r=e.required??!0,i=e.validation;if(e.type===`multiselect`){let e=wc(t);return r&&e===0?n.formRequired:e===0?void 0:i?.minSelections!=null&&e<i.minSelections?Cc(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&e>i.maxSelections?Cc(n.formChooseAtMost,{max:i.maxSelections}):void 0}let a=typeof t==`string`?t.trim():``;if(!a)return r?n.formRequired:void 0;switch(e.type){case`email`:if(!bc.test(a))return n.formInvalidEmail;break;case`url`:if(!xc.test(a))return n.formInvalidUrl;break;case`tel`:if(!Sc.test(a))return n.formInvalidTel;break;case`number`:{let e=Number(a);if(!Number.isFinite(e))return n.formInvalidNumber;if(i?.min!=null&&e<i.min)return Cc(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&e>i.max)return Cc(n.formNumberTooLarge,{max:i.max});break}}if(i?.minLength!=null&&a.length<i.minLength)return Cc(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return Cc(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function Ec(e,t,n){let r={};for(let i of e){let e=Tc(i,t[i.name],n);e&&(r[i.name]=e)}return r}function Dc(e){let t={};for(let[n,r]of Object.entries(e)){let e=Array.isArray(r)?r.join(`, `):r;e.trim()&&(t[n]=e.trim())}return t}const Q=M.cssPrefix,Oc=`__other__`;function kc({fields:e,strings:t,submitLabel:n,onSubmit:r,skipLabel:i,onSkip:a,footerHint:o,submitOnEnter:s,disabled:c,initialValues:l,hideActions:u,fieldTypeLabels:d,rootTestId:f,submitTestId:p,skipTestId:h}){let[v,y]=m(()=>({...Nc(e),...l})),[b,x]=m({}),[S,C]=m({});function w(e){S[e]&&C(t=>({...t,[e]:``}))}function T(e,t){y(n=>({...n,[e]:t})),w(e)}function E(e,t){x(n=>({...n,[e]:t})),w(e)}function D(n){if(n.preventDefault(),c)return;let i=Pc(e,v,b),a=Ec(e,i,t);Object.keys(a).length>0?C(a):r(Dc(i))}function O(e){!s||e.key!==`Enter`||e.shiftKey||e.isComposing||e.target&&`tagName`in e.target&&e.target.tagName===`TEXTAREA`&&D(e)}return/* @__PURE__ */ _(`form`,{class:`${Q}-form`,onSubmit:D,onKeyDown:O,"data-testid":f,noValidate:!0,children:[e.map(e=>/* @__PURE__ */ g(Ac,{field:e,value:v[e.name],otherText:b[e.name]??``,error:S[e.name],disabled:c,typeLabel:d?.[e.name],strings:t,onChange:t=>T(e.name,t),onOtherChange:t=>E(e.name,t)},e.name)),u?null:/* @__PURE__ */ _(`div`,{class:`${Q}-form-actions`,children:[o?/* @__PURE__ */ g(`span`,{class:`${Q}-form-hint`,children:o}):null,i&&a?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Q}-form-skip`,onClick:a,disabled:c,"data-testid":h,children:i}):null,/* @__PURE__ */ g(`button`,{type:`submit`,class:`${Q}-form-submit`,disabled:c,"data-testid":p,children:n})]})]})}function Ac({field:e,value:t,otherText:n,error:r,disabled:i,typeLabel:a,strings:o,onChange:s,onOtherChange:c}){let l=jc({field:e,value:t,otherText:n,disabled:i,strings:o,onChange:s,onOtherChange:c,fieldTid:Do(X.formField,e.name)});return/* @__PURE__ */ _(`label`,{class:`${Q}-field`,"data-field":e.name,"data-invalid":r?`true`:void 0,children:[/* @__PURE__ */ _(`span`,{class:`${Q}-field-head`,children:[/* @__PURE__ */ _(`span`,{class:`${Q}-field-label`,children:[e.label,e.required??!0?/* @__PURE__ */ g(`span`,{class:`${Q}-field-req`,"aria-hidden":`true`,children:` *`}):null]}),a?/* @__PURE__ */ g(`span`,{class:`${Q}-field-type`,children:a}):null]}),l,e.validationHint&&!r?/* @__PURE__ */ g(`span`,{class:`${Q}-field-hint`,children:e.validationHint}):null,r?/* @__PURE__ */ g(`span`,{class:`${Q}-field-error`,role:`alert`,children:r}):null]})}function jc(e){let{field:t,value:n,otherText:r,disabled:i,strings:a,onChange:o,onOtherChange:s,fieldTid:c}=e,l=typeof n==`string`?n:``;switch(t.type){case`textarea`:return/* @__PURE__ */ g(`textarea`,{class:`${Q}-field-input`,rows:3,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c});case`select`:return/* @__PURE__ */ _(`select`,{class:`${Q}-field-input`,value:l,disabled:i,onChange:e=>o(e.currentTarget.value),"data-testid":c,children:[/* @__PURE__ */ g(`option`,{value:``,children:t.placeholder??`—`}),(t.options??[]).map(e=>/* @__PURE__ */ g(`option`,{value:e.value,children:e.label??e.value},e.value))]});case`radio`:{let e=t.allowOther&&l===Oc;return/* @__PURE__ */ _(`div`,{class:`${Q}-field-choices`,role:`radiogroup`,"data-testid":c,children:[(t.options??[]).map(e=>/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${Q}-${t.name}`,checked:l===e.value,disabled:i,onChange:()=>o(e.value)}),/* @__PURE__ */ g(`span`,{children:e.label??e.value})]},e.value)),t.allowOther?/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${Q}-${t.name}`,checked:l===Oc,disabled:i,onChange:()=>o(Oc)}),/* @__PURE__ */ g(`span`,{children:a.formOther})]}):null,e?/* @__PURE__ */ g(`input`,{class:`${Q}-field-input`,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.currentTarget.value)}):null]})}case`checkbox`:return/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`checkbox`,checked:l===`true`,disabled:i,onChange:e=>o(e.currentTarget.checked?`true`:``),"data-testid":c}),/* @__PURE__ */ g(`span`,{children:t.placeholder??t.label})]});case`multiselect`:{let e=Array.isArray(n)?n:[];function l(t,n){return o(n?[...e,t]:e.filter(e=>e!==t))}return/* @__PURE__ */ _(`div`,{class:`${Q}-field-choices`,"data-testid":c,children:[(t.options??[]).map(t=>/* @__PURE__ */ _(`label`,{class:`${Q}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`checkbox`,checked:e.includes(t.value),disabled:i,onChange:e=>l(t.value,e.currentTarget.checked)}),/* @__PURE__ */ g(`span`,{children:t.label??t.value})]},t.value)),t.allowOther||(t.options??[]).length===0?/* @__PURE__ */ g(`textarea`,{class:`${Q}-field-input`,rows:2,value:r,placeholder:t.placeholder??a.formOtherPlaceholder,disabled:i,onInput:e=>s(e.currentTarget.value)}):null]})}default:return/* @__PURE__ */ g(`input`,{...Mc(t.type),class:`${Q}-field-input`,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c})}}function Mc(e){switch(e){case`number`:return{type:e};case`email`:return{type:e};case`tel`:return{type:e};case`url`:return{type:e};case`date`:case`time`:return{type:e};default:return{type:`text`}}}function Nc(e){let t={};for(let n of e)n.defaultValue!=null&&(t[n.name]=n.type===`multiselect`?n.defaultValue.split(`,`).map(e=>e.trim()).filter(Boolean):n.defaultValue);return t}function Pc(e,t,n){let r={...t};for(let i of e){let e=n[i.name]?.trim();if(i.type===`radio`&&i.allowOther&&t[i.name]===Oc)r[i.name]=e??``;else if(i.type===`multiselect`&&e){let n=e.split(/[,\n;]+/).map(e=>e.trim()).filter(Boolean),a=t[i.name];r[i.name]=[...Array.isArray(a)?a:[],...n]}}return r}const Fc=M.cssPrefix;function Ic({form:e,strings:t,onSubmit:n,onSkip:r}){return/* @__PURE__ */ _(`div`,{class:`${Fc}-form-gate`,"data-testid":X.formGate,children:[e.title?/* @__PURE__ */ g(`h3`,{class:`${Fc}-form-gate-title`,children:e.title}):null,e.description?/* @__PURE__ */ g(`p`,{class:`${Fc}-form-gate-desc`,children:e.description}):null,/* @__PURE__ */ g(kc,{fields:e.fields,strings:t,submitLabel:e.submitLabel??t.formSubmit,onSubmit:n,skipLabel:e.skippable?t.formSkip:void 0,onSkip:e.skippable?r:void 0,submitTestId:X.formSubmit,skipTestId:X.formSkip})]})}function Lc({marker:e,strings:t,onFill:n}){let r=e.outcome===`skipped`,i=r?t.formSkipped:t.formSubmitted,a=e.title?/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`span`,{children:e.title}),/* @__PURE__ */ g(`span`,{class:`${Fc}-sr-only`,children:i})]}):/* @__PURE__ */ g(`span`,{children:i}),o=e.form?.reviewable??!1,s=!r&&o&&e.values&&Object.keys(e.values).length>0?e.values:null;if(s){function t(t){return e.form?.fields.find(e=>e.name===t)?.label??t}return/* @__PURE__ */ _(`details`,{class:`${Fc}-form-done`,"data-outcome":e.outcome,"data-testid":X.formDone,children:[/* @__PURE__ */ _(`summary`,{class:`${Fc}-form-done-summary`,"data-testid":X.formDoneToggle,children:[/* @__PURE__ */ g(Ka,{}),a,/* @__PURE__ */ g(ja,{})]}),/* @__PURE__ */ g(`dl`,{class:`${Fc}-form-answers`,"data-testid":X.formAnswers,children:Object.entries(s).map(([e,n])=>/* @__PURE__ */ _(`div`,{class:`${Fc}-form-answer`,children:[/* @__PURE__ */ g(`dt`,{children:t(e)}),/* @__PURE__ */ g(`dd`,{children:n})]},e))})]})}return/* @__PURE__ */ _(`div`,{class:`${Fc}-form-done`,"data-outcome":e.outcome,"data-testid":X.formDone,role:`status`,children:[g(r?Ga:Ka,{}),a,r&&e.form?.reopenable&&n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Fc}-form-done-fill`,"data-testid":X.formFill,onClick:n,children:t.formFillOut}):null]})}function Rc(e){return e?(e.startsWith(`tool:`)?e.slice(5):e)===`ask-user-questions`:!1}const zc=M.cssPrefix;function Bc({messageId:e,initial:t,strings:n,onFeedback:r}){let[i,a]=m(t);u(()=>a(t),[e,t]);function o(t){let n=i===t?null:t;a(n),r(e,n)}return/* @__PURE__ */ _(`div`,{class:`${zc}-feedback`,role:`group`,"data-testid":X.messageFeedback,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${zc}-msg-action`,"data-active":i===`up`?`true`:void 0,"aria-pressed":i===`up`,"aria-label":n.feedbackUp,title:n.feedbackUp,onClick:()=>o(`up`),"data-testid":X.feedbackUp,children:/* @__PURE__ */ g(bo,{})}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${zc}-msg-action`,"data-active":i===`down`?`true`:void 0,"aria-pressed":i===`down`,"aria-label":n.feedbackDown,title:n.feedbackDown,onClick:()=>o(`down`),"data-testid":X.feedbackDown,children:/* @__PURE__ */ g(xo,{})}),/* @__PURE__ */ g(`span`,{class:`${zc}-sr-only`,role:`status`,"aria-live":`polite`,children:i?n.feedbackThanks:``})]})}const Vc=M.cssPrefix;function Hc(e){let t=e.replace(/([a-z0-9])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).trim().toLowerCase();return t.charAt(0).toUpperCase()+t.slice(1)}function Uc(e){if(e.startsWith(`tool:`)||e.startsWith(`tool-`))return e.slice(5);let t=e.indexOf(`__`),n=e.slice(t+2);return t>0&&n?`${Hc(e.slice(0,t))} · ${Hc(n)}`:e}function Wc(e,t){let n=e===`output-available`||e===`output-error`||e===`output-denied`,r=e===`approval-responded`||t?.approved!==void 0;return{terminal:n,responded:r,decided:n||r}}function Gc({status:e,icon:t,label:n}){return/* @__PURE__ */ _(`span`,{class:`${Vc}-toolui-badge ${Vc}-toolui-status`,"data-status":e,children:[/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-status-icon`,children:t}),n]})}function Kc(e,t){return e===`output-error`?`error`:e===`output-denied`||t?.approved===!1?`denied`:e===`output-available`?`completed`:e===`approval-responded`||t?.approved===!0?`responded`:e===`approval-requested`?`awaiting`:`running`}function qc(e,t,n={}){return n.submitted?`responded`:Xc(Kc(e,t),n.superseded,n.live??!0)}function Jc({status:e}){return g(e===`denied`||e===`error`||e===`superseded`?To:e===`completed`||e===`responded`?wo:Co,{})}function Yc(e,t){switch(e){case`awaiting`:return t.statusAwaiting;case`responded`:return t.statusResponded;case`completed`:return t.statusCompleted;case`denied`:return t.statusDenied;case`error`:return t.statusError;case`superseded`:return t.statusSuperseded;default:return t.statusRunning}}function Xc(e,t,n){return t&&(e===`awaiting`||e===`running`)?`superseded`:!n&&e===`running`?`error`:e}function Zc({state:e,approval:t,strings:n,superseded:r,live:i=!0,submitted:a=!1}){let o=qc(e,t,{superseded:r,live:i,submitted:a});return/* @__PURE__ */ g(Gc,{status:o,icon:/* @__PURE__ */ g(Jc,{status:o}),label:Yc(o,n)})}function Qc({name:e,state:t,approval:n,strings:r,superseded:i,live:a,submitted:o}){return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`span`,{class:`${Vc}-toolui-name-pill`,children:[/* @__PURE__ */ g(So,{}),/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-name-text`,children:e})]}),/* @__PURE__ */ g(Zc,{state:t,approval:n,strings:r,superseded:i,live:a,submitted:o}),/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-chevron`,children:/* @__PURE__ */ g(Za,{})})]})}function $c({part:e,strings:t,testid:n,superseded:r,live:a,submitted:o}){let s=f(()=>i(()=>e.inputSig.value),[e]),c=f(()=>i(()=>e.outputSig.value),[e]),l=f(()=>i(()=>e.errorSig.value),[e]),u=f(()=>i(()=>e.stateSig.value),[e]),d=f(()=>i(()=>e.approvalSig.value),[e]);return/* @__PURE__ */ _(`details`,{class:`${Vc}-toolui ${Vc}-toolui-collapsible`,"data-testid":n,children:[/* @__PURE__ */ g(`summary`,{class:`${Vc}-toolui-head`,children:/* @__PURE__ */ g(Qc,{name:Uc(e.toolName),state:u.value,approval:d.value,strings:t,superseded:r,live:a,submitted:o})}),/* @__PURE__ */ g(el,{label:t.toolParameters,value:s.value}),c.value===void 0?null:/* @__PURE__ */ g(el,{label:t.toolResult,value:c.value}),l.value?/* @__PURE__ */ g(el,{label:t.statusError,value:l.value,error:!0}):null]})}function el({label:e,value:t,error:n}){let r=n?typeof t==`string`?t:``:nl(tl(t));return r?/* @__PURE__ */ _(`div`,{class:`${Vc}-toolui-section`,children:[/* @__PURE__ */ g(`span`,{class:`${Vc}-toolui-label`,children:e}),/* @__PURE__ */ g(`pre`,{class:`${Vc}-toolui-code`,"data-error":n?`true`:void 0,children:r})]}):null}function tl(e){if(e&&typeof e==`object`){let t=e;if(t.storage===`tool-result-ref`&&`summary`in t)return t.summary}return e}function nl(e){if(e==null)return``;try{let t=typeof e==`string`?e:JSON.stringify(e,null,2);return!t||t===`{}`||t===`[]`||t===`""`?``:t.length>800?`${t.slice(0,800)}…`:t}catch{return``}}function rl(e){return e.partsSig.value.some(e=>e.kind===`text`&&e.textSig.value.length>0)}function il(e){return e.partsSig.value.some(e=>e.kind===`reasoning`)}function al(e){return e.streaming&&!e.bufferedHold&&!(e.reasoningVisible&&e.working)}function ol(e){let{streaming:t,reasoningVisible:n,emptyReply:r,hidden:i}=e,a=e.responseMode===`buffered`&&t,o=t&&!e.hasAnswerText;return{streaming:t,bufferedHold:a,reasoningVisible:n,working:o,showStreamDots:al({streaming:t,bufferedHold:a,reasoningVisible:n,working:o}),emptyReply:r,hidden:i}}function sl(e,t){let n=e.stateSig.value,r=e.approvalSig.value,{terminal:i,responded:a,decided:o}=Wc(n,r),s=t.continuationStreaming===!0&&!o,c=t.superseded&&!o&&!s;return{pill:qc(n,r,{superseded:c,live:t.live,submitted:s}),state:n,terminal:i,decided:o||s,showApproveReject:!o&&!t.superseded&&!s,showAnswered:a&&!i&&!c,showSubmitted:s,showEdit:a&&t.active&&!i,skipped:c,answeredApproved:r?.approved}}const cl=M.cssPrefix;function ll({part:e,strings:t}){let n=e.title||e.filename||e.url||t.sources;return e.url?/* @__PURE__ */ _(`a`,{class:`${cl}-source`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,"data-testid":X.source,children:[/* @__PURE__ */ g(`span`,{class:`${cl}-source-icon`,"aria-hidden":`true`,children:`🔗`}),/* @__PURE__ */ g(`span`,{class:`${cl}-source-label`,children:n})]}):/* @__PURE__ */ _(`span`,{class:`${cl}-source`,"data-testid":X.source,children:[/* @__PURE__ */ g(`span`,{class:`${cl}-source-icon`,"aria-hidden":`true`,children:`📄`}),/* @__PURE__ */ g(`span`,{class:`${cl}-source-label`,children:n})]})}const ul=M.cssPrefix;function dl({part:e,strings:t,active:n,superseded:r=!1,continuationStreaming:a=!1,onDecision:o,onEdit:s}){let c=f(()=>i(()=>e.approvalSig.value),[e]),l=f(()=>i(()=>sl(e,{active:n,superseded:r,continuationStreaming:a})),[e,n,r,a]).value,{terminal:u,showApproveReject:d,showAnswered:p,showSubmitted:m,showEdit:v,skipped:y}=l,b=Uc(e.toolName),x=l.answeredApproved,S=e.toolCallId,C=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`p`,{class:`${ul}-toolui-prompt`,children:t.approvalPrompt.replace(`{tool}`,b)}),/* @__PURE__ */ g(`p`,{class:`${ul}-toolui-subtle`,children:t.approvalBody})]});m?C=/* @__PURE__ */ g(`p`,{class:`${ul}-toolui-subtle`,children:t.approvalSubmitting}):p&&x!==!1?C=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`p`,{class:`${ul}-toolui-prompt`,children:[t.approvalYourResponse.replace(`{decision}`,x?t.approve:t.reject),c.value?.reason?` — ${c.value.reason}`:``]}),v?/* @__PURE__ */ g(`p`,{class:`${ul}-toolui-subtle`,children:t.approvalEditHint}):null,v?null:/* @__PURE__ */ g(`p`,{class:`${ul}-toolui-subtle`,children:t.approvalSubmitting})]}):p&&(C=/* @__PURE__ */ g(h,{}));let w=d||m||v||p&&x!==!1;return/* @__PURE__ */ _(`div`,{class:`${ul}-toolui-group`,"data-testid":l.decided?X.toolDecision:X.toolApproval,children:[/* @__PURE__ */ g($c,{part:e,strings:t,superseded:y,submitted:m}),y||u||!w?null:/* @__PURE__ */ _(`div`,{class:`${ul}-toolui ${ul}-toolui-body`,children:[C,d?/* @__PURE__ */ _(`div`,{class:`${ul}-toolui-actions`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${ul}-form-skip`,disabled:!n,onClick:()=>o(S,!1),"data-testid":X.toolReject,children:t.reject}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${ul}-form-submit`,disabled:!n,onClick:()=>o(S,!0),"data-testid":X.toolApprove,children:t.approve})]}):null,v?/* @__PURE__ */ g(`div`,{class:`${ul}-toolui-actions`,children:/* @__PURE__ */ g(`button`,{type:`button`,class:`${ul}-form-skip`,onClick:()=>s(S),"data-testid":X.toolEdit,children:t.edit})}):null]})]})}const fl=[`text`,`email`,`phone`,`number`,`date`,`single-select`,`multi-select`,`boolean`];function pl(e){return typeof e==`object`&&!!e}function ml(e){let t=pl(e)?e:{},n=(Array.isArray(t.questions)?t.questions:[]).map(hl).filter(e=>e!==null);return{intro:vl(t.intro),questions:n}}function hl(e,t){if(!pl(e))return null;let n=fl.find(t=>t===e.type)??`text`;return{key:vl(e.key)??`q${t+1}`,question:vl(e.question)??`Please provide the missing information.`,type:n,options:Array.isArray(e.options)?e.options.filter(e=>typeof e==`string`&&e.trim().length>0):void 0,required:typeof e.required==`boolean`?e.required:void 0,helpText:vl(e.helpText)}}function gl(e){switch(e){case`text`:return`textarea`;case`phone`:return`tel`;case`single-select`:case`boolean`:return`radio`;case`multi-select`:return`multiselect`;default:return e}}function _l(e,t,n){return e.questions.map(e=>{let r=gl(e.type),i=e.type===`boolean`?[{value:`yes`,label:t},{value:`no`,label:n}]:(e.options??[]).map(e=>({value:e,label:e}));return{name:e.key,label:e.question,type:r,required:e.required??!1,options:i.length>0?i:void 0,validationHint:e.helpText}})}function vl(e){return typeof e==`string`&&e.trim()?e.trim():void 0}const yl=M.cssPrefix;function bl({skipped:e,submitted:t,strings:n}){return e?{status:`superseded`,statusLabel:n.inputSkipped}:t?{status:`responded`,statusLabel:n.statusResponded}:{status:`completed`,statusLabel:n.inputAnswered}}const xl={text:`qtypeText`,email:`qtypeEmail`,phone:`qtypePhone`,number:`qtypeNumber`,date:`qtypeDate`,"single-select":`qtypeChooseOne`,"multi-select":`qtypeChooseAny`,boolean:`qtypeBoolean`};function Sl(e,t){let n={};for(let r of e)n[r.key]=t[xl[r.type]];return n}function Cl({part:e,strings:t,active:n,superseded:r=!1,continuationStreaming:a=!1,onDecision:o,onEdit:s}){let c=f(()=>i(()=>e.stateSig.value),[e]).value,l=f(()=>i(()=>e.approvalSig.value),[e]).value,u=f(()=>i(()=>ml(e.inputSig.value)),[e]).value,{terminal:d,decided:p}=Wc(c,l),h=p&&l?.approved===!0,v=a&&!p,y=!p&&!r&&!v,b=!y&&!h&&!v,x=h&&n&&!d,S=u.questions,[C,w]=m(null),T=C??(y||h||v),[E,D]=m(!1),O=S.length>1?Ta:to,k=y?t.inputRequired:t.inputBadge,A=v?/* @__PURE__ */ g(`p`,{class:`${yl}-toolui-subtle`,children:t.approvalSubmitting}):y?/* @__PURE__ */ g(wl,{req:u,strings:t,active:n,resolve:(t,n)=>o(e.toolCallId,n,t)}):E?/* @__PURE__ */ g(kc,{fields:_l(u,t.confirmYes,t.confirmNo),strings:t,submitLabel:t.inputSubmit,onSubmit:()=>{},disabled:!0,hideActions:!0,fieldTypeLabels:Sl(S,t),initialValues:h?Al(S,l?.reason):void 0}):/* @__PURE__ */ g(Tl,{questions:S,answers:h?kl(l?.reason):{},strings:t}),{status:j,statusLabel:M}=bl({skipped:b,submitted:v,strings:t});return/* @__PURE__ */ _(`details`,{class:`${yl}-toolui ${yl}-toolui-collapsible${r?` ${yl}-toolui-stale`:``}`,open:T,onToggle:e=>{let t=e.currentTarget.open;t!==T&&w(t)},"data-testid":y?X.toolAskQuestions:X.toolDecision,children:[/* @__PURE__ */ _(`summary`,{class:`${yl}-toolui-head`,children:[/* @__PURE__ */ _(`span`,{class:`${yl}-toolui-q-pill`,children:[/* @__PURE__ */ g(O,{}),k]}),/* @__PURE__ */ _(`span`,{class:`${yl}-toolui-head-end`,children:[y?null:/* @__PURE__ */ g(Gc,{status:j,icon:g(b?To:wo,{}),label:M}),/* @__PURE__ */ g(`span`,{class:`${yl}-toolui-chevron`,children:/* @__PURE__ */ g(Za,{})})]})]}),/* @__PURE__ */ _(`div`,{class:`${yl}-toolui-collapse-body`,children:[u.intro?/* @__PURE__ */ g(`div`,{class:`${yl}-toolui-desc`,children:u.intro}):null,A,y||v?null:/* @__PURE__ */ _(`div`,{class:`${yl}-toolui-footer`,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${yl}-toolui-options-toggle`,onClick:()=>D(e=>!e),"data-testid":X.toolAskOptions,children:[/* @__PURE__ */ g(`span`,{class:`${yl}-toolui-options-chevron${E?` ${yl}-open`:``}`,children:/* @__PURE__ */ g(Za,{})}),E?t.hideOptions:t.showOptions]}),x?/* @__PURE__ */ g(`button`,{type:`button`,class:`${yl}-form-skip`,onClick:()=>s(e.toolCallId),"data-testid":X.toolEdit,children:t.edit}):null]})]})]})}function wl({req:e,strings:t,active:n,resolve:r}){let i=_l(e,t.confirmYes,t.confirmNo),a=e.questions.length===1&&e.questions[0]?.type===`text`;return/* @__PURE__ */ g(kc,{fields:i,strings:t,disabled:!n,submitLabel:t.inputSubmit,footerHint:a?t.inputSubmitHint:void 0,onSubmit:t=>r(Dl(e.questions,t),!0),skipLabel:t.inputSkip,onSkip:()=>r(void 0,!1),submitOnEnter:a,fieldTypeLabels:Sl(e.questions,t),submitTestId:X.toolInputSubmit,skipTestId:X.toolInputSkip})}function Tl({questions:e,answers:t,strings:n}){return/* @__PURE__ */ g(`div`,{class:`${yl}-toolui-summary`,"data-testid":X.toolAskSummary,children:e.map(e=>/* @__PURE__ */ _(`div`,{class:`${yl}-field`,children:[/* @__PURE__ */ g(`span`,{class:`${yl}-field-head`,children:/* @__PURE__ */ _(`span`,{class:`${yl}-field-label`,children:[e.question,e.required?/* @__PURE__ */ g(`span`,{class:`${yl}-field-req`,"aria-hidden":`true`,children:` *`}):null]})}),/* @__PURE__ */ g(`p`,{class:`${yl}-toolui-answer`,children:El(e,t[e.key],n)||`—`})]},e.key))})}function El(e,t,n){return e.type===`boolean`?t===`yes`?n.confirmYes:t===`no`?n.confirmNo:t??``:t??``}function Dl(e,t){let n=e.flatMap(e=>{let n=t[e.key];if(n==null||n.trim()===``)return[];let r=e.type===`multi-select`?n.split(`,`).map(e=>e.trim()).filter(Boolean):n;return[{key:e.key,value:r}]});return JSON.stringify({answers:n})}function Ol(e){if(!e)return{};let t=(()=>{try{return JSON.parse(e)}catch{return}})()?.answers;if(!Array.isArray(t))return{};let n={};for(let e of t)if(e&&typeof e==`object`&&`key`in e){let{key:t,value:r}=e;if(typeof t!=`string`)continue;typeof r==`string`?n[t]=r:Array.isArray(r)&&(n[t]=r.filter(e=>typeof e==`string`))}return n}function kl(e){let t=Ol(e),n={};for(let[e,r]of Object.entries(t))n[e]=Array.isArray(r)?r.join(`, `):r;return n}function Al(e,t){let n=Ol(t),r={};for(let t of e){let e=n[t.key];e!==void 0&&(t.type===`multi-select`?r[t.key]=Array.isArray(e)?e:[e]:r[t.key]=Array.isArray(e)?e[0]??``:e)}return r}function jl({part:e,strings:t,live:n}){let r=f(()=>i(()=>e.inputSig.value),[e]),a=f(()=>i(()=>e.outputSig.value),[e]),o=f(()=>i(()=>e.errorSig.value),[e]);return f(()=>i(()=>!!nl(r.value)||!!o.value||!!nl(tl(a.value))),[r,a,o]).value?/* @__PURE__ */ g($c,{part:e,strings:t,testid:X.toolCall,live:n}):null}const Ml=M.cssPrefix,Nl=y(Pl);function Pl({message:e,status:t,strings:n,responseMode:r,showReasoning:a,showToolCalls:o,showSources:s,interactive:c=!1,superseded:l=!1,tool:u,onRetry:d,enableMessageFeedback:p=!1,onFeedback:m}){let h=[...f(()=>i(()=>e.partsSig.value),[e]).value];for(let t of e.attachments??[])t.url&&!h.some(e=>e.kind===`file`&&e.url===t.url)&&h.push({kind:`file`,url:t.url,mediaType:t.mediaType});let v=f(()=>i(()=>Ai(e)),[e]),y=f(()=>i(()=>Mi(e)),[e]),b=f(()=>i(()=>rl(e)),[e]),x=f(()=>i(()=>a&&il(e)),[e,a]),S=t===`streaming`,C=e.role===`assistant`&&S,w=ol({streaming:C,responseMode:r,reasoningVisible:x.value,hasAnswerText:b.value,emptyReply:v.value,hidden:y.value}),{bufferedHold:T,working:E,showStreamDots:D}=w;if(w.hidden)return null;let O=Il(e.createdAt),k=e.role===`assistant`||e.role===`operator`,A=p&&!!m&&!!e.serverMessageId&&k&&!S&&t!==`error`&&!v.value,j=S?``:h.filter(e=>e.kind===`text`).map(t=>e.role===`assistant`?Lr(t.textSig.peek()):t.textSig.peek()).join(`
|
|
31
31
|
|
|
32
|
-
`).trim(),M=!S&&t!==`error`&&!v.value&&j.length>0,ee=A||M;return/* @__PURE__ */ g(`div`,{class:`${jl}-bubble-row`,"data-role":e.role,"data-testid":Do(X.messageBubble,e.serverMessageId??e.id),children:/* @__PURE__ */ _(`div`,{class:`${jl}-bubble-col`,children:[/* @__PURE__ */ _(`div`,{class:`${jl}-bubble`,children:[e.role===`operator`&&e.operatorInitials?/* @__PURE__ */ g(`span`,{class:`${jl}-bubble-author`,children:e.operatorInitials}):null,/* @__PURE__ */ _(`div`,{class:`${jl}-bubble-body`,children:[T?/* @__PURE__ */ g(Vl,{label:n.loading}):h.map((r,i)=>/* @__PURE__ */ g(Il,{part:r,generativeUi:e.role===`assistant`,active:E,live:C,strings:n,showReasoning:a,showToolCalls:o,showSources:s,interactive:c&&t===`complete`&&(r.kind!==`tool`||gi(e,i)),superseded:l,continuationStreaming:e.continuationStreaming===!0,tool:u},`${zl(r)}#${i}`)),D&&/* @__PURE__ */ g(Bl,{}),t===`error`||v.value?/* @__PURE__ */ _(`div`,{class:`${jl}-error`,role:`alert`,children:[/* @__PURE__ */ g(`span`,{children:e.errorText??n.errorGeneric}),d?/* @__PURE__ */ g(`button`,{type:`button`,class:`${jl}-error-retry`,onClick:()=>d(e),"data-testid":X.messageRetry,children:n.errorRetry}):null]}):null]})]}),O||ee?/* @__PURE__ */ _(`div`,{class:`${jl}-bubble-meta`,children:[O?/* @__PURE__ */ g(`time`,{class:`${jl}-bubble-time`,dateTime:O.iso,title:O.full,children:O.short}):null,ee?/* @__PURE__ */ _(`div`,{class:`${jl}-bubble-actions`,children:[A&&e.serverMessageId?/* @__PURE__ */ g(Bc,{messageId:e.serverMessageId,initial:e.feedback??null,strings:n,onFeedback:m}):null,M?/* @__PURE__ */ g(Pl,{text:j,strings:n}):null]}):null]}):null]})})}function Pl({text:e,strings:t}){let[n,r]=m(!1);function i(){navigator.clipboard?.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1500)}).catch(()=>{})}let a=n?t.copied:t.copy;return/* @__PURE__ */ g(`button`,{type:`button`,class:`${jl}-msg-action`,"data-active":n?`true`:void 0,"aria-label":a,title:a,onClick:i,"data-testid":X.messageCopy,children:g(n?Ka:yo,{})})}function Fl(e){if(typeof e!=`number`||!Number.isFinite(e))return null;try{let t=new Date(e);return{short:t.toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`}),full:t.toLocaleString(void 0,{dateStyle:`full`,timeStyle:`short`}),iso:t.toISOString()}}catch{return null}}function Il({part:e,generativeUi:t,active:n,live:r,strings:i,showReasoning:a,showToolCalls:o,showSources:s,interactive:c,superseded:l,continuationStreaming:u,tool:d}){switch(e.kind){case`step-start`:return null;case`text`:return/* @__PURE__ */ g(zo,{textSig:e.textSig,doneSig:e.doneSig,generativeUi:t,strings:i});case`reasoning`:return a?/* @__PURE__ */ g(Rl,{part:e,active:n,strings:i}):null;case`tool`:return/* @__PURE__ */ g(Ll,{part:e,strings:i,showToolCalls:o,interactive:c,superseded:l,continuationStreaming:u,live:r,tool:d});case`file`:return e.mediaType.startsWith(`image/`)?/* @__PURE__ */ g(`img`,{src:e.url,alt:``,loading:`lazy`}):/* @__PURE__ */ g(`a`,{href:e.url,target:`_blank`,rel:`noreferrer noopener`,children:e.url});case`source`:return s?/* @__PURE__ */ g(cl,{part:e,strings:i}):null}}function Ll({part:e,strings:t,showToolCalls:n,interactive:r,superseded:a,continuationStreaming:o,live:s,tool:c}){let l=f(()=>i(()=>e.approvalSig.value!==void 0),[e]);return c?.humanInLoop&&l.value?Rc(e.toolName)?/* @__PURE__ */ g(Sl,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:c.onDecision,onEdit:c.onEdit}):/* @__PURE__ */ g(ul,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:c.onDecision,onEdit:c.onEdit}):n?/* @__PURE__ */ g(Al,{part:e,strings:t,live:s}):null}function Rl({part:e,active:t,strings:n}){return/* @__PURE__ */ _(`details`,{class:`${jl}-reasoning`,"data-testid":X.reasoning,open:t,"data-active":t?`true`:void 0,children:[/* @__PURE__ */ g(`summary`,{class:`${jl}-reasoning-summary`,children:/* @__PURE__ */ g(`span`,{class:`${jl}-reasoning-label`,children:t?n.thinking:n.thoughts})}),/* @__PURE__ */ g(`div`,{class:`${jl}-reasoning-body`,children:/* @__PURE__ */ g(zo,{textSig:e.textSig,doneSig:e.doneSig})})]})}function zl(e){switch(e.kind){case`text`:case`reasoning`:case`step-start`:return`${e.kind}:${e.id}`;case`tool`:return`tool:${e.toolCallId}`;case`file`:return`file:${e.url}`;case`source`:return`source:${e.sourceId}`}}function Bl(){return/* @__PURE__ */ _(`span`,{class:`${jl}-typing`,"data-testid":X.typingDots,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{})]})}function Vl({label:e}){return/* @__PURE__ */ _(`span`,{class:`${jl}-loading`,role:`status`,children:[/* @__PURE__ */ g(`span`,{class:`${jl}-loading-spinner`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${jl}-loading-label`,children:e})]})}const Hl=M.cssPrefix;function Ul({messagesSig:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,enableMessageFeedback:o,onFeedback:c,loading:l,onLoadPreviousMessages:f,idle:h,controlMode:v=`ai-agent`,tool:y,onRetry:b,form:x,formMarkers:S,onFillForm:C}){let w=p(null),T=s(()=>e.value),[E,D]=m(!1),[O,k]=m(!1),A=p(!1),j=p(!1),[M,ee]=m(),te=p(!1),N=p(!1),ne=p(!1),re=p(0);function ie(){return ne.current||performance.now()-re.current<350}let P=p(0);function ae(e){let t=e.scrollHeight-e.clientHeight>1;e.dataset.fadeTop=t&&e.scrollTop>1?`true`:`false`,e.dataset.fadeBottom=t&&e.scrollHeight-e.scrollTop-e.clientHeight>1?`true`:`false`}function oe(e){return D(e.scrollHeight-e.scrollTop-e.clientHeight>240)}function F(e){P.current=performance.now(),e.scrollTop=e.scrollHeight,ae(e)}function I(e,t){F(e);let n=t,r=0;function i(){N.current||ie()||(F(e),--n>0&&(r=requestAnimationFrame(i)))}return t>0&&(r=requestAnimationFrame(i)),()=>cancelAnimationFrame(r)}function se(e,t){let n,r,i,a=-1;function o(){n.disconnect(),r.disconnect(),clearTimeout(i)}function s(){if(N.current||ie()||a>=0&&e.scrollTop<a-4)return o();F(e),a=e.scrollTop}return n=new ResizeObserver(s),r=new MutationObserver(s),s(),n.observe(e),r.observe(e,{childList:!0,subtree:!0,characterData:!0}),i=setTimeout(o,t),o}let ce=T.value[0]?.id;d(()=>{let e=w.current;if(e&&T.value.length!==0&&!j.current&&(te.current=!0,T.value.some(e=>e.role===`user`)))return se(e,300)},[ce]);let le=p(0);u(()=>{let e=w.current,t=T.value,n=le.current;if(le.current=t.length,e&&te.current&&!j.current){if(t.slice(n).some(e=>e.role===`user`))return N.current=!1,I(e,3);t.some(e=>e.role===`user`)&&(N.current||ie()||e.scrollHeight-e.scrollTop-e.clientHeight<120&&F(e))}},[T.value.length]);let ue=p(null);u(()=>{let e=w.current,t=T.value.at(-1),n=ue.current;if(ue.current=t?{id:t.id,streaming:t.status===`streaming`}:null,e&&te.current&&t&&t.id===n?.id&&!n.streaming&&t.status===`streaming`)return N.current=!1,I(e,3)},[T.value]),u(()=>{let e=w.current;if(!e)return;let t=T.value.at(-1);if(!t||t.status!==`streaming`&&!T.value.some(e=>e.role===`user`))return;let n=()=>{N.current||ie()||e.scrollHeight-e.scrollTop-e.clientHeight<240&&F(e)};if(t.status!==`streaming`)return se(e,300);n();let r=new MutationObserver(n);return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>r.disconnect()},[T.value]);let de=x?.form.id,fe=!!x&&(S??[]).some(e=>e.formId===x.form.id);d(()=>{let e=w.current;e&&de&&!N.current&&T.value.some(e=>e.role===`user`)&&(fe?e.querySelector(`[data-testid="${X.formGate}"]`)?.scrollIntoView({block:`nearest`}):F(e))},[de,fe]),u(()=>{let e=w.current;if(!e)return;let t=()=>{oe(e),ae(e),performance.now()-P.current>150&&(N.current=e.scrollHeight-e.scrollTop-e.clientHeight>8)};function n(){N.current=!0}function r(e){e.deltaY<0&&n()}let i=0;function a(e){i=e.touches[0]?.clientY??0,ne.current=!0}function o(e){(e.touches[0]?.clientY??0)>i+4&&n()}function s(){ne.current=!1,re.current=performance.now()}function c(){ne.current=!0}return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`wheel`,r,{passive:!0}),e.addEventListener(`touchstart`,a,{passive:!0}),e.addEventListener(`touchmove`,o,{passive:!0}),e.addEventListener(`touchend`,s,{passive:!0}),e.addEventListener(`touchcancel`,s,{passive:!0}),e.addEventListener(`pointerdown`,c,{passive:!0}),window.addEventListener(`pointerup`,s,{passive:!0}),window.addEventListener(`pointercancel`,s,{passive:!0}),oe(e),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`wheel`,r),e.removeEventListener(`touchstart`,a),e.removeEventListener(`touchmove`,o),e.removeEventListener(`touchend`,s),e.removeEventListener(`touchcancel`,s),e.removeEventListener(`pointerdown`,c),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[]);function pe(){let e=w.current;e&&(N.current=!1,F(e))}let me=T.value.filter(e=>!e.ephemeral),he=me[0],L=he?.serverMessageId??he?.id,ge=!!(f&&me.length>=50&&L!==M);async function _e(){if(!f||A.current)return;let e=w.current,t=e?.scrollHeight??0,n=e?.scrollTop??0;A.current=!0,j.current=!0,k(!0);try{let r=await f();r===!1&&L&&ee(L),r&&e&&(await new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e()))),e.scrollTop=n+e.scrollHeight-t,ae(e),oe(e))}finally{j.current=!1,A.current=!1,k(!1)}}let R=[],ve=``,z=T.value.at(-1)?.id,ye=[...S??[]].toSorted((e,t)=>(e.createdAt??1/0)-(t.createdAt??1/0));function be(e){return x&&e.formId===x.form.id?/* @__PURE__ */ g(Ic,{form:x.form,strings:t,onSubmit:x.onSubmit,onSkip:x.onSkip},`gate:${e.formId}`):/* @__PURE__ */ g(Lc,{marker:e,strings:t,onFill:!x&&C?()=>C(e.formId):void 0},e.key)}function xe(e){for(let t=ye[0];t?.createdAt!==void 0&&!(e!==void 0&&t.createdAt>e);t=ye[0])ye.shift(),R.push(be(t))}for(let e of T.value){if(e.role===`assistant`&&e.id!==z&&Ai(e))continue;xe(e.createdAt);let s=Wl(e.createdAt);s&&s!==ve&&(R.push(/* @__PURE__ */ g(`div`,{class:`${Hl}-date-divider`,children:/* @__PURE__ */ g(`span`,{class:`${Hl}-date-pill`,title:Gl(e.createdAt),children:Kl(e.createdAt,t)})},`day:${s}`)),ve=s);let l=e.retryAction!==void 0||e.role===`assistant`&&e.id===z?ji(T.value,e):void 0,u=l!==void 0&&(l.kind!==`continue-assistant`||v===`ai-agent`);R.push(/* @__PURE__ */ g(Ml,{message:e,status:e.status,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,interactive:!!h&&v===`ai-agent`&&e.id===z,superseded:e.id!==z,tool:y,onRetry:h&&u&&(e.role===`user`||e.id===z)?b:void 0,enableMessageFeedback:o,onFeedback:c},e.id))}for(let e of ye)R.push(be(e));return/* @__PURE__ */ _(`div`,{class:`${Hl}-list-wrap`,children:[/* @__PURE__ */ _(`div`,{ref:w,class:`${Hl}-list ${Hl}-list--fade`,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,children:[l&&T.value.length===0?/* @__PURE__ */ g(`div`,{class:`${Hl}-list-loading`,role:`status`,children:t.conversationLoading}):null,ge?/* @__PURE__ */ g(`div`,{class:`${Hl}-load-previous`,children:/* @__PURE__ */ g(`button`,{type:`button`,onClick:_e,disabled:O,"aria-busy":O,"data-testid":X.loadPreviousMessages,children:t.loadPreviousMessages})}):null,R,x&&!fe?/* @__PURE__ */ g(Ic,{form:x.form,strings:t,onSubmit:x.onSubmit,onSkip:x.onSkip}):null]}),E?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Hl}-jump`,onClick:pe,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":X.scrollToBottom,children:/* @__PURE__ */ g(Za,{})}):null]})}function Wl(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function Gl(e){if(typeof e!=`number`||!Number.isFinite(e))return``;try{return new Date(e).toLocaleDateString(void 0,{dateStyle:`full`})}catch{return``}}function Kl(e,t){let n=new Date(e);function r(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime()}let i=Math.round((r(/* @__PURE__ */ new Date)-r(n))/864e5);return i<=0?t.dateToday:i===1?t.dateYesterday:i<7?n.toLocaleDateString(void 0,{weekday:`long`}):n.toLocaleDateString(void 0,{month:`long`,day:`numeric`,year:`numeric`})}function ql({panelEl:e,resize:t,position:n,initialSize:r,onSizeChange:i,strings:a}){let o=M.cssPrefix,s=p(null);if(u(()=>{if(!e)return;let n=e.style;t.minWidth&&n.setProperty(`--${o}-resize-min-w`,t.minWidth),t.maxWidth&&n.setProperty(`--${o}-resize-max-w`,t.maxWidth),t.minHeight&&n.setProperty(`--${o}-resize-min-h`,t.minHeight),t.maxHeight&&n.setProperty(`--${o}-resize-max-h`,t.maxHeight),r&&(n.setProperty(`--${o}-widget-w`,`${r.width}px`),n.setProperty(`--${o}-widget-h`,`${r.height}px`))},[e,t.minWidth,t.maxWidth,t.minHeight,t.maxHeight,o,r]),!e)return null;let c=n.startsWith(`top-`),l=n.endsWith(`-right`),d=`${o}-resize-grip ${o}-resize-grip--${c?`bottom`:`top`}-${l?`left`:`right`}`;function f(t){if(!e)return;let n=t.currentTarget,r=e.getBoundingClientRect();s.current={pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,startW:r.width,startH:r.height,dirX:l?-1:1,dirY:c?1:-1},n.setPointerCapture(t.pointerId),e.setAttribute(`data-resizing`,``),t.preventDefault()}function m(t){let n=s.current;if(!n||t.pointerId!==n.pointerId||!e)return;let r=(t.clientX-n.startX)*n.dirX,i=(t.clientY-n.startY)*n.dirY;e.style.setProperty(`--${o}-widget-w`,`${n.startW+r}px`),e.style.setProperty(`--${o}-widget-h`,`${n.startH+i}px`)}function h(t){let n=s.current;if(!n||t.pointerId!==n.pointerId||!e)return;t.currentTarget.releasePointerCapture(t.pointerId),e.removeAttribute(`data-resizing`);let r=e.getBoundingClientRect();i({width:Math.round(r.width),height:Math.round(r.height)}),s.current=null}return/* @__PURE__ */ g(`div`,{class:d,role:`separator`,"aria-orientation":`vertical`,"aria-label":a.resizeHandle,title:a.resizeHandle,onPointerDown:f,onPointerMove:m,onPointerUp:h,onPointerCancel:h,"data-testid":X.resizeGrip,children:/* @__PURE__ */ g(Ba,{})})}const Jl=M.cssPrefix;function Yl({suggestions:e,onPick:t,disabled:n=!1}){return e.length===0?null:/* @__PURE__ */ g(`div`,{class:`${Jl}-suggestions`,role:`group`,"aria-label":`Suggested replies`,children:e.map((e,r)=>/* @__PURE__ */ g(`button`,{type:`button`,class:`${Jl}-suggestion`,onClick:()=>t(e),disabled:n,"data-testid":Do(X.suggestion,r),children:e.label},e.id))})}const Xl=M.cssPrefix,Zl=`.${Xl}-header, .${Xl}-back-header, .${Xl}-home-hero`;function Ql(e,t){u(()=>{if(!t||!e)return;function n(e){return Number.parseFloat(e)||0}function r(e,t){return Math.min(t,Math.max(-t,e))}let i=null,a=t=>{let r=t.target;if(!(r instanceof Element)||!r.closest(Zl)||r.closest(`button, a, input, textarea, select, [role="tab"], [contenteditable]`))return;let a=e.getBoundingClientRect();i={id:t.pointerId,x:t.clientX,y:t.clientY,dx:n(e.style.getPropertyValue(`--${Xl}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${Xl}-modal-dy`)),maxX:(window.innerWidth+a.width)/2-56,maxY:(window.innerHeight+a.height)/2-56},e.dataset.dragging=`true`,t.preventDefault()},o=t=>{if(!i||t.pointerId!==i.id)return;let n=r(i.dx+t.clientX-i.x,i.maxX),a=r(i.dy+t.clientY-i.y,i.maxY);e.style.setProperty(`--${Xl}-modal-dx`,`${n}px`),e.style.setProperty(`--${Xl}-modal-dy`,`${a}px`)},s=t=>{i&&t.pointerId===i.id&&(i=null,delete e.dataset.dragging)};return e.addEventListener(`pointerdown`,a),window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s),()=>{e.removeEventListener(`pointerdown`,a),window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[e,t])}function $l({containerRef:e,onDrop:t,disabled:n=!1}){let[r,i]=m(!1);return u(()=>{if(n){i(!1);return}let r=e.current;if(!r)return;let a=0;function o(e){a+=1,e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),i(!0))}function s(){--a,!(a>0)&&(a=0,i(!1))}function c(e){e.dataTransfer?.types.includes(`Files`)&&e.preventDefault()}function l(e){a=0,i(!1),e.dataTransfer&&(e.preventDefault(),t(e.dataTransfer.items))}return r.addEventListener(`dragenter`,o),r.addEventListener(`dragleave`,s),r.addEventListener(`dragover`,c),r.addEventListener(`drop`,l),()=>{r.removeEventListener(`dragenter`,o),r.removeEventListener(`dragleave`,s),r.removeEventListener(`dragover`,c),r.removeEventListener(`drop`,l)}},[e,n,t]),{visible:!n&&r}}const eu=M.cssPrefix;function tu(e){let{options:t,onClose:n}=e,r=t.strings,i=p(null);u(()=>{let e=i.current;if(!e)return;let t=Fo(e);function r(e){e.key===`Escape`&&n?.()}return e.addEventListener(`keydown`,r),()=>{t(),e.removeEventListener(`keydown`,r)}},[n]);let a=e.composerApiRef,o=e.composerActive&&e.view===`chat`&&e.canSend&&!e.activeForm&&!e.sendPreparing&&e.options.features.fileUpload,{visible:s}=$l({containerRef:i,onDrop:l(e=>{o&&a.current?.attachFromDrop(e)},[a,o]),disabled:!o});return Ql(i.current,t.mode===`modal`),/* @__PURE__ */ _(`div`,{ref:i,class:`${eu}-panel`,role:`dialog`,"aria-modal":`false`,"aria-label":r.panelTitle,style:{position:`relative`},"data-testid":X.panel,children:[/* @__PURE__ */ g(nu,{...e,containerEl:i.current,dragOver:s}),/* @__PURE__ */ g(cu,{poweredBy:e.options.poweredBy})]})}function nu(e){let{options:t,transport:n,feedback:r,bus:i,persistence:a,conversationId:o,composerKey:c,panelSize:l,view:u,canSend:d,isStreaming:f,isMemoryCompacting:p,canReleaseQueuedMessages:m,queueManualMessages:v,sendPreparing:y,controlMode:b,assignedOperatorInitials:x,operatorAvailable:S,operatorRequestEnabled:C,onRequestOperator:w,onCancelOperatorRequest:T,loadingMessages:E,onLoadPreviousMessages:D,messagesSig:O,agent:k,suggestions:A,initialWidgetSize:j,onClose:M,onBack:ee,onClear:te,onToggleHistory:N,onSelectHistoryConversation:ne,onNewConversation:re,onWidgetSizeChange:ie,onSend:P,onStop:ae,onSuggestion:oe,activeForm:F,formMarkers:I,onFormSubmit:se,onFormSkip:ce,onFormFill:le,tool:ue,onRetry:de,onMessageFeedback:fe,containerEl:pe,dragOver:me,composerApiRef:he}=e,L=t.strings,ge=s(()=>O.value.some(e=>!e.ephemeral&&e.role!==`system`)).value,_e;return _e=F?null:d?/* @__PURE__ */ _(h,{children:[b&&b!==`ai-agent`?/* @__PURE__ */ g(au,{controlMode:b,operatorInitials:x,operatorAvailable:S,onCancelOperatorRequest:T,strings:L}):null,p&&b===`ai-agent`?/* @__PURE__ */ _(`div`,{class:`${eu}-loading ${eu}-compaction-status`,role:`status`,"data-testid":X.compactionStatus,children:[/* @__PURE__ */ g(`span`,{class:`${eu}-loading-spinner`,"aria-hidden":`true`}),L.compactingContext]}):null,!f&&!p&&b===`ai-agent`&&/* @__PURE__ */ g(Yl,{suggestions:A,onPick:oe,disabled:y}),/* @__PURE__ */ g(Vs,{options:t,transport:n,feedback:r,bus:i,persistence:a,conversationId:o,isStreaming:f,isMemoryCompacting:p,canReleaseQueuedMessages:m,queueManualMessages:v,active:e.composerActive&&u===`chat`,isPreparing:y,operatorRequestEnabled:C,canRequestOperator:ge,controlMode:b,onRequestOperator:w,onSend:P,onStop:ae,apiRef:he},c)]}):/* @__PURE__ */ g(iu,{label:L.conversationClosed,ctaLabel:L.startNewConversation,onNewConversation:te}),/* @__PURE__ */ _(h,{children:[u===`history`?/* @__PURE__ */ g(ru,{strings:L,onBack:N,onClose:M,showClose:sa(t.mode,l,t.actions)}):/* @__PURE__ */ _(`header`,{class:`${eu}-header`,"data-testid":X.panelHeader,children:[ee?/* @__PURE__ */ g(`button`,{type:`button`,class:`${eu}-icon-btn`,onClick:ee,"aria-label":L.moduleBack,title:L.moduleBack,children:/* @__PURE__ */ g(Ya,{})}):null,k?/* @__PURE__ */ g(cc,{agent:k,strings:L}):/* @__PURE__ */ g(`h1`,{children:L.panelTitle}),/* @__PURE__ */ g(rs,{panelProps:e,variant:`chat`})]}),u===`history`?/* @__PURE__ */ g(_c,{transport:n,strings:L,locale:t.locale,persistence:a,onSelect:ne,onNewConversation:re}):/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(yc,{visible:me,strings:L}),/* @__PURE__ */ g(Ul,{messagesSig:O,strings:L,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,showSources:t.showSources,enableMessageFeedback:t.enableMessageFeedback,onFeedback:fe,loading:E,onLoadPreviousMessages:D,idle:!f&&!y&&d&&!F,controlMode:b,tool:ue,onRetry:de,form:F?{form:F,onSubmit:se,onSkip:ce}:null,formMarkers:I,onFillForm:le}),_e,/* @__PURE__ */ g(su,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?/* @__PURE__ */ g(ql,{panelEl:pe,resize:t.size.resize,position:t.position,initialSize:j,onSizeChange:ie,strings:L}):null]})}function ru({strings:e,onBack:t,onClose:n,showClose:r}){return/* @__PURE__ */ _(`header`,{class:`${eu}-header`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${eu}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:/* @__PURE__ */ g(Ya,{})}),/* @__PURE__ */ g(`h1`,{children:e.historyTitle}),r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${eu}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(Ea,{})}):null]})}function iu({label:e,ctaLabel:t,onNewConversation:n}){return/* @__PURE__ */ _(`div`,{class:`${eu}-readonly-banner`,role:`note`,children:[/* @__PURE__ */ g(`span`,{class:`${eu}-readonly-label`,children:e}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${eu}-readonly-cta`,onClick:n,children:t})]})}function au({controlMode:e,operatorInitials:t,operatorAvailable:n,onCancelOperatorRequest:r,strings:i}){let a=ou(e,t,n,i);return/* @__PURE__ */ _(`div`,{class:`${eu}-operator-banner`,role:`status`,"data-mode":e,"data-testid":X.operatorBanner,children:[/* @__PURE__ */ g(`span`,{class:`${eu}-operator-pulse`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${eu}-operator-label`,children:a}),e===`awaiting-operator`&&r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${eu}-cancel-operator-request`,"data-testid":X.cancelOperatorRequest,onClick:r,children:i.cancelOperatorRequest}):null]})}function ou(e,t,n,r){return e===`operator`?r.chattingWithOperator.replace(`{operator}`,t??``):n===!1?r.noOperatorAvailable:r.connectingOperator}function su({disclaimer:e}){return e?/* @__PURE__ */ g(`div`,{class:`${eu}-composer-footer`,children:/* @__PURE__ */ g(`div`,{class:`${eu}-disclaimer`,children:e})}):null}function cu({poweredBy:e}){return e?/* @__PURE__ */ g(`div`,{class:`${eu}-poweredby-bar`,children:/* @__PURE__ */ g(lu,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function lu({logoUrl:e,text:t,href:n}){let r=/* @__PURE__ */ _(h,{children:[e?/* @__PURE__ */ g(`img`,{class:`${eu}-poweredby-logo`,src:e,alt:``,loading:`lazy`}):null,t?/* @__PURE__ */ g(`span`,{children:t}):null]});return n?/* @__PURE__ */ g(`a`,{class:`${eu}-poweredby`,href:n,target:`_blank`,rel:`noopener noreferrer`,children:r}):/* @__PURE__ */ g(`span`,{class:`${eu}-poweredby`,children:r})}const uu=M.cssPrefix;function du({panelProps:e,enabledModules:t,nav:n,bus:r,hasUnread:i,latestNews:a,onSelectConversation:o,onStartNewConversation:c,onSetPanelSize:d}){let f=e.options,m=f.strings,h=p(null),v=p(/* @__PURE__ */ new Set);u(()=>{let t=h.current;if(!t)return;let n=Fo(t);function r(t){t.key===`Escape`&&e.onClose?.()}return t.addEventListener(`keydown`,r),()=>{n(),t.removeEventListener(`keydown`,r)}},[e.onClose]);let y=s(()=>n.sig.value).value,b=va(y),x=f.modules.byId[y.activeTab],S=e.composerActive&&x?.layout===`chat`&&b===void 0,C=e.composerApiRef,w=S&&e.view===`chat`&&e.canSend&&!e.activeForm&&!e.sendPreparing&&e.options.features.fileUpload,{visible:T}=$l({containerRef:h,onDrop:l(e=>{w&&C.current?.attachFromDrop(e)},[C,w]),disabled:!w});Ql(h.current,f.mode===`modal`);let E=b?.kind===`iframe`||b?.kind===`content`,D=t.length>1&&(ya(y)||!E),O=p(null);u(()=>{if(E&&O.current===null)O.current=e.panelSize,e.panelSize===`normal`&&d(`expanded`);else if(!E&&O.current!==null){let e=O.current;O.current=null,d(e)}},[E]);let k={push:e=>n.push(e),pop:()=>n.pop(),switchTab:e=>n.switchTab(e),switchToLayout:e=>{let r=t.find(t=>t.layout===e);r&&n.switchTab(r.id)},selectConversation:o,startNewConversation:c};function A(t){return{options:f,transport:e.transport,strings:m,config:t,nav:k,bus:r,panelProps:e,latestNews:a}}let j=/* @__PURE__ */ g(rs,{panelProps:e,variant:`plain`});x&&v.current.add(x.id);let M=t.filter(e=>v.current.has(e.id));function ee(t){if(t.layout===`chat`)return/* @__PURE__ */ g(nu,{...e,composerActive:S,containerEl:h.current,dragOver:T});let n=nc[t.layout].Root;return n?/* @__PURE__ */ g(n,{...A(t)}):null}function te(){return b?.kind===`iframe`?/* @__PURE__ */ g(oc,{url:b.url,title:b.title,strings:m,onBack:()=>n.pop(),actions:j}):b?.kind===`content`?/* @__PURE__ */ g(Jo,{id:b.id,title:b.title,transport:e.transport,strings:m,bus:r,onBack:()=>n.pop(),actions:j}):null}return/* @__PURE__ */ _(`div`,{ref:h,class:`${uu}-panel ${uu}-messenger`,role:`dialog`,"aria-modal":`false`,"aria-label":m.panelTitle,style:{position:`relative`},"data-testid":X.messengerHome,children:[/* @__PURE__ */ _(`div`,{class:`${uu}-messenger-body`,children:[M.map(e=>/* @__PURE__ */ g(`div`,{class:`${uu}-messenger-pane`,hidden:E||e.id!==x?.id,children:ee(e)},e.id)),te()]}),D?/* @__PURE__ */ g(ic,{modules:t,activeTab:y.activeTab,strings:m,hasUnread:i,onSelect:e=>n.switchTab(e)}):null,/* @__PURE__ */ g(cu,{poweredBy:f.poweredBy}),f.size.resize?.enabled&&(x?.layout!==`chat`||b)?/* @__PURE__ */ g(ql,{panelEl:h.current,resize:f.size.resize,position:f.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:m}):null]})}const fu=M.cssPrefix;function pu({strings:e,onClose:t}){return/* @__PURE__ */ _(`div`,{class:`${fu}-panel ${fu}-modules-empty`,role:`dialog`,"aria-label":e.panelTitle,"data-testid":X.modulesEmpty,children:[t?/* @__PURE__ */ g(`button`,{type:`button`,class:`${fu}-icon-btn ${fu}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(Ea,{})}):null,/* @__PURE__ */ g(`p`,{class:`${fu}-modules-empty-text`,children:e.modulesEmpty})]})}function mu(e){let t=M.cssPrefix,{site:n,blocks:r,strings:i,collapsed:a}=e,o=r?.navigation??[],s=r?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return/* @__PURE__ */ _(`aside`,{class:`${t}-sidebar`,"data-collapsed":a?`true`:`false`,"data-testid":X.sidebar,children:[/* @__PURE__ */ _(`div`,{class:`${t}-sidebar-header`,children:[/* @__PURE__ */ g(hu,{site:n}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?`false`:`true`,title:c,onClick:e.onToggleCollapsed,"data-testid":X.sidebarToggle,children:/* @__PURE__ */ g(gu,{collapsed:a})})]}),a?null:/* @__PURE__ */ _(h,{children:[o.length>0?/* @__PURE__ */ g(`nav`,{class:`${t}-sidebar-section`,"data-section":`navigation`,children:/* @__PURE__ */ g(_u,{items:o})}):null,s.length>0?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-section`,"data-section":`link-cards`,children:/* @__PURE__ */ g(vu,{items:s})}):null,e.showConversations?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-conversations`,children:/* @__PURE__ */ g(_c,{transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function hu({site:e}){let t=M.cssPrefix;if(e?.logo?.url){let n=e.logo.alt??e.title??`Logo`;return/* @__PURE__ */ _(`picture`,{children:[e.logoDark?.url?/* @__PURE__ */ g(`source`,{srcset:e.logoDark.url,media:`(prefers-color-scheme: dark)`}):null,/* @__PURE__ */ g(`img`,{class:`${t}-sidebar-logo`,src:e.logo.url,alt:n})]})}return/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-title`,children:e?.title??M.name})}function gu({collapsed:e}){return/* @__PURE__ */ g(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"aria-hidden":`true`,children:e?/* @__PURE__ */ g(`polyline`,{points:`9 6 15 12 9 18`}):/* @__PURE__ */ g(`polyline`,{points:`15 6 9 12 15 18`})})}function _u({items:e}){let t=M.cssPrefix;return/* @__PURE__ */ g(`ul`,{class:`${t}-sidebar-nav`,children:e.map(e=>/* @__PURE__ */ g(`li`,{children:/* @__PURE__ */ _(`a`,{class:`${t}-sidebar-nav-item`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[e.icon?/* @__PURE__ */ g(`span`,{class:`${t}-sidebar-nav-icon`,"data-icon":e.icon}):null,/* @__PURE__ */ g(`span`,{class:`${t}-sidebar-nav-label`,children:e.label})]})},e.id??e.label))})}function vu({items:e}){let t=M.cssPrefix;return/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-cards`,children:e.map(e=>/* @__PURE__ */ _(`a`,{class:`${t}-sidebar-card`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-card-label`,children:e.label}),e.description?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-card-desc`,children:e.description}):null]},e.id??e.label))})}const yu=M.cssPrefix;function bu(e){return/* @__PURE__ */ _(`main`,{class:`${yu}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?`true`:`false`,children:[/* @__PURE__ */ g(mu,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),/* @__PURE__ */ g(`section`,{class:`${yu}-page-chat`,"aria-label":e.strings.panelTitle,children:e.children})]})}const xu=R.scope(`hitl`);function Su(e){let{streaming:t,controlModeSig:n,messagesSig:r,sendAiTurn:i,bus:a,humanInLoop:o}=e,s=p(t);s.current=t;let c=l((e,t,a)=>{if(s.current||n.value!==`ai-agent`)return!1;let o=r.value.at(-1),c=o?.partsSig.value.findIndex(t=>t.kind===`tool`&&t.toolCallId===e)??-1,l=o?.partsSig.value[c];return!o||l?.kind!==`tool`?(xu.warn(`decideTool: tool part not found`,{toolCallId:e}),!1):o.status!==`complete`||!gi(o,c)||!t(l)?!1:(a(l),o.partsSig.value=[...o.partsSig.value],mi(o)&&(o.status=`streaming`,o.retryAction={kind:`continue-assistant`,messageId:o.serverMessageId??o.id},o.awaitingContinuation=!0,r.value=[...r.value],i({continueExisting:!0})),!0)},[n,r,i]),u=l((e,t,n)=>{let r=!1;c(e,e=>e.stateSig.value===`approval-requested`,i=>{r=Rc(i.toolName);let a=i.approvalSig.value?.id??e;i.approvalSig.value={id:a,approved:t,reason:n},i.stateSig.value=`approval-responded`})&&(r?(xu.info(`toolResult`,{toolCallId:e}),a.emit(`toolResult`,{toolCallId:e})):(xu.info(`toolDecision`,{toolCallId:e,approved:t}),a.emit(`toolDecision`,{toolCallId:e,approved:t})))},[a,c]),d=l(e=>{c(e,e=>e.stateSig.value===`approval-responded`&&e.approvalSig.value?.approved!==void 0,t=>{let n=t.approvalSig.value?.id??e;t.approvalSig.value={id:n},t.stateSig.value=`approval-requested`})},[c]);return{toolInteraction:f(()=>({humanInLoop:o,onDecision:u,onEdit:d}),[o,u,d])}}const Cu=R.scope(`latest-news`);function wu({transport:e,options:t,persistence:n,enabled:r}){let i=t.modules.list.find(e=>e.layout===`news`)?.contentCollectionIds,a=i?.join(`,`),[o,s]=m(),[c,d]=m(()=>n.loadSeenNewsId());u(()=>{if(!r||!i?.length)return;let t=!1;return e.listContent({contentCollectionIds:i,sortBy:`publishedAt`,sortOrder:`desc`,limit:1}).then(e=>{t||s(e.items[0])}).catch(e=>Cu.debug(`listContent (latest news) failed (non-fatal)`,{err:e})),()=>{t=!0}},[e,r,a]);let f=l(e=>{n.saveSeenNewsId(e),d(e)},[n]);return{item:o,unseen:o!==void 0&&o.id!==c,markSeen:f}}function Tu({callout:e,persistence:t}){let n=e?.text??``,r=e?.persistent??!0,[i,a]=m(()=>!r&&t.loadCalloutDismissed(n));return u(()=>{a(!r&&t.loadCalloutDismissed(n))},[n,r,t]),{dismissed:i,dismissCallout:l(()=>{a(!0),r||t.saveCalloutDismissed(n)},[t,n,r])}}function Eu(e){let{transport:t,conversationIdSig:n}=e,r=c(`ai-agent`),i=c(void 0),a=c(void 0),o=p(void 0),s=l(e=>{let t=e.controlRevision,s=o.current;s&&s.conversationId===n.value&&t<s.revision||(o.current={conversationId:n.value,revision:t},r.value=e.controlMode,i.value=e.assignedOperatorInitials,e.controlMode===`awaiting-operator`?e.operatorAvailable!==void 0&&(a.value=e.operatorAvailable):a.value=void 0)},[n,r,i,a]);return{controlModeSig:r,assignedOperatorInitialsSig:i,operatorAvailableSig:a,applyControlState:s,adoptControlStateChunk:l(e=>{if(e.type!==`data-control-state`)return;let t=Ur(e.data);t&&s(t)},[s]),requestOperator:l(async()=>{let e=n.value,r=await t.requestOperator();r&&n.value===e&&s(r)},[t,n,s]),cancelOperatorRequest:l(async()=>{let e=n.value,r=await t.cancelOperatorRequest();r&&n.value===e&&s(r)},[t,n,s])}}const Du=M.cssPrefix,Ou=`--${Du}-visual-viewport-height`,ku=`--${Du}-visual-viewport-top`;function Au(e){let{hostElement:t,mode:n,panelSize:r,isOpen:i,surfaceReady:a,setIsOpen:o}=e;d(()=>{At(t,ba(n,r,i))},[t,i,r,n]),d(()=>{if(!i||!a)return;let e=t.ownerDocument.defaultView,n=e?.visualViewport,r=t.shadowRoot?.querySelector(`.${Du}-anchor`);if(!e||!n||!r)return;let o=()=>{r.style.setProperty(Ou,`${n.height}px`),r.style.setProperty(ku,`${n.offsetTop}px`)},s=0,c=()=>{e.cancelAnimationFrame(s),s=e.requestAnimationFrame(()=>{s=e.requestAnimationFrame(o)})};return o(),n.addEventListener(`resize`,c),n.addEventListener(`scroll`,c),()=>{e.cancelAnimationFrame(s),n.removeEventListener(`resize`,c),n.removeEventListener(`scroll`,c),r.style.removeProperty(Ou),r.style.removeProperty(ku)}},[t,i,a]),u(()=>{if(n!==`modal`||!i)return;function e(e){e.composedPath().some(e=>e instanceof HTMLElement&&e.classList.contains(`${Du}-panel`))||o(!1)}return t.addEventListener(`click`,e),()=>t.removeEventListener(`click`,e)},[t,i,n,o]),u(()=>{if(n!==`drawer`||!i)return;function e(e){e.key===`Escape`&&o(!1)}return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[i,n,o])}const ju=R.scope(`reducer`);var Mu=class{constructor(e,t){this.messagesSig=e,this.onReconcileNeeded=t,V(this,`active`,null),V(this,`openTextParts`,/* @__PURE__ */ new Map),V(this,`partSeq`,0),V(this,`replay`,null)}attach(e){this.active=e,this.openTextParts.clear()}detach(){this.active=null,this.replay=null,this.openTextParts.clear()}beginReplay(e,t){let n=Xr();n.id=e.id;let r=Pu(e)||hi(e)&&(e.status!==`streaming`||mi(e)),i=e.status===`streaming`&&mi(e)&&pi(e);this.replay={baseline:e,shadow:n,chunks:[t],probeContinuation:r,continuationTailReplay:i,liveCatchUp:e.status===`streaming`&&!r},this.attach(n),this.apply(t)}refreshReplayBaseline(){let e=this.replay;if(!e)return null;let t=e.shadow.serverMessageId??e.baseline.serverMessageId,n=this.messagesSig.value,r=n.at(-1),i=r===e.baseline||r?.id===e.baseline.id||t!==void 0&&r?.serverMessageId===t?r:n.find(t=>t===e.baseline)??n.find(n=>n.id===e.baseline.id||t!==void 0&&n.serverMessageId===t);if(!i)return this.detach(),null;if(i===e.baseline)return e;let a=e.baseline;return e.baseline=i,Fu(a,i),e.liveCatchUp&&Pu(e.shadow)&&(i.status===`streaming`||hi(i))?(e.probeContinuation=!1,e.continuationTailReplay=!1,e):(e.probeContinuation=Pu(i)||hi(i)&&(i.status!==`streaming`||mi(i)),e.continuationTailReplay=i.status===`streaming`&&mi(i)&&pi(i),e.liveCatchUp=i.status===`streaming`&&!e.probeContinuation,e)}refreshActive(){let e=this.active;if(!e)return null;let t=e.serverMessageId,n=this.messagesSig.value,r=n.at(-1),i=r===e||r?.id===e.id||t!==void 0&&r?.serverMessageId===t?r:n.find(t=>t===e)??n.find(n=>n.id===e.id||t!==void 0&&n.serverMessageId===t);if(!i)return this.detach(),null;if(i===e)return e;Fu(e,i);let a=Pu(e)&&hi(i);return i.status!==`streaming`&&!a?(this.detach(),null):(this.replay={baseline:i,shadow:e,chunks:[],probeContinuation:!1,continuationTailReplay:!1,liveCatchUp:!0},e)}promoteReplay(){let{baseline:e,shadow:t}=this.replay;return r(()=>{e.role=t.role,e.serverMessageId=t.serverMessageId,e.operatorInitials=t.operatorInitials,e.status=t.status,t.canceled&&(e.canceled=!0),e.finishReason=t.finishReason,e.errorText=t.errorText,e.suggestions=t.suggestions??e.suggestions,e.partsSig.value=t.partsSig.value,this.messagesSig.value=[...this.messagesSig.value]}),this.replay=null,this.active=e,e}promoteContinuation(e=!1){let{baseline:t,chunks:n}=this.replay,i=_i(t);return this.replay=null,r(()=>{if(e){let e=t.partsSig.value.findLastIndex(e=>e.kind===`tool`);t.partsSig.value=t.partsSig.value.slice(0,e+1)}t.awaitingContinuation=!1,t.status=`streaming`,t.finishReason=void 0,t.errorText=void 0,t.suggestions=void 0,this.attach(t);for(let e of n)this.apply(e);t.continuationStreaming=i||void 0,this.messagesSig.value=[...this.messagesSig.value]}),t}settleOwnedContinuation(e){let{baseline:t}=this.replay,n=_i(t);return this.replay=null,r(()=>{t.awaitingContinuation=!1,t.status=`streaming`,t.finishReason=void 0,t.errorText=void 0,t.suggestions=void 0,this.attach(t),this.apply(e),t.continuationStreaming=n||void 0,this.messagesSig.value=[...this.messagesSig.value]}),t}applyResume(e){if(e.type===`start`){let t=(this.replay?.baseline??this.active)?.serverMessageId;t!==void 0&&e.messageId!==void 0&&t!==e.messageId&&this.onReconcileNeeded?.({messageId:t}),this.detach();let n=e.messageId,r=n===void 0?void 0:this.messagesSig.value.find(e=>e.serverMessageId===n||e.id===n);if(r!==void 0)return e.messageMetadata?.senderRole===`visitor`&&r.role===`user`&&(r.status===`pending`||r.status===`error`)&&(r.serverMessageId=n,r.status=`complete`,r.errorText=void 0,r.retryAction=void 0,this.messagesSig.value=[...this.messagesSig.value]),this.beginReplay(r,e),null;let i=e.messageMetadata?.senderRole,a=this.messagesSig.value.at(-1);if(i===void 0&&a?.role===`assistant`&&a.status===`streaming`&&a.serverMessageId===void 0&&!ci(a))return this.attach(a),this.apply(e),null;let o=Xr();return this.attach(o),this.messagesSig.value=[...this.messagesSig.value,o],this.apply(e),null}if(this.replay){let t=this.refreshReplayBaseline();if(!t)return null;t.chunks.push(e),e.type===`data-control-state`&&(t.baseline.operatorRoutedTurn=e.data.controlMode!==`ai-agent`),this.apply(e);let{baseline:n,shadow:r,probeContinuation:i,continuationTailReplay:a,liveCatchUp:o}=t,s=e.type===`finish`||e.type===`error`||e.type===`abort`;if(i){if(!zu(n,r,e))return s&&(Uu(n,r)&&(n.continuationStreaming=!0,this.messagesSig.value=[...this.messagesSig.value],this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id})),this.detach()),null;let t=Pu(n)&&s?this.settleOwnedContinuation(e):this.promoteContinuation();return s?(t.continuationStreaming&&(e.type===`finish`?this.onReconcileNeeded?.({messageId:t.serverMessageId??t.id}):t.continuationStreaming=!1),this.detach(),t):null}if(a&&Lu(n,r)){let e=this.promoteContinuation(!0);return s?(this.detach(),e):null}if(!o)return s&&this.detach(),null;if(s&&!ci(n)&&ci(r)){let e=this.promoteReplay();return this.detach(),e}if(!Iu(n,r))return s&&(this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id}),this.detach()),null;let c=this.promoteReplay();return s?(this.detach(),c):null}let t=this.refreshActive();if(!t)return null;if(this.replay)return this.applyResume(e);if(this.apply(e),e.type===`finish`||e.type===`error`||e.type===`abort`){let n=t;return n.continuationStreaming&&(e.type===`finish`?this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id}):n.continuationStreaming=!1),this.detach(),n}return null}ensureTextPart(e,t,n){let r=`${t}:${n}`,i=this.openTextParts.get(r);if(i)return i;let a={kind:t,id:`${n}#${this.partSeq++}`,textSig:o(``),doneSig:o(!1)};return this.openTextParts.set(r,a),Gu(e,a),a}apply(e){let t=this.active;if(t)switch(e.type){case`start`:{e.messageId&&(t.serverMessageId=e.messageId);let n=e.messageMetadata;n?.senderRole===`operator`?(t.role=`operator`,n.operatorInitials&&(t.operatorInitials=n.operatorInitials)):n?.senderRole===`visitor`&&(t.role=`user`);return}case`finish-step`:this.openTextParts.clear();return;case`start-step`:Gu(t,{kind:`step-start`,id:`ss-${this.partSeq++}`});return;case`finish`:ju.debug(`finish`,{reason:e.finishReason,canContinue:e.canContinue}),t.status=`complete`,t.retryAction=void 0,e.finishReason&&(t.finishReason=e.finishReason),this.bumpDone(t);return;case`error`:ju.warn(`stream error chunk`,{errorText:e.errorText}),t.status=`error`,t.errorText=e.errorText,this.bumpDone(t);return;case`abort`:ju.debug(`stream abort chunk (canceled)`),t.status=`complete`,t.canceled=!0,t.retryAction=void 0,this.bumpDone(t);return;case`text-start`:this.ensureTextPart(t,`text`,e.id);return;case`text-delta`:{let n=this.ensureTextPart(t,`text`,e.id);n.textSig.value+=e.delta;return}case`text-end`:this.ensureTextPart(t,`text`,e.id).doneSig.value=!0;return;case`reasoning-start`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!1;return;case`reasoning-delta`:{let n=this.ensureTextPart(t,`reasoning`,e.id);n.textSig.value+=e.delta;return}case`reasoning-end`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!0;return;case`tool-input-start`:case`tool-input-delta`:case`tool-input-available`:case`tool-input-error`:case`tool-output-available`:case`tool-output-error`:case`tool-output-denied`:case`tool-approval-request`:qu(t,e);return;case`file`:Gu(t,{kind:`file`,url:e.url,mediaType:e.mediaType});return;case`source-url`:Ku(t,{kind:`source`,sourceId:e.sourceId,url:e.url,title:e.title});return;case`source-document`:Ku(t,{kind:`source`,sourceId:e.sourceId,title:e.title,filename:e.filename,mediaType:e.mediaType});return;case`data-suggestions`:t.suggestions=Gr(e.data);return;case`data-control-state`:t.operatorRoutedTurn=e.data.controlMode!==`ai-agent`;return;case`data-memory-compaction-state`:return}}bumpDone(e){r(()=>{e.partsSig.value=[...e.partsSig.value],this.messagesSig.value.includes(e)&&(this.messagesSig.value=[...this.messagesSig.value])})}};const Nu={"input-streaming":0,"input-available":1,"approval-requested":2,"approval-responded":3,"output-available":4,"output-denied":4,"output-error":4};function Pu(e){return e.awaitingContinuation===!0||e.continuationStreaming===!0||e.retryAction?.kind===`continue-assistant`}function Fu(e,t){e.canceled&&(t.canceled=!0),Pu(e)&&(t.status===`streaming`||hi(t))&&(t.awaitingContinuation??(t.awaitingContinuation=e.awaitingContinuation),t.continuationStreaming??(t.continuationStreaming=e.continuationStreaming),t.retryAction===void 0&&(t.retryAction=e.retryAction))}function Iu(e,t){let n=e.partsSig.value,r=t.partsSig.value;return e.role!==t.role||r.length<n.length?!1:n.every((e,t)=>Ru(e,r[t]))}function Lu(e,t){let n=e.partsSig.value,r=n.findLastIndex(e=>e.kind===`tool`),i=new Set(n.slice(0,r+1).flatMap(e=>e.kind===`tool`?[e.toolCallId]:[])),a=t.partsSig.value.filter(e=>e.kind!==`tool`||!i.has(e.toolCallId)),o=n.slice(r+1);return a.length<o.length?!1:o.every((e,t)=>Ru(e,a[t]))}function Ru(e,t){switch(e.kind){case`text`:case`reasoning`:return t?.kind===e.kind&&t.textSig.value.startsWith(e.textSig.value);case`step-start`:return t?.kind===`step-start`;case`tool`:{if(t?.kind!==`tool`||t.toolCallId!==e.toolCallId||!Di(t.toolName,e.toolName)||Nu[t.stateSig.value]<Nu[e.stateSig.value])return!1;let n=e.approvalSig.value?.approved;return n===void 0||t.approvalSig.value?.approved===n}case`file`:return t?.kind===`file`&&t.url===e.url&&t.mediaType===e.mediaType;case`source`:return t?.kind===`source`&&t.sourceId===e.sourceId&&t.url===e.url&&t.title===e.title&&t.filename===e.filename&&t.mediaType===e.mediaType;default:return e}}function zu(e,t,n){return Bu(e,n)||!Vu(e,t)?!0:n.type!==`finish`&&n.type!==`error`&&n.type!==`abort`?!1:pi(t)||e.awaitingContinuation===!0&&n.type!==`finish`?!0:e.awaitingContinuation===!0&&t.partsSig.value.every(e=>e.kind===`step-start`)}function Bu(e,t){if(t.type!==`tool-output-available`&&t.type!==`tool-output-error`&&t.type!==`tool-output-denied`)return!1;let n=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t.toolCallId);return n!==void 0&&Nu[n.stateSig.value]<4}function Vu(e,t){let n=t.partsSig.value;if(n.length===0)return!0;let r=e.partsSig.value;return r.some((e,t)=>n.every((e,n)=>Hu(r[t+n],e)))}function Hu(e,t){switch(t.kind){case`text`:case`reasoning`:return e?.kind===t.kind&&e.textSig.value.startsWith(t.textSig.value);case`step-start`:return e?.kind===`step-start`;case`tool`:return e?.kind===`tool`&&e.toolCallId===t.toolCallId&&(t.toolName===`tool`||Di(e.toolName,t.toolName));case`file`:return e?.kind===`file`&&e.url===t.url&&e.mediaType===t.mediaType;case`source`:return e?.kind===`source`&&e.sourceId===t.sourceId&&e.url===t.url&&e.title===t.title&&e.filename===t.filename&&e.mediaType===t.mediaType;default:return t}}function Uu(e,t){if(Pu(e)||!hi(e))return!1;let n=new Set(e.partsSig.value.filter(e=>e.kind===`tool`).map(e=>e.toolCallId));return!t.partsSig.value.some(e=>e.kind===`tool`&&n.has(e.toolCallId))}function Wu(e,t,n,r){let i=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);if(i)return r&&(i.dynamic=!0),i;let a={kind:`tool`,toolCallId:t,toolName:n??`tool`,dynamic:r?!0:void 0,inputPartialSig:o(``),inputSig:o(void 0),outputSig:o(void 0),errorSig:o(void 0),stateSig:o(`input-streaming`),approvalSig:o(void 0)};return Gu(e,a),a}function Gu(e,t){e.partsSig.value=[...e.partsSig.value,t]}function Ku(e,t){e.partsSig.value.some(e=>e.kind===`source`&&e.sourceId===t.sourceId)||Gu(e,t)}function qu(e,t){switch(t.type){case`tool-input-start`:Wu(e,t.toolCallId,t.toolName,t.dynamic);return;case`tool-input-delta`:{let n=Wu(e,t.toolCallId);n.inputPartialSig.value+=t.inputTextDelta;return}case`tool-input-available`:{let n=Wu(e,t.toolCallId,t.toolName,t.dynamic);n.inputSig.value=t.input,n.stateSig.value=`input-available`;return}case`tool-input-error`:{let n=Wu(e,t.toolCallId,t.toolName,t.dynamic);n.inputSig.value=t.input,n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-approval-request`:{let n=Wu(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value=`approval-requested`;return}case`tool-output-available`:{let n=Wu(e,t.toolCallId,void 0,t.dynamic);n.outputSig.value=t.output,n.stateSig.value=`output-available`;return}case`tool-output-error`:{let n=Wu(e,t.toolCallId,void 0,t.dynamic);n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-output-denied`:{let n=Wu(e,t.toolCallId);n.stateSig.value=`output-denied`;return}default:return}}const Ju=1e3;async function Yu(e){let t=Ju,n=!1,r=!1,i=!1;function a(){i||e.signal.aborted||(i=!0,e.onInitialBoundaryReady())}for(;!e.signal.aborted;){let o,s=`held`;try{s=await e.connect(()=>{if(e.signal.aborted)return;o=e.now();let t=n||r;n=!0,r=!1,i?t&&e.backfill():a()})}catch{}if(e.signal.aborted||(!n&&o===void 0&&(r=!0,a()),s===`unavailable`))return;o!==void 0&&e.now()-o>=1e3&&(t=Ju),await e.sleep(t),t=Math.min(t*2,15e3)}}function Xu(e){let{activated:t,conversationReady:n,conversationIdSig:r,messagesSig:i,optionsRef:a,transport:o,visitorId:s,adoptControlStateChunk:c,adoptMemoryCompactionStateChunk:l,settleSuggestions:d,recordConversationReply:f,transcriptRecoverySig:m,beginConversationTranscript:h,commitConversationTranscript:g,onReplyLanded:_,runCancellation:v,canContinueRef:y,setCanSend:b,feedback:x,bus:S,loadInitialThread:C,shouldReconcileOnConnect:w}=e,T=p(0);u(()=>{if(!t||!n||!r.value)return;let e=r.value,u=new AbortController,p=e=>{},E=new Mu(i,e=>p(e));o.primeIdentity(s,e);let D=!1,O=!1,k,A=!1,j,M=0,ee=y.current,te,N,ne=Date.now(),re,ie=!1,P=!1;function ae(t,n,r){if(!ci(t))return;let o=i.value.findLast(e=>!e.ephemeral),s=t.serverMessageId??t.id;if(!(o&&(o.serverMessageId??o.id)!==s))return si(i.value,t,e,a.current.strings.newConversation,n,r)}function oe(e,t,n,r){let i=ae(e,t,r);if(!i)return;let a=`${e.serverMessageId??e.id}:${n}:${i.preview??``}`;a!==N&&(N=a,o.publishConversation({...i,hasUnread:!0},!0))}let F;function I(){F&&(clearTimeout(F.timer),F=void 0)}function se(){let e=F;if(!e)return;clearTimeout(e.timer),F=void 0;let t=i.value.find(t=>(t.serverMessageId??t.id)===e.replyId);(t?.role===`assistant`||t?.role===`operator`)&&oe(t,e.canContinue,e.generation,e.activityAt)}function ce(e,t,n,r){I(),F={replyId:e.serverMessageId??e.id,canContinue:t,generation:n,activityAt:r,timer:setTimeout(se,120)}}function le(e,t,n,r=Date.now(),i=!0){I();let a=ae(e,t,r);if(!a)return;let o=`${e.serverMessageId??e.id}:${n}`;o!==te&&(te=o,f(a),i&&re&&(ie=!0))}function ue(e,t){(e||!v.localSendRef.current)&&v.settle(t),e&&_()}function de(e,t=[],n=!1,r,o=ee,s=M,c=Date.now(),l=!0){let u=a.current;if(e.canceled){le(e,o,s,c,l),ue(n,r);return}let f=!0,p=e.status===`error`;switch(Ni(e,p)){case`drop`:i.value=i.value.filter(t=>t!==e),f=!1;break;case`complete-operator-routed`:e.status=`complete`,n&&(x.play(`messageReceived`),la(S,u,`assistant`,oi(e)));break;case`error`:if(e.status=`error`,e.errorText=u.strings.errorGeneric,n){x.play(`error`);let e=/* @__PURE__ */ Error(p?`stream error chunk`:`empty reply`);S.emit(`error`,e),u.onError?.(e)}break;case`complete`:e.status=`complete`,n&&(x.play(`messageReceived`),la(S,u,`assistant`,oi(e))),d(e,t)}f&&le(e,o,s,c,l),ue(n,r)}function fe(t){if(u.signal.aborted||r.value!==e)return;if(c(t),l?.(t),t.type===`start`){se();let n=t.messageId===void 0?void 0:i.value.find(e=>e.serverMessageId===t.messageId||e.id===t.messageId);A=n!==void 0&&n.status!==`streaming`;let r=j?.senderRole===`visitor`?j.messageId:void 0;if(j={messageId:t.messageId,senderRole:t.messageMetadata?.senderRole},M+=1,ne=Date.now(),N=void 0,D=t.messageMetadata?.senderRole===void 0,O=!1,k=D?t.messageMetadata?.runId:void 0,D){let n=t.messageId!==void 0&&i.value.some(e=>e.serverMessageId===t.messageId||e.id===t.messageId),a=i.value.at(-1),o=t.messageId!==void 0&&(a?.serverMessageId===t.messageId||a?.id===t.messageId),s=v.localSendRef.current&&(!n||o)&&a?.role===`assistant`&&a.status===`streaming`&&(o||a.serverMessageId===void 0&&a.partsSig.value.length===0);O=v.captureStart(e,t,s,r)}}let n=D&&(t.type===`finish`||t.type===`error`||t.type===`abort`),o=n?k:void 0,s=n&&(O||v.ownsLocalRun(o)),d=M,f=A;t.type===`finish`&&t.canContinue!==void 0&&(ee=t.canContinue);let p=ee;n&&(D=!1,O=!1,k=void 0);let m=E.applyResume(t),h=j?.messageId,g=h===void 0?void 0:i.value.find(e=>e.serverMessageId===h||e.id===h);A&&j?.senderRole!==`visitor`&&(m!==null||g?.status===`streaming`)&&(A=!1,f=!1);let _=!A&&(g?.role===`assistant`||g?.role===`operator`);t.type===`text-delta`&&_&&ce(g,ee,M,ne),t.type===`text-end`&&(I(),_&&oe(g,ee,M,ne)),t.type===`finish`&&t.canContinue===!1&&b(!1),m?m.role===`operator`?(f||(x.play(`messageReceived`),la(S,a.current,`operator`,oi(m))),le(m,p,d,ne),A=!1,n&&(s||!v.localSendRef.current)&&v.settle(o)):m.role===`assistant`&&(de(m,[],s,o,p,d,ne),A=!1):n&&(s||!v.localSendRef.current)&&v.settle(o)}async function pe(t){let n=M,a=await o.loadConversation(e,t?{ids:[t]}:void 0).catch(()=>null);if(u.signal.aborted||r.value!==e||!a)return!1;a.controlState&&c({type:`data-control-state`,data:a.controlState});let s=i.value.at(-1),l=n===M&&(t===void 0||s!==void 0&&(s.serverMessageId===t||s.id===t));if(a.messages.length===0)return!0;l&&(ee=a.canContinue,b(ee));let f=i.value,p=t===void 0?f.at(-1):f.find(e=>e.serverMessageId===t||e.id===t),{messages:m,changed:h}=wi(f,ri(a.messages));if(!h)return!0;i.value=m;let g=t===void 0?m.at(-1):m.find(e=>e.serverMessageId===t||e.id===t),_=p!==void 0&&g!==void 0&&(p.id===g.id||p.serverMessageId!==void 0&&p.serverMessageId===g.serverMessageId),y=g!==void 0&&g.status!==`streaming`&&(!_||p?.status===`streaming`),x=_&&p?.status===`streaming`?Date.now():g?.createdAt;return l&&y&&g.role===`assistant`?de(g,g.suggestions??[],v.localSendRef.current,void 0,a.canContinue,n,x,!1):l&&y&&g.role===`operator`?le(g,a.canContinue,n,x,!1):l&&g?.role===`assistant`&&g.status!==`streaming`&&d(g,g.suggestions??[]),!0}let me=/* @__PURE__ */ new Set;p=({messageId:e})=>{if(me.has(e)||!i.value.some(t=>t.serverMessageId===e||t.id===e))return;me.add(e);function t(){return me.delete(e)}pe(e).then(t,t)};function he(t=!1){if(u.signal.aborted||r.value!==e){ie=!1;return}if(re){ie=!0;return}let n=t?C(e)??(w()?pe():void 0):pe();if(!n)return;h(e),re=n;function i(t=!1){re===n&&(re=void 0,ie?(ie=!1,he()):t&&g(e))}n.then(i,()=>i(!1))}let L=m.subscribe(e=>{e<=T.current||(T.current=e,P&&he())});return Yu({signal:u.signal,now:()=>performance.now(),sleep:e=>Ii(e,u.signal),connect:e=>o.connectResumeStream({signal:u.signal,onChunk:fe,onConnected:e}),onInitialBoundaryReady:()=>{P=!0,he(!0)},backfill:()=>he()}),()=>{u.abort(),I(),L(),E.detach()}},[t,n,r,r.value,s,o,c,l,d,f,m,h,g,_,v,y,b,i,S,x,C,w])}function Zu(e){let{transport:t,setStreaming:n}=e,r=p(void 0),i=p(void 0),a=p(!1),o=p(void 0),s=p(!1),c=p(/* @__PURE__ */ new Map),u=p(/* @__PURE__ */ new Set),d=l((e,n)=>{let r=`${e}:${n}`;o.current!==r&&(o.current=r,t.cancelTurn(e,n))},[t]),m=l(e=>{r.current=void 0,i.current=e,a.current=!1,o.current=void 0,s.current=!0,n(!0)},[n]),h=l((e,t)=>{c.current.set(e,{messageId:t})},[]),g=l(e=>{e!==void 0&&(u.current.add(e),u.current.size>32&&u.current.delete(u.current.values().next().value)),(e===void 0||r.current?.runId===e)&&(r.current=void 0,i.current=void 0,a.current=!1,s.current=!1,n(!1))},[n]),_=l((e,t)=>i.current===e?(i.current=void 0,t.runId?(r.current={conversationId:t.conversationId,runId:t.runId},n(!0),a.current&&d(t.conversationId,t.runId),!0):(g(),!0)):t.runId&&r.current?.runId===t.runId?(r.current={conversationId:t.conversationId,runId:t.runId},a.current&&d(t.conversationId,t.runId),!0):!1,[d,n,g]),v=l((e,t)=>{let l=c.current.get(e);return l?(c.current.delete(e),!t.runId||u.current.has(t.runId)?!0:l.runId===void 0?(s.current||i.current||(r.current={conversationId:t.conversationId,runId:t.runId},i.current=void 0,a.current=!1,o.current=void 0,s.current=!0,n(!0)),!0):(l.runId===t.runId&&r.current?.runId===t.runId&&(r.current={conversationId:t.conversationId,runId:t.runId},a.current&&d(t.conversationId,t.runId)),!0)):!1},[d,n]),y=l(e=>i.current===e&&(g(),!0),[g]),b=l(e=>{let t=c.current.get(e);return t?(c.current.delete(e),t.runId===void 0):!1},[]),x=l((e,t,l,f)=>{let p=t.messageMetadata?.runId;if(t.messageMetadata?.senderRole!==void 0||typeof p!=`string`||!p||u.current.has(p))return!1;if(r.current?.runId===p)return s.current;if(s.current)return r.current||!l?!1:(i.current=void 0,r.current={conversationId:e,runId:p},n(!0),a.current&&d(e,p),!0);let m=[...c.current.values()].filter(e=>e.runId===void 0).find(e=>e.messageId===f);return m?(m.runId=p,r.current={conversationId:e,runId:p},i.current=void 0,a.current=!1,o.current=void 0,s.current=!0,n(!0),!0):(i.current=void 0,r.current={conversationId:e,runId:p},n(!0),a.current&&d(e,p),s.current)},[d,n]),S=l(e=>typeof e==`string`&&r.current?.runId===e&&s.current,[]),C=l(()=>{let e=r.current;if(e)return a.current=!0,d(e.conversationId,e.runId),!0;let t=i.current;return t?(a.current=!0,t.then(e=>{e.runId&&d(e.conversationId,e.runId)}).catch(()=>void 0),!0):!1},[d]);return f(()=>({localSendRef:s,begin:m,beginRouted:h,acceptAck:_,acceptRoutedAck:v,reject:y,rejectRouted:b,captureStart:x,ownsLocalRun:S,settle:g,stop:C}),[_,v,m,h,x,S,y,b,g,C])}const Qu=R.scope(`send`);function $u(e,t,n,r,i,a=!0){e.publishConversation({...si(t,n,r,i,a),hasUnread:!1},!0)}function ed(e,t){return e.id===t.id||(e.serverMessageId??e.id)===(t.serverMessageId??t.id)}function td(e){return e.findLast(e=>!e.ephemeral&&e.role!==`system`&&(e.role===`user`||e.status!==`streaming`||ci(e)))}function nd(e,t,n,r,i){let a=td(t);a?.role===`user`&&ed(a,n)&&$u(e,t,a,r,i)}function rd(e){return!(e instanceof Bi)||e.code===`network`||e.status===void 0||e.status===202||e.status===408||e.status===425||e.status===429||e.status>=500&&e.status<600}function id(e){let{transport:t,messagesSig:n,conversationIdSig:r,options:i,bus:a,feedback:o,persistence:s,visitorId:c,adoptConversationId:u,applyControlState:d,setCanSend:f,settleSuggestions:p,runCancellation:m}=e,h=l(()=>{let e=r.value??at();return r.value||(r.value=e,s.saveConversationId(e)),e},[r,s]);return{sendAiTurn:l(async({continueExisting:e,turn:l})=>{let g=h(),_=n.value.at(-1),v=l?[l]:ii(n.value,e),y=v[0],b=Kr({messages:v.map(ai),conversationId:g,visitorId:c,userPrefs:s.loadUserPrefs()}),x=t.sendTurn(b);m.begin(x);try{let a=await x;if(r.value!==g||!m.acceptAck(x,a))return!1;if(u(a.conversationId),a.runId&&y?.role===`user`&&nd(t,n.value,y,a.conversationId,i.strings.newConversation),!a.runId){let o=await t.loadConversation(a.conversationId).catch(()=>null);if(r.value!==a.conversationId)return!0;if(o){o.controlState&&d(o.controlState),f(o.canContinue);let r=ri(o.messages),{messages:s,changed:c}=wi(n.value,r);c&&(n.value=s);let l=r.findLast(e=>!e.ephemeral&&e.role!==`system`),u=td(n.value);u&&l&&ed(u,l)&&$u(t,n.value,u,a.conversationId,i.strings.newConversation,o.canContinue);let m=_?n.value.find(e=>e.id===_.id&&e.role===`assistant`&&e.status!==`streaming`):void 0;m&&p(m,m.suggestions??[]),!e&&_?.role===`assistant`&&n.value.includes(_)&&_.serverMessageId===void 0&&!ci(_)&&(n.value=n.value.filter(e=>e!==_))}else _?.role===`assistant`&&n.value.includes(_)&&(_.status=`error`,_.errorText=i.strings.errorGeneric,_.retryAction=e?{kind:`continue-assistant`,messageId:_.serverMessageId??_.id}:y?.role===`user`?{kind:`resend-user`,messageId:y.id}:null,n.value=[...n.value])}return!0}catch(s){if(r.value!==g)return!1;if(!m.reject(x))return y?.role===`user`&&nd(t,n.value,y,g,i.strings.newConversation),!0;let c=as(s,i.strings),u=rd(s),h=l?.role===`assistant`?l:n.value.at(-1);if(e&&h?.role===`assistant`&&s instanceof Bi&&s.status===409){let e=h.serverMessageId??h.id,i=await t.loadConversation(g,{ids:[e]}).catch(()=>null);if(r.value!==g)return!1;if(i){i.controlState&&d(i.controlState),f(i.canContinue);let t=ri(i.messages),r=t.find(t=>(t.serverMessageId??t.id)===e);if(r&&Ti(h,r)){let{messages:r,changed:i}=wi(n.value,t),a=r.find(t=>(t.serverMessageId??t.id)===e);if(i&&a&&a!==h)return a.awaitingContinuation=!1,a.continuationStreaming=void 0,a.retryAction=null,n.value=r,a.status!==`streaming`&&p(a,a.suggestions??[]),!0}}if(!n.value.includes(h)||h.status!==`streaming`)return!1;h.continuationStreaming=!0}if(e&&h?.role===`assistant`)h.status=`error`,h.errorText=c,h.retryAction=u?{kind:`continue-assistant`,messageId:h.serverMessageId??h.id}:null,n.value=[...n.value];else if(_?.role===`assistant`&&n.value.includes(_)){_.status=`error`,_.errorText=c;let e=v[0];_.retryAction=u&&e?.role===`user`?{kind:`resend-user`,messageId:e.id}:null,n.value=[...n.value]}else{let e=Xr();e.status=`error`,e.errorText=c;let t=v[0];e.retryAction=u&&t?.role===`user`?{kind:`resend-user`,messageId:t.id}:null,n.value=[...n.value,e]}return o.play(`error`),a.emit(`error`,s),i.onError?.(s),!1}},[t,n,i,a,o,s,c,u,d,f,p,h,m]),sendRoutedTurn:l(async e=>{let l=h();e.status=`pending`,e.errorText=void 0,e.retryAction=void 0,n.value.includes(e)&&(n.value=[...n.value]);let d=Kr({messages:[ai(e)],conversationId:l,visitorId:c,userPrefs:s.loadUserPrefs()}),f=t.sendTurn(d);m.beginRouted(f,e.id);try{let a=await f;return r.value===l?m.acceptRoutedAck(f,a)?(u(a.conversationId),nd(t,n.value,e,a.conversationId,i.strings.newConversation),e.status===`pending`&&(e.status=`complete`,n.value.includes(e)&&(n.value=[...n.value])),!0):!1:(m.rejectRouted(f),!1)}catch(s){let c=m.rejectRouted(f);if(r.value!==l)return!1;if(!c)return nd(t,n.value,e,l,i.strings.newConversation),e.status===`pending`&&(e.status=`complete`,n.value.includes(e)&&(n.value=[...n.value])),!0;if(e.status!==`pending`)return nd(t,n.value,e,l,i.strings.newConversation),!0;Qu.debug(`operator-routed send failed`,{error:s});let u=s instanceof Error?s:Error(String(s));return e.status=`error`,e.errorText=as(s,i.strings),e.retryAction=rd(s)?{kind:`resend-user`,messageId:e.id}:null,n.value.includes(e)&&(n.value=[...n.value]),o.play(`error`),a.emit(`error`,u),i.onError?.(u),!1}},[t,n,i,a,o,s,c,u,h,m])}}const ad=R.scope(`unread`);function od(e){let{transport:t,options:n,conversationIdSig:r,isConversationVisibleRef:i,activated:a,conversationReady:o}=e,s=c(!1),d=c(0),f=p([]),m=p(void 0),h=p(!1),g=l(()=>{let e=r.value,t=i.current()&&m.current===e?e:void 0;s.value=f.current.some(e=>e.hasUnread&&e.conversationId!==t)},[r,s,i]),_=l(e=>{let t=r.value,n=f.current.find(e=>e.conversationId===t),i=Zi(f.current,e),a=i.find(e=>e.conversationId===t),o=e.type===`snapshot`&&t!==void 0&&a?.hasUnread===!0&&m.current===t&&n!==void 0&&n.lastMessageAt!==a.lastMessageAt;o&&(m.current=void 0),f.current=i,g(),o&&(d.value+=1)},[r,g,d]),v=l(()=>{if(g(),!i.current())return;let e=r.value;if(!e||m.current!==e)return;let n=f.current.find(t=>t.conversationId===e);n?.hasUnread&&t.markRead(e,n.lastMessageAt)},[r,i,g,t]),y=l(e=>{r.value===e&&(m.current=void 0,g())},[r,g]),b=l(e=>{r.value===e&&(m.current=e,v())},[r,v]),x=l(e=>m.current===e,[]),S=l((e=!1)=>{n.modules.list.some(e=>e.layout===`chat`)&&(h.current||(h.current=!0,t.listConversations({limit:50},e).then(t=>{e||_({type:`snapshot`,result:t,requestedRevision:0}),v()}).catch(e=>ad.debug(`refreshUnread failed (non-fatal)`,{err:e})).finally(()=>{h.current=!1})))},[_,v,n.modules,t]),C=l(e=>{let n=e.conversationId,a=i.current()&&r.value===n&&m.current===n,o=f.current.find(e=>e.conversationId===n),s=a&&(o?.lastMessageAt!==e.lastMessageAt||o.hasUnread);t.publishConversation({...e,hasUnread:!a},!0),s&&t.markRead(n,e.lastMessageAt)},[r,i,t]);u(()=>t.subscribeConversationChanges(_),[_,t]);let w=p(!1);return u(()=>{a&&o&&!w.current&&(w.current=!0,S())},[a,o,S]),u(()=>{if(!a)return;function e(){document.visibilityState===`visible`&&(v(),S(!0))}return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[a,v,S]),{hasUnreadSig:s,transcriptRecoverySig:d,markVisibleConversationRead:v,beginConversationTranscript:y,commitConversationTranscript:b,isConversationTranscriptCommitted:x,recordConversationReply:C}}const sd=R.scope(`settings`);function cd(e){let{options:t,persistence:n,transport:r,feedback:i,hostElement:a,bus:o}=e,s=n.loadUserPrefs(),[c,d]=m(()=>s.locale??t.locale),[f,p]=m(()=>s.themeMode??t.themeMode),[h,g]=m(()=>s.textSize??t.textSize),_=l(e=>{n.patchUserPrefs(e),r.saveUserPrefs(n.loadUserPrefs()).catch(e=>sd.warn(`saveUserPrefs failed`,{err:e}))},[n,r]);u(()=>{s.soundMuted!==void 0&&i.setMuted(s.soundMuted)},[]),u(()=>{a.dataset.theme=f},[a,f,t]),u(()=>{a.dataset.textSize=h},[a,h,t]),u(()=>{let e=!0;return i.mutedSig.subscribe(t=>{e?e=!1:_({soundMuted:t})})},[i,_]);let v=ke(c,t.availableLocales,t.defaultLocale);return u(()=>{r.setLocale(v)},[r,v]),u(()=>{a.dir=k(v)?`rtl`:`ltr`},[a,v]),u(()=>{v!==c&&d(v)},[v,c]),{activeLocale:c,activeThemeMode:f,activeTextSize:h,effectiveLocale:v,setActiveLocale:d,setActiveThemeMode:p,setActiveTextSize:g,patchAndSync:_,handleLocaleChange:l(e=>{sd.info(`localeChange`,{locale:e}),d(e),_({locale:e}),o.emit(`localeChange`,e)},[_,o]),handleThemeChange:l(e=>{sd.info(`themeChange`,{mode:e}),p(e),a.dataset.theme=e,_({themeMode:e}),o.emit(`themeChange`,e)},[a,_,o]),handleTextSizeChange:l(e=>{sd.info(`textSizeChange`,{size:e}),g(e),a.dataset.textSize=e,_({textSize:e}),o.emit(`textSizeChange`,e)},[a,_,o]),handleSoundToggle:l(()=>{i.toggleMuted();let e=i.mutedSig.value;sd.info(`soundToggle`,{muted:e}),o.emit(`soundToggle`,{muted:e})},[i,o])}}const $=R.scope(`app`),ld=M.cssPrefix,ud={home:`home`,chats:`chat`,help:`help`,news:`news`};function dd(e,t){return Zr({...e,text:A(t,e.text)})}function fd({options:e,hostElement:t,bus:n}){let i=e.aiAgentDeploymentId;if(!i)throw Error(`aiAgentDeploymentId is required`);let[a]=m(()=>ct(e.widgetId,e.storage,e.aiAgentDeploymentId)),[o]=m(()=>a.getVisitorId()),h=a.loadUserPrefs(),v=c(a.loadConversationId()),y=p(v.value!==void 0),b=c(v.value??``),x=c([]),[S,C]=m(!1),w=p(void 0),[T,E]=m([]);function D(){let t=e.modules.list,n=new Set(t.map(e=>e.id)),r=a.loadActiveModule();return r&&n.has(r)?r:t[0]?.id??``}function O(){return e.modules.list.find(e=>e.layout===`chat`)?.id}function k(){let t=O();return t?e.modules.list.length===1||M.sig.value.activeTab===t:!1}let j=p(void 0);if(!j.current){let t=e.modules.list.map(e=>e.id),n=a.loadActiveModule()??t[0]??``;j.current=ga(n,n?[...t,n]:t,e=>a.saveActiveModule(e))}let M=j.current,ee=s(()=>M.sig.value.activeTab).value,te=s(()=>v.value).value,[N,ne]=m(!1),[re,ie]=m(null),[P,ae]=m(!1),oe=e.mode===`standalone`||e.mode===`inline`,F=p(Sa(e,Ca(),a.loadPanelOpen(),a.loadPanelSize())),[I,se]=m(F.current.panelOpen),[ce,le]=m(F.current.panelOpen),ue=p(void 0),de=p(void 0),fe=p(!1),pe=p(void 0);u(()=>{I&&le(!0)},[I]);let me=p(!1),[he,L]=m(!1),{dismissed:ge,dismissCallout:_e}=Tu({callout:e.launcher.callout,persistence:a}),R=e.launcher.callout?.persistent??!0,ve=l(()=>{$.info(`calloutDismiss`),n.emit(`calloutDismiss`,void 0),_e()},[n,_e]),[z,ye]=m(F.current.panelSize),be=p(!1),[xe,Se]=m(`chat`),Ce=p(()=>!1);Ce.current=()=>I&&xe===`chat`&&!document.hidden&&k();let[we,Te]=m(!0),Ee=p(we);Ee.current=we;let[De,Oe]=m(!1),ke=p(De);ke.current=De;let Ae=p(null),[je,Me]=m(!1),[Ne,Pe]=m(null),[Fe,Ie]=m([]),Re=p(e.strings),ze=p(e);ze.current=e;let[Ve,He]=m(void 0),[Ue,We]=m(void 0),[Ge,Ke]=m(()=>a.loadSidebarCollapsed()??!1),[qe,Je]=m({}),[B]=m(()=>new ra({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Mt({publicKey:e.publicKey,aiAgentDeploymentId:i,publicKeyHeader:`x-public-key`}),endpoints:e.endpoints})),[Ye]=m(()=>new qt(e.sound,e.haptics)),Xe=Zu({transport:B,setStreaming:Oe}),{activeLocale:Ze,activeThemeMode:Qe,activeTextSize:$e,effectiveLocale:et,setActiveLocale:tt,setActiveThemeMode:nt,setActiveTextSize:rt,patchAndSync:it,handleLocaleChange:ot,handleThemeChange:st,handleTextSizeChange:lt,handleSoundToggle:ut}=cd({options:e,persistence:a,transport:B,feedback:Ye,hostElement:t,bus:n}),{controlModeSig:ft,assignedOperatorInitialsSig:pt,operatorAvailableSig:mt,applyControlState:ht,adoptControlStateChunk:gt,requestOperator:_t,cancelOperatorRequest:vt}=Eu({transport:B,conversationIdSig:v}),yt=c(/* @__PURE__ */ new Map),bt=l(e=>{if(e.type!==`data-memory-compaction-state`)return;let t=v.value;if(!t)return;let n=Wr(e.data);if(!n)return;let r=yt.value.get(t);if(r&&(n.postFinishSequence<r.postFinishSequence||n.postFinishSequence===r.postFinishSequence&&(r.status===`ready`||r.status===n.status)))return;let i=new Map(yt.value);i.set(t,n),yt.value=i},[v,yt]),{hasUnreadSig:xt,transcriptRecoverySig:St,markVisibleConversationRead:Ct,beginConversationTranscript:wt,commitConversationTranscript:Tt,isConversationTranscriptCommitted:Et,recordConversationReply:Dt}=od({transport:B,options:e,conversationIdSig:v,isConversationVisibleRef:Ce,activated:ce,conversationReady:N}),Ot=I&&e.modules.byId[ee]?.layout===`home`,kt=wu({transport:B,options:e,persistence:a,enabled:N&&Ot});u(()=>{Ct()},[ee,I,xe,te,Ct]),u(()=>{Ye.update(e.sound,e.haptics)},[Ye,e.sound,e.haptics]),u(()=>()=>Ye.destroy(),[Ye]),u(()=>{!be.current&&e.size.initialSize&&(be.current=!0,!a.loadPanelSize()&&ye(xa(e.mode,e.size,Ca())))},[e.mode,e.size,a]),u(()=>{if(!N||me.current)return;me.current=!0;let t=Sa(e,Ca(),a.loadPanelOpen(),a.loadPanelSize());se(t.panelOpen),ye(t.panelSize)},[N,e,a]);let At=p(null);u(()=>{N&&M.reconcile(e.modules.list.map(e=>e.id),D())},[N,e.modules.list,M]);let jt=l(e=>{e&&e.length!==0&&(x.value=e.map(e=>dd(e,Re.current)))},[x]),Nt=p(null),Pt=l(async e=>{try{let{formSubmissions:t}=await(e?B.bootstrap(e):Nt.current??B.bootstrap()),n=/* @__PURE__ */ new Map;return t.forEach((e,t)=>n.set(e.formId,t)),t.filter((e,t)=>!e.skipped||n.get(e.formId)===t).map((e,t)=>({key:`wire:${e.formId}:${e.createdAt??t}`,formId:e.formId,outcome:e.skipped?`skipped`:`submitted`,createdAt:Rr(e.createdAt),values:e.values}))}catch(e){return $.debug(`bootstrap failed — no form markers (non-fatal)`,{err:e}),[]}},[B]),Ft=p(0),V=p(0),It=l(e=>{if(e===v.value)return;let t=v.value;V.current++,C(!1),t&&(a.saveDraft(e,a.loadDraft(t)),a.saveDraft(t,``),a.saveMessageQueue(e,a.loadMessageQueue(t)),a.saveMessageQueue(t,[])),v.value=e,a.saveConversationId(e),B.primeIdentity(void 0,e),$.info(`conversation rebound`,{previous:t,current:e}),t&&n.emit(`conversationRebound`,{previous:t,current:e})},[n,v,a,B]),Lt=l((e,t)=>{let n=[...e.map(e=>e.createdAt),...t.map(e=>e.createdAt)].filter(e=>e!==void 0),r=(n.length?Math.min(...n):Date.now())-1;return[...(pe.current?.messages??[]).map(e=>{let t=dd(e,Re.current);return t.createdAt=r,t}),...e]},[]),Rt=l(async e=>{let t=V.current;function r(){return t!==V.current||v.value!==e}de.current===e&&(de.current=void 0),C(!0);try{let[t,n]=await Promise.all([B.loadConversation(e),Pt()]);if(r())return!1;let i=ri(t.messages);E(n);let a=Lt(Ci(i,x.value),n);if(x.value=a,de.current=a.some(e=>e.role===`user`)?void 0:e,i.length>0||t.controlState!==void 0){Te(t.canContinue),t.controlState&&ht(t.controlState);let e=i.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ie(e?.suggestions??[])}return!0}catch(t){return r()||($.warn(`loadThread failed; keeping conversation active`,{err:t,conversationId:e}),n.emit(`error`,t),ze.current.onError?.(t)),!1}finally{r()||C(!1)}},[B,Pt,x,v,Lt,n]),zt=l(e=>{if(ue.current===e)return ue.current=void 0,Rt(e)},[Rt]),Bt=l(()=>{if(w.current)return Promise.resolve(void 0);let t=v.value,r=x.value.find(e=>e.serverMessageId!==void 0),i=r?.serverMessageId,a=r?new Date(r.createdAt).toISOString():void 0;if(!t||!i||!a)return Promise.resolve(void 0);let o=V.current,s={};return w.current=s,(async()=>{try{let e=await B.loadConversation(t,{beforeId:i,beforeCreatedAt:a});if(w.current!==s||V.current!==o||v.value!==t)return;if(e.messages.length===0)return!1;let n=e.messages.map(ei),r=x.value,c=vi(r,n);if(c!==r){let e=Math.min(...n.map(e=>e.createdAt??1/0),...T.map(e=>e.createdAt??1/0));if(Number.isFinite(e))for(let t of r){if(!t.ephemeral)break;(t.createdAt??1/0)>=e&&(t.createdAt=e-1)}x.value=c}return!0}catch(r){if(w.current!==s||V.current!==o||v.value!==t)return;$.warn(`load previous messages failed`,{err:r,conversationId:t,beforeId:i}),n.emit(`error`,r),e.onError?.(r);return}finally{w.current===s&&(w.current=void 0)}})()},[n,v,T,x,e,B]),Vt=l(async({newConversation:t})=>{let i=++Ft.current;function s(){return i!==Ft.current}let c=v.value,l=t||!c?at():c;l!==c&&(V.current++,C(!1),r(()=>{v.value=l,b.value=l}),a.saveConversationId(l)),B.primeIdentity(o,l);let u;try{u=await B.handshake({visitorId:o,conversationId:l,userPrefs:a.loadUserPrefs(),locale:Ze})}catch(r){if(s())return;n.emit(`error`,r),e.onError?.(r),t||ne(!0);return}if(s())return;u.conversationId!==l&&It(u.conversationId),Pe(u.agent),e.mode===`page`&&(u.site&&Yt(u.site)?He(u.site):u.site&&$.warn(`invalid site config, using fallback`,{site:u.site}),u.blocks&&Xt(u.blocks)?We(u.blocks):u.blocks&&$.warn(`invalid blocks config, using fallback`,{blocks:u.blocks}));let d=dt(u.userPrefs);if(Object.keys(d).length>0&&!t&&(a.saveUserPrefs(d),d.locale&&tt(d.locale),d.soundMuted!==void 0&&Ye.setMuted(d.soundMuted),d.themeMode&&nt(d.themeMode),d.textSize&&rt(d.textSize)),pe.current=u.welcome,t||n.emit(`handshake`,u),u.welcome?.suggestions){let e=Re.current;Ie(u.welcome.suggestions.map(t=>({...t,label:A(e,t.label),...t.text===void 0?{}:{text:A(e,t.text)}})))}let f=!t&&c&&u.conversationId===c;y.current=!!f,f?fe.current||(ue.current=u.conversationId):(de.current=u.conversationId,jt(u.welcome?.messages),Tt(u.conversationId)),t||ne(!0)},[B,o,a,e,n,v,b,Ye,jt,Ze,It,Tt]),Ht=JSON.stringify(e.userContext??null),Ut=JSON.stringify(e.pageContext??null),Wt=JSON.stringify(qe);u(()=>{let t=Object.keys(qe).length?{...qe,...e.userContext}:e.userContext;B.setContext(t,pd(e.pageContext))},[B,Ht,Ut,Wt]);let Gt=l((e,t=[])=>Ie(e.suggestions??t),[]);u(()=>(B.primeIdentity(o,v.value),Vt({newConversation:!1}),()=>{Ft.current++,V.current++}),[]),u(()=>{ce&&N&&!fe.current&&(fe.current=!0,Nt.current=B.bootstrap(),(async()=>{try{let e=await Nt.current;ie(Le((e??{forms:[]}).forms,et))}catch(e){$.debug(`bootstrap failed — treating as no forms`,{err:e})}finally{ae(!0)}})(),ue.current===v.value&&C(!0))},[ce,N]);let Kt=p(null);u(()=>{if(!ce||!N||(Kt.current??(Kt.current=et),Kt.current===et))return;Kt.current=et;let e=!1;return B.bootstrap().then(t=>{e||ie(Le((t??{forms:[]}).forms,et))}).catch(e=>$.debug(`forms re-localize failed — keeping current copy`,{err:e})),()=>{e=!0}},[ce,N,et,B]);let Jt=p(Ht);u(()=>{N&&Jt.current!==Ht&&(Jt.current=Ht,Vt({newConversation:!1}))},[Ht,N,Vt]),Au({hostElement:t,mode:e.mode,panelSize:z,isOpen:I,surfaceReady:N,setIsOpen:se});let{sendAiTurn:Zt,sendRoutedTurn:$t}=id({transport:B,messagesSig:x,conversationIdSig:v,options:e,bus:n,feedback:Ye,persistence:a,visitorId:o,adoptConversationId:It,applyControlState:ht,setCanSend:Te,settleSuggestions:Gt,runCancellation:Xe}),{toolInteraction:en}=Su({streaming:De,controlModeSig:ft,messagesSig:x,sendAiTurn:Zt,bus:n,humanInLoop:e.features.humanInLoop}),nn=l((e,t)=>{let r=x.value.find(t=>t.serverMessageId===e);r&&(r.feedback=t),$.info(`messageFeedback`,{messageId:e,value:t}),n.emit(`messageFeedback`,{messageId:e,value:t}),B.submitFeedback({messageId:e,value:t})},[n,x,B]);function rn(){return x.value.reduce((e,t)=>e+ +(t.role===`user`),0)}let an=e.forms.list.length>0?e.forms:re??e.forms,H=ua({forms:an,persistence:a,userContext:()=>e.userContext,messageCount:rn,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>v.value,onComplete:(e,t,r,i)=>{$.info(`formSubmit`,{formId:e.id,trigger:t,skipped:i}),n.emit(`formSubmit`,{formId:e.id,values:r,skipped:i}),E(t=>{let n=t.find(t=>t.formId===e.id&&t.outcome===`skipped`)?.createdAt??Date.now();return[...t.filter(t=>t.formId!==e.id||t.outcome!==`skipped`),{key:`local:${e.id}:${n}`,formId:e.id,outcome:i?`skipped`:`submitted`,createdAt:n,...i?{}:{values:r}}]});let o=v.value??at();v.value||(v.value=o,a.saveConversationId(o),B.primeIdentity(void 0,o)),!i&&e.mirrorToContext&&Je(e=>({...e,...r})),B.submitForm({formId:e.id,conversationId:o,trigger:t,values:r,skipped:i})}}),U=s(()=>H.activeForm.value);Xu({activated:ce,conversationReady:N,conversationIdSig:v,messagesSig:x,optionsRef:ze,transport:B,visitorId:o,adoptControlStateChunk:gt,adoptMemoryCompactionStateChunk:bt,settleSuggestions:Gt,recordConversationReply:Dt,transcriptRecoverySig:St,beginConversationTranscript:wt,commitConversationTranscript:Tt,onReplyLanded:l(()=>H.fire(`after-messages`),[H]),runCancellation:Xe,canContinueRef:Ee,setCanSend:Te,feedback:Ye,bus:n,loadInitialThread:zt,shouldReconcileOnConnect:l(()=>y.current||x.value.some(e=>!e.ephemeral&&e.role===`user`),[x])}),u(()=>{H.refresh()},[an,H]);let on=e.pageContext?.area?String(e.pageContext.area):void 0,sn=s(()=>x.value.length);u(()=>{N&&P&&H.fire(`pre-chat`)},[N,P,H]),u(()=>{P&&!we&&H.fire(`conversation-closed`)},[P,we,H]),u(()=>{N&&P&&on&&H.fire(`page-area`)},[N,P,on,H]);let W=f(()=>{let e=an.list.flatMap(e=>e.triggers).filter(e=>e.kind===`idle`).map(e=>Number(e.param));return e.length?Math.min(...e)*1e3:0},[an]);u(()=>{if(!W||!I)return;let e=setTimeout(()=>H.fire(`idle`),W);return()=>clearTimeout(e)},[W,I,H,sn.value]);let cn=l(async(t,r,i)=>{if(Ae.current)return!1;let a=v.value,o=a?yt.value.get(a):void 0,s=ft.value!==`ai-agent`;if(!s&&o?.status===`compacting`||($.info(`send`,{textLen:t.length,attachments:r.length,streaming:ke.current,routedToOperator:s}),ke.current&&!s))return!1;let c=new AbortController,l={conversationId:a,controller:c};Ae.current=l,Me(!0);try{Ye.unlock();let o=await hd(B,r,c.signal,t=>{c.signal.aborted||($.warn(`upload failed`,{err:t}),n.emit(`error`,t),e.onError?.(t))});if(c.signal.aborted||v.value!==a||!Ee.current||H.activeForm.value)return!1;let s=a?yt.value.get(a):void 0,l=ft.value!==`ai-agent`;if(!l&&s?.status===`compacting`||ke.current&&!l||!t&&o.length===0)return!1;n.emit(`send`,{text:t,attachmentCount:r.length}),Fe.length>0&&Ie([]),Ye.play(`messageSent`);let u=Yr(t,o,i);return la(n,e,`user`,t),l?(x.value=[...x.value,u],i?await $t(u):($t(u),!0)):(x.value=[...x.value,u,Xr()],i?await Zt({continueExisting:!1}):(Zt({continueExisting:!1}),!0))}finally{Ae.current===l&&(Ae.current=null,Me(!1))}},[B,n,e,Fe.length,x,v,yt,Zt,$t,ft]),G=p(cn);G.current=cn;let ln=v.value,un=(ln?yt.value.get(ln):void 0)?.status===`compacting`,dn=ft.value===`ai-agent`,fn=s(()=>{let e=x.value.at(-1);return e?.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`&&e.stateSig.value===`approval-requested`)}),pn=s(()=>x.value.some(e=>e.retryAction?.kind===`resend-user`||e.retryAction?.kind===`continue-assistant`));d(()=>{let e=v.value;return()=>{let t=Ae.current;t&&t.conversationId===e&&(Ae.current=null,Me(!1),t.controller.abort())}},[v.value]),u(()=>{(!we||U.value)&&Ae.current?.controller.abort()},[U.value,we]);let mn=l(()=>{if(!Xe.stop())return;$.info(`stop`),n.emit(`stop`,void 0);let e=x.value.at(-1);e&&e.role!==`user`&&e.status===`streaming`&&(e.canceled=!0,x.value=[...x.value])},[Xe,n,x]),hn=l(e=>{if(De)return;let t=x.value,n=ji(t,e);if(n)switch($.info(`retry`,{kind:n.kind,messageId:n.messageId}),n.kind){case`continue-assistant`:if(ft.value!==`ai-agent`||e.role!==`assistant`||(e.serverMessageId??e.id)!==n.messageId)return;e.status=`streaming`,e.errorText=void 0,e.retryAction=void 0,e.awaitingContinuation=!0,x.value=[...t],Zt({continueExisting:!0,turn:e});return;case`resend-user`:{let r=t.find(e=>e.role===`user`&&e.id===n.messageId);if(!r)return;let i=e=>{e&&At.current?.acceptQueuedMessage(n.messageId)};if(r.status=`complete`,r.errorText=void 0,r.retryAction=void 0,ft.value!==`ai-agent`){x.value=e.role===`assistant`?t.filter(t=>t!==e):[...t],$t(r).then(i);return}let a=Xr();x.value=e.role===`assistant`?t.map(t=>t===e?a:t):[...t,a],Zt({continueExisting:!1,turn:r}).then(i);return}case`repeat-user`:{let e=t.find(e=>e.role===`user`&&e.id===n.messageId);if(!e)return;let r=Yr(oi(e),e.attachments?.map(e=>({...e}))??[]),i=new Set(r.attachments?.flatMap(e=>e.url?[e.url]:[])??[]),a=e.partsSig.value.flatMap(e=>e.kind===`file`&&!i.has(e.url)?[{...e}]:[]);if(a.length>0&&(r.partsSig.value=[...r.partsSig.value,...a]),ft.value!==`ai-agent`){x.value=[...t,r],$t(r);return}x.value=[...t,r,Xr()],Zt({continueExisting:!1,turn:r});return}default:return n}},[De,x,ft,Zt,$t]),gn=l(()=>{ca(e.mode,z)===`exit-fullscreen`?($.info(`close → exit-fullscreen`,{mode:e.mode}),ye(`normal`),n.emit(`fullscreen`,!1)):($.info(`close → panel closed`,{mode:e.mode}),H.fire(`panel-close`),se(!1),a.savePanelOpen(!1),n.emit(`close`,void 0),e.onClose?.())},[n,e,a,z,H]),_n=l(()=>{$.info(`open`,{mode:e.mode}),Ye.unlock(),L(!0),se(!0),a.savePanelOpen(!0),!ge&&!R&&ve(),setTimeout(()=>L(!1),md),n.emit(`open`,void 0),e.onOpen?.()},[n,e,Ye,a,ge,R,ve]),vn=l(()=>{let e=x.value.some(e=>e.role===`user`);if(de.current===v.value&&!e&&we&&v.value)$.info(`clear → reusing empty conversation`,{conversationId:v.value}),x.value.length===0&&jt(pe.current?.messages);else return $.info(`clear → new conversation`,{wasStreaming:De}),n.emit(`clear`,void 0),Xe.settle(),y.current=!1,ue.current=void 0,de.current=void 0,r(()=>{x.value=[],v.value=void 0,ht({controlMode:`ai-agent`,controlRevision:0})}),a.clearConversation(),Te(!0),E([]),Ie([]),Vt({newConversation:!0})},[De,x,v,a,Vt,n,we,jt,Xe,ht]),yn=l(()=>{let t=vn();Se(`chat`);let n=e.modules.list.find(e=>e.layout===`chat`)?.id;return n&&M.switchTab(n),t},[vn,M,e]),bn=l(async e=>{await yn(),await G.current(e,[])||At.current?.fill(e)},[yn]),xn=l(()=>{let e=z===`expanded`?`normal`:`expanded`;$.info(`expand`,{from:z,expanded:e===`expanded`}),ye(e),a.savePanelSize(e),n.emit(`expand`,e===`expanded`)},[n,z,a]),Sn=l(()=>{let e=z===`fullscreen`?`normal`:`fullscreen`;$.info(`fullscreen`,{from:z,fullscreen:e===`fullscreen`}),ye(e),a.savePanelSize(e),n.emit(`fullscreen`,e===`fullscreen`)},[n,z,a]),Cn=l(()=>{Se(e=>{let t=e===`history`?`chat`:`history`;return $.info(`toggleHistory`,{view:t}),n.emit(`toggleHistory`,{view:t}),t})},[n]),K=l(()=>{Ke(e=>{let t=!e;return $.info(`sidebarToggle`,{collapsed:t}),a.saveSidebarCollapsed(t),n.emit(`sidebarToggle`,{collapsed:t}),t})},[a,n]),wn=l(e=>{$.info(`resize`,e),it({widgetSize:e}),n.emit(`resize`,e)},[it,n]),Tn=l(async t=>{let i=t.conversationId;if(i===v.value&&Et(i)){$.info(`selectConversation`,{conversationId:i,cached:!0}),n.emit(`selectConversation`,{conversationId:i}),B.publishConversation(t),Se(`chat`);let e=O();e&&M.switchTab(e),Tt(i);return}let s=++Ft.current;V.current++,C(!1);function c(){return s!==Ft.current}$.info(`selectConversation`,{conversationId:i,wasStreaming:De}),n.emit(`selectConversation`,{conversationId:i}),B.publishConversation(t);try{let[e,t]=await Promise.all([B.loadConversation(i),Pt(i)]);if(c())return;Xe.settle(),y.current=!0,ue.current=void 0;let n=ri(e.messages),s=e.conversationId!==v.value,l=s?n:Ci(n,x.value);de.current=l.some(e=>e.role===`user`)?void 0:e.conversationId,r(()=>{x.value=Lt(l,t),s&&(b.value=e.conversationId),v.value=e.conversationId}),E(t),a.saveConversationId(e.conversationId),B.primeIdentity(o,e.conversationId),Te(e.canContinue),e.controlState&&ht(e.controlState);let u=l.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ie(u?.suggestions??[]),s?wt(e.conversationId):Tt(e.conversationId),Se(`chat`);let d=O();d&&M.switchTab(d)}catch(t){if(c())return;n.emit(`error`,t),e.onError?.(t)}},[B,x,v,b,n,e,a,Pt,Lt,De,o,Xe,wt,Tt,Et,M]),En=p(null),Dn=l(e=>{typeof e==`string`&&(P?H.fire(`manual`,e):En.current=e)},[P,H]);u(()=>{P&&En.current&&(H.fire(`manual`,En.current),En.current=null)},[P,H]);let On=p(void 0),kn=l(t=>{let n=e.modules.list.find(e=>e.layout===ud[t.to]);if(!n){$.warn(`open: the widget has no such tab`,{to:t.to});return}let r=t.id&&(n.layout===`help`||n.layout===`news`)?{kind:`content`,id:t.id,title:``}:void 0;M.open(n.id,r)},[e.modules,M]),An=l(e=>{I||_n(),e!==void 0&&(Qt(e)?N?kn(e):On.current=e:$.warn(`open: unknown target`,{detail:e}))},[I,_n,N,kn]);u(()=>{N&&On.current&&(kn(On.current),On.current=void 0)},[N,kn]);let jn=p({handleOpenCommand:An,handleClose:gn,handleExpand:xn,handleFullscreen:Sn,openForm:Dn});jn.current={handleOpenCommand:An,handleClose:gn,handleExpand:xn,handleFullscreen:Sn,openForm:Dn},d(()=>tn(t,{open:e=>jn.current.handleOpenCommand(e),close:()=>jn.current.handleClose(),expand:()=>jn.current.handleExpand(),fullscreen:()=>jn.current.handleFullscreen(),openForm:e=>jn.current.openForm(e)}),[t]);let Mn=f(()=>Be(e,Ze,Qe,$e),[e,Ze,Qe,$e]);Re.current=Mn.strings;let Nn=f(()=>T.map(e=>{let t=an.list.find(t=>t.id===e.formId);return{...e,title:t?.title,form:t}}),[T,an]);function Pn(e){Tn(e)}let Fn={options:Mn,transport:B,feedback:Ye,bus:n,persistence:a,conversationId:v.value??``,composerKey:b.value,composerApiRef:At,view:xe,canSend:we,isStreaming:De,isMemoryCompacting:un,canReleaseQueuedMessages:N&&!S&&!U.value&&(!dn||!fn.value&&!pn.value),queueManualMessages:dn&&(fn.value||pn.value),sendPreparing:je,composerActive:Mn.mode===`page`||Mn.mode===`inline`||Mn.mode===`standalone`||I,controlMode:ft.value,assignedOperatorInitials:pt.value,operatorAvailable:mt.value,operatorRequestEnabled:e.features.operatorRequest,onRequestOperator:_t,onCancelOperatorRequest:vt,loadingMessages:S,onLoadPreviousMessages:Bt,messagesSig:x,agent:Ne,suggestions:Fe,initialWidgetSize:h.widgetSize??null,onClose:gn,onClear:vn,onExpand:xn,onFullscreen:Sn,onSoundToggle:ut,onToggleHistory:Cn,onSelectHistoryConversation:Pn,onNewConversation:yn,onLocaleChange:ot,onThemeChange:st,onTextSizeChange:lt,onWidgetSizeChange:wn,onSend:cn,onStop:mn,onSuggestion:t=>{if(Ae.current)return;let r=t.text??t.label;$.info(`suggestion`,{text:r,autoSend:e.autoSendSuggestions}),n.emit(`suggestion`,{text:r}),e.autoSendSuggestions?cn(r,[]):At.current?.fill(r)},activeForm:U.value?.form??null,formMarkers:Nn,onFormSubmit:H.complete,onFormSkip:H.skip,onFormFill:e=>H.fire(`manual`,e),tool:en,onRetry:hn,onMessageFeedback:nn};if(!N)return null;let In=Mn.modules.list;function Ln(e){let t=oa(`close`,Mn.mode,e);return In.length===0?/* @__PURE__ */ g(pu,{strings:Mn.strings,onClose:t?gn:void 0}):In.length===1&&In[0]?.layout===`chat`?/* @__PURE__ */ g(tu,{...Fn,panelSize:e}):/* @__PURE__ */ g(du,{panelProps:{...Fn,panelSize:e,onClose:t?gn:void 0},enabledModules:In,nav:M,bus:n,hasUnread:xt.value,latestNews:kt,onSelectConversation:Pn,onStartNewConversation:bn,onSetPanelSize:ye})}if(e.mode===`page`){let e=In.some(e=>e.layout===`chat`);return/* @__PURE__ */ g(`div`,{class:`${ld}-anchor`,children:/* @__PURE__ */ g(bu,{site:Ve,blocks:Ue,transport:B,strings:Mn.strings,locale:Mn.locale,persistence:a,showConversations:e,onSelectConversation:Pn,onNewConversation:yn,sidebarCollapsed:Ge,onToggleSidebarCollapsed:K,children:Ln(`fullscreen`)})})}if(oe){let t=e.mode===`standalone`?`fullscreen`:z;return/* @__PURE__ */ g(`div`,{class:`${ld}-anchor`,children:Ln(t)})}let Rn=e.mode===`drawer`,zn=e.mode!==`modal`&&!e.launcher.hidden&&(!I||he),Bn=zn&&!he&&!ge&&!Rn?Mn.launcher.callout:null;return/* @__PURE__ */ _(`div`,{class:`${ld}-anchor`,"data-launcher-size":Mn.launcher.size,children:[I||ce?/* @__PURE__ */ g(`div`,{class:`${ld}-surface`,hidden:!I,children:Ln(z)}):null,zn?/* @__PURE__ */ g(ko,{onToggle:_n,launcher:Mn.launcher,strings:Mn.strings,leaving:he,edgeTab:Rn}):null,Bn?/* @__PURE__ */ g(No,{callout:Bn,launcherPosition:Mn.position,strings:Mn.strings,closeLabel:Mn.strings.close,onDismiss:ve}):null]})}function pd(e){let t=e?.url??(typeof location<`u`?location.href:void 0);if(e||t)return{...e,...t?{url:t}:{}}}const md=120;async function hd(e,t,n,r){return(await Promise.all(t.map(async t=>{try{let{id:r,url:i,originalName:a,mimeType:o,fileSize:s}=await e.uploadFile(t.file,n);return{id:r,name:a,mediaType:o,size:s,url:i}}catch(e){r(e);return}}))).filter(e=>e!==void 0)}const gd=R.scope(`error-boundary`);var _d=class extends e{constructor(...e){super(...e),V(this,`state`,{crashed:!1})}componentDidCatch(e,t){gd.error(`widget render crashed`,{error:e,componentStack:t?.componentStack}),this.setState({crashed:!0}),this.props.onError(e,t?.componentStack)}render(){return this.state.crashed?this.props.fallback:this.props.children}};function vd(e){let{bus:r,host:i,appRoot:a,persistence:o,reportError:s}=e,c=e.initialRaw,l,u=Ee(c),d=!0;function f(){u=Ee(l?He(c,l):c)}function p(){St(i,Ct(u.mode));let e=o.loadUserPrefs().themeMode;jt(i,e?{...u,themeMode:e}:u),d&&(At(i,yd(u)),d=!1)}function m(){p(),n(t(_d,{onError:s},t(fd,{bus:r,hostElement:i,options:u})),a)}r.on(`handshake`,e=>{e.config&&(e.config.storageVersion&&o.rememberStorageVersion(e.config.storageVersion),l=e.config,f(),m())});let h=_t(r,{getOptions:()=>u,getVisitorId:()=>o.getVisitorId(),getConversationId:()=>o.loadConversationId()});return{getOptions:()=>u,getUserOptions:()=>c,render:m,setUserOptions:e=>{c=e,f(),m()},patchUserOptions:e=>{c={...c,...e},f(),m()},destroy:()=>h()}}function yd(e){if(e.mode===`standalone`)return`standalone`;if(e.mode===`inline`)return`inline`;let t=ct(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:r}=Sa(e,Ca(),t.loadPanelOpen(),t.loadPanelSize());return ba(e.mode,r,n)}var bd=class{constructor(){V(this,`handlers`,/* @__PURE__ */ new Map)}on(e,t){let n=this.handlers.get(e);return n||(n=/* @__PURE__ */ new Set,this.handlers.set(e,n)),n.add(t),()=>this.handlers.get(e)?.delete(t)}emit(e,t){let n=this.handlers.get(e);if(n)for(let e of n)try{e(t)}catch{}}clear(){this.handlers.clear()}};const xd=R.scope(`hooks`),Sd=`*`,Cd=/* @__PURE__ */ new Set;function wd(e,t,n){let r={widgetId:e,event:t,listener:n};return Cd.add(r),()=>{Cd.delete(r)}}function Td(e,t,n){let r=[...Cd];for(let i of r)if(Dd(i.widgetId,e.widgetId)&&(i.event===`*`||i.event===t))try{i.listener(e,t,n)}catch(e){xd.warn(`hook listener threw`,{event:t,error:e})}}function Ed(e,t){let n=[];for(let r of Od)n.push(t.on(r,t=>{Td(e,r,t)}));return()=>{for(let e of n)e()}}function Dd(e,t){return e===`*`||e===t}const Od=/* @__PURE__ */ `open.close.expand.fullscreen.resize.message.send.stop.clear.selectConversation.suggestion.toggleHistory.formSubmit.toolResult.toolDecision.messageFeedback.contentView.contentOpen.contentSearch.contentRead.contentLinkClick.attach.removeAttachment.voiceStart.voiceStop.voiceCancel.localeChange.themeChange.textSizeChange.soundToggle.sidebarToggle.calloutDismiss.error.handshake.conversationRebound`.split(`.`),kd=R.scope(`iframe`);function Ad(e,t,n=`closed`,r=`floating`,i=null){kd.debug(`createIframeMount`,{position:t,initialMode:n,layoutMode:r,hasTarget:!!i});let a=document.createElement(`iframe`);a.title=`${M.name} chat`,a.setAttribute(`allow`,`microphone; clipboard-write`),Nd(a,t,n,r),(r===`inline`&&i?i:document.body).appendChild(a);let o=a.contentDocument;if(!o)throw Error(`iframe contentDocument unavailable (cross-origin?)`);o.open(),o.write(`<!doctype html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:transparent;overflow:hidden}</style></head><body></body></html>`),o.close();let s=wt({...e,target:o.body}),c=new MutationObserver(()=>{Nd(a,t,s.hostElement.dataset.mode??`closed`,r)});return c.observe(s.hostElement,{attributes:!0,attributeFilter:[`data-mode`]}),{...s,iframeElement:a,destroy(){c.disconnect(),s.destroy(),a.remove()}}}const jd=`border:0;background:transparent;z-index:2147483647;pointer-events:auto;`,Md={closed:{w:`88px`,h:`88px`},expanded:{w:`min(calc(100vw - 32px), 680px)`,h:`min(calc(100vh - 32px), 860px)`},open:{w:`min(calc(100vw - 32px), 440px)`,h:`min(calc(100vh - 32px), 700px)`}};function Nd(e,t,n,r){if(n===`fullscreen`||r===`standalone`){e.style.cssText=`${jd}position:fixed;inset:0;width:100vw;height:100vh;`;return}if(r===`inline`){e.style.cssText=`${jd}position:static;display:block;width:100%;height:100%;`;return}if(typeof matchMedia==`function`&&matchMedia(`(max-width: 640px)`).matches&&(n===`open`||n===`expanded`)){e.style.cssText=`${jd}position:fixed;inset:0;width:100vw;height:100vh;`;return}let i=t.startsWith(`top-`)?`top`:`bottom`,a=t.endsWith(`-left`)?`left`:`right`,{w:o,h:s}=Md[n]??Md.open;e.style.cssText=`${jd}position:fixed;${i}:16px;${a}:16px;width:${o};height:${s};`}const Pd=/* @__PURE__ */ new Map;function Fd(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);e.debug!==void 0&&L(e.debug);let t=R.scope(`mount`);t.info(`mount`,{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let r=Ee(e),i=r.widgetId,a=Pd.get(i);a&&(t.debug(`destroy existing instance at slot`,{widgetId:i}),a.destroy());let o=yd(r),s=r.iframe?Ad({position:Ct(r.mode)},r.position,o,r.mode,e.target??null):wt({position:Ct(r.mode),target:e.target??null});s.hostElement.dataset.widgetId=i;let c=new bd,l=ct(i,r.storage,r.aiAgentDeploymentId);function u(e){c.emit(`error`,e),d.getOptions().onError?.(e)}let d=vd({bus:c,host:s.hostElement,appRoot:s.appRoot,persistence:l,initialRaw:e,reportError:u});d.render();let f=s.hostElement,p=null;function m(e){e.debug!==void 0&&L(e.debug),d.patchUserOptions(e)}let h={widgetId:i,open:e=>en(f,`open`,e),close:()=>en(f,`close`),expand:()=>en(f,`expand`),openForm:e=>en(f,`openForm`,e),on:(e,t)=>c.on(e,t),update:e=>{t.debug(`update`,{patch:e}),m(e)},setUserContext:e=>{t.debug(`setUserContext`,{keys:Object.keys(e)}),m({userContext:{...d.getUserOptions().userContext,...e}})},clearUserContext:()=>{t.debug(`clearUserContext`),m({userContext:void 0})},setPageContext:e=>{t.debug(`setPageContext`,{keys:Object.keys(e)}),m({pageContext:{...d.getUserOptions().pageContext,...e}})},clearPageContext:()=>{t.debug(`clearPageContext`),m({pageContext:void 0})},setDebug:e=>{L(e),t.info(`debug level set`,{level:ge()})},debugLevel:()=>ge(),onLog:e=>ve(e),destroy:()=>{t.info(`destroy`,{widgetId:i}),p?.(),d.destroy(),c.clear(),n(null,s.appRoot),s.destroy(),Pd.get(i)===h&&Pd.delete(i)}};return p=Ed(h,c),Pd.set(i,h),h}function Id(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);let t=e.widgetId??`default`,n=Pd.get(t);return n?(n.update(e),n):Fd(e)}function Ld(e){if(e!==void 0){Pd.get(e)?.destroy();return}let t=[...Pd.values()];for(let e of t)e.destroy()}function Rd(e=`default`){return Pd.get(e)??null}function zd(){return[...Pd.values()]}function Bd(e,t,n){return wd(e,t,n)}const Vd=ft,Hd=M;export{Sd as HOOK_WILDCARD,Hd as brand,Ld as destroy,zd as getAllInstances,Rd as getInstance,Bd as hook,Id as init,Fd as mount,yd as resolveInitialHostMode,Vd as version};
|
|
32
|
+
`).trim(),M=!S&&t!==`error`&&!v.value&&j.length>0,ee=A||M;return/* @__PURE__ */ g(`div`,{class:`${Ml}-bubble-row`,"data-role":e.role,"data-testid":Do(X.messageBubble,e.serverMessageId??e.id),children:/* @__PURE__ */ _(`div`,{class:`${Ml}-bubble-col`,children:[/* @__PURE__ */ _(`div`,{class:`${Ml}-bubble`,children:[e.role===`operator`&&e.operatorInitials?/* @__PURE__ */ g(`span`,{class:`${Ml}-bubble-author`,children:e.operatorInitials}):null,/* @__PURE__ */ _(`div`,{class:`${Ml}-bubble-body`,children:[T?/* @__PURE__ */ g(Hl,{label:n.loading}):h.map((r,i)=>/* @__PURE__ */ g(Ll,{part:r,generativeUi:e.role===`assistant`,active:E,live:C,strings:n,showReasoning:a,showToolCalls:o,showSources:s,interactive:c&&t===`complete`&&(r.kind!==`tool`||gi(e,i)),superseded:l,continuationStreaming:e.continuationStreaming===!0,tool:u},`${Bl(r)}#${i}`)),D&&/* @__PURE__ */ g(Vl,{}),t===`error`||v.value?/* @__PURE__ */ _(`div`,{class:`${Ml}-error`,role:`alert`,children:[/* @__PURE__ */ g(`span`,{children:e.errorText??n.errorGeneric}),d?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ml}-error-retry`,onClick:()=>d(e),"data-testid":X.messageRetry,children:n.errorRetry}):null]}):null]})]}),O||ee?/* @__PURE__ */ _(`div`,{class:`${Ml}-bubble-meta`,children:[O?/* @__PURE__ */ g(`time`,{class:`${Ml}-bubble-time`,dateTime:O.iso,title:O.full,children:O.short}):null,ee?/* @__PURE__ */ _(`div`,{class:`${Ml}-bubble-actions`,children:[A&&e.serverMessageId?/* @__PURE__ */ g(Bc,{messageId:e.serverMessageId,initial:e.feedback??null,strings:n,onFeedback:m}):null,M?/* @__PURE__ */ g(Fl,{text:j,strings:n}):null]}):null]}):null]})})}function Fl({text:e,strings:t}){let[n,r]=m(!1);function i(){navigator.clipboard?.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1500)}).catch(()=>{})}let a=n?t.copied:t.copy;return/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ml}-msg-action`,"data-active":n?`true`:void 0,"aria-label":a,title:a,onClick:i,"data-testid":X.messageCopy,children:g(n?Ka:yo,{})})}function Il(e){if(typeof e!=`number`||!Number.isFinite(e))return null;try{let t=new Date(e);return{short:t.toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`}),full:t.toLocaleString(void 0,{dateStyle:`full`,timeStyle:`short`}),iso:t.toISOString()}}catch{return null}}function Ll({part:e,generativeUi:t,active:n,live:r,strings:i,showReasoning:a,showToolCalls:o,showSources:s,interactive:c,superseded:l,continuationStreaming:u,tool:d}){switch(e.kind){case`step-start`:return null;case`text`:return/* @__PURE__ */ g(zo,{textSig:e.textSig,doneSig:e.doneSig,generativeUi:t,strings:i});case`reasoning`:return a?/* @__PURE__ */ g(zl,{part:e,active:n,strings:i}):null;case`tool`:return/* @__PURE__ */ g(Rl,{part:e,strings:i,showToolCalls:o,interactive:c,superseded:l,continuationStreaming:u,live:r,tool:d});case`file`:return e.mediaType.startsWith(`image/`)?/* @__PURE__ */ g(`img`,{src:e.url,alt:``,loading:`lazy`}):/* @__PURE__ */ g(`a`,{href:e.url,target:`_blank`,rel:`noreferrer noopener`,children:e.url});case`source`:return s?/* @__PURE__ */ g(ll,{part:e,strings:i}):null}}function Rl({part:e,strings:t,showToolCalls:n,interactive:r,superseded:a,continuationStreaming:o,live:s,tool:c}){let l=f(()=>i(()=>e.approvalSig.value!==void 0),[e]);return c?.humanInLoop&&l.value?Rc(e.toolName)?/* @__PURE__ */ g(Cl,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:c.onDecision,onEdit:c.onEdit}):/* @__PURE__ */ g(dl,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:c.onDecision,onEdit:c.onEdit}):n?/* @__PURE__ */ g(jl,{part:e,strings:t,live:s}):null}function zl({part:e,active:t,strings:n}){return/* @__PURE__ */ _(`details`,{class:`${Ml}-reasoning`,"data-testid":X.reasoning,open:t,"data-active":t?`true`:void 0,children:[/* @__PURE__ */ g(`summary`,{class:`${Ml}-reasoning-summary`,children:/* @__PURE__ */ g(`span`,{class:`${Ml}-reasoning-label`,children:t?n.thinking:n.thoughts})}),/* @__PURE__ */ g(`div`,{class:`${Ml}-reasoning-body`,children:/* @__PURE__ */ g(zo,{textSig:e.textSig,doneSig:e.doneSig})})]})}function Bl(e){switch(e.kind){case`text`:case`reasoning`:case`step-start`:return`${e.kind}:${e.id}`;case`tool`:return`tool:${e.toolCallId}`;case`file`:return`file:${e.url}`;case`source`:return`source:${e.sourceId}`}}function Vl(){return/* @__PURE__ */ _(`span`,{class:`${Ml}-typing`,"data-testid":X.typingDots,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{})]})}function Hl({label:e}){return/* @__PURE__ */ _(`span`,{class:`${Ml}-loading`,role:`status`,children:[/* @__PURE__ */ g(`span`,{class:`${Ml}-loading-spinner`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${Ml}-loading-label`,children:e})]})}const Ul=M.cssPrefix;function Wl({messagesSig:e,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,enableMessageFeedback:o,onFeedback:c,loading:l,onLoadPreviousMessages:f,idle:h,controlMode:v=`ai-agent`,tool:y,onRetry:b,form:x,formMarkers:S,onFillForm:C}){let w=p(null),T=s(()=>e.value),[E,D]=m(!1),[O,k]=m(!1),A=p(!1),j=p(!1),[M,ee]=m(),te=p(!1),N=p(!1),ne=p(!1),re=p(0);function ie(){return ne.current||performance.now()-re.current<350}let P=p(0);function ae(e){let t=e.scrollHeight-e.clientHeight>1;e.dataset.fadeTop=t&&e.scrollTop>1?`true`:`false`,e.dataset.fadeBottom=t&&e.scrollHeight-e.scrollTop-e.clientHeight>1?`true`:`false`}function oe(e){return D(e.scrollHeight-e.scrollTop-e.clientHeight>240)}function F(e){P.current=performance.now(),e.scrollTop=e.scrollHeight,ae(e)}function I(e,t){F(e);let n=t,r=0;function i(){N.current||ie()||(F(e),--n>0&&(r=requestAnimationFrame(i)))}return t>0&&(r=requestAnimationFrame(i)),()=>cancelAnimationFrame(r)}function se(e,t){let n,r,i,a=-1;function o(){n.disconnect(),r.disconnect(),clearTimeout(i)}function s(){if(N.current||ie()||a>=0&&e.scrollTop<a-4)return o();F(e),a=e.scrollTop}return n=new ResizeObserver(s),r=new MutationObserver(s),s(),n.observe(e),r.observe(e,{childList:!0,subtree:!0,characterData:!0}),i=setTimeout(o,t),o}let ce=T.value[0]?.id;d(()=>{let e=w.current;if(e&&T.value.length!==0&&!j.current&&(te.current=!0,T.value.some(e=>e.role===`user`)))return se(e,300)},[ce]);let le=p(0);u(()=>{let e=w.current,t=T.value,n=le.current;if(le.current=t.length,e&&te.current&&!j.current){if(t.slice(n).some(e=>e.role===`user`))return N.current=!1,I(e,3);t.some(e=>e.role===`user`)&&(N.current||ie()||e.scrollHeight-e.scrollTop-e.clientHeight<120&&F(e))}},[T.value.length]);let ue=p(null);u(()=>{let e=w.current,t=T.value.at(-1),n=ue.current;if(ue.current=t?{id:t.id,streaming:t.status===`streaming`}:null,e&&te.current&&t&&t.id===n?.id&&!n.streaming&&t.status===`streaming`)return N.current=!1,I(e,3)},[T.value]),u(()=>{let e=w.current;if(!e)return;let t=T.value.at(-1);if(!t||t.status!==`streaming`&&!T.value.some(e=>e.role===`user`))return;let n=()=>{N.current||ie()||e.scrollHeight-e.scrollTop-e.clientHeight<240&&F(e)};if(t.status!==`streaming`)return se(e,300);n();let r=new MutationObserver(n);return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>r.disconnect()},[T.value]);let de=x?.form.id,fe=!!x&&(S??[]).some(e=>e.formId===x.form.id);d(()=>{let e=w.current;e&&de&&!N.current&&T.value.some(e=>e.role===`user`)&&(fe?e.querySelector(`[data-testid="${X.formGate}"]`)?.scrollIntoView({block:`nearest`}):F(e))},[de,fe]),u(()=>{let e=w.current;if(!e)return;let t=()=>{oe(e),ae(e),performance.now()-P.current>150&&(N.current=e.scrollHeight-e.scrollTop-e.clientHeight>8)};function n(){N.current=!0}function r(e){e.deltaY<0&&n()}let i=0;function a(e){i=e.touches[0]?.clientY??0,ne.current=!0}function o(e){(e.touches[0]?.clientY??0)>i+4&&n()}function s(){ne.current=!1,re.current=performance.now()}function c(){ne.current=!0}return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`wheel`,r,{passive:!0}),e.addEventListener(`touchstart`,a,{passive:!0}),e.addEventListener(`touchmove`,o,{passive:!0}),e.addEventListener(`touchend`,s,{passive:!0}),e.addEventListener(`touchcancel`,s,{passive:!0}),e.addEventListener(`pointerdown`,c,{passive:!0}),window.addEventListener(`pointerup`,s,{passive:!0}),window.addEventListener(`pointercancel`,s,{passive:!0}),oe(e),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`wheel`,r),e.removeEventListener(`touchstart`,a),e.removeEventListener(`touchmove`,o),e.removeEventListener(`touchend`,s),e.removeEventListener(`touchcancel`,s),e.removeEventListener(`pointerdown`,c),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[]);function pe(){let e=w.current;e&&(N.current=!1,F(e))}let me=T.value.filter(e=>!e.ephemeral),he=me[0],L=he?.serverMessageId??he?.id,ge=!!(f&&me.length>=50&&L!==M);async function _e(){if(!f||A.current)return;let e=w.current,t=e?.scrollHeight??0,n=e?.scrollTop??0;A.current=!0,j.current=!0,k(!0);try{let r=await f();r===!1&&L&&ee(L),r&&e&&(await new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e()))),e.scrollTop=n+e.scrollHeight-t,ae(e),oe(e))}finally{j.current=!1,A.current=!1,k(!1)}}let R=[],ve=``,z=T.value.at(-1)?.id,ye=[...S??[]].toSorted((e,t)=>(e.createdAt??1/0)-(t.createdAt??1/0));function be(e){return x&&e.formId===x.form.id?/* @__PURE__ */ g(Ic,{form:x.form,strings:t,onSubmit:x.onSubmit,onSkip:x.onSkip},`gate:${e.formId}`):/* @__PURE__ */ g(Lc,{marker:e,strings:t,onFill:!x&&C?()=>C(e.formId):void 0},e.key)}function xe(e){for(let t=ye[0];t?.createdAt!==void 0&&!(e!==void 0&&t.createdAt>e);t=ye[0])ye.shift(),R.push(be(t))}for(let e of T.value){if(e.role===`assistant`&&e.id!==z&&Ai(e))continue;xe(e.createdAt);let s=Gl(e.createdAt);s&&s!==ve&&(R.push(/* @__PURE__ */ g(`div`,{class:`${Ul}-date-divider`,children:/* @__PURE__ */ g(`span`,{class:`${Ul}-date-pill`,title:Kl(e.createdAt),children:ql(e.createdAt,t)})},`day:${s}`)),ve=s);let l=e.retryAction!==void 0||e.role===`assistant`&&e.id===z?ji(T.value,e):void 0,u=l!==void 0&&(l.kind!==`continue-assistant`||v===`ai-agent`);R.push(/* @__PURE__ */ g(Nl,{message:e,status:e.status,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,interactive:!!h&&v===`ai-agent`&&e.id===z,superseded:e.id!==z,tool:y,onRetry:h&&u&&(e.role===`user`||e.id===z)?b:void 0,enableMessageFeedback:o,onFeedback:c},e.id))}for(let e of ye)R.push(be(e));return/* @__PURE__ */ _(`div`,{class:`${Ul}-list-wrap`,children:[/* @__PURE__ */ _(`div`,{ref:w,class:`${Ul}-list ${Ul}-list--fade`,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,children:[l&&T.value.length===0?/* @__PURE__ */ g(`div`,{class:`${Ul}-list-loading`,role:`status`,children:t.conversationLoading}):null,ge?/* @__PURE__ */ g(`div`,{class:`${Ul}-load-previous`,children:/* @__PURE__ */ g(`button`,{type:`button`,onClick:_e,disabled:O,"aria-busy":O,"data-testid":X.loadPreviousMessages,children:t.loadPreviousMessages})}):null,R,x&&!fe?/* @__PURE__ */ g(Ic,{form:x.form,strings:t,onSubmit:x.onSubmit,onSkip:x.onSkip}):null]}),E?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ul}-jump`,onClick:pe,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":X.scrollToBottom,children:/* @__PURE__ */ g(Za,{})}):null]})}function Gl(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function Kl(e){if(typeof e!=`number`||!Number.isFinite(e))return``;try{return new Date(e).toLocaleDateString(void 0,{dateStyle:`full`})}catch{return``}}function ql(e,t){let n=new Date(e);function r(e){return new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime()}let i=Math.round((r(/* @__PURE__ */ new Date)-r(n))/864e5);return i<=0?t.dateToday:i===1?t.dateYesterday:i<7?n.toLocaleDateString(void 0,{weekday:`long`}):n.toLocaleDateString(void 0,{month:`long`,day:`numeric`,year:`numeric`})}function Jl({panelEl:e,resize:t,position:n,initialSize:r,onSizeChange:i,strings:a}){let o=M.cssPrefix,s=p(null);if(u(()=>{if(!e)return;let n=e.style;t.minWidth&&n.setProperty(`--${o}-resize-min-w`,t.minWidth),t.maxWidth&&n.setProperty(`--${o}-resize-max-w`,t.maxWidth),t.minHeight&&n.setProperty(`--${o}-resize-min-h`,t.minHeight),t.maxHeight&&n.setProperty(`--${o}-resize-max-h`,t.maxHeight),r&&(n.setProperty(`--${o}-widget-w`,`${r.width}px`),n.setProperty(`--${o}-widget-h`,`${r.height}px`))},[e,t.minWidth,t.maxWidth,t.minHeight,t.maxHeight,o,r]),!e)return null;let c=n.startsWith(`top-`),l=n.endsWith(`-right`),d=`${o}-resize-grip ${o}-resize-grip--${c?`bottom`:`top`}-${l?`left`:`right`}`;function f(t){if(!e)return;let n=t.currentTarget,r=e.getBoundingClientRect();s.current={pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,startW:r.width,startH:r.height,dirX:l?-1:1,dirY:c?1:-1},n.setPointerCapture(t.pointerId),e.setAttribute(`data-resizing`,``),t.preventDefault()}function m(t){let n=s.current;if(!n||t.pointerId!==n.pointerId||!e)return;let r=(t.clientX-n.startX)*n.dirX,i=(t.clientY-n.startY)*n.dirY;e.style.setProperty(`--${o}-widget-w`,`${n.startW+r}px`),e.style.setProperty(`--${o}-widget-h`,`${n.startH+i}px`)}function h(t){let n=s.current;if(!n||t.pointerId!==n.pointerId||!e)return;t.currentTarget.releasePointerCapture(t.pointerId),e.removeAttribute(`data-resizing`);let r=e.getBoundingClientRect();i({width:Math.round(r.width),height:Math.round(r.height)}),s.current=null}return/* @__PURE__ */ g(`div`,{class:d,role:`separator`,"aria-orientation":`vertical`,"aria-label":a.resizeHandle,title:a.resizeHandle,onPointerDown:f,onPointerMove:m,onPointerUp:h,onPointerCancel:h,"data-testid":X.resizeGrip,children:/* @__PURE__ */ g(Ba,{})})}const Yl=M.cssPrefix;function Xl({suggestions:e,onPick:t,disabled:n=!1}){return e.length===0?null:/* @__PURE__ */ g(`div`,{class:`${Yl}-suggestions`,role:`group`,"aria-label":`Suggested replies`,children:e.map((e,r)=>/* @__PURE__ */ g(`button`,{type:`button`,class:`${Yl}-suggestion`,onClick:()=>t(e),disabled:n,"data-testid":Do(X.suggestion,r),children:e.label},e.id))})}const Zl=M.cssPrefix,Ql=`.${Zl}-header, .${Zl}-back-header, .${Zl}-home-hero`;function $l(e,t){u(()=>{if(!t||!e)return;function n(e){return Number.parseFloat(e)||0}function r(e,t){return Math.min(t,Math.max(-t,e))}let i=null,a=t=>{let r=t.target;if(!(r instanceof Element)||!r.closest(Ql)||r.closest(`button, a, input, textarea, select, [role="tab"], [contenteditable]`))return;let a=e.getBoundingClientRect();i={id:t.pointerId,x:t.clientX,y:t.clientY,dx:n(e.style.getPropertyValue(`--${Zl}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${Zl}-modal-dy`)),maxX:(window.innerWidth+a.width)/2-56,maxY:(window.innerHeight+a.height)/2-56},e.dataset.dragging=`true`,t.preventDefault()},o=t=>{if(!i||t.pointerId!==i.id)return;let n=r(i.dx+t.clientX-i.x,i.maxX),a=r(i.dy+t.clientY-i.y,i.maxY);e.style.setProperty(`--${Zl}-modal-dx`,`${n}px`),e.style.setProperty(`--${Zl}-modal-dy`,`${a}px`)},s=t=>{i&&t.pointerId===i.id&&(i=null,delete e.dataset.dragging)};return e.addEventListener(`pointerdown`,a),window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s),()=>{e.removeEventListener(`pointerdown`,a),window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)}},[e,t])}function eu({containerRef:e,onDrop:t,disabled:n=!1}){let[r,i]=m(!1);return u(()=>{if(n){i(!1);return}let r=e.current;if(!r)return;let a=0;function o(e){a+=1,e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),i(!0))}function s(){--a,!(a>0)&&(a=0,i(!1))}function c(e){e.dataTransfer?.types.includes(`Files`)&&e.preventDefault()}function l(e){a=0,i(!1),e.dataTransfer&&(e.preventDefault(),t(e.dataTransfer.items))}return r.addEventListener(`dragenter`,o),r.addEventListener(`dragleave`,s),r.addEventListener(`dragover`,c),r.addEventListener(`drop`,l),()=>{r.removeEventListener(`dragenter`,o),r.removeEventListener(`dragleave`,s),r.removeEventListener(`dragover`,c),r.removeEventListener(`drop`,l)}},[e,n,t]),{visible:!n&&r}}const tu=M.cssPrefix;function nu(e){let{options:t,onClose:n}=e,r=t.strings,i=p(null);u(()=>{let e=i.current;if(!e)return;let t=Fo(e);function r(e){e.key===`Escape`&&n?.()}return e.addEventListener(`keydown`,r),()=>{t(),e.removeEventListener(`keydown`,r)}},[n]);let a=e.composerApiRef,o=e.composerActive&&e.view===`chat`&&e.canSend&&!e.activeForm&&!e.sendPreparing&&e.options.features.fileUpload,{visible:s}=eu({containerRef:i,onDrop:l(e=>{o&&a.current?.attachFromDrop(e)},[a,o]),disabled:!o});return $l(i.current,t.mode===`modal`),/* @__PURE__ */ _(`div`,{ref:i,class:`${tu}-panel`,role:`dialog`,"aria-modal":`false`,"aria-label":r.panelTitle,style:{position:`relative`},"data-testid":X.panel,children:[/* @__PURE__ */ g(ru,{...e,containerEl:i.current,dragOver:s}),/* @__PURE__ */ g(lu,{poweredBy:e.options.poweredBy})]})}function ru(e){let{options:t,transport:n,feedback:r,bus:i,persistence:a,conversationId:o,composerKey:c,panelSize:l,view:u,canSend:d,isStreaming:f,isMemoryCompacting:p,canReleaseQueuedMessages:m,queueManualMessages:v,sendPreparing:y,controlMode:b,assignedOperatorInitials:x,operatorAvailable:S,operatorRequestEnabled:C,onRequestOperator:w,onCancelOperatorRequest:T,loadingMessages:E,onLoadPreviousMessages:D,messagesSig:O,agent:k,suggestions:A,initialWidgetSize:j,onClose:M,onBack:ee,onClear:te,onToggleHistory:N,onSelectHistoryConversation:ne,onNewConversation:re,onWidgetSizeChange:ie,onSend:P,onStop:ae,onSuggestion:oe,activeForm:F,formMarkers:I,onFormSubmit:se,onFormSkip:ce,onFormFill:le,tool:ue,onRetry:de,onMessageFeedback:fe,containerEl:pe,dragOver:me,composerApiRef:he}=e,L=t.strings,ge=s(()=>O.value.some(e=>!e.ephemeral&&e.role!==`system`)).value,_e;return _e=F?null:d?/* @__PURE__ */ _(h,{children:[b&&b!==`ai-agent`?/* @__PURE__ */ g(ou,{controlMode:b,operatorInitials:x,operatorAvailable:S,onCancelOperatorRequest:T,strings:L}):null,p&&b===`ai-agent`?/* @__PURE__ */ _(`div`,{class:`${tu}-loading ${tu}-compaction-status`,role:`status`,"data-testid":X.compactionStatus,children:[/* @__PURE__ */ g(`span`,{class:`${tu}-loading-spinner`,"aria-hidden":`true`}),L.compactingContext]}):null,!f&&!p&&b===`ai-agent`&&/* @__PURE__ */ g(Xl,{suggestions:A,onPick:oe,disabled:y}),/* @__PURE__ */ g(Vs,{options:t,transport:n,feedback:r,bus:i,persistence:a,conversationId:o,isStreaming:f,isMemoryCompacting:p,canReleaseQueuedMessages:m,queueManualMessages:v,active:e.composerActive&&u===`chat`,isPreparing:y,operatorRequestEnabled:C,canRequestOperator:ge,controlMode:b,onRequestOperator:w,onSend:P,onStop:ae,apiRef:he},c)]}):/* @__PURE__ */ g(au,{label:L.conversationClosed,ctaLabel:L.startNewConversation,onNewConversation:te}),/* @__PURE__ */ _(h,{children:[u===`history`?/* @__PURE__ */ g(iu,{strings:L,onBack:N,onClose:M,showClose:sa(t.mode,l,t.actions)}):/* @__PURE__ */ _(`header`,{class:`${tu}-header`,"data-testid":X.panelHeader,children:[ee?/* @__PURE__ */ g(`button`,{type:`button`,class:`${tu}-icon-btn`,onClick:ee,"aria-label":L.moduleBack,title:L.moduleBack,children:/* @__PURE__ */ g(Ya,{})}):null,k?/* @__PURE__ */ g(cc,{agent:k,strings:L}):/* @__PURE__ */ g(`h1`,{children:L.panelTitle}),/* @__PURE__ */ g(rs,{panelProps:e,variant:`chat`})]}),u===`history`?/* @__PURE__ */ g(_c,{transport:n,strings:L,locale:t.locale,persistence:a,onSelect:ne,onNewConversation:re}):/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(yc,{visible:me,strings:L}),/* @__PURE__ */ g(Wl,{messagesSig:O,strings:L,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,showSources:t.showSources,enableMessageFeedback:t.enableMessageFeedback,onFeedback:fe,loading:E,onLoadPreviousMessages:D,idle:!f&&!y&&d&&!F,controlMode:b,tool:ue,onRetry:de,form:F?{form:F,onSubmit:se,onSkip:ce}:null,formMarkers:I,onFillForm:le}),_e,/* @__PURE__ */ g(cu,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?/* @__PURE__ */ g(Jl,{panelEl:pe,resize:t.size.resize,position:t.position,initialSize:j,onSizeChange:ie,strings:L}):null]})}function iu({strings:e,onBack:t,onClose:n,showClose:r}){return/* @__PURE__ */ _(`header`,{class:`${tu}-header`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${tu}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:/* @__PURE__ */ g(Ya,{})}),/* @__PURE__ */ g(`h1`,{children:e.historyTitle}),r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${tu}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(Ea,{})}):null]})}function au({label:e,ctaLabel:t,onNewConversation:n}){return/* @__PURE__ */ _(`div`,{class:`${tu}-readonly-banner`,role:`note`,children:[/* @__PURE__ */ g(`span`,{class:`${tu}-readonly-label`,children:e}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${tu}-readonly-cta`,onClick:n,children:t})]})}function ou({controlMode:e,operatorInitials:t,operatorAvailable:n,onCancelOperatorRequest:r,strings:i}){let a=su(e,t,n,i);return/* @__PURE__ */ _(`div`,{class:`${tu}-operator-banner`,role:`status`,"data-mode":e,"data-testid":X.operatorBanner,children:[/* @__PURE__ */ g(`span`,{class:`${tu}-operator-pulse`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${tu}-operator-label`,children:a}),e===`awaiting-operator`&&r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${tu}-cancel-operator-request`,"data-testid":X.cancelOperatorRequest,onClick:r,children:i.cancelOperatorRequest}):null]})}function su(e,t,n,r){return e===`operator`?r.chattingWithOperator.replace(`{operator}`,t??``):n===!1?r.noOperatorAvailable:r.connectingOperator}function cu({disclaimer:e}){return e?/* @__PURE__ */ g(`div`,{class:`${tu}-composer-footer`,children:/* @__PURE__ */ g(`div`,{class:`${tu}-disclaimer`,children:e})}):null}function lu({poweredBy:e}){return e?/* @__PURE__ */ g(`div`,{class:`${tu}-poweredby-bar`,children:/* @__PURE__ */ g(uu,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function uu({logoUrl:e,text:t,href:n}){let r=/* @__PURE__ */ _(h,{children:[e?/* @__PURE__ */ g(`img`,{class:`${tu}-poweredby-logo`,src:e,alt:``,loading:`lazy`}):null,t?/* @__PURE__ */ g(`span`,{children:t}):null]});return n?/* @__PURE__ */ g(`a`,{class:`${tu}-poweredby`,href:n,target:`_blank`,rel:`noopener noreferrer`,children:r}):/* @__PURE__ */ g(`span`,{class:`${tu}-poweredby`,children:r})}const du=M.cssPrefix;function fu({panelProps:e,enabledModules:t,nav:n,bus:r,hasUnread:i,latestNews:a,onSelectConversation:o,onStartNewConversation:c,onSetPanelSize:d}){let f=e.options,m=f.strings,h=p(null),v=p(/* @__PURE__ */ new Set);u(()=>{let t=h.current;if(!t)return;let n=Fo(t);function r(t){t.key===`Escape`&&e.onClose?.()}return t.addEventListener(`keydown`,r),()=>{n(),t.removeEventListener(`keydown`,r)}},[e.onClose]);let y=s(()=>n.sig.value).value,b=va(y),x=f.modules.byId[y.activeTab],S=e.composerActive&&x?.layout===`chat`&&b===void 0,C=e.composerApiRef,w=S&&e.view===`chat`&&e.canSend&&!e.activeForm&&!e.sendPreparing&&e.options.features.fileUpload,{visible:T}=eu({containerRef:h,onDrop:l(e=>{w&&C.current?.attachFromDrop(e)},[C,w]),disabled:!w});$l(h.current,f.mode===`modal`);let E=b?.kind===`iframe`||b?.kind===`content`,D=t.length>1&&(ya(y)||!E),O=p(null);u(()=>{if(E&&O.current===null)O.current=e.panelSize,e.panelSize===`normal`&&d(`expanded`);else if(!E&&O.current!==null){let e=O.current;O.current=null,d(e)}},[E]);let k={push:e=>n.push(e),pop:()=>n.pop(),switchTab:e=>n.switchTab(e),switchToLayout:e=>{let r=t.find(t=>t.layout===e);r&&n.switchTab(r.id)},selectConversation:o,startNewConversation:c};function A(t){return{options:f,transport:e.transport,strings:m,config:t,nav:k,bus:r,panelProps:e,latestNews:a}}let j=/* @__PURE__ */ g(rs,{panelProps:e,variant:`plain`});x&&v.current.add(x.id);let M=t.filter(e=>v.current.has(e.id));function ee(t){if(t.layout===`chat`)return/* @__PURE__ */ g(ru,{...e,composerActive:S,containerEl:h.current,dragOver:T});let n=nc[t.layout].Root;return n?/* @__PURE__ */ g(n,{...A(t)}):null}function te(){return b?.kind===`iframe`?/* @__PURE__ */ g(oc,{url:b.url,title:b.title,strings:m,onBack:()=>n.pop(),actions:j}):b?.kind===`content`?/* @__PURE__ */ g(Jo,{id:b.id,title:b.title,transport:e.transport,strings:m,bus:r,onBack:()=>n.pop(),actions:j}):null}return/* @__PURE__ */ _(`div`,{ref:h,class:`${du}-panel ${du}-messenger`,role:`dialog`,"aria-modal":`false`,"aria-label":m.panelTitle,style:{position:`relative`},"data-testid":X.messengerHome,children:[/* @__PURE__ */ _(`div`,{class:`${du}-messenger-body`,children:[M.map(e=>/* @__PURE__ */ g(`div`,{class:`${du}-messenger-pane`,hidden:E||e.id!==x?.id,children:ee(e)},e.id)),te()]}),D?/* @__PURE__ */ g(ic,{modules:t,activeTab:y.activeTab,strings:m,hasUnread:i,onSelect:e=>n.switchTab(e)}):null,/* @__PURE__ */ g(lu,{poweredBy:f.poweredBy}),f.size.resize?.enabled&&(x?.layout!==`chat`||b)?/* @__PURE__ */ g(Jl,{panelEl:h.current,resize:f.size.resize,position:f.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:m}):null]})}const pu=M.cssPrefix;function mu({strings:e,onClose:t}){return/* @__PURE__ */ _(`div`,{class:`${pu}-panel ${pu}-modules-empty`,role:`dialog`,"aria-label":e.panelTitle,"data-testid":X.modulesEmpty,children:[t?/* @__PURE__ */ g(`button`,{type:`button`,class:`${pu}-icon-btn ${pu}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(Ea,{})}):null,/* @__PURE__ */ g(`p`,{class:`${pu}-modules-empty-text`,children:e.modulesEmpty})]})}function hu(e){let t=M.cssPrefix,{site:n,blocks:r,strings:i,collapsed:a}=e,o=r?.navigation??[],s=r?.linkCards??[],c=a?i.expandSidebar:i.collapseSidebar;return/* @__PURE__ */ _(`aside`,{class:`${t}-sidebar`,"data-collapsed":a?`true`:`false`,"data-testid":X.sidebar,children:[/* @__PURE__ */ _(`div`,{class:`${t}-sidebar-header`,children:[/* @__PURE__ */ g(gu,{site:n}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${t}-sidebar-toggle`,"aria-label":c,"aria-expanded":a?`false`:`true`,title:c,onClick:e.onToggleCollapsed,"data-testid":X.sidebarToggle,children:/* @__PURE__ */ g(_u,{collapsed:a})})]}),a?null:/* @__PURE__ */ _(h,{children:[o.length>0?/* @__PURE__ */ g(`nav`,{class:`${t}-sidebar-section`,"data-section":`navigation`,children:/* @__PURE__ */ g(vu,{items:o})}):null,s.length>0?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-section`,"data-section":`link-cards`,children:/* @__PURE__ */ g(yu,{items:s})}):null,e.showConversations?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-conversations`,children:/* @__PURE__ */ g(_c,{transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function gu({site:e}){let t=M.cssPrefix;if(e?.logo?.url){let n=e.logo.alt??e.title??`Logo`;return/* @__PURE__ */ _(`picture`,{children:[e.logoDark?.url?/* @__PURE__ */ g(`source`,{srcset:e.logoDark.url,media:`(prefers-color-scheme: dark)`}):null,/* @__PURE__ */ g(`img`,{class:`${t}-sidebar-logo`,src:e.logo.url,alt:n})]})}return/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-title`,children:e?.title??M.name})}function _u({collapsed:e}){return/* @__PURE__ */ g(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"aria-hidden":`true`,children:e?/* @__PURE__ */ g(`polyline`,{points:`9 6 15 12 9 18`}):/* @__PURE__ */ g(`polyline`,{points:`15 6 9 12 15 18`})})}function vu({items:e}){let t=M.cssPrefix;return/* @__PURE__ */ g(`ul`,{class:`${t}-sidebar-nav`,children:e.map(e=>/* @__PURE__ */ g(`li`,{children:/* @__PURE__ */ _(`a`,{class:`${t}-sidebar-nav-item`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[e.icon?/* @__PURE__ */ g(`span`,{class:`${t}-sidebar-nav-icon`,"data-icon":e.icon}):null,/* @__PURE__ */ g(`span`,{class:`${t}-sidebar-nav-label`,children:e.label})]})},e.id??e.label))})}function yu({items:e}){let t=M.cssPrefix;return/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-cards`,children:e.map(e=>/* @__PURE__ */ _(`a`,{class:`${t}-sidebar-card`,href:e.href,target:e.href?`_blank`:void 0,rel:e.href?`noreferrer`:void 0,children:[/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-card-label`,children:e.label}),e.description?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-card-desc`,children:e.description}):null]},e.id??e.label))})}const bu=M.cssPrefix;function xu(e){return/* @__PURE__ */ _(`main`,{class:`${bu}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?`true`:`false`,children:[/* @__PURE__ */ g(hu,{site:e.site,blocks:e.blocks,transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,showConversations:e.showConversations,onSelectConversation:e.onSelectConversation,onNewConversation:e.onNewConversation,collapsed:e.sidebarCollapsed,onToggleCollapsed:e.onToggleSidebarCollapsed}),/* @__PURE__ */ g(`section`,{class:`${bu}-page-chat`,"aria-label":e.strings.panelTitle,children:e.children})]})}const Su=R.scope(`hitl`);function Cu(e){let{streaming:t,controlModeSig:n,messagesSig:r,sendAiTurn:i,bus:a,humanInLoop:o}=e,s=p(t);s.current=t;let c=l((e,t,a)=>{if(s.current||n.value!==`ai-agent`)return!1;let o=r.value.at(-1),c=o?.partsSig.value.findIndex(t=>t.kind===`tool`&&t.toolCallId===e)??-1,l=o?.partsSig.value[c];return!o||l?.kind!==`tool`?(Su.warn(`decideTool: tool part not found`,{toolCallId:e}),!1):o.status!==`complete`||!gi(o,c)||!t(l)?!1:(a(l),o.partsSig.value=[...o.partsSig.value],mi(o)&&(o.status=`streaming`,o.retryAction={kind:`continue-assistant`,messageId:o.serverMessageId??o.id},o.awaitingContinuation=!0,r.value=[...r.value],i({continueExisting:!0})),!0)},[n,r,i]),u=l((e,t,n)=>{let r=!1;c(e,e=>e.stateSig.value===`approval-requested`,i=>{r=Rc(i.toolName);let a=i.approvalSig.value?.id??e;i.approvalSig.value={id:a,approved:t,reason:n},i.stateSig.value=`approval-responded`})&&(r?(Su.info(`toolResult`,{toolCallId:e}),a.emit(`toolResult`,{toolCallId:e})):(Su.info(`toolDecision`,{toolCallId:e,approved:t}),a.emit(`toolDecision`,{toolCallId:e,approved:t})))},[a,c]),d=l(e=>{c(e,e=>e.stateSig.value===`approval-responded`&&e.approvalSig.value?.approved!==void 0,t=>{let n=t.approvalSig.value?.id??e;t.approvalSig.value={id:n},t.stateSig.value=`approval-requested`})},[c]);return{toolInteraction:f(()=>({humanInLoop:o,onDecision:u,onEdit:d}),[o,u,d])}}const wu=R.scope(`latest-news`);function Tu({transport:e,options:t,persistence:n,enabled:r}){let i=t.modules.list.find(e=>e.layout===`news`)?.contentCollectionIds,a=i?.join(`,`),[o,s]=m(),[c,d]=m(()=>n.loadSeenNewsId());u(()=>{if(!r||!i?.length)return;let t=!1;return e.listContent({contentCollectionIds:i,sortBy:`publishedAt`,sortOrder:`desc`,limit:1}).then(e=>{t||s(e.items[0])}).catch(e=>wu.debug(`listContent (latest news) failed (non-fatal)`,{err:e})),()=>{t=!0}},[e,r,a]);let f=l(e=>{n.saveSeenNewsId(e),d(e)},[n]);return{item:o,unseen:o!==void 0&&o.id!==c,markSeen:f}}function Eu({callout:e,persistence:t}){let n=e?.text??``,r=e?.persistent??!0,[i,a]=m(()=>!r&&t.loadCalloutDismissed(n));return u(()=>{a(!r&&t.loadCalloutDismissed(n))},[n,r,t]),{dismissed:i,dismissCallout:l(()=>{a(!0),r||t.saveCalloutDismissed(n)},[t,n,r])}}function Du(e){let{transport:t,conversationIdSig:n}=e,r=c(`ai-agent`),i=c(void 0),a=c(void 0),o=p(void 0),s=l(e=>{let t=e.controlRevision,s=o.current;s&&s.conversationId===n.value&&t<s.revision||(o.current={conversationId:n.value,revision:t},r.value=e.controlMode,i.value=e.assignedOperatorInitials,e.controlMode===`awaiting-operator`?e.operatorAvailable!==void 0&&(a.value=e.operatorAvailable):a.value=void 0)},[n,r,i,a]);return{controlModeSig:r,assignedOperatorInitialsSig:i,operatorAvailableSig:a,applyControlState:s,adoptControlStateChunk:l(e=>{if(e.type!==`data-control-state`)return;let t=Ur(e.data);t&&s(t)},[s]),requestOperator:l(async()=>{let e=n.value,r=await t.requestOperator();r&&n.value===e&&s(r)},[t,n,s]),cancelOperatorRequest:l(async()=>{let e=n.value,r=await t.cancelOperatorRequest();r&&n.value===e&&s(r)},[t,n,s])}}const Ou=M.cssPrefix,ku=`--${Ou}-visual-viewport-height`,Au=`--${Ou}-visual-viewport-top`;function ju(e){let{hostElement:t,mode:n,panelSize:r,isOpen:i,surfaceReady:a,setIsOpen:o}=e;d(()=>{At(t,ba(n,r,i))},[t,i,r,n]),d(()=>{if(!i||!a)return;let e=t.ownerDocument.defaultView,n=e?.visualViewport,r=t.shadowRoot?.querySelector(`.${Ou}-anchor`);if(!e||!n||!r)return;let o=()=>{r.style.setProperty(ku,`${n.height}px`),r.style.setProperty(Au,`${n.offsetTop}px`)},s=0,c=()=>{e.cancelAnimationFrame(s),s=e.requestAnimationFrame(()=>{s=e.requestAnimationFrame(o)})};return o(),n.addEventListener(`resize`,c),n.addEventListener(`scroll`,c),()=>{e.cancelAnimationFrame(s),n.removeEventListener(`resize`,c),n.removeEventListener(`scroll`,c),r.style.removeProperty(ku),r.style.removeProperty(Au)}},[t,i,a]),u(()=>{if(n!==`modal`||!i)return;function e(e){e.composedPath().some(e=>e instanceof HTMLElement&&e.classList.contains(`${Ou}-panel`))||o(!1)}return t.addEventListener(`click`,e),()=>t.removeEventListener(`click`,e)},[t,i,n,o]),u(()=>{if(n!==`drawer`||!i)return;function e(e){e.key===`Escape`&&o(!1)}return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[i,n,o])}const Mu=R.scope(`reducer`);var Nu=class{constructor(e,t){this.messagesSig=e,this.onReconcileNeeded=t,V(this,`active`,null),V(this,`openTextParts`,/* @__PURE__ */ new Map),V(this,`partSeq`,0),V(this,`replay`,null)}attach(e){this.active=e,this.openTextParts.clear()}detach(){this.active=null,this.replay=null,this.openTextParts.clear()}beginReplay(e,t){let n=Xr();n.id=e.id;let r=Fu(e)||hi(e)&&(e.status!==`streaming`||mi(e)),i=e.status===`streaming`&&mi(e)&&pi(e);this.replay={baseline:e,shadow:n,chunks:[t],probeContinuation:r,continuationTailReplay:i,liveCatchUp:e.status===`streaming`&&!r},this.attach(n),this.apply(t)}refreshReplayBaseline(){let e=this.replay;if(!e)return null;let t=e.shadow.serverMessageId??e.baseline.serverMessageId,n=this.messagesSig.value,r=n.at(-1),i=r===e.baseline||r?.id===e.baseline.id||t!==void 0&&r?.serverMessageId===t?r:n.find(t=>t===e.baseline)??n.find(n=>n.id===e.baseline.id||t!==void 0&&n.serverMessageId===t);if(!i)return this.detach(),null;if(i===e.baseline)return e;let a=e.baseline;return e.baseline=i,Iu(a,i),e.liveCatchUp&&Fu(e.shadow)&&(i.status===`streaming`||hi(i))?(e.probeContinuation=!1,e.continuationTailReplay=!1,e):(e.probeContinuation=Fu(i)||hi(i)&&(i.status!==`streaming`||mi(i)),e.continuationTailReplay=i.status===`streaming`&&mi(i)&&pi(i),e.liveCatchUp=i.status===`streaming`&&!e.probeContinuation,e)}refreshActive(){let e=this.active;if(!e)return null;let t=e.serverMessageId,n=this.messagesSig.value,r=n.at(-1),i=r===e||r?.id===e.id||t!==void 0&&r?.serverMessageId===t?r:n.find(t=>t===e)??n.find(n=>n.id===e.id||t!==void 0&&n.serverMessageId===t);if(!i)return this.detach(),null;if(i===e)return e;Iu(e,i);let a=Fu(e)&&hi(i);return i.status!==`streaming`&&!a?(this.detach(),null):(this.replay={baseline:i,shadow:e,chunks:[],probeContinuation:!1,continuationTailReplay:!1,liveCatchUp:!0},e)}promoteReplay(){let{baseline:e,shadow:t}=this.replay;return r(()=>{e.role=t.role,e.serverMessageId=t.serverMessageId,e.operatorInitials=t.operatorInitials,e.status=t.status,t.canceled&&(e.canceled=!0),e.finishReason=t.finishReason,e.errorText=t.errorText,e.suggestions=t.suggestions??e.suggestions,e.partsSig.value=t.partsSig.value,this.messagesSig.value=[...this.messagesSig.value]}),this.replay=null,this.active=e,e}promoteContinuation(e=!1){let{baseline:t,chunks:n}=this.replay,i=_i(t);return this.replay=null,r(()=>{if(e){let e=t.partsSig.value.findLastIndex(e=>e.kind===`tool`);t.partsSig.value=t.partsSig.value.slice(0,e+1)}t.awaitingContinuation=!1,t.status=`streaming`,t.finishReason=void 0,t.errorText=void 0,t.suggestions=void 0,this.attach(t);for(let e of n)this.apply(e);t.continuationStreaming=i||void 0,this.messagesSig.value=[...this.messagesSig.value]}),t}settleOwnedContinuation(e){let{baseline:t}=this.replay,n=_i(t);return this.replay=null,r(()=>{t.awaitingContinuation=!1,t.status=`streaming`,t.finishReason=void 0,t.errorText=void 0,t.suggestions=void 0,this.attach(t),this.apply(e),t.continuationStreaming=n||void 0,this.messagesSig.value=[...this.messagesSig.value]}),t}applyResume(e){if(e.type===`start`){let t=(this.replay?.baseline??this.active)?.serverMessageId;t!==void 0&&e.messageId!==void 0&&t!==e.messageId&&this.onReconcileNeeded?.({messageId:t}),this.detach();let n=e.messageId,r=n===void 0?void 0:this.messagesSig.value.find(e=>e.serverMessageId===n||e.id===n);if(r!==void 0)return e.messageMetadata?.senderRole===`visitor`&&r.role===`user`&&(r.status===`pending`||r.status===`error`)&&(r.serverMessageId=n,r.status=`complete`,r.errorText=void 0,r.retryAction=void 0,this.messagesSig.value=[...this.messagesSig.value]),this.beginReplay(r,e),null;let i=e.messageMetadata?.senderRole,a=this.messagesSig.value.at(-1);if(i===void 0&&a?.role===`assistant`&&a.status===`streaming`&&a.serverMessageId===void 0&&!ci(a))return this.attach(a),this.apply(e),null;let o=Xr();return this.attach(o),this.messagesSig.value=[...this.messagesSig.value,o],this.apply(e),null}if(this.replay){let t=this.refreshReplayBaseline();if(!t)return null;t.chunks.push(e),e.type===`data-control-state`&&(t.baseline.operatorRoutedTurn=e.data.controlMode!==`ai-agent`),this.apply(e);let{baseline:n,shadow:r,probeContinuation:i,continuationTailReplay:a,liveCatchUp:o}=t,s=e.type===`finish`||e.type===`error`||e.type===`abort`;if(i){if(!Bu(n,r,e))return s&&(Wu(n,r)&&(n.continuationStreaming=!0,this.messagesSig.value=[...this.messagesSig.value],this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id})),this.detach()),null;let t=Fu(n)&&s?this.settleOwnedContinuation(e):this.promoteContinuation();return s?(t.continuationStreaming&&(e.type===`finish`?this.onReconcileNeeded?.({messageId:t.serverMessageId??t.id}):t.continuationStreaming=!1),this.detach(),t):null}if(a&&Ru(n,r)){let e=this.promoteContinuation(!0);return s?(this.detach(),e):null}if(!o)return s&&this.detach(),null;if(s&&!ci(n)&&ci(r)){let e=this.promoteReplay();return this.detach(),e}if(!Lu(n,r))return s&&(this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id}),this.detach()),null;let c=this.promoteReplay();return s?(this.detach(),c):null}let t=this.refreshActive();if(!t)return null;if(this.replay)return this.applyResume(e);if(this.apply(e),e.type===`finish`||e.type===`error`||e.type===`abort`){let n=t;return n.continuationStreaming&&(e.type===`finish`?this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id}):n.continuationStreaming=!1),this.detach(),n}return null}ensureTextPart(e,t,n){let r=`${t}:${n}`,i=this.openTextParts.get(r);if(i)return i;let a={kind:t,id:`${n}#${this.partSeq++}`,textSig:o(``),doneSig:o(!1)};return this.openTextParts.set(r,a),Ku(e,a),a}apply(e){let t=this.active;if(t)switch(e.type){case`start`:{e.messageId&&(t.serverMessageId=e.messageId);let n=e.messageMetadata;n?.senderRole===`operator`?(t.role=`operator`,n.operatorInitials&&(t.operatorInitials=n.operatorInitials)):n?.senderRole===`visitor`&&(t.role=`user`);return}case`finish-step`:this.openTextParts.clear();return;case`start-step`:Ku(t,{kind:`step-start`,id:`ss-${this.partSeq++}`});return;case`finish`:Mu.debug(`finish`,{reason:e.finishReason,canContinue:e.canContinue}),t.status=`complete`,t.retryAction=void 0,e.finishReason&&(t.finishReason=e.finishReason),this.bumpDone(t);return;case`error`:Mu.warn(`stream error chunk`,{errorText:e.errorText}),t.status=`error`,t.errorText=e.errorText,this.bumpDone(t);return;case`abort`:Mu.debug(`stream abort chunk (canceled)`),t.status=`complete`,t.canceled=!0,t.retryAction=void 0,this.bumpDone(t);return;case`text-start`:this.ensureTextPart(t,`text`,e.id);return;case`text-delta`:{let n=this.ensureTextPart(t,`text`,e.id);n.textSig.value+=e.delta;return}case`text-end`:this.ensureTextPart(t,`text`,e.id).doneSig.value=!0;return;case`reasoning-start`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!1;return;case`reasoning-delta`:{let n=this.ensureTextPart(t,`reasoning`,e.id);n.textSig.value+=e.delta;return}case`reasoning-end`:this.ensureTextPart(t,`reasoning`,e.id).doneSig.value=!0;return;case`tool-input-start`:case`tool-input-delta`:case`tool-input-available`:case`tool-input-error`:case`tool-output-available`:case`tool-output-error`:case`tool-output-denied`:case`tool-approval-request`:Ju(t,e);return;case`file`:Ku(t,{kind:`file`,url:e.url,mediaType:e.mediaType});return;case`source-url`:qu(t,{kind:`source`,sourceId:e.sourceId,url:e.url,title:e.title});return;case`source-document`:qu(t,{kind:`source`,sourceId:e.sourceId,title:e.title,filename:e.filename,mediaType:e.mediaType});return;case`data-suggestions`:t.suggestions=Gr(e.data);return;case`data-control-state`:t.operatorRoutedTurn=e.data.controlMode!==`ai-agent`;return;case`data-memory-compaction-state`:return}}bumpDone(e){r(()=>{e.partsSig.value=[...e.partsSig.value],this.messagesSig.value.includes(e)&&(this.messagesSig.value=[...this.messagesSig.value])})}};const Pu={"input-streaming":0,"input-available":1,"approval-requested":2,"approval-responded":3,"output-available":4,"output-denied":4,"output-error":4};function Fu(e){return e.awaitingContinuation===!0||e.continuationStreaming===!0||e.retryAction?.kind===`continue-assistant`}function Iu(e,t){e.canceled&&(t.canceled=!0),Fu(e)&&(t.status===`streaming`||hi(t))&&(t.awaitingContinuation??(t.awaitingContinuation=e.awaitingContinuation),t.continuationStreaming??(t.continuationStreaming=e.continuationStreaming),t.retryAction===void 0&&(t.retryAction=e.retryAction))}function Lu(e,t){let n=e.partsSig.value,r=t.partsSig.value;return e.role!==t.role||r.length<n.length?!1:n.every((e,t)=>zu(e,r[t]))}function Ru(e,t){let n=e.partsSig.value,r=n.findLastIndex(e=>e.kind===`tool`),i=new Set(n.slice(0,r+1).flatMap(e=>e.kind===`tool`?[e.toolCallId]:[])),a=t.partsSig.value.filter(e=>e.kind!==`tool`||!i.has(e.toolCallId)),o=n.slice(r+1);return a.length<o.length?!1:o.every((e,t)=>zu(e,a[t]))}function zu(e,t){switch(e.kind){case`text`:case`reasoning`:return t?.kind===e.kind&&t.textSig.value.startsWith(e.textSig.value);case`step-start`:return t?.kind===`step-start`;case`tool`:{if(t?.kind!==`tool`||t.toolCallId!==e.toolCallId||!Di(t.toolName,e.toolName)||Pu[t.stateSig.value]<Pu[e.stateSig.value])return!1;let n=e.approvalSig.value?.approved;return n===void 0||t.approvalSig.value?.approved===n}case`file`:return t?.kind===`file`&&t.url===e.url&&t.mediaType===e.mediaType;case`source`:return t?.kind===`source`&&t.sourceId===e.sourceId&&t.url===e.url&&t.title===e.title&&t.filename===e.filename&&t.mediaType===e.mediaType;default:return e}}function Bu(e,t,n){return Vu(e,n)||!Hu(e,t)?!0:n.type!==`finish`&&n.type!==`error`&&n.type!==`abort`?!1:pi(t)||e.awaitingContinuation===!0&&n.type!==`finish`?!0:e.awaitingContinuation===!0&&t.partsSig.value.every(e=>e.kind===`step-start`)}function Vu(e,t){if(t.type!==`tool-output-available`&&t.type!==`tool-output-error`&&t.type!==`tool-output-denied`)return!1;let n=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t.toolCallId);return n!==void 0&&Pu[n.stateSig.value]<4}function Hu(e,t){let n=t.partsSig.value;if(n.length===0)return!0;let r=e.partsSig.value;return r.some((e,t)=>n.every((e,n)=>Uu(r[t+n],e)))}function Uu(e,t){switch(t.kind){case`text`:case`reasoning`:return e?.kind===t.kind&&e.textSig.value.startsWith(t.textSig.value);case`step-start`:return e?.kind===`step-start`;case`tool`:return e?.kind===`tool`&&e.toolCallId===t.toolCallId&&(t.toolName===`tool`||Di(e.toolName,t.toolName));case`file`:return e?.kind===`file`&&e.url===t.url&&e.mediaType===t.mediaType;case`source`:return e?.kind===`source`&&e.sourceId===t.sourceId&&e.url===t.url&&e.title===t.title&&e.filename===t.filename&&e.mediaType===t.mediaType;default:return t}}function Wu(e,t){if(Fu(e)||!hi(e))return!1;let n=new Set(e.partsSig.value.filter(e=>e.kind===`tool`).map(e=>e.toolCallId));return!t.partsSig.value.some(e=>e.kind===`tool`&&n.has(e.toolCallId))}function Gu(e,t,n,r){let i=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);if(i)return r&&(i.dynamic=!0),i;let a={kind:`tool`,toolCallId:t,toolName:n??`tool`,dynamic:r?!0:void 0,inputPartialSig:o(``),inputSig:o(void 0),outputSig:o(void 0),errorSig:o(void 0),stateSig:o(`input-streaming`),approvalSig:o(void 0)};return Ku(e,a),a}function Ku(e,t){e.partsSig.value=[...e.partsSig.value,t]}function qu(e,t){e.partsSig.value.some(e=>e.kind===`source`&&e.sourceId===t.sourceId)||Ku(e,t)}function Ju(e,t){switch(t.type){case`tool-input-start`:Gu(e,t.toolCallId,t.toolName,t.dynamic);return;case`tool-input-delta`:{let n=Gu(e,t.toolCallId);n.inputPartialSig.value+=t.inputTextDelta;return}case`tool-input-available`:{let n=Gu(e,t.toolCallId,t.toolName,t.dynamic);n.inputSig.value=t.input,n.stateSig.value=`input-available`;return}case`tool-input-error`:{let n=Gu(e,t.toolCallId,t.toolName,t.dynamic);n.inputSig.value=t.input,n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-approval-request`:{let n=Gu(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value=`approval-requested`;return}case`tool-output-available`:{let n=Gu(e,t.toolCallId,void 0,t.dynamic);n.outputSig.value=t.output,n.stateSig.value=`output-available`;return}case`tool-output-error`:{let n=Gu(e,t.toolCallId,void 0,t.dynamic);n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-output-denied`:{let n=Gu(e,t.toolCallId);n.stateSig.value=`output-denied`;return}default:return}}const Yu=1e3;async function Xu(e){let t=Yu,n=!1,r=!1,i=!1;function a(){i||e.signal.aborted||(i=!0,e.onInitialBoundaryReady())}for(;!e.signal.aborted;){let o,s=`held`;try{s=await e.connect(()=>{if(e.signal.aborted)return;o=e.now();let t=n||r;n=!0,r=!1,i?t&&e.backfill():a()})}catch{}if(e.signal.aborted||(!n&&o===void 0&&(r=!0,a()),s===`unavailable`))return;o!==void 0&&e.now()-o>=1e3&&(t=Yu),await e.sleep(t),t=Math.min(t*2,15e3)}}function Zu(e){let{activated:t,conversationReady:n,conversationIdSig:r,messagesSig:i,optionsRef:a,transport:o,visitorId:s,adoptControlStateChunk:c,adoptMemoryCompactionStateChunk:l,settleSuggestions:d,recordConversationReply:f,transcriptRecoverySig:m,beginConversationTranscript:h,commitConversationTranscript:g,onReplyLanded:_,runCancellation:v,canContinueRef:y,setCanSend:b,feedback:x,bus:S,loadInitialThread:C,shouldReconcileOnConnect:w}=e,T=p(0);u(()=>{if(!t||!n||!r.value)return;let e=r.value,u=new AbortController,p=e=>{},E=new Nu(i,e=>p(e));o.primeIdentity(s,e);let D=!1,O=!1,k,A=!1,j,M=0,ee=y.current,te,N,ne=Date.now(),re,ie=!1,P=!1;function ae(t,n,r){if(!ci(t))return;let o=i.value.findLast(e=>!e.ephemeral),s=t.serverMessageId??t.id;if(!(o&&(o.serverMessageId??o.id)!==s))return si(i.value,t,e,a.current.strings.newConversation,n,r)}function oe(e,t,n,r){let i=ae(e,t,r);if(!i)return;let a=`${e.serverMessageId??e.id}:${n}:${i.preview??``}`;a!==N&&(N=a,o.publishConversation({...i,hasUnread:!0},!0))}let F;function I(){F&&(clearTimeout(F.timer),F=void 0)}function se(){let e=F;if(!e)return;clearTimeout(e.timer),F=void 0;let t=i.value.find(t=>(t.serverMessageId??t.id)===e.replyId);(t?.role===`assistant`||t?.role===`operator`)&&oe(t,e.canContinue,e.generation,e.activityAt)}function ce(e,t,n,r){I(),F={replyId:e.serverMessageId??e.id,canContinue:t,generation:n,activityAt:r,timer:setTimeout(se,120)}}function le(e,t,n,r=Date.now(),i=!0){I();let a=ae(e,t,r);if(!a)return;let o=`${e.serverMessageId??e.id}:${n}`;o!==te&&(te=o,f(a),i&&re&&(ie=!0))}function ue(e,t){(e||!v.localSendRef.current)&&v.settle(t),e&&_()}function de(e,t=[],n=!1,r,o=ee,s=M,c=Date.now(),l=!0){let u=a.current;if(e.canceled){le(e,o,s,c,l),ue(n,r);return}let f=!0,p=e.status===`error`;switch(Ni(e,p)){case`drop`:i.value=i.value.filter(t=>t!==e),f=!1;break;case`complete-operator-routed`:e.status=`complete`,n&&(x.play(`messageReceived`),la(S,u,`assistant`,oi(e)));break;case`error`:if(e.status=`error`,e.errorText=u.strings.errorGeneric,n){x.play(`error`);let e=/* @__PURE__ */ Error(p?`stream error chunk`:`empty reply`);S.emit(`error`,e),u.onError?.(e)}break;case`complete`:e.status=`complete`,n&&(x.play(`messageReceived`),la(S,u,`assistant`,oi(e))),d(e,t)}f&&le(e,o,s,c,l),ue(n,r)}function fe(t){if(u.signal.aborted||r.value!==e)return;if(c(t),l?.(t),t.type===`start`){se();let n=t.messageId===void 0?void 0:i.value.find(e=>e.serverMessageId===t.messageId||e.id===t.messageId);A=n!==void 0&&n.status!==`streaming`;let r=j?.senderRole===`visitor`?j.messageId:void 0;if(j={messageId:t.messageId,senderRole:t.messageMetadata?.senderRole},M+=1,ne=Date.now(),N=void 0,D=t.messageMetadata?.senderRole===void 0,O=!1,k=D?t.messageMetadata?.runId:void 0,D){let n=t.messageId!==void 0&&i.value.some(e=>e.serverMessageId===t.messageId||e.id===t.messageId),a=i.value.at(-1),o=t.messageId!==void 0&&(a?.serverMessageId===t.messageId||a?.id===t.messageId),s=v.localSendRef.current&&(!n||o)&&a?.role===`assistant`&&a.status===`streaming`&&(o||a.serverMessageId===void 0&&a.partsSig.value.length===0);O=v.captureStart(e,t,s,r)}}let n=D&&(t.type===`finish`||t.type===`error`||t.type===`abort`),o=n?k:void 0,s=n&&(O||v.ownsLocalRun(o)),d=M,f=A;t.type===`finish`&&t.canContinue!==void 0&&(ee=t.canContinue);let p=ee;n&&(D=!1,O=!1,k=void 0);let m=E.applyResume(t),h=j?.messageId,g=h===void 0?void 0:i.value.find(e=>e.serverMessageId===h||e.id===h);A&&j?.senderRole!==`visitor`&&(m!==null||g?.status===`streaming`)&&(A=!1,f=!1);let _=!A&&(g?.role===`assistant`||g?.role===`operator`);t.type===`text-delta`&&_&&ce(g,ee,M,ne),t.type===`text-end`&&(I(),_&&oe(g,ee,M,ne)),t.type===`finish`&&t.canContinue===!1&&b(!1),m?m.role===`operator`?(f||(x.play(`messageReceived`),la(S,a.current,`operator`,oi(m))),le(m,p,d,ne),A=!1,n&&(s||!v.localSendRef.current)&&v.settle(o)):m.role===`assistant`&&(de(m,[],s,o,p,d,ne),A=!1):n&&(s||!v.localSendRef.current)&&v.settle(o)}async function pe(t){let n=M,a=await o.loadConversation(e,t?{ids:[t]}:void 0).catch(()=>null);if(u.signal.aborted||r.value!==e||!a)return!1;a.controlState&&c({type:`data-control-state`,data:a.controlState});let s=i.value.at(-1),l=n===M&&(t===void 0||s!==void 0&&(s.serverMessageId===t||s.id===t));if(a.messages.length===0)return!0;l&&(ee=a.canContinue,b(ee));let f=i.value,p=t===void 0?f.at(-1):f.find(e=>e.serverMessageId===t||e.id===t),{messages:m,changed:h}=wi(f,ri(a.messages));if(!h)return!0;i.value=m;let g=t===void 0?m.at(-1):m.find(e=>e.serverMessageId===t||e.id===t),_=p!==void 0&&g!==void 0&&(p.id===g.id||p.serverMessageId!==void 0&&p.serverMessageId===g.serverMessageId),y=g!==void 0&&g.status!==`streaming`&&(!_||p?.status===`streaming`),x=_&&p?.status===`streaming`?Date.now():g?.createdAt;return l&&y&&g.role===`assistant`?de(g,g.suggestions??[],v.localSendRef.current,void 0,a.canContinue,n,x,!1):l&&y&&g.role===`operator`?le(g,a.canContinue,n,x,!1):l&&g?.role===`assistant`&&g.status!==`streaming`&&d(g,g.suggestions??[]),!0}let me=/* @__PURE__ */ new Set;p=({messageId:e})=>{if(me.has(e)||!i.value.some(t=>t.serverMessageId===e||t.id===e))return;me.add(e);function t(){return me.delete(e)}pe(e).then(t,t)};function he(t=!1){if(u.signal.aborted||r.value!==e){ie=!1;return}if(re){ie=!0;return}let n=t?C(e)??(w()?pe():void 0):pe();if(!n)return;h(e),re=n;function i(t=!1){re===n&&(re=void 0,ie?(ie=!1,he()):t&&g(e))}n.then(i,()=>i(!1))}let L=m.subscribe(e=>{e<=T.current||(T.current=e,P&&he())});return Xu({signal:u.signal,now:()=>performance.now(),sleep:e=>Ii(e,u.signal),connect:e=>o.connectResumeStream({signal:u.signal,onChunk:fe,onConnected:e}),onInitialBoundaryReady:()=>{P=!0,he(!0)},backfill:()=>he()}),()=>{u.abort(),I(),L(),E.detach()}},[t,n,r,r.value,s,o,c,l,d,f,m,h,g,_,v,y,b,i,S,x,C,w])}function Qu(e){let{transport:t,setStreaming:n}=e,r=p(void 0),i=p(void 0),a=p(!1),o=p(void 0),s=p(!1),c=p(/* @__PURE__ */ new Map),u=p(/* @__PURE__ */ new Set),d=l((e,n)=>{let r=`${e}:${n}`;o.current!==r&&(o.current=r,t.cancelTurn(e,n))},[t]),m=l(e=>{r.current=void 0,i.current=e,a.current=!1,o.current=void 0,s.current=!0,n(!0)},[n]),h=l((e,t)=>{c.current.set(e,{messageId:t})},[]),g=l(e=>{e!==void 0&&(u.current.add(e),u.current.size>32&&u.current.delete(u.current.values().next().value)),(e===void 0||r.current?.runId===e)&&(r.current=void 0,i.current=void 0,a.current=!1,s.current=!1,n(!1))},[n]),_=l((e,t)=>i.current===e?(i.current=void 0,t.runId?(r.current={conversationId:t.conversationId,runId:t.runId},n(!0),a.current&&d(t.conversationId,t.runId),!0):(g(),!0)):t.runId&&r.current?.runId===t.runId?(r.current={conversationId:t.conversationId,runId:t.runId},a.current&&d(t.conversationId,t.runId),!0):!1,[d,n,g]),v=l((e,t)=>{let l=c.current.get(e);return l?(c.current.delete(e),!t.runId||u.current.has(t.runId)?!0:l.runId===void 0?(s.current||i.current||(r.current={conversationId:t.conversationId,runId:t.runId},i.current=void 0,a.current=!1,o.current=void 0,s.current=!0,n(!0)),!0):(l.runId===t.runId&&r.current?.runId===t.runId&&(r.current={conversationId:t.conversationId,runId:t.runId},a.current&&d(t.conversationId,t.runId)),!0)):!1},[d,n]),y=l(e=>i.current===e&&(g(),!0),[g]),b=l(e=>{let t=c.current.get(e);return t?(c.current.delete(e),t.runId===void 0):!1},[]),x=l((e,t,l,f)=>{let p=t.messageMetadata?.runId;if(t.messageMetadata?.senderRole!==void 0||typeof p!=`string`||!p||u.current.has(p))return!1;if(r.current?.runId===p)return s.current;if(s.current)return r.current||!l?!1:(i.current=void 0,r.current={conversationId:e,runId:p},n(!0),a.current&&d(e,p),!0);let m=[...c.current.values()].filter(e=>e.runId===void 0).find(e=>e.messageId===f);return m?(m.runId=p,r.current={conversationId:e,runId:p},i.current=void 0,a.current=!1,o.current=void 0,s.current=!0,n(!0),!0):(i.current=void 0,r.current={conversationId:e,runId:p},n(!0),a.current&&d(e,p),s.current)},[d,n]),S=l(e=>typeof e==`string`&&r.current?.runId===e&&s.current,[]),C=l(()=>{let e=r.current;if(e)return a.current=!0,d(e.conversationId,e.runId),!0;let t=i.current;return t?(a.current=!0,t.then(e=>{e.runId&&d(e.conversationId,e.runId)}).catch(()=>void 0),!0):!1},[d]);return f(()=>({localSendRef:s,begin:m,beginRouted:h,acceptAck:_,acceptRoutedAck:v,reject:y,rejectRouted:b,captureStart:x,ownsLocalRun:S,settle:g,stop:C}),[_,v,m,h,x,S,y,b,g,C])}const $u=R.scope(`send`);function ed(e,t,n,r,i,a=!0){e.publishConversation({...si(t,n,r,i,a),hasUnread:!1},!0)}function td(e,t){return e.id===t.id||(e.serverMessageId??e.id)===(t.serverMessageId??t.id)}function nd(e){return e.findLast(e=>!e.ephemeral&&e.role!==`system`&&(e.role===`user`||e.status!==`streaming`||ci(e)))}function rd(e,t,n,r,i){let a=nd(t);a?.role===`user`&&td(a,n)&&ed(e,t,a,r,i)}function id(e){return!(e instanceof Bi)||e.code===`network`||e.status===void 0||e.status===202||e.status===408||e.status===425||e.status===429||e.status>=500&&e.status<600}function ad(e){let{transport:t,messagesSig:n,conversationIdSig:r,options:i,bus:a,feedback:o,persistence:s,visitorId:c,adoptConversationId:u,applyControlState:d,setCanSend:f,settleSuggestions:p,runCancellation:m}=e,h=l(()=>{let e=r.value??at();return r.value||(r.value=e,s.saveConversationId(e)),e},[r,s]);return{sendAiTurn:l(async({continueExisting:e,turn:l})=>{let g=h(),_=n.value.at(-1),v=l?[l]:ii(n.value,e),y=v[0],b=Kr({messages:v.map(ai),conversationId:g,visitorId:c,userPrefs:s.loadUserPrefs()}),x=t.sendTurn(b);m.begin(x);try{let a=await x;if(r.value!==g||!m.acceptAck(x,a))return!1;if(u(a.conversationId),a.runId&&y?.role===`user`&&rd(t,n.value,y,a.conversationId,i.strings.newConversation),!a.runId){let o=await t.loadConversation(a.conversationId).catch(()=>null);if(r.value!==a.conversationId)return!0;if(o){o.controlState&&d(o.controlState),f(o.canContinue);let r=ri(o.messages),{messages:s,changed:c}=wi(n.value,r);c&&(n.value=s);let l=r.findLast(e=>!e.ephemeral&&e.role!==`system`),u=nd(n.value);u&&l&&td(u,l)&&ed(t,n.value,u,a.conversationId,i.strings.newConversation,o.canContinue);let m=_?n.value.find(e=>e.id===_.id&&e.role===`assistant`&&e.status!==`streaming`):void 0;m&&p(m,m.suggestions??[]),!e&&_?.role===`assistant`&&n.value.includes(_)&&_.serverMessageId===void 0&&!ci(_)&&(n.value=n.value.filter(e=>e!==_))}else _?.role===`assistant`&&n.value.includes(_)&&(_.status=`error`,_.errorText=i.strings.errorGeneric,_.retryAction=e?{kind:`continue-assistant`,messageId:_.serverMessageId??_.id}:y?.role===`user`?{kind:`resend-user`,messageId:y.id}:null,n.value=[...n.value])}return!0}catch(s){if(r.value!==g)return!1;if(!m.reject(x))return y?.role===`user`&&rd(t,n.value,y,g,i.strings.newConversation),!0;let c=as(s,i.strings),u=id(s),h=l?.role===`assistant`?l:n.value.at(-1);if(e&&h?.role===`assistant`&&s instanceof Bi&&s.status===409){let e=h.serverMessageId??h.id,i=await t.loadConversation(g,{ids:[e]}).catch(()=>null);if(r.value!==g)return!1;if(i){i.controlState&&d(i.controlState),f(i.canContinue);let t=ri(i.messages),r=t.find(t=>(t.serverMessageId??t.id)===e);if(r&&Ti(h,r)){let{messages:r,changed:i}=wi(n.value,t),a=r.find(t=>(t.serverMessageId??t.id)===e);if(i&&a&&a!==h)return a.awaitingContinuation=!1,a.continuationStreaming=void 0,a.retryAction=null,n.value=r,a.status!==`streaming`&&p(a,a.suggestions??[]),!0}}if(!n.value.includes(h)||h.status!==`streaming`)return!1;h.continuationStreaming=!0}if(e&&h?.role===`assistant`)h.status=`error`,h.errorText=c,h.retryAction=u?{kind:`continue-assistant`,messageId:h.serverMessageId??h.id}:null,n.value=[...n.value];else if(_?.role===`assistant`&&n.value.includes(_)){_.status=`error`,_.errorText=c;let e=v[0];_.retryAction=u&&e?.role===`user`?{kind:`resend-user`,messageId:e.id}:null,n.value=[...n.value]}else{let e=Xr();e.status=`error`,e.errorText=c;let t=v[0];e.retryAction=u&&t?.role===`user`?{kind:`resend-user`,messageId:t.id}:null,n.value=[...n.value,e]}return o.play(`error`),a.emit(`error`,s),i.onError?.(s),!1}},[t,n,i,a,o,s,c,u,d,f,p,h,m]),sendRoutedTurn:l(async e=>{let l=h();e.status=`pending`,e.errorText=void 0,e.retryAction=void 0,n.value.includes(e)&&(n.value=[...n.value]);let d=Kr({messages:[ai(e)],conversationId:l,visitorId:c,userPrefs:s.loadUserPrefs()}),f=t.sendTurn(d);m.beginRouted(f,e.id);try{let a=await f;return r.value===l?m.acceptRoutedAck(f,a)?(u(a.conversationId),rd(t,n.value,e,a.conversationId,i.strings.newConversation),e.status===`pending`&&(e.status=`complete`,n.value.includes(e)&&(n.value=[...n.value])),!0):!1:(m.rejectRouted(f),!1)}catch(s){let c=m.rejectRouted(f);if(r.value!==l)return!1;if(!c)return rd(t,n.value,e,l,i.strings.newConversation),e.status===`pending`&&(e.status=`complete`,n.value.includes(e)&&(n.value=[...n.value])),!0;if(e.status!==`pending`)return rd(t,n.value,e,l,i.strings.newConversation),!0;$u.debug(`operator-routed send failed`,{error:s});let u=s instanceof Error?s:Error(String(s));return e.status=`error`,e.errorText=as(s,i.strings),e.retryAction=id(s)?{kind:`resend-user`,messageId:e.id}:null,n.value.includes(e)&&(n.value=[...n.value]),o.play(`error`),a.emit(`error`,u),i.onError?.(u),!1}},[t,n,i,a,o,s,c,u,h,m])}}const od=R.scope(`unread`);function sd(e){let{transport:t,options:n,conversationIdSig:r,isConversationVisibleRef:i,activated:a,conversationReady:o}=e,s=c(!1),d=c(0),f=p([]),m=p(void 0),h=p(!1),g=l(()=>{let e=r.value,t=i.current()&&m.current===e?e:void 0;s.value=f.current.some(e=>e.hasUnread&&e.conversationId!==t)},[r,s,i]),_=l(e=>{let t=r.value,n=f.current.find(e=>e.conversationId===t),i=Zi(f.current,e),a=i.find(e=>e.conversationId===t),o=e.type===`snapshot`&&t!==void 0&&a?.hasUnread===!0&&m.current===t&&n!==void 0&&n.lastMessageAt!==a.lastMessageAt;o&&(m.current=void 0),f.current=i,g(),o&&(d.value+=1)},[r,g,d]),v=l(()=>{if(g(),!i.current())return;let e=r.value;if(!e||m.current!==e)return;let n=f.current.find(t=>t.conversationId===e);n?.hasUnread&&t.markRead(e,n.lastMessageAt)},[r,i,g,t]),y=l(e=>{r.value===e&&(m.current=void 0,g())},[r,g]),b=l(e=>{r.value===e&&(m.current=e,v())},[r,v]),x=l(e=>m.current===e,[]),S=l((e=!1)=>{n.modules.list.some(e=>e.layout===`chat`)&&(h.current||(h.current=!0,t.listConversations({limit:50},e).then(t=>{e||_({type:`snapshot`,result:t,requestedRevision:0}),v()}).catch(e=>od.debug(`refreshUnread failed (non-fatal)`,{err:e})).finally(()=>{h.current=!1})))},[_,v,n.modules,t]),C=l(e=>{let n=e.conversationId,a=i.current()&&r.value===n&&m.current===n,o=f.current.find(e=>e.conversationId===n),s=a&&(o?.lastMessageAt!==e.lastMessageAt||o.hasUnread);t.publishConversation({...e,hasUnread:!a},!0),s&&t.markRead(n,e.lastMessageAt)},[r,i,t]);u(()=>t.subscribeConversationChanges(_),[_,t]);let w=p(!1);return u(()=>{a&&o&&!w.current&&(w.current=!0,S())},[a,o,S]),u(()=>{if(!a)return;function e(){document.visibilityState===`visible`&&(v(),S(!0))}return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[a,v,S]),{hasUnreadSig:s,transcriptRecoverySig:d,markVisibleConversationRead:v,beginConversationTranscript:y,commitConversationTranscript:b,isConversationTranscriptCommitted:x,recordConversationReply:C}}const cd=R.scope(`settings`);function ld(e){let{options:t,persistence:n,transport:r,feedback:i,hostElement:a,bus:o}=e,s=n.loadUserPrefs(),[c,d]=m(()=>s.locale??t.locale),[f,p]=m(()=>s.themeMode??t.themeMode),[h,g]=m(()=>s.textSize??t.textSize),_=l(e=>{n.patchUserPrefs(e),r.saveUserPrefs(n.loadUserPrefs()).catch(e=>cd.warn(`saveUserPrefs failed`,{err:e}))},[n,r]);u(()=>{s.soundMuted!==void 0&&i.setMuted(s.soundMuted)},[]),u(()=>{a.dataset.theme=f},[a,f,t]),u(()=>{a.dataset.textSize=h},[a,h,t]),u(()=>{let e=!0;return i.mutedSig.subscribe(t=>{e?e=!1:_({soundMuted:t})})},[i,_]);let v=ke(c,t.availableLocales,t.defaultLocale);return u(()=>{r.setLocale(v)},[r,v]),u(()=>{a.dir=k(v)?`rtl`:`ltr`},[a,v]),u(()=>{v!==c&&d(v)},[v,c]),{activeLocale:c,activeThemeMode:f,activeTextSize:h,effectiveLocale:v,setActiveLocale:d,setActiveThemeMode:p,setActiveTextSize:g,patchAndSync:_,handleLocaleChange:l(e=>{cd.info(`localeChange`,{locale:e}),d(e),_({locale:e}),o.emit(`localeChange`,e)},[_,o]),handleThemeChange:l(e=>{cd.info(`themeChange`,{mode:e}),p(e),a.dataset.theme=e,_({themeMode:e}),o.emit(`themeChange`,e)},[a,_,o]),handleTextSizeChange:l(e=>{cd.info(`textSizeChange`,{size:e}),g(e),a.dataset.textSize=e,_({textSize:e}),o.emit(`textSizeChange`,e)},[a,_,o]),handleSoundToggle:l(()=>{i.toggleMuted();let e=i.mutedSig.value;cd.info(`soundToggle`,{muted:e}),o.emit(`soundToggle`,{muted:e})},[i,o])}}const $=R.scope(`app`),ud=M.cssPrefix,dd={home:`home`,chats:`chat`,help:`help`,news:`news`};function fd(e,t){return Zr({...e,text:A(t,e.text)})}function pd({options:e,hostElement:t,bus:n}){let i=e.aiAgentDeploymentId;if(!i)throw Error(`aiAgentDeploymentId is required`);let[a]=m(()=>ct(e.widgetId,e.storage,e.aiAgentDeploymentId)),[o]=m(()=>a.getVisitorId()),h=a.loadUserPrefs(),v=c(a.loadConversationId()),y=p(v.value!==void 0),b=c(v.value??``),x=c([]),[S,C]=m(!1),w=p(void 0),[T,E]=m([]);function D(){let t=e.modules.list,n=new Set(t.map(e=>e.id)),r=a.loadActiveModule();return r&&n.has(r)?r:t[0]?.id??``}function O(){return e.modules.list.find(e=>e.layout===`chat`)?.id}function k(){let t=O();return t?e.modules.list.length===1||M.sig.value.activeTab===t:!1}let j=p(void 0);if(!j.current){let t=e.modules.list.map(e=>e.id),n=a.loadActiveModule()??t[0]??``;j.current=ga(n,n?[...t,n]:t,e=>a.saveActiveModule(e))}let M=j.current,ee=s(()=>M.sig.value.activeTab).value,te=s(()=>v.value).value,[N,ne]=m(!1),[re,ie]=m(null),[P,ae]=m(!1),oe=e.mode===`standalone`||e.mode===`inline`,F=p(Sa(e,Ca(),a.loadPanelOpen(),a.loadPanelSize())),[I,se]=m(F.current.panelOpen),[ce,le]=m(F.current.panelOpen),ue=p(void 0),de=p(void 0),fe=p(!1),pe=p(void 0);u(()=>{I&&le(!0)},[I]);let me=p(!1),[he,L]=m(!1),{dismissed:ge,dismissCallout:_e}=Eu({callout:e.launcher.callout,persistence:a}),R=e.launcher.callout?.persistent??!0,ve=l(()=>{$.info(`calloutDismiss`),n.emit(`calloutDismiss`,void 0),_e()},[n,_e]),[z,ye]=m(F.current.panelSize),be=p(!1),[xe,Se]=m(`chat`),Ce=p(()=>!1);Ce.current=()=>I&&xe===`chat`&&!document.hidden&&k();let[we,Te]=m(!0),Ee=p(we);Ee.current=we;let[De,Oe]=m(!1),ke=p(De);ke.current=De;let Ae=p(null),[je,Me]=m(!1),[Ne,Pe]=m(null),[Fe,Ie]=m([]),Re=p(e.strings),ze=p(e);ze.current=e;let[Ve,He]=m(void 0),[Ue,We]=m(void 0),[Ge,Ke]=m(()=>a.loadSidebarCollapsed()??!1),[qe,Je]=m({}),[B]=m(()=>new ra({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Mt({publicKey:e.publicKey,aiAgentDeploymentId:i,publicKeyHeader:`x-public-key`}),endpoints:e.endpoints})),[Ye]=m(()=>new qt(e.sound,e.haptics)),Xe=Qu({transport:B,setStreaming:Oe}),{activeLocale:Ze,activeThemeMode:Qe,activeTextSize:$e,effectiveLocale:et,setActiveLocale:tt,setActiveThemeMode:nt,setActiveTextSize:rt,patchAndSync:it,handleLocaleChange:ot,handleThemeChange:st,handleTextSizeChange:lt,handleSoundToggle:ut}=ld({options:e,persistence:a,transport:B,feedback:Ye,hostElement:t,bus:n}),{controlModeSig:ft,assignedOperatorInitialsSig:pt,operatorAvailableSig:mt,applyControlState:ht,adoptControlStateChunk:gt,requestOperator:_t,cancelOperatorRequest:vt}=Du({transport:B,conversationIdSig:v}),yt=c(/* @__PURE__ */ new Map),bt=l(e=>{if(e.type!==`data-memory-compaction-state`)return;let t=v.value;if(!t)return;let n=Wr(e.data);if(!n)return;let r=yt.value.get(t);if(r&&(n.postFinishSequence<r.postFinishSequence||n.postFinishSequence===r.postFinishSequence&&(r.status===`ready`||r.status===n.status)))return;let i=new Map(yt.value);i.set(t,n),yt.value=i},[v,yt]),{hasUnreadSig:xt,transcriptRecoverySig:St,markVisibleConversationRead:Ct,beginConversationTranscript:wt,commitConversationTranscript:Tt,isConversationTranscriptCommitted:Et,recordConversationReply:Dt}=sd({transport:B,options:e,conversationIdSig:v,isConversationVisibleRef:Ce,activated:ce,conversationReady:N}),Ot=I&&e.modules.byId[ee]?.layout===`home`,kt=Tu({transport:B,options:e,persistence:a,enabled:N&&Ot});u(()=>{Ct()},[ee,I,xe,te,Ct]),u(()=>{Ye.update(e.sound,e.haptics)},[Ye,e.sound,e.haptics]),u(()=>()=>Ye.destroy(),[Ye]),u(()=>{!be.current&&e.size.initialSize&&(be.current=!0,!a.loadPanelSize()&&ye(xa(e.mode,e.size,Ca())))},[e.mode,e.size,a]),u(()=>{if(!N||me.current)return;me.current=!0;let t=Sa(e,Ca(),a.loadPanelOpen(),a.loadPanelSize());se(t.panelOpen),ye(t.panelSize)},[N,e,a]);let At=p(null);u(()=>{N&&M.reconcile(e.modules.list.map(e=>e.id),D())},[N,e.modules.list,M]);let jt=l(e=>{e&&e.length!==0&&(x.value=e.map(e=>fd(e,Re.current)))},[x]),Nt=p(null),Pt=l(async e=>{try{let{formSubmissions:t}=await(e?B.bootstrap(e):Nt.current??B.bootstrap()),n=/* @__PURE__ */ new Map;return t.forEach((e,t)=>n.set(e.formId,t)),t.filter((e,t)=>!e.skipped||n.get(e.formId)===t).map((e,t)=>({key:`wire:${e.formId}:${e.createdAt??t}`,formId:e.formId,outcome:e.skipped?`skipped`:`submitted`,createdAt:Rr(e.createdAt),values:e.values}))}catch(e){return $.debug(`bootstrap failed — no form markers (non-fatal)`,{err:e}),[]}},[B]),Ft=p(0),V=p(0),It=l(e=>{if(e===v.value)return;let t=v.value;V.current++,C(!1),t&&(a.saveDraft(e,a.loadDraft(t)),a.saveDraft(t,``),a.saveMessageQueue(e,a.loadMessageQueue(t)),a.saveMessageQueue(t,[])),v.value=e,a.saveConversationId(e),B.primeIdentity(void 0,e),$.info(`conversation rebound`,{previous:t,current:e}),t&&n.emit(`conversationRebound`,{previous:t,current:e})},[n,v,a,B]),Lt=l((e,t)=>{let n=[...e.map(e=>e.createdAt),...t.map(e=>e.createdAt)].filter(e=>e!==void 0),r=(n.length?Math.min(...n):Date.now())-1;return[...(pe.current?.messages??[]).map(e=>{let t=fd(e,Re.current);return t.createdAt=r,t}),...e]},[]),Rt=l(async e=>{let t=V.current;function r(){return t!==V.current||v.value!==e}de.current===e&&(de.current=void 0),C(!0);try{let[t,n]=await Promise.all([B.loadConversation(e),Pt()]);if(r())return!1;let i=ri(t.messages);E(n);let a=Lt(Ci(i,x.value),n);if(x.value=a,de.current=a.some(e=>e.role===`user`)?void 0:e,i.length>0||t.controlState!==void 0){Te(t.canContinue),t.controlState&&ht(t.controlState);let e=i.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ie(e?.suggestions??[])}return!0}catch(t){return r()||($.warn(`loadThread failed; keeping conversation active`,{err:t,conversationId:e}),n.emit(`error`,t),ze.current.onError?.(t)),!1}finally{r()||C(!1)}},[B,Pt,x,v,Lt,n]),zt=l(e=>{if(ue.current===e)return ue.current=void 0,Rt(e)},[Rt]),Bt=l(()=>{if(w.current)return Promise.resolve(void 0);let t=v.value,r=x.value.find(e=>e.serverMessageId!==void 0),i=r?.serverMessageId,a=r?new Date(r.createdAt).toISOString():void 0;if(!t||!i||!a)return Promise.resolve(void 0);let o=V.current,s={};return w.current=s,(async()=>{try{let e=await B.loadConversation(t,{beforeId:i,beforeCreatedAt:a});if(w.current!==s||V.current!==o||v.value!==t)return;if(e.messages.length===0)return!1;let n=e.messages.map(ei),r=x.value,c=vi(r,n);if(c!==r){let e=Math.min(...n.map(e=>e.createdAt??1/0),...T.map(e=>e.createdAt??1/0));if(Number.isFinite(e))for(let t of r){if(!t.ephemeral)break;(t.createdAt??1/0)>=e&&(t.createdAt=e-1)}x.value=c}return!0}catch(r){if(w.current!==s||V.current!==o||v.value!==t)return;$.warn(`load previous messages failed`,{err:r,conversationId:t,beforeId:i}),n.emit(`error`,r),e.onError?.(r);return}finally{w.current===s&&(w.current=void 0)}})()},[n,v,T,x,e,B]),Vt=l(async({newConversation:t})=>{let i=++Ft.current;function s(){return i!==Ft.current}let c=v.value,l=t||!c?at():c;l!==c&&(V.current++,C(!1),r(()=>{v.value=l,b.value=l}),a.saveConversationId(l)),B.primeIdentity(o,l);let u;try{u=await B.handshake({visitorId:o,conversationId:l,userPrefs:a.loadUserPrefs(),locale:Ze})}catch(r){if(s())return;n.emit(`error`,r),e.onError?.(r),t||ne(!0);return}if(s())return;u.conversationId!==l&&It(u.conversationId),Pe(u.agent),e.mode===`page`&&(u.site&&Yt(u.site)?He(u.site):u.site&&$.warn(`invalid site config, using fallback`,{site:u.site}),u.blocks&&Xt(u.blocks)?We(u.blocks):u.blocks&&$.warn(`invalid blocks config, using fallback`,{blocks:u.blocks}));let d=dt(u.userPrefs);if(Object.keys(d).length>0&&!t&&(a.saveUserPrefs(d),d.locale&&tt(d.locale),d.soundMuted!==void 0&&Ye.setMuted(d.soundMuted),d.themeMode&&nt(d.themeMode),d.textSize&&rt(d.textSize)),pe.current=u.welcome,t||n.emit(`handshake`,u),u.welcome?.suggestions){let e=Re.current;Ie(u.welcome.suggestions.map(t=>({...t,label:A(e,t.label),...t.text===void 0?{}:{text:A(e,t.text)}})))}let f=!t&&c&&u.conversationId===c;y.current=!!f,f?fe.current||(ue.current=u.conversationId):(de.current=u.conversationId,jt(u.welcome?.messages),Tt(u.conversationId)),t||ne(!0)},[B,o,a,e,n,v,b,Ye,jt,Ze,It,Tt]),Ht=JSON.stringify(e.userContext??null),Ut=JSON.stringify(e.pageContext??null),Wt=JSON.stringify(qe);u(()=>{let t=Object.keys(qe).length?{...qe,...e.userContext}:e.userContext;B.setContext(t,md(e.pageContext))},[B,Ht,Ut,Wt]);let Gt=l((e,t=[])=>Ie(e.suggestions??t),[]);u(()=>(B.primeIdentity(o,v.value),Vt({newConversation:!1}),()=>{Ft.current++,V.current++}),[]),u(()=>{ce&&N&&!fe.current&&(fe.current=!0,Nt.current=B.bootstrap(),(async()=>{try{let e=await Nt.current;ie(Le((e??{forms:[]}).forms,et))}catch(e){$.debug(`bootstrap failed — treating as no forms`,{err:e})}finally{ae(!0)}})(),ue.current===v.value&&C(!0))},[ce,N]);let Kt=p(null);u(()=>{if(!ce||!N||(Kt.current??(Kt.current=et),Kt.current===et))return;Kt.current=et;let e=!1;return B.bootstrap().then(t=>{e||ie(Le((t??{forms:[]}).forms,et))}).catch(e=>$.debug(`forms re-localize failed — keeping current copy`,{err:e})),()=>{e=!0}},[ce,N,et,B]);let Jt=p(Ht);u(()=>{N&&Jt.current!==Ht&&(Jt.current=Ht,Vt({newConversation:!1}))},[Ht,N,Vt]),ju({hostElement:t,mode:e.mode,panelSize:z,isOpen:I,surfaceReady:N,setIsOpen:se});let{sendAiTurn:Zt,sendRoutedTurn:$t}=ad({transport:B,messagesSig:x,conversationIdSig:v,options:e,bus:n,feedback:Ye,persistence:a,visitorId:o,adoptConversationId:It,applyControlState:ht,setCanSend:Te,settleSuggestions:Gt,runCancellation:Xe}),{toolInteraction:en}=Cu({streaming:De,controlModeSig:ft,messagesSig:x,sendAiTurn:Zt,bus:n,humanInLoop:e.features.humanInLoop}),nn=l((e,t)=>{let r=x.value.find(t=>t.serverMessageId===e);r&&(r.feedback=t),$.info(`messageFeedback`,{messageId:e,value:t}),n.emit(`messageFeedback`,{messageId:e,value:t}),B.submitFeedback({messageId:e,value:t})},[n,x,B]);function rn(){return x.value.reduce((e,t)=>e+ +(t.role===`user`),0)}let an=e.forms.list.length>0?e.forms:re??e.forms,H=ua({forms:an,persistence:a,userContext:()=>e.userContext,messageCount:rn,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>v.value,onComplete:(e,t,r,i)=>{$.info(`formSubmit`,{formId:e.id,trigger:t,skipped:i}),n.emit(`formSubmit`,{formId:e.id,values:r,skipped:i}),E(t=>{let n=t.find(t=>t.formId===e.id&&t.outcome===`skipped`)?.createdAt??Date.now();return[...t.filter(t=>t.formId!==e.id||t.outcome!==`skipped`),{key:`local:${e.id}:${n}`,formId:e.id,outcome:i?`skipped`:`submitted`,createdAt:n,...i?{}:{values:r}}]});let o=v.value??at();v.value||(v.value=o,a.saveConversationId(o),B.primeIdentity(void 0,o)),!i&&e.mirrorToContext&&Je(e=>({...e,...r})),B.submitForm({formId:e.id,conversationId:o,trigger:t,values:r,skipped:i})}}),U=s(()=>H.activeForm.value);Zu({activated:ce,conversationReady:N,conversationIdSig:v,messagesSig:x,optionsRef:ze,transport:B,visitorId:o,adoptControlStateChunk:gt,adoptMemoryCompactionStateChunk:bt,settleSuggestions:Gt,recordConversationReply:Dt,transcriptRecoverySig:St,beginConversationTranscript:wt,commitConversationTranscript:Tt,onReplyLanded:l(()=>H.fire(`after-messages`),[H]),runCancellation:Xe,canContinueRef:Ee,setCanSend:Te,feedback:Ye,bus:n,loadInitialThread:zt,shouldReconcileOnConnect:l(()=>y.current||x.value.some(e=>!e.ephemeral&&e.role===`user`),[x])}),u(()=>{H.refresh()},[an,H]);let on=e.pageContext?.area?String(e.pageContext.area):void 0,sn=s(()=>x.value.length);u(()=>{N&&P&&H.fire(`pre-chat`)},[N,P,H]),u(()=>{P&&!we&&H.fire(`conversation-closed`)},[P,we,H]),u(()=>{N&&P&&on&&H.fire(`page-area`)},[N,P,on,H]);let W=f(()=>{let e=an.list.flatMap(e=>e.triggers).filter(e=>e.kind===`idle`).map(e=>Number(e.param));return e.length?Math.min(...e)*1e3:0},[an]);u(()=>{if(!W||!I)return;let e=setTimeout(()=>H.fire(`idle`),W);return()=>clearTimeout(e)},[W,I,H,sn.value]);let cn=l(async(t,r,i)=>{if(Ae.current)return!1;let a=v.value,o=a?yt.value.get(a):void 0,s=ft.value!==`ai-agent`;if(!s&&o?.status===`compacting`||($.info(`send`,{textLen:t.length,attachments:r.length,streaming:ke.current,routedToOperator:s}),ke.current&&!s))return!1;let c=new AbortController,l={conversationId:a,controller:c};Ae.current=l,Me(!0);try{Ye.unlock();let o=await gd(B,r,c.signal,t=>{c.signal.aborted||($.warn(`upload failed`,{err:t}),n.emit(`error`,t),e.onError?.(t))});if(c.signal.aborted||v.value!==a||!Ee.current||H.activeForm.value)return!1;let s=a?yt.value.get(a):void 0,l=ft.value!==`ai-agent`;if(!l&&s?.status===`compacting`||ke.current&&!l||!t&&o.length===0)return!1;n.emit(`send`,{text:t,attachmentCount:r.length}),Fe.length>0&&Ie([]),Ye.play(`messageSent`);let u=Yr(t,o,i);return la(n,e,`user`,t),l?(x.value=[...x.value,u],i?await $t(u):($t(u),!0)):(x.value=[...x.value,u,Xr()],i?await Zt({continueExisting:!1}):(Zt({continueExisting:!1}),!0))}finally{Ae.current===l&&(Ae.current=null,Me(!1))}},[B,n,e,Fe.length,x,v,yt,Zt,$t,ft]),G=p(cn);G.current=cn;let ln=v.value,un=(ln?yt.value.get(ln):void 0)?.status===`compacting`,dn=ft.value===`ai-agent`,fn=s(()=>{let e=x.value.at(-1);return e?.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`&&e.stateSig.value===`approval-requested`)}),pn=s(()=>x.value.some(e=>e.retryAction?.kind===`resend-user`||e.retryAction?.kind===`continue-assistant`));d(()=>{let e=v.value;return()=>{let t=Ae.current;t&&t.conversationId===e&&(Ae.current=null,Me(!1),t.controller.abort())}},[v.value]),u(()=>{(!we||U.value)&&Ae.current?.controller.abort()},[U.value,we]);let mn=l(()=>{if(!Xe.stop())return;$.info(`stop`),n.emit(`stop`,void 0);let e=x.value.at(-1);e&&e.role!==`user`&&e.status===`streaming`&&(e.canceled=!0,x.value=[...x.value])},[Xe,n,x]),hn=l(e=>{if(De)return;let t=x.value,n=ji(t,e);if(n)switch($.info(`retry`,{kind:n.kind,messageId:n.messageId}),n.kind){case`continue-assistant`:if(ft.value!==`ai-agent`||e.role!==`assistant`||(e.serverMessageId??e.id)!==n.messageId)return;e.status=`streaming`,e.errorText=void 0,e.retryAction=void 0,e.awaitingContinuation=!0,x.value=[...t],Zt({continueExisting:!0,turn:e});return;case`resend-user`:{let r=t.find(e=>e.role===`user`&&e.id===n.messageId);if(!r)return;let i=e=>{e&&At.current?.acceptQueuedMessage(n.messageId)};if(r.status=`complete`,r.errorText=void 0,r.retryAction=void 0,ft.value!==`ai-agent`){x.value=e.role===`assistant`?t.filter(t=>t!==e):[...t],$t(r).then(i);return}let a=Xr();x.value=e.role===`assistant`?t.map(t=>t===e?a:t):[...t,a],Zt({continueExisting:!1,turn:r}).then(i);return}case`repeat-user`:{let e=t.find(e=>e.role===`user`&&e.id===n.messageId);if(!e)return;let r=Yr(oi(e),e.attachments?.map(e=>({...e}))??[]),i=new Set(r.attachments?.flatMap(e=>e.url?[e.url]:[])??[]),a=e.partsSig.value.flatMap(e=>e.kind===`file`&&!i.has(e.url)?[{...e}]:[]);if(a.length>0&&(r.partsSig.value=[...r.partsSig.value,...a]),ft.value!==`ai-agent`){x.value=[...t,r],$t(r);return}x.value=[...t,r,Xr()],Zt({continueExisting:!1,turn:r});return}default:return n}},[De,x,ft,Zt,$t]),gn=l(()=>{ca(e.mode,z)===`exit-fullscreen`?($.info(`close → exit-fullscreen`,{mode:e.mode}),ye(`normal`),n.emit(`fullscreen`,!1)):($.info(`close → panel closed`,{mode:e.mode}),H.fire(`panel-close`),se(!1),a.savePanelOpen(!1),n.emit(`close`,void 0),e.onClose?.())},[n,e,a,z,H]),_n=l(()=>{$.info(`open`,{mode:e.mode}),Ye.unlock(),L(!0),se(!0),a.savePanelOpen(!0),!ge&&!R&&ve(),setTimeout(()=>L(!1),hd),n.emit(`open`,void 0),e.onOpen?.()},[n,e,Ye,a,ge,R,ve]),vn=l(()=>{let e=x.value.some(e=>e.role===`user`);if(de.current===v.value&&!e&&we&&v.value)$.info(`clear → reusing empty conversation`,{conversationId:v.value}),x.value.length===0&&jt(pe.current?.messages);else return $.info(`clear → new conversation`,{wasStreaming:De}),n.emit(`clear`,void 0),Xe.settle(),y.current=!1,ue.current=void 0,de.current=void 0,r(()=>{x.value=[],v.value=void 0,ht({controlMode:`ai-agent`,controlRevision:0})}),a.clearConversation(),Te(!0),E([]),Ie([]),Vt({newConversation:!0})},[De,x,v,a,Vt,n,we,jt,Xe,ht]),yn=l(()=>{let t=vn();Se(`chat`);let n=e.modules.list.find(e=>e.layout===`chat`)?.id;return n&&M.switchTab(n),t},[vn,M,e]),bn=l(async e=>{await yn(),await G.current(e,[])||At.current?.fill(e)},[yn]),xn=l(()=>{let e=z===`expanded`?`normal`:`expanded`;$.info(`expand`,{from:z,expanded:e===`expanded`}),ye(e),a.savePanelSize(e),n.emit(`expand`,e===`expanded`)},[n,z,a]),Sn=l(()=>{let e=z===`fullscreen`?`normal`:`fullscreen`;$.info(`fullscreen`,{from:z,fullscreen:e===`fullscreen`}),ye(e),a.savePanelSize(e),n.emit(`fullscreen`,e===`fullscreen`)},[n,z,a]),Cn=l(()=>{Se(e=>{let t=e===`history`?`chat`:`history`;return $.info(`toggleHistory`,{view:t}),n.emit(`toggleHistory`,{view:t}),t})},[n]),K=l(()=>{Ke(e=>{let t=!e;return $.info(`sidebarToggle`,{collapsed:t}),a.saveSidebarCollapsed(t),n.emit(`sidebarToggle`,{collapsed:t}),t})},[a,n]),wn=l(e=>{$.info(`resize`,e),it({widgetSize:e}),n.emit(`resize`,e)},[it,n]),Tn=l(async t=>{let i=t.conversationId;if(i===v.value&&Et(i)){$.info(`selectConversation`,{conversationId:i,cached:!0}),n.emit(`selectConversation`,{conversationId:i}),B.publishConversation(t),Se(`chat`);let e=O();e&&M.switchTab(e),Tt(i);return}let s=++Ft.current;V.current++,C(!1);function c(){return s!==Ft.current}$.info(`selectConversation`,{conversationId:i,wasStreaming:De}),n.emit(`selectConversation`,{conversationId:i}),B.publishConversation(t);try{let[e,t]=await Promise.all([B.loadConversation(i),Pt(i)]);if(c())return;Xe.settle(),y.current=!0,ue.current=void 0;let n=ri(e.messages),s=e.conversationId!==v.value,l=s?n:Ci(n,x.value);de.current=l.some(e=>e.role===`user`)?void 0:e.conversationId,r(()=>{x.value=Lt(l,t),s&&(b.value=e.conversationId),v.value=e.conversationId}),E(t),a.saveConversationId(e.conversationId),B.primeIdentity(o,e.conversationId),Te(e.canContinue),e.controlState&&ht(e.controlState);let u=l.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ie(u?.suggestions??[]),s?wt(e.conversationId):Tt(e.conversationId),Se(`chat`);let d=O();d&&M.switchTab(d)}catch(t){if(c())return;n.emit(`error`,t),e.onError?.(t)}},[B,x,v,b,n,e,a,Pt,Lt,De,o,Xe,wt,Tt,Et,M]),En=p(null),Dn=l(e=>{typeof e==`string`&&(P?H.fire(`manual`,e):En.current=e)},[P,H]);u(()=>{P&&En.current&&(H.fire(`manual`,En.current),En.current=null)},[P,H]);let On=p(void 0),kn=l(t=>{let n=e.modules.list.find(e=>e.layout===dd[t.to]);if(!n){$.warn(`open: the widget has no such tab`,{to:t.to});return}let r=t.id&&(n.layout===`help`||n.layout===`news`)?{kind:`content`,id:t.id,title:``}:void 0;M.open(n.id,r)},[e.modules,M]),An=l(e=>{I||_n(),e!==void 0&&(Qt(e)?N?kn(e):On.current=e:$.warn(`open: unknown target`,{detail:e}))},[I,_n,N,kn]);u(()=>{N&&On.current&&(kn(On.current),On.current=void 0)},[N,kn]);let jn=p({handleOpenCommand:An,handleClose:gn,handleExpand:xn,handleFullscreen:Sn,openForm:Dn});jn.current={handleOpenCommand:An,handleClose:gn,handleExpand:xn,handleFullscreen:Sn,openForm:Dn},d(()=>tn(t,{open:e=>jn.current.handleOpenCommand(e),close:()=>jn.current.handleClose(),expand:()=>jn.current.handleExpand(),fullscreen:()=>jn.current.handleFullscreen(),openForm:e=>jn.current.openForm(e)}),[t]);let Mn=f(()=>Be(e,Ze,Qe,$e),[e,Ze,Qe,$e]);Re.current=Mn.strings;let Nn=f(()=>T.map(e=>{let t=an.list.find(t=>t.id===e.formId);return{...e,title:t?.title,form:t}}),[T,an]);function Pn(e){Tn(e)}let Fn={options:Mn,transport:B,feedback:Ye,bus:n,persistence:a,conversationId:v.value??``,composerKey:b.value,composerApiRef:At,view:xe,canSend:we,isStreaming:De,isMemoryCompacting:un,canReleaseQueuedMessages:N&&!S&&!U.value&&(!dn||!fn.value&&!pn.value),queueManualMessages:dn&&(fn.value||pn.value),sendPreparing:je,composerActive:Mn.mode===`page`||Mn.mode===`inline`||Mn.mode===`standalone`||I,controlMode:ft.value,assignedOperatorInitials:pt.value,operatorAvailable:mt.value,operatorRequestEnabled:e.features.operatorRequest,onRequestOperator:_t,onCancelOperatorRequest:vt,loadingMessages:S,onLoadPreviousMessages:Bt,messagesSig:x,agent:Ne,suggestions:Fe,initialWidgetSize:h.widgetSize??null,onClose:gn,onClear:vn,onExpand:xn,onFullscreen:Sn,onSoundToggle:ut,onToggleHistory:Cn,onSelectHistoryConversation:Pn,onNewConversation:yn,onLocaleChange:ot,onThemeChange:st,onTextSizeChange:lt,onWidgetSizeChange:wn,onSend:cn,onStop:mn,onSuggestion:t=>{if(Ae.current)return;let r=t.text??t.label;$.info(`suggestion`,{text:r,autoSend:e.autoSendSuggestions}),n.emit(`suggestion`,{text:r}),e.autoSendSuggestions?cn(r,[]):At.current?.fill(r)},activeForm:U.value?.form??null,formMarkers:Nn,onFormSubmit:H.complete,onFormSkip:H.skip,onFormFill:e=>H.fire(`manual`,e),tool:en,onRetry:hn,onMessageFeedback:nn};if(!N)return null;let In=Mn.modules.list;function Ln(e){let t=oa(`close`,Mn.mode,e);return In.length===0?/* @__PURE__ */ g(mu,{strings:Mn.strings,onClose:t?gn:void 0}):In.length===1&&In[0]?.layout===`chat`?/* @__PURE__ */ g(nu,{...Fn,panelSize:e}):/* @__PURE__ */ g(fu,{panelProps:{...Fn,panelSize:e,onClose:t?gn:void 0},enabledModules:In,nav:M,bus:n,hasUnread:xt.value,latestNews:kt,onSelectConversation:Pn,onStartNewConversation:bn,onSetPanelSize:ye})}if(e.mode===`page`){let e=In.some(e=>e.layout===`chat`);return/* @__PURE__ */ g(`div`,{class:`${ud}-anchor`,children:/* @__PURE__ */ g(xu,{site:Ve,blocks:Ue,transport:B,strings:Mn.strings,locale:Mn.locale,persistence:a,showConversations:e,onSelectConversation:Pn,onNewConversation:yn,sidebarCollapsed:Ge,onToggleSidebarCollapsed:K,children:Ln(`fullscreen`)})})}if(oe){let t=e.mode===`standalone`?`fullscreen`:z;return/* @__PURE__ */ g(`div`,{class:`${ud}-anchor`,children:Ln(t)})}let Rn=e.mode===`drawer`,zn=e.mode!==`modal`&&!e.launcher.hidden&&(!I||he),Bn=zn&&!he&&!ge&&!Rn?Mn.launcher.callout:null;return/* @__PURE__ */ _(`div`,{class:`${ud}-anchor`,"data-launcher-size":Mn.launcher.size,children:[I||ce?/* @__PURE__ */ g(`div`,{class:`${ud}-surface`,hidden:!I,children:Ln(z)}):null,zn?/* @__PURE__ */ g(ko,{onToggle:_n,launcher:Mn.launcher,strings:Mn.strings,leaving:he,edgeTab:Rn}):null,Bn?/* @__PURE__ */ g(No,{callout:Bn,launcherPosition:Mn.position,strings:Mn.strings,closeLabel:Mn.strings.close,onDismiss:ve}):null]})}function md(e){let t=e?.url??(typeof location<`u`?location.href:void 0);if(e||t)return{...e,...t?{url:t}:{}}}const hd=120;async function gd(e,t,n,r){return(await Promise.all(t.map(async t=>{try{let{id:r,url:i,originalName:a,mimeType:o,fileSize:s}=await e.uploadFile(t.file,n);return{id:r,name:a,mediaType:o,size:s,url:i}}catch(e){r(e);return}}))).filter(e=>e!==void 0)}const _d=R.scope(`error-boundary`);var vd=class extends e{constructor(...e){super(...e),V(this,`state`,{crashed:!1})}componentDidCatch(e,t){_d.error(`widget render crashed`,{error:e,componentStack:t?.componentStack}),this.setState({crashed:!0}),this.props.onError(e,t?.componentStack)}render(){return this.state.crashed?this.props.fallback:this.props.children}};function yd(e){let{bus:r,host:i,appRoot:a,persistence:o,reportError:s}=e,c=e.initialRaw,l,u=Ee(c),d=!0;function f(){u=Ee(l?He(c,l):c)}function p(){St(i,Ct(u.mode));let e=o.loadUserPrefs().themeMode;jt(i,e?{...u,themeMode:e}:u),d&&(At(i,bd(u)),d=!1)}function m(){p(),n(t(vd,{onError:s},t(pd,{bus:r,hostElement:i,options:u})),a)}r.on(`handshake`,e=>{e.config&&(e.config.storageVersion&&o.rememberStorageVersion(e.config.storageVersion),l=e.config,f(),m())});let h=_t(r,{getOptions:()=>u,getVisitorId:()=>o.getVisitorId(),getConversationId:()=>o.loadConversationId()});return{getOptions:()=>u,getUserOptions:()=>c,render:m,setUserOptions:e=>{c=e,f(),m()},patchUserOptions:e=>{c={...c,...e},f(),m()},destroy:()=>h()}}function bd(e){if(e.mode===`standalone`)return`standalone`;if(e.mode===`inline`)return`inline`;let t=ct(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:r}=Sa(e,Ca(),t.loadPanelOpen(),t.loadPanelSize());return ba(e.mode,r,n)}var xd=class{constructor(){V(this,`handlers`,/* @__PURE__ */ new Map)}on(e,t){let n=this.handlers.get(e);return n||(n=/* @__PURE__ */ new Set,this.handlers.set(e,n)),n.add(t),()=>this.handlers.get(e)?.delete(t)}emit(e,t){let n=this.handlers.get(e);if(n)for(let e of n)try{e(t)}catch{}}clear(){this.handlers.clear()}};const Sd=R.scope(`hooks`),Cd=`*`,wd=/* @__PURE__ */ new Set;function Td(e,t,n){let r={widgetId:e,event:t,listener:n};return wd.add(r),()=>{wd.delete(r)}}function Ed(e,t,n){let r=[...wd];for(let i of r)if(Od(i.widgetId,e.widgetId)&&(i.event===`*`||i.event===t))try{i.listener(e,t,n)}catch(e){Sd.warn(`hook listener threw`,{event:t,error:e})}}function Dd(e,t){let n=[];for(let r of kd)n.push(t.on(r,t=>{Ed(e,r,t)}));return()=>{for(let e of n)e()}}function Od(e,t){return e===`*`||e===t}const kd=/* @__PURE__ */ `open.close.expand.fullscreen.resize.message.send.stop.clear.selectConversation.suggestion.toggleHistory.formSubmit.toolResult.toolDecision.messageFeedback.contentView.contentOpen.contentSearch.contentRead.contentLinkClick.attach.removeAttachment.voiceStart.voiceStop.voiceCancel.localeChange.themeChange.textSizeChange.soundToggle.sidebarToggle.calloutDismiss.error.handshake.conversationRebound`.split(`.`),Ad=R.scope(`iframe`);function jd(e,t,n=`closed`,r=`floating`,i=null){Ad.debug(`createIframeMount`,{position:t,initialMode:n,layoutMode:r,hasTarget:!!i});let a=document.createElement(`iframe`);a.title=`${M.name} chat`,a.setAttribute(`allow`,`microphone; clipboard-write`),Pd(a,t,n,r),(r===`inline`&&i?i:document.body).appendChild(a);let o=a.contentDocument;if(!o)throw Error(`iframe contentDocument unavailable (cross-origin?)`);o.open(),o.write(`<!doctype html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:transparent;overflow:hidden}</style></head><body></body></html>`),o.close();let s=wt({...e,target:o.body}),c=new MutationObserver(()=>{Pd(a,t,s.hostElement.dataset.mode??`closed`,r)});return c.observe(s.hostElement,{attributes:!0,attributeFilter:[`data-mode`]}),{...s,iframeElement:a,destroy(){c.disconnect(),s.destroy(),a.remove()}}}const Md=`border:0;background:transparent;z-index:2147483647;pointer-events:auto;`,Nd={closed:{w:`88px`,h:`88px`},expanded:{w:`min(calc(100vw - 32px), 680px)`,h:`min(calc(100vh - 32px), 860px)`},open:{w:`min(calc(100vw - 32px), 440px)`,h:`min(calc(100vh - 32px), 700px)`}};function Pd(e,t,n,r){if(n===`fullscreen`||r===`standalone`){e.style.cssText=`${Md}position:fixed;inset:0;width:100vw;height:100vh;`;return}if(r===`inline`){e.style.cssText=`${Md}position:static;display:block;width:100%;height:100%;`;return}if(typeof matchMedia==`function`&&matchMedia(`(max-width: 640px)`).matches&&(n===`open`||n===`expanded`)){e.style.cssText=`${Md}position:fixed;inset:0;width:100vw;height:100vh;`;return}let i=t.startsWith(`top-`)?`top`:`bottom`,a=t.endsWith(`-left`)?`left`:`right`,{w:o,h:s}=Nd[n]??Nd.open;e.style.cssText=`${Md}position:fixed;${i}:16px;${a}:16px;width:${o};height:${s};`}const Fd=/* @__PURE__ */ new Map;function Id(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);e.debug!==void 0&&L(e.debug);let t=R.scope(`mount`);t.info(`mount`,{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let r=Ee(e),i=r.widgetId,a=Fd.get(i);a&&(t.debug(`destroy existing instance at slot`,{widgetId:i}),a.destroy());let o=bd(r),s=r.iframe?jd({position:Ct(r.mode)},r.position,o,r.mode,e.target??null):wt({position:Ct(r.mode),target:e.target??null});s.hostElement.dataset.widgetId=i;let c=new xd,l=ct(i,r.storage,r.aiAgentDeploymentId);function u(e){c.emit(`error`,e),d.getOptions().onError?.(e)}let d=yd({bus:c,host:s.hostElement,appRoot:s.appRoot,persistence:l,initialRaw:e,reportError:u});d.render();let f=s.hostElement,p=null;function m(e){e.debug!==void 0&&L(e.debug),d.patchUserOptions(e)}let h={widgetId:i,open:e=>en(f,`open`,e),close:()=>en(f,`close`),expand:()=>en(f,`expand`),openForm:e=>en(f,`openForm`,e),on:(e,t)=>c.on(e,t),update:e=>{t.debug(`update`,{patch:e}),m(e)},setUserContext:e=>{t.debug(`setUserContext`,{keys:Object.keys(e)}),m({userContext:{...d.getUserOptions().userContext,...e}})},clearUserContext:()=>{t.debug(`clearUserContext`),m({userContext:void 0})},setPageContext:e=>{t.debug(`setPageContext`,{keys:Object.keys(e)}),m({pageContext:{...d.getUserOptions().pageContext,...e}})},clearPageContext:()=>{t.debug(`clearPageContext`),m({pageContext:void 0})},setDebug:e=>{L(e),t.info(`debug level set`,{level:ge()})},debugLevel:()=>ge(),onLog:e=>ve(e),destroy:()=>{t.info(`destroy`,{widgetId:i}),p?.(),d.destroy(),c.clear(),n(null,s.appRoot),s.destroy(),Fd.get(i)===h&&Fd.delete(i)}};return p=Dd(h,c),Fd.set(i,h),h}function Ld(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);let t=e.widgetId??`default`,n=Fd.get(t);return n?(n.update(e),n):Id(e)}function Rd(e){if(e!==void 0){Fd.get(e)?.destroy();return}let t=[...Fd.values()];for(let e of t)e.destroy()}function zd(e=`default`){return Fd.get(e)??null}function Bd(){return[...Fd.values()]}function Vd(e,t,n){return Td(e,t,n)}const Hd=ft,Ud=M;export{Cd as HOOK_WILDCARD,Ud as brand,Rd as destroy,Bd as getAllInstances,zd as getInstance,Vd as hook,Ld as init,Id as mount,bd as resolveInitialHostMode,Hd as version};
|
|
33
33
|
//# sourceMappingURL=index.mjs.map
|