@helpai/elements 1.13.0 → 1.14.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 +42 -41
- package/elements-web-component.esm.js.map +3 -3
- package/elements.cjs.js +42 -41
- package/elements.cjs.js.map +3 -3
- package/elements.esm.js +42 -41
- package/elements.esm.js.map +3 -3
- package/elements.js +42 -41
- package/elements.js.map +3 -3
- package/index.d.ts +1 -1
- package/index.mjs +13 -12
- package/llms-full.txt +142 -142
- package/llms.txt +19 -19
- package/package.json +1 -1
- package/react.d.ts +1 -1
- package/react.mjs +30 -29
- package/style.css +1 -1
- package/web-component.d.ts +1 -1
- package/web-component.mjs +17 -16
package/index.mjs
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
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`,file:`File`,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`,statusIncomplete:`Not completed`,toolStepsFailed:`{count} failed`},T={en:w,fr:{attach:`Joindre des fichiers`,file:`Fichier`,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é`,statusIncomplete:`Non terminé`,toolStepsFailed:`{count} en échec`},ar:{attach:`إرفاق ملفات`,file:`ملف`,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:`تم التخطي`,statusIncomplete:`لم يكتمل`,toolStepsFailed:`فشل {count}`},es:{attach:`Adjuntar archivos`,file:`Archivo`,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`,statusIncomplete:`No completado`,toolStepsFailed:`{count} con error`},he:{attach:`צירוף קבצים`,file:`קובץ`,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:`דולג`,statusIncomplete:`לא הושלם`,toolStepsFailed:`{count} נכשלו`}};function E(e,t){let n=D(e),r=A(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 ee(e){return O.has(D(e))}function k(e,t){return e[t]??t}function A(e){if(!e)return!1;for(let t of Object.values(e))if(t&&typeof t==`object`)return!0;return!1}const j={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`},te=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{}}},ne={maxBytes:10485760,maxCount:10,accept:`*/*`},M={voice:`local`},re={list:[],byTrigger:{}},ie={enabled:!0,sampleRate:1},N={upload:`/pai/upload-file`,transcribe:`/pai/transcribe-audio`,submitForm:`/pai/submit-form`},ae={variant:`circle`,size:`md`,label:void 0,icon:`chat`,hidden:!1},oe={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`]},se={enabled:!0,volume:.3,events:void 0},P={enabled:!0,events:void 0},ce=[{label:`tabConversations`,layout:`chat`}],le=[`off`,`error`,`warn`,`info`,`debug`,`trace`],ue=j.cssPrefix,F=`${ue}.debug`,de=`__${j.global}_DEBUG__`,fe=`${ue}-debug`;let pe=2,me=null;function he(){if(typeof window>`u`)return 2;try{let e=new URLSearchParams(window.location.search).get(fe);if(e!==null){let t=ge(e);if(t>=0)return t}}catch{}try{let e=window.localStorage?.getItem(F);if(e){let t=ge(e);if(t>=0)return t}}catch{}return Reflect.get(window,de)?4:2}function ge(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=le.findIndex(t=>t===e);if(t>=0)return t}return-1}function I(e){let t=ge(e);if(!(t<0)){pe=t;try{window.localStorage?.setItem(F,le[t]??`off`)}catch{}}}function _e(){return le[pe]??`warn`}pe=he();function ve(e){let t=`[${ue}:${e}]`;function n(n,r,i){return(a,o)=>{if(!(pe<n)&&(o===void 0?console[r](t,a):console[r](t,a,o),me))try{me({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=>ve(`${e}:${t}`)}}const L=ve(`core`);function ye(e){me=e}const be=L.scope(`context`),xe=/* @__PURE__ */ new Set([`visitorId`,`conversationId`,`jwt`,`token`,`authorization`,`password`]),Se=1024,Ce=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function we(e){return Ee(e,`userContext`,!0)}function Te(e){return Ee(e,`pageContext`,!1)}function Ee(e,t,n){if(e==null)return;if(typeof e!=`object`||Array.isArray(e)){be.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(xe.has(n)){be.warn(`dropped reserved ${t} key "${n}" — managed by the widget, not host-settable`);continue}if(a==null)continue;if(i>=50){be.warn(`${t} truncated at 50 keys — dropped "${n}"`);continue}let e=De(t,n,a);e!==void 0&&(r[n]=e,i++)}return n&&typeof r.email==`string`&&!Ce.test(r.email)&&(be.warn(`dropped malformed context field`,{field:`${t}.email`,reason:`invalid format`}),delete r.email),Object.keys(r).length>0?r:void 0}function De(e,t,n){if(typeof n==`boolean`)return n;if(typeof n==`number`){if(!Number.isFinite(n)){be.warn(`dropped non-finite ${e}.${t}`);return}return n}if(typeof n==`string`){let r=n.trim();return r===``?void 0:r.length>Se?(be.warn(`truncated ${e}.${t} to ${Se} chars`),r.slice(0,Se)):r}be.warn(`dropped ${e}.${t} — only string/number/boolean values are allowed`,{type:typeof n})}function Oe(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??{},c={enabled:t.history?.enabled??!0},{themeMode:l,themeOverrides:u}=ke(t.theme),d=n.mode??`floating`,f=Ae(i.defaultLocale),p=i.availableLocales??[i.locale??f],m=je(i.locale??f,p,f),h=(t.baseUrl??j.defaultBaseUrl).replace(/\/$/,``),g=(t.agentApiBaseUrl??`${h}/api/agent`).replace(/\/$/,``),_=(t.dataApiBaseUrl??`${h}/api/data`).replace(/\/$/,``);return{widgetId:t.widgetId??`default`,publicKey:t.publicKey,aiAgentDeploymentId:t.aiAgentDeploymentId,baseUrl:h,agentApiBaseUrl:g,dataApiBaseUrl:_,userContext:we(t.userContext),pageContext:Te(t.pageContext),position:n.position??`bottom-right`,themeMode:l,textSize:`normal`,themeOverrides:u,mode:d,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??M.voice,fileUpload:!(t.features?.disableFileUpload??!1),humanInLoop:!(t.features?.disableHumanInLoop??!1),operatorRequest:t.features?.enableOperatorRequest===!0},forms:ze(t.forms,m),endpoints:{upload:t.endpoints?.upload??N.upload,transcribe:t.endpoints?.transcribe??N.transcribe,submitForm:t.endpoints?.submitForm??N.submitForm},attachments:{accept:t.composer?.attachments?.accept??ne.accept,maxBytes:t.composer?.attachments?.maxBytes??ne.maxBytes,maxCount:t.composer?.attachments?.maxCount??ne.maxCount},locale:m,defaultLocale:f,availableLocales:p,startMinimized:r.startMinimized??!0,actions:Me(d,s.actions,c.enabled),size:n.size??{},launcher:Ve(t.launcher),sound:Ne(a.sound),haptics:Pe(a.haptics),strings:E(m,i.strings),stringsOverride:i.strings,composerDisclaimer:o.composerDisclaimer??``,poweredBy:Ie(o.poweredBy),composer:Le(t.composer),modules:Re(t.modules,c.enabled),tracking:Fe(t.tracking,_),history:c,storage:t.storage??te,userToken:t.userToken,tools:t.tools,onMessage:t.onMessage,onOpen:t.onOpen,onClose:t.onClose,onError:t.onError}}function ke(e){if(typeof e==`string`)return{themeMode:e,themeOverrides:{}};if(!e||typeof e!=`object`)return{themeMode:`auto`,themeOverrides:{}};let{mode:t,...n}=e;return{themeMode:t??`auto`,themeOverrides:n}}function Ae(e){return e&&e!==`auto`?e:globalThis.navigator?.language||`en`}function je(e,t,n){return t.length<=1||t.includes(e)?e:t.includes(n)?n:t[0]??e}function Me(e,t,n){let r=t??oe[e];return n?r:r.filter(e=>e!==`history`)}function Ne(e){return{enabled:e?.enabled??se.enabled,volume:e?.volume??se.volume,events:e?.events}}function Pe(e){return{enabled:e?.enabled??P.enabled,events:e?.events}}function Fe(e,t){let n=e?.sampleRate??ie.sampleRate;return{enabled:e?.enabled??ie.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 Ie(e){let t={text:`Powered by ${j.displayName}`,href:j.siteUrl,...e};return t.text||t.logoUrl?t:null}function Le(e){let t=e?.sendButton;return{sendButton:{shape:t?.shape??`circle`,icon:t?.icon??`arrowUp`,variant:t?.variant??`filled`}}}function Re(e,t){let n=e??ce,r=/* @__PURE__ */ new Set,i=[];for(let e of n.slice(0,4)){if(!e?.label||!e?.layout)continue;let n=e.contentCollectionIds?.filter(Boolean),a=e.id??n?.[0]??e.layout;for(;r.has(a);)a=`${a}-${i.length}`;r.add(a);let o={id:a,label:e.label,layout:e.layout};n?.length&&(o.contentCollectionIds=n),e.layout===`home`&&(o.brandName=e.brandName,o.greetingText=e.greetingText,o.showGreeting=!(e.hideGreeting??!1),o.showSearchBar=!(e.hideSearchBar??!1),o.showRecentConversations=t&&!(e.hideRecentConversations??!1),e.userAvatars?.length&&(o.userAvatars=e.userAvatars),e.status&&(o.status=e.status),o.contentBlockTitle=e.contentBlockTitle),i.push(o)}return{list:i,byId:Object.fromEntries(i.map(e=>[e.id,e]))}}function ze(e,t){if(!e?.length)return re;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(Be).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,blocking:e.blocking??!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 Be(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 Ve(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??ae.variant,size:e?.size??ae.size,label:e?.label??ae.label,icon:e?.icon??ae.icon,hidden:e?.hidden??ae.hidden,callout:t}}function He(e,t,n,r){let i=je(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 Ue=[`presentation`,`behavior`,`theme`,`launcher`,`header`,`composer`,`feedback`,`i18n`,`footer`,`features`,`tracking`,`endpoints`,`history`];function We(e,t){if(!t)return e;let n={...e};for(let r of Ue){let i=t[r];if(i===void 0)continue;let a=e[r];r===`theme`?a===void 0?n[r]=i:typeof a==`string`&&typeof i==`object`&&i&&(n[r]={...i,mode:a}):r!==`i18n`&&(n[r]=Ge(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=Ge(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=Ke(a,t)),n.i18n=e}return n}function Ge(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 Ke(e,t){if(!e)return t;if(!t)return e;let n=A(e),r=A(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 qe=[`clear`,`expand`,`fullscreen`,`popOut`,`sound`,`history`,`language`,`theme`,`textSize`,`close`];function Je(e){return e!==`false`}const Ye=[[`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]],Xe=[[`mode`,`mode`,e=>e],[`position`,`position`,e=>e],[`iframe`,`iframe`,Je]],Ze=[[`width`,`width`],[`height`,`height`]],Qe=[[`response-mode`,`responseMode`,e=>e],[`start-minimized`,`startMinimized`,Je],[`show-reasoning`,`showReasoning`,Je],[`show-tool-calls`,`showToolCalls`,Je],[`show-sources`,`showSources`,Je],[`disable-message-feedback`,`disableMessageFeedback`,Je],[`auto-send-suggestions`,`autoSendSuggestions`,Je],[`pop-out-url`,`popOutUrl`]],$e=[[`locale`,`locale`]];new Set(qe);const R=[[`launcher-variant`,`variant`,e=>e],[`launcher-size`,`size`,e=>e],[`launcher-icon`,`icon`],[`launcher-hidden`,`hidden`,Je]],et=[[`features-disable-file-upload`,`disableFileUpload`,Je],[`features-voice`,`voice`,e=>e]],tt=[[`endpoint-upload`,`upload`],[`endpoint-transcribe`,`transcribe`]],nt=[[`user-id`,`id`],[`user-email`,`email`],[`user-name`,`name`]],rt=[[`page-area`,`area`],[`page-url`,`url`],[`page-path`,`path`],[`page-title`,`title`]],it=[`launcher-label`,`callout-text`,`callout-delay`,`actions`,`user-context`,`page-context`],at=[Ye,Xe,Ze,Qe,$e,R,et,tt,nt,rt],ot=/* @__PURE__ */ new Set([`iframe`,`start-minimized`]);[...at.flatMap(e=>e.map(([e])=>e).filter(e=>!ot.has(e))),...it];const st=L.scope(`track`);function ct(e,t){let n=typeof e==`string`?e.trim():``;if(!n||n.length>64){st.warn(`track: ignored an event without a name of 1–64 characters`,{name:e});return}let r=Object.fromEntries(Object.entries(typeof t==`object`&&t?t:{}).filter(e=>typeof e[1]==`string`||typeof e[1]==`boolean`||Number.isFinite(e[1])));return JSON.stringify(r).length>256?(st.warn(`track: sent the event without its data, which is over 256 characters`,{name:n}),{name:n}):Object.keys(r).length>0?{name:n,data:r}:{name:n}}function lt(e){let t=[];return e.on(`hostEvent`,e=>{t.push({...e,at:Date.now()}),t.length>10&&t.shift()}),t}function ut(){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,dt(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 dt(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 ft=L.scope(`persistence`);function pt(e,t=te,n){let r=n?`${e}.${n}`:e,i=`${j.cssPrefix}.storageVersion`,a=t.get(i)??void 0,o=a?`.v${a}`:``,s=`${j.cssPrefix}.${r}${o}`,c=`${j.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=ut();return t.set(c,n),n},loadConversationId(){return t.get(l)??void 0},saveConversationId(e){ft.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(ht)?[]:e}catch(e){return ft.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){ft.warn(`saveMessageQueue serialise failed`,{error:e})}},loadUserPrefs(){let e=t.get(u);if(!e)return{};try{return gt(JSON.parse(e))}catch(e){return ft.warn(`loadUserPrefs parse failed`,{error:e}),{}}},saveUserPrefs(e){try{t.set(u,JSON.stringify(e))}catch(e){ft.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 mt(t)?Object.fromEntries(Object.entries(t).filter(e=>typeof e[1]==`number`)):{}}catch(e){return ft.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){ft.warn(`saveFormDone serialise failed`,{error:e})}},rememberStorageVersion(e){e&&e!==t.get(i)&&(ft.debug(`rememberStorageVersion (force-reset on next load)`,{version:e}),t.set(i,e))},clearConversation(){t.remove(l)},reset(){let e=t.get(l);e&&(t.remove(`${s}.draft.${e}`),t.remove(`${s}.messageQueue.${e}`));for(let e of[c,l,u,d,f,p,m,h,g,_,v])t.remove(e);ft.info(`reset: forgot the visitor`,{scope:r})}};return y}function mt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ht(e){return mt(e)&&typeof e.id==`string`&&e.id.length>0&&typeof e.text==`string`}function gt(e){if(!mt(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),mt(e.widgetSize)&&typeof e.widgetSize.width==`number`&&typeof e.widgetSize.height==`number`&&(t.widgetSize={width:e.widgetSize.width,height:e.widgetSize.height}),t}const _t=`1.13.0`,vt={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}),hostEvent:e=>({name:e.name,data:e.data&&JSON.stringify(e.data)}),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 yt(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack===`1`}function bt(){return location.origin+location.pathname}function xt(){try{return document.referrer?new URL(document.referrer).origin:``}catch{return``}}function St(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||yt()||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`,_t),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`,bt());let h=xt();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=[];function c(e,t){if(s&&e!==`handshake`){s.length<60&&s.push([e,t]);return}let n=s??[];s=void 0;for(let[e,t]of n)o(e,t);o(e,t)}let l=Object.keys(vt).map(t=>e.on(t,e=>c(t,vt[t]?.(e))));return()=>{for(let e of l)e();a.clear()}}const Ct=`: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`,file:`File`,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.`,errorRateLimitedIn:`Too many requests — please try again in {seconds} s.`,errorOffline:`Can't reach the server. Check your connection and try again.`,errorServer:`Something went wrong on our side. Please try again.`,errorReconnecting:`Connection lost. Reconnecting…`,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…`,thought:`Thought`,thoughtFor:`Thought for {time}`,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`,statusIncomplete:`Not completed`,toolStepsFailed:`{count} failed`,statusStopped:`Stopped`,toolStepsStopped:`Stopped after {count} steps`,toolStepsStoppedOne:`Stopped after 1 step`,thoughtsShowMore:`Show more`,thoughtsShowLess:`Show less`},T={en:w,fr:{attach:`Joindre des fichiers`,file:`Fichier`,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.`,errorRateLimitedIn:`Trop de requêtes — veuillez réessayer dans {seconds} s.`,errorOffline:`Impossible de joindre le serveur. Vérifiez votre connexion et réessayez.`,errorServer:`Un problème est survenu de notre côté. Veuillez réessayer.`,errorReconnecting:`Connexion perdue. Reconnexion…`,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…`,thought:`Réflexion`,thoughtFor:`Réflexion : {time}`,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é`,statusIncomplete:`Non terminé`,toolStepsFailed:`{count} en échec`,statusStopped:`Arrêté`,toolStepsStopped:`Arrêté après {count} étapes`,toolStepsStoppedOne:`Arrêté après 1 étape`,thoughtsShowMore:`Afficher plus`,thoughtsShowLess:`Afficher moins`},ar:{attach:`إرفاق ملفات`,file:`ملف`,attachmentMimeRejected:`نوع الملف غير مدعوم`,attachmentTooLarge:`حجم الملف كبير جدًا`,attachmentTooMany:`تم بلوغ الحد الأقصى للمرفقات`,conversationClosed:`تم إغلاق هذه الدردشة`,conversationLoading:`جارٍ تحميل الدردشة…`,loadPreviousMessages:`تحميل الرسائل السابقة`,close:`إغلاق`,collapse:`طيّ`,collapseSidebar:`طيّ الشريط الجانبي`,composerPlaceholder:`اكتب رسالة…`,dateLastWeek:`آخر ٧ أيام`,dateOlder:`أقدم`,dateToday:`اليوم`,dateYesterday:`أمس`,dropZone:`أفلت الملفات لإرفاقها`,errorGeneric:`حدث خطأ ما`,errorRateLimited:`طلبات كثيرة جدًا — يرجى المحاولة بعد لحظة.`,errorRateLimitedIn:`طلبات كثيرة جدًا — يرجى المحاولة بعد {seconds} ث.`,errorOffline:`تعذّر الوصول إلى الخادم. تحقّق من اتصالك وحاول مرة أخرى.`,errorServer:`حدث خطأ من جهتنا. يرجى المحاولة مرة أخرى.`,errorReconnecting:`انقطع الاتصال. جارٍ إعادة الاتصال…`,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:`يفكّر…`,thought:`تفكير`,thoughtFor:`فكّر لمدة {time}`,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:`تم التخطي`,statusIncomplete:`لم يكتمل`,toolStepsFailed:`فشل {count}`,statusStopped:`أُوقف`,toolStepsStopped:`أُوقف بعد {count} خطوات`,toolStepsStoppedOne:`أُوقف بعد خطوة واحدة`,thoughtsShowMore:`عرض المزيد`,thoughtsShowLess:`عرض أقل`},es:{attach:`Adjuntar archivos`,file:`Archivo`,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.`,errorRateLimitedIn:`Demasiadas solicitudes: inténtalo de nuevo en {seconds} s.`,errorOffline:`No se puede conectar con el servidor. Revisa tu conexión e inténtalo de nuevo.`,errorServer:`Algo salió mal por nuestra parte. Inténtalo de nuevo.`,errorReconnecting:`Se perdió la conexión. Reconectando…`,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…`,thought:`Razonamiento`,thoughtFor:`Razonó durante {time}`,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`,statusIncomplete:`No completado`,toolStepsFailed:`{count} con error`,statusStopped:`Detenido`,toolStepsStopped:`Detenido tras {count} pasos`,toolStepsStoppedOne:`Detenido tras 1 paso`,thoughtsShowMore:`Mostrar más`,thoughtsShowLess:`Mostrar menos`},he:{attach:`צירוף קבצים`,file:`קובץ`,attachmentMimeRejected:`סוג הקובץ אינו נתמך`,attachmentTooLarge:`הקובץ גדול מדי`,attachmentTooMany:`הגעת למספר המרבי של קבצים מצורפים`,conversationClosed:`הצ׳אט הזה נסגר`,conversationLoading:`טוען צ׳אט…`,loadPreviousMessages:`טעינת הודעות קודמות`,close:`סגירה`,collapse:`כיווץ`,collapseSidebar:`כיווץ סרגל הצד`,composerPlaceholder:`כתוב הודעה…`,dateLastWeek:`7 הימים האחרונים`,dateOlder:`ישן יותר`,dateToday:`היום`,dateYesterday:`אתמול`,dropZone:`שחרר קבצים כדי לצרף`,errorGeneric:`משהו השתבש`,errorRateLimited:`יותר מדי בקשות — נסה שוב בעוד רגע.`,errorRateLimitedIn:`יותר מדי בקשות — נסה שוב בעוד {seconds} שנ׳.`,errorOffline:`אין חיבור לשרת. בדוק את החיבור ונסה שוב.`,errorServer:`משהו השתבש אצלנו. נסה שוב.`,errorReconnecting:`החיבור אבד. מתחבר מחדש…`,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:`חושב…`,thought:`מחשבה`,thoughtFor:`חשב במשך {time}`,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:`דולג`,statusIncomplete:`לא הושלם`,toolStepsFailed:`{count} נכשלו`,statusStopped:`נעצר`,toolStepsStopped:`נעצר אחרי {count} שלבים`,toolStepsStoppedOne:`נעצר אחרי שלב אחד`,thoughtsShowMore:`הצגת עוד`,thoughtsShowLess:`הצגת פחות`}};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:`*/*`},ne={voice:`local`},N={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},se={enabled:!0,events:void 0},F=[{label:`tabConversations`,layout:`chat`}],ce=[`off`,`error`,`warn`,`info`,`debug`,`trace`],le=M.cssPrefix,ue=`${le}.debug`,I=`__${M.global}_DEBUG__`,de=`${le}-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(ue);if(e){let t=he(e);if(t>=0)return t}}catch{}return Reflect.get(window,I)?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=ce.findIndex(t=>t===e);if(t>=0)return t}return-1}function ge(e){let t=he(e);if(!(t<0)){fe=t;try{window.localStorage?.setItem(ue,ce[t]??`off`)}catch{}}}function L(){return ce[fe]??`warn`}fe=me();function _e(e){let t=`[${le}:${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 ye=R.scope(`context`),be=/* @__PURE__ */ new Set([`visitorId`,`conversationId`,`jwt`,`token`,`authorization`,`password`]),xe=1024,Se=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function Ce(e){return Te(e,`userContext`,!0)}function we(e){return Te(e,`pageContext`,!1)}function Te(e,t,n){if(e==null)return;if(typeof e!=`object`||Array.isArray(e)){ye.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(be.has(n)){ye.warn(`dropped reserved ${t} key "${n}" — managed by the widget, not host-settable`);continue}if(a==null)continue;if(i>=50){ye.warn(`${t} truncated at 50 keys — dropped "${n}"`);continue}let e=Ee(t,n,a);e!==void 0&&(r[n]=e,i++)}return n&&typeof r.email==`string`&&!Se.test(r.email)&&(ye.warn(`dropped malformed context field`,{field:`${t}.email`,reason:`invalid format`}),delete r.email),Object.keys(r).length>0?r:void 0}function Ee(e,t,n){if(typeof n==`boolean`)return n;if(typeof n==`number`){if(!Number.isFinite(n)){ye.warn(`dropped non-finite ${e}.${t}`);return}return n}if(typeof n==`string`){let r=n.trim();return r===``?void 0:r.length>xe?(ye.warn(`truncated ${e}.${t} to ${xe} chars`),r.slice(0,xe)):r}ye.warn(`dropped ${e}.${t} — only string/number/boolean values are allowed`,{type:typeof n})}function De(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??{},c={enabled:t.history?.enabled??!0},{themeMode:l,themeOverrides:u}=Oe(t.theme),d=n.mode??`floating`,f=ke(i.defaultLocale),p=i.availableLocales??[i.locale??f],m=Ae(i.locale??f,p,f),h=(t.baseUrl??M.defaultBaseUrl).replace(/\/$/,``),g=(t.agentApiBaseUrl??`${h}/api/agent`).replace(/\/$/,``),_=(t.dataApiBaseUrl??`${h}/api/data`).replace(/\/$/,``);return{widgetId:t.widgetId??`default`,publicKey:t.publicKey,aiAgentDeploymentId:t.aiAgentDeploymentId,baseUrl:h,agentApiBaseUrl:g,dataApiBaseUrl:_,userContext:Ce(t.userContext),pageContext:we(t.pageContext),position:n.position??`bottom-right`,themeMode:l,textSize:`normal`,themeOverrides:u,mode:d,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??ne.voice,fileUpload:!(t.features?.disableFileUpload??!1),humanInLoop:!(t.features?.disableHumanInLoop??!1),operatorRequest:t.features?.enableOperatorRequest===!0},forms:Re(t.forms,m),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:m,defaultLocale:f,availableLocales:p,startMinimized:r.startMinimized??!0,actions:je(d,s.actions,c.enabled),size:n.size??{},launcher:Be(t.launcher),sound:Me(a.sound),haptics:Ne(a.haptics),strings:E(m,i.strings),stringsOverride:i.strings,composerDisclaimer:o.composerDisclaimer??``,poweredBy:Fe(o.poweredBy),composer:Ie(t.composer),modules:Le(t.modules,c.enabled),tracking:Pe(t.tracking,_),history:c,storage:t.storage??ee,userToken:t.userToken,tools:t.tools,onMessage:t.onMessage,onOpen:t.onOpen,onClose:t.onClose,onError:t.onError}}function Oe(e){if(typeof e==`string`)return{themeMode:e,themeOverrides:{}};if(!e||typeof e!=`object`)return{themeMode:`auto`,themeOverrides:{}};let{mode:t,...n}=e;return{themeMode:t??`auto`,themeOverrides:n}}function ke(e){return e&&e!==`auto`?e:globalThis.navigator?.language||`en`}function Ae(e,t,n){return t.length<=1||t.includes(e)?e:t.includes(n)?n:t[0]??e}function je(e,t,n){let r=t??ae[e];return n?r:r.filter(e=>e!==`history`)}function Me(e){return{enabled:e?.enabled??oe.enabled,volume:e?.volume??oe.volume,events:e?.events}}function Ne(e){return{enabled:e?.enabled??se.enabled,events:e?.events}}function Pe(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 Fe(e){let t={text:`Powered by ${M.displayName}`,href:M.siteUrl,...e};return t.text||t.logoUrl?t:null}function Ie(e){let t=e?.sendButton;return{sendButton:{shape:t?.shape??`circle`,icon:t?.icon??`arrowUp`,variant:t?.variant??`filled`}}}function Le(e,t){let n=e??F,r=/* @__PURE__ */ new Set,i=[];for(let e of n.slice(0,4)){if(!e?.label||!e?.layout)continue;let n=e.contentCollectionIds?.filter(Boolean),a=e.id??n?.[0]??e.layout;for(;r.has(a);)a=`${a}-${i.length}`;r.add(a);let o={id:a,label:e.label,layout:e.layout};n?.length&&(o.contentCollectionIds=n),e.layout===`home`&&(o.brandName=e.brandName,o.greetingText=e.greetingText,o.showGreeting=!(e.hideGreeting??!1),o.showSearchBar=!(e.hideSearchBar??!1),o.showRecentConversations=t&&!(e.hideRecentConversations??!1),e.userAvatars?.length&&(o.userAvatars=e.userAvatars),e.status&&(o.status=e.status),o.contentBlockTitle=e.contentBlockTitle),i.push(o)}return{list:i,byId:Object.fromEntries(i.map(e=>[e.id,e]))}}function Re(e,t){if(!e?.length)return N;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(ze).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,blocking:e.blocking??!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 ze(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 Be(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 Ve(e,t,n,r){let i=Ae(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 He=[`presentation`,`behavior`,`theme`,`launcher`,`header`,`composer`,`feedback`,`i18n`,`footer`,`features`,`tracking`,`endpoints`,`history`];function Ue(e,t){if(!t)return e;let n={...e};for(let r of He){let i=t[r];if(i===void 0)continue;let a=e[r];r===`theme`?a===void 0?n[r]=i:typeof a==`string`&&typeof i==`object`&&i&&(n[r]={...i,mode:a}):r!==`i18n`&&(n[r]=We(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=We(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=Ge(a,t)),n.i18n=e}return n}function We(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 Ge(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 Ke=[`clear`,`expand`,`fullscreen`,`popOut`,`sound`,`history`,`language`,`theme`,`textSize`,`close`];function qe(e){return e!==`false`}const Je=[[`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]],Ye=[[`mode`,`mode`,e=>e],[`position`,`position`,e=>e],[`iframe`,`iframe`,qe]],Xe=[[`width`,`width`],[`height`,`height`]],Ze=[[`response-mode`,`responseMode`,e=>e],[`start-minimized`,`startMinimized`,qe],[`show-reasoning`,`showReasoning`,qe],[`show-tool-calls`,`showToolCalls`,qe],[`show-sources`,`showSources`,qe],[`disable-message-feedback`,`disableMessageFeedback`,qe],[`auto-send-suggestions`,`autoSendSuggestions`,qe],[`pop-out-url`,`popOutUrl`]],Qe=[[`locale`,`locale`]];new Set(Ke);const $e=[[`launcher-variant`,`variant`,e=>e],[`launcher-size`,`size`,e=>e],[`launcher-icon`,`icon`],[`launcher-hidden`,`hidden`,qe]],z=[[`features-disable-file-upload`,`disableFileUpload`,qe],[`features-voice`,`voice`,e=>e]],et=[[`endpoint-upload`,`upload`],[`endpoint-transcribe`,`transcribe`]],tt=[[`user-id`,`id`],[`user-email`,`email`],[`user-name`,`name`]],nt=[[`page-area`,`area`],[`page-url`,`url`],[`page-path`,`path`],[`page-title`,`title`]],rt=[`launcher-label`,`callout-text`,`callout-delay`,`actions`,`user-context`,`page-context`],it=[Je,Ye,Xe,Ze,Qe,$e,z,et,tt,nt],at=/* @__PURE__ */ new Set([`iframe`,`start-minimized`]);[...it.flatMap(e=>e.map(([e])=>e).filter(e=>!at.has(e))),...rt];const ot=R.scope(`track`);function st(e,t){let n=typeof e==`string`?e.trim():``;if(!n||n.length>64){ot.warn(`track: ignored an event without a name of 1–64 characters`,{name:e});return}let r=Object.fromEntries(Object.entries(typeof t==`object`&&t?t:{}).filter(e=>typeof e[1]==`string`||typeof e[1]==`boolean`||Number.isFinite(e[1])));return JSON.stringify(r).length>256?(ot.warn(`track: sent the event without its data, which is over 256 characters`,{name:n}),{name:n}):Object.keys(r).length>0?{name:n,data:r}:{name:n}}function ct(e){let t=[];return e.on(`hostEvent`,e=>{t.push({...e,at:Date.now()}),t.length>10&&t.shift()}),t}function lt(){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,ut(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 ut(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 dt=R.scope(`persistence`);function ft(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=lt();return t.set(c,n),n},loadConversationId(){return t.get(l)??void 0},saveConversationId(e){dt.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(mt)?[]:e}catch(e){return dt.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){dt.warn(`saveMessageQueue serialise failed`,{error:e})}},loadUserPrefs(){let e=t.get(u);if(!e)return{};try{return ht(JSON.parse(e))}catch(e){return dt.warn(`loadUserPrefs parse failed`,{error:e}),{}}},saveUserPrefs(e){try{t.set(u,JSON.stringify(e))}catch(e){dt.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 pt(t)?Object.fromEntries(Object.entries(t).filter(e=>typeof e[1]==`number`)):{}}catch(e){return dt.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){dt.warn(`saveFormDone serialise failed`,{error:e})}},rememberStorageVersion(e){e&&e!==t.get(i)&&(dt.debug(`rememberStorageVersion (force-reset on next load)`,{version:e}),t.set(i,e))},clearConversation(){t.remove(l)},reset(){let e=t.get(l);e&&(t.remove(`${s}.draft.${e}`),t.remove(`${s}.messageQueue.${e}`));for(let e of[c,l,u,d,f,p,m,h,g,_,v])t.remove(e);dt.info(`reset: forgot the visitor`,{scope:r})}};return y}function pt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function mt(e){return pt(e)&&typeof e.id==`string`&&e.id.length>0&&typeof e.text==`string`}function ht(e){if(!pt(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),pt(e.widgetSize)&&typeof e.widgetSize.width==`number`&&typeof e.widgetSize.height==`number`&&(t.widgetSize={width:e.widgetSize.width,height:e.widgetSize.height}),t}const gt=`1.14.0`,_t={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}),hostEvent:e=>({name:e.name,data:e.data&&JSON.stringify(e.data)}),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 vt(){let e=navigator;return e.globalPrivacyControl===!0||e.doNotTrack===`1`}function yt(){return location.origin+location.pathname}function bt(){try{return document.referrer?new URL(document.referrer).origin:``}catch{return``}}function xt(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||vt()||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`,gt),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`,yt());let h=bt();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=[];function c(e,t){if(s&&e!==`handshake`){s.length<60&&s.push([e,t]);return}let n=s??[];s=void 0;for(let[e,t]of n)o(e,t);o(e,t)}let l=Object.keys(_t).map(t=>e.on(t,e=>c(t,_t[t]?.(e))));return()=>{for(let e of l)e();a.clear()}}const St=`: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
|
|
|
5
|
-
.__P__-anchor{color-scheme:var(--__P__-color-scheme, light);right:16px;bottom:16px}.__P__-surface{display:contents}.__P__-surface[hidden]{display:none}:host([data-position="bottom-left"]) .__P__-anchor,:host([data-position="top-left"]) .__P__-anchor{right:auto;left:16px}:host([data-position="top-right"]) .__P__-anchor,:host([data-position="top-left"]) .__P__-anchor{bottom:auto;top:16px}.__P__-anchor{position:fixed;display:flex;flex-direction:column;align-items:flex-end;gap:var(--__P__-space-3);pointer-events:none}.__P__-anchor{--__P__-fab-size: 56px}.__P__-anchor[data-launcher-size=sm]{--__P__-fab-size: 44px}.__P__-anchor[data-launcher-size=md]{--__P__-fab-size: 56px}.__P__-anchor[data-launcher-size=lg]{--__P__-fab-size: 68px}.__P__-anchor>*{pointer-events:auto}.__P__-fab[data-size=sm]{--__P__-fab-size: 44px;font-size:var(--__P__-text-sm)}.__P__-fab[data-size=md]{--__P__-fab-size: 56px;font-size:calc(14px * var(--__P__-text-scale))}.__P__-fab[data-size=lg]{--__P__-fab-size: 68px;font-size:var(--__P__-text-base)}.__P__-fab{display:inline-flex;align-items:center;justify-content:center;gap:var(--__P__-space-2);color:var(--__P__-accent-text);background:var(--__P__-accent);box-shadow:var(--__P__-shadow-fab);font-weight:600;line-height:1;transform-origin:bottom right;animation:__P__-fab-in var(--__P__-dur-base) var(--__P__-ease) both;transition:transform var(--__P__-dur-base) var(--__P__-ease),opacity var(--__P__-dur-base) var(--__P__-ease),box-shadow var(--__P__-dur-base) var(--__P__-ease)}.__P__-fab:hover{transform:translateY(-2px)}.__P__-fab:active{transform:translateY(0)}.__P__-fab:focus-visible{outline:2px solid var(--__P__-on-accent);outline-offset:3px}.__P__-fab svg{width:24px;height:24px;flex-shrink:0}@keyframes __P__-fab-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}.__P__-fab[data-leaving]{position:absolute;right:0;bottom:0;animation:__P__-fab-out var(--__P__-dur-quick) var(--__P__-ease) forwards;pointer-events:none}:host([data-position^="top-"]) .__P__-fab[data-leaving]{bottom:auto;top:0}:host([data-position$="-left"]) .__P__-fab[data-leaving]{right:auto;left:0}@keyframes __P__-fab-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.85)}}.__P__-fab[data-variant=circle]{width:var(--__P__-fab-size);height:var(--__P__-fab-size);border-radius:999px}.__P__-fab[data-variant=circle] .__P__-fab-label{display:none}.__P__-fab[data-variant=pill]{height:var(--__P__-fab-size);padding:0 18px 0 16px;border-radius:999px}.__P__-fab[data-variant=bar]{height:var(--__P__-fab-size);padding:0 22px;border-radius:var(--__P__-radius)}.__P__-fab[data-variant=minimal]{height:var(--__P__-fab-size);padding:0 var(--__P__-space-4);border-radius:999px;background:transparent;color:var(--__P__-accent-fg);box-shadow:none;border:1px solid currentColor}.__P__-fab[data-variant=minimal]:hover{background:color-mix(in srgb,var(--__P__-accent) 12%,transparent)}.__P__-callout{--__P__-callout-fab-h: var(--__P__-fab-size, 56px);--__P__-callout-gap: clamp(12px, calc(var(--__P__-callout-fab-h) * .25), 22px);--__P__-callout-nudge-direction: -1;position:absolute;display:inline-flex;align-items:center;gap:var(--__P__-space-2);padding:10px 14px;background:var(--__P__-fg);color:var(--__P__-bg);border-radius:999px;font-size:var(--__P__-text-sm);font-weight:600;line-height:1.2;box-shadow:0 10px 30px -8px #00000059;pointer-events:auto;animation:__P__-callout-in var(--__P__-dur-slow) var(--__P__-ease);z-index:1;max-width:240px;white-space:nowrap}.__P__-callout[data-position=left]{right:calc(100% + var(--__P__-callout-gap));bottom:calc(var(--__P__-callout-fab-h) / 2);transform:translateY(50%)}.__P__-callout[data-position=right]{left:calc(100% + var(--__P__-callout-gap));bottom:calc(var(--__P__-callout-fab-h) / 2);transform:translateY(50%);--__P__-callout-nudge-direction: 1}.__P__-callout[data-position=top]{bottom:calc(100% + var(--__P__-callout-gap));right:0;max-width:min(280px,calc(100vw - 32px))}.__P__-callout[data-position=bottom]{top:calc(100% + var(--__P__-callout-gap));right:0;max-width:min(280px,calc(100vw - 32px))}:host([data-position$="-left"]) .__P__-callout[data-position=top],:host([data-position$="-left"]) .__P__-callout[data-position=bottom]{right:auto;left:0}.__P__-callout[data-shape=bubble]{border-radius:var(--__P__-radius-md);white-space:normal;width:max-content;max-width:min(280px,calc(100vw - 32px))}.__P__-callout[data-shape=callout]{padding:12px 18px;font-size:calc(14px * var(--__P__-text-scale));background:var(--__P__-accent);color:var(--__P__-accent-text)}.__P__-callout:after{content:"";position:absolute;width:12px;height:12px;background:inherit;border-radius:2px;transform:rotate(45deg)}.__P__-callout[data-position=left]:after{right:-5px;top:50%;margin-top:-6px}.__P__-callout[data-position=right]:after{left:-5px;top:50%;margin-top:-6px}.__P__-callout[data-position=top]:after{bottom:-5px;right:calc(var(--__P__-fab-size, 56px) / 2 - 6px)}.__P__-callout[data-position=bottom]:after{top:-5px;right:calc(var(--__P__-fab-size, 56px) / 2 - 6px)}:host([data-position$="-left"]) .__P__-callout[data-position=top]:after,:host([data-position$="-left"]) .__P__-callout[data-position=bottom]:after{right:auto;left:calc(var(--__P__-fab-size, 56px) / 2 - 6px)}.__P__-callout[data-animated]{animation:__P__-callout-in var(--__P__-dur-slow) var(--__P__-ease),__P__-callout-nudge 1.6s var(--__P__-ease-in-out) var(--__P__-dur-slow) infinite}@keyframes __P__-callout-in{0%{opacity:0}to{opacity:1}}@keyframes __P__-callout-nudge{0%,to{margin-left:0;margin-right:0}50%{margin-left:calc(6px * var(--__P__-callout-nudge-direction));margin-right:calc(-6px * var(--__P__-callout-nudge-direction))}}@media(prefers-reduced-motion:reduce){.__P__-callout[data-animated]{animation:__P__-callout-in 1ms var(--__P__-ease)}.__P__-icon-btn[data-recording=true],.__P__-typing span{animation:none}}.__P__-callout-close{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;color:inherit;opacity:.7;cursor:pointer}.__P__-callout-close:hover{opacity:1;background:color-mix(in srgb,currentColor 15%,transparent)}.__P__-callout-close:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-callout-close svg{width:12px;height:12px}.__P__-panel{width:var(--__P__-panel-w);height:var(--__P__-panel-h);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);background:var(--__P__-bg);color:var(--__P__-fg);border-radius:var(--__P__-radius-lg);box-shadow:var(--__P__-shadow-panel);display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:none;transform-origin:bottom right;animation:__P__-panel-in var(--__P__-dur-slow) var(--__P__-ease);border:1px solid var(--__P__-border)}@media(prefers-reduced-motion:no-preference){.__P__-panel{transition:width var(--__P__-dur-base) var(--__P__-ease),height var(--__P__-dur-base) var(--__P__-ease),max-width var(--__P__-dur-base) var(--__P__-ease),max-height var(--__P__-dur-base) var(--__P__-ease)}.__P__-panel[data-resizing]{transition:none}}:host([data-mode="open"]) .__P__-panel{width:var(--__P__-widget-w, var(--__P__-panel-w));height:var(--__P__-widget-h, var(--__P__-panel-h));min-width:var(--__P__-resize-min-w, auto);min-height:var(--__P__-resize-min-h, auto);max-width:var(--__P__-resize-max-w, calc(100vw - 32px) );max-height:var(--__P__-resize-max-h, calc(100dvh - 32px) )}@keyframes __P__-panel-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}:host([data-mode="expanded"]) .__P__-panel{width:var(--__P__-expanded-w, 640px);height:var(--__P__-expanded-h, 820px);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}:host([data-mode="fullscreen"]){z-index:var(--__P__-z-panel)!important}:host([data-mode="fullscreen"]) .__P__-anchor{inset:var(--__P__-visual-viewport-top, 0px) 0 auto;height:var(--__P__-visual-viewport-height, 100dvh);padding:0;justify-content:flex-end;align-items:flex-end}:host([data-mode="fullscreen"][data-position*="top"]) .__P__-anchor{justify-content:flex-start}:host([data-mode="fullscreen"][data-position*="left"]) .__P__-anchor{align-items:flex-start}:host([data-mode="fullscreen"]) .__P__-panel{width:100vw;height:100%;max-width:none;max-height:none;border-radius:0;border:0}:host([data-mode="fullscreen"]) .__P__-fab{display:none}@media(max-width:640px){:host([data-mode="open"]) .__P__-anchor,:host([data-mode="expanded"]) .__P__-anchor{inset:var(--__P__-visual-viewport-top, 0px) 0 auto;align-items:stretch;height:var(--__P__-visual-viewport-height, 100dvh);padding:0}:host([data-mode="open"]) .__P__-panel,:host([data-mode="expanded"]) .__P__-panel{width:100vw;height:100%;max-width:none;max-height:none;border-radius:0;border:0}}:host([data-mode="inline"]) .__P__-anchor,:host([data-mode="standalone"]) .__P__-anchor{position:static;inset:auto;padding:0;align-items:stretch;width:100%;height:100%;min-height:0}:host([data-mode="inline"]) .__P__-panel,:host([data-mode="standalone"]) .__P__-panel{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;animation:none}:host([data-mode="inline"]) .__P__-fab,:host([data-mode="standalone"]) .__P__-fab{display:none}:host([data-mode="inline"]){min-height:320px}:host([data-mode="inline"]) .__P__-panel{border-radius:var(--__P__-radius)}:host([data-mode="standalone"]) .__P__-panel{border-radius:0;border:0;box-shadow:none}:host([data-mode="modal"]){position:fixed!important;inset:0!important;z-index:var(--__P__-z-panel)!important;display:block!important;width:100vw;height:100dvh;background:var(--__P__-modal-backdrop, var(--__P__-backdrop));animation:__P__-backdrop-in var(--__P__-dur-base) var(--__P__-ease) both;--__P__-panel-w: min(960px, 92vw);--__P__-panel-h: min(720px, 88dvh)}:host([data-mode="modal"]) .__P__-anchor{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--__P__-space-6);pointer-events:none}:host([data-mode="modal"]) .__P__-panel{pointer-events:auto;width:var(--__P__-widget-w, var(--__P__-panel-w));height:var(--__P__-widget-h, var(--__P__-panel-h));max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);min-width:0;min-height:0;border-radius:var(--__P__-radius);box-shadow:var(--__P__-shadow-panel);animation:__P__-modal-in var(--__P__-dur-base) var(--__P__-ease);translate:var(--__P__-modal-dx, 0px) var(--__P__-modal-dy, 0px)}:host([data-mode="modal"]) .__P__-header,:host([data-mode="modal"]) .__P__-back-header,:host([data-mode="modal"]) .__P__-home-hero{cursor:grab;touch-action:none}:host([data-mode="modal"]) .__P__-panel[data-dragging]{cursor:grabbing;user-select:none}:host([data-mode="modal"]) .__P__-panel[data-dragging] *{cursor:grabbing}:host([data-mode="modal"]) .__P__-fab{display:none}@keyframes __P__-backdrop-in{0%{background:#0000}to{background:var(--__P__-modal-backdrop, var(--__P__-backdrop))}}@keyframes __P__-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}:host([data-mode="drawer"]){--__P__-panel-w: min(440px, calc(100vw - 32px) );--__P__-panel-h: 100dvh}:host([data-mode="drawer"]) .__P__-anchor{position:fixed;--__P__-inset-x: var(--__P__-panel-inset, 12px);--__P__-inset-y: var(--__P__-panel-inset, 3dvh);top:var(--__P__-inset-y);bottom:auto;right:var(--__P__-inset-x);left:auto;width:min(var(--__P__-widget-w, var(--__P__-panel-w)),calc(100vw - var(--__P__-inset-x) * 2));height:min(var(--__P__-widget-h, var(--__P__-panel-h)),calc(100dvh - var(--__P__-inset-y) * 2));padding:0;display:block;pointer-events:auto}:host([data-mode="drawer"][data-position$="-left"]) .__P__-anchor{right:auto;left:var(--__P__-inset-x)}:host([data-mode="drawer"][data-position^="bottom-"]) .__P__-anchor{top:auto;bottom:var(--__P__-inset-y)}:host([data-mode="drawer"]) .__P__-panel{width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0;border-radius:var(--__P__-radius, 12px);border:1px solid var(--__P__-border);box-shadow:-8px 16px 32px -12px #00000038;animation:__P__-drawer-in var(--__P__-dur-base) var(--__P__-ease)}:host([data-mode="drawer"][data-position$="-left"]) .__P__-panel{box-shadow:8px 16px 32px -12px #00000038;animation:__P__-drawer-in-left var(--__P__-dur-base) var(--__P__-ease)}.__P__-fab[data-edge-tab]{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--__P__-space-2);position:fixed;top:50%;height:140px;width:auto;min-width:0;padding:10px 8px;writing-mode:vertical-rl;text-orientation:mixed;transform:translateY(-50%);transform-origin:center;animation:__P__-edge-tab-in var(--__P__-dur-base) var(--__P__-ease) both}.__P__-fab[data-edge-tab] svg{writing-mode:horizontal-tb}.__P__-fab[data-edge-tab]:hover{transform:translateY(-50%) scale(1.03)}.__P__-fab[data-edge-tab]:active{transform:translateY(-50%) scale(.97)}:host([data-position$="-right"]) .__P__-fab[data-edge-tab]{right:0;left:auto;border-radius:12px 0 0 12px;box-shadow:-6px 0 18px -8px #0000004d}:host([data-position$="-left"]) .__P__-fab[data-edge-tab]{left:0;right:auto;border-radius:0 12px 12px 0;box-shadow:6px 0 18px -8px #0000004d}.__P__-fab[data-edge-tab][data-leaving]{position:fixed;top:50%;bottom:auto;animation:__P__-edge-tab-out var(--__P__-dur-quick) var(--__P__-ease) forwards}@keyframes __P__-edge-tab-in{0%{opacity:0;transform:translateY(-50%) scale(.9)}to{opacity:1;transform:translateY(-50%) scale(1)}}@keyframes __P__-edge-tab-out{0%{opacity:1;transform:translateY(-50%) scale(1)}to{opacity:0;transform:translateY(-50%) scale(.85)}}@keyframes __P__-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes __P__-drawer-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){:host([data-mode="drawer"]) .__P__-panel,.__P__-fab[data-edge-tab]{animation:none}}.__P__-header{display:flex;align-items:center;gap:var(--__P__-space-2);padding:10px 12px;border-bottom:1px solid var(--__P__-border);background:var(--__P__-bg)}.__P__-header h1{font-size:calc(14px * var(--__P__-text-scale));font-weight:600;flex:1;letter-spacing:-.01em}.__P__-header-actions{margin-inline-start:auto;display:flex;align-items:center;gap:var(--__P__-space-1);flex-shrink:0}.__P__-agent{flex:1;display:inline-flex;align-items:center;gap:10px;min-width:0}.__P__-agent-avatar{position:relative;width:32px;height:32px;border-radius:var(--__P__-radius-md);background:var(--__P__-bg-elevated);color:var(--__P__-fg-muted);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--__P__-text-xs);flex-shrink:0}.__P__-agent-avatar img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.__P__-agent-avatar:after{content:"";position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:999px;border:2px solid var(--__P__-bg);background:var(--__P__-neutral)}.__P__-agent-avatar[data-status=online]:after{background:var(--__P__-success)}.__P__-agent-avatar[data-status=away]:after{background:var(--__P__-warning)}.__P__-agent-avatar[data-status=offline]:after{background:var(--__P__-neutral)}.__P__-agent-meta{display:flex;flex-direction:column;line-height:1.15;min-width:0}.__P__-agent-meta strong{font-size:calc(14px * var(--__P__-text-scale));font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-agent-meta span{font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-suggestions{display:flex;flex-wrap:nowrap;gap:var(--__P__-space-2);padding:6px 14px 10px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;min-width:0}.__P__-suggestions::-webkit-scrollbar{display:none}.__P__-suggestions:before,.__P__-suggestions:after{content:"";flex:1 1 0;min-width:0}.__P__-suggestion{flex:0 0 auto;scroll-snap-align:center;padding:7px 14px;border-radius:999px;background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);color:var(--__P__-fg);font-size:var(--__P__-text-sm);font-weight:500;white-space:nowrap;transition:background var(--__P__-dur-quick) var(--__P__-ease),border-color var(--__P__-dur-quick) var(--__P__-ease),transform var(--__P__-dur-quick) var(--__P__-ease)}.__P__-suggestion:hover{border-color:var(--__P__-accent);color:var(--__P__-accent-fg);transform:translateY(-1px)}.__P__-suggestion:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px;border-color:var(--__P__-accent)}.__P__-suggestion:active{transform:translateY(0)}.__P__-icon-btn{width:32px;height:32px;border-radius:999px;position:relative;display:inline-flex;align-items:center;justify-content:center;color:var(--__P__-fg-muted);transition:background var(--__P__-dur-quick) var(--__P__-ease),color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-icon-btn:hover{background:var(--__P__-bg-elevated);color:var(--__P__-fg)}.__P__-icon-btn:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-icon-btn:active{background:var(--__P__-border)}.__P__-icon-btn:disabled{opacity:.45;cursor:not-allowed}.__P__-icon-btn:before{content:"";position:absolute;inset:-6px}.__P__-icon-btn svg{width:18px;height:18px}.__P__-icon-btn[data-recording=true]{color:var(--__P__-accent-fg);background:color-mix(in srgb,var(--__P__-accent) 12%,transparent);animation:__P__-pulse 1.2s var(--__P__-ease) infinite}@keyframes __P__-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--__P__-accent) 40%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--__P__-accent) 0%,transparent)}}.__P__-list,.__P__-history,.__P__-module-scroll,.__P__-home-scroll,.__P__-help-list,.__P__-toolui-code,.__P__-sidebar-conversations{scrollbar-width:thin;scrollbar-color:var(--__P__-border-strong) transparent;overscroll-behavior:contain;scrollbar-gutter:stable}.__P__-list::-webkit-scrollbar,.__P__-history::-webkit-scrollbar,.__P__-module-scroll::-webkit-scrollbar,.__P__-home-scroll::-webkit-scrollbar,.__P__-help-list::-webkit-scrollbar,.__P__-toolui-code::-webkit-scrollbar,.__P__-sidebar-conversations::-webkit-scrollbar{width:8px}.__P__-list::-webkit-scrollbar-thumb,.__P__-history::-webkit-scrollbar-thumb,.__P__-module-scroll::-webkit-scrollbar-thumb,.__P__-home-scroll::-webkit-scrollbar-thumb,.__P__-help-list::-webkit-scrollbar-thumb,.__P__-toolui-code::-webkit-scrollbar-thumb,.__P__-sidebar-conversations::-webkit-scrollbar-thumb{background:var(--__P__-border-strong);border-radius:8px}.__P__-list-wrap{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.__P__-jump{position:absolute;inset-inline-end:14px;bottom:14px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;border:1px solid var(--__P__-border);background:var(--__P__-bg-elevated);color:var(--__P__-fg);box-shadow:var(--__P__-shadow-panel);cursor:pointer;opacity:.85;transition:opacity var(--__P__-dur-quick) var(--__P__-ease),transform var(--__P__-dur-quick) var(--__P__-ease);animation:__P__-bubble-in var(--__P__-dur-base) var(--__P__-ease)}.__P__-jump:hover{opacity:1}.__P__-jump:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;opacity:1}.__P__-jump:active{transform:translateY(1px)}.__P__-jump svg{width:18px;height:18px}.__P__-list{flex:1;min-height:0;overflow-y:auto;padding:var(--__P__-space-4);padding-bottom:var(--__P__-space-8);display:flex;flex-direction:column;gap:14px}.__P__-list--fade{--__P__-fade-size: 20px;--__P__-fade-top: 0px;--__P__-fade-bottom: 0px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 var(--__P__-fade-top),#000 calc(100% - var(--__P__-fade-bottom)),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 var(--__P__-fade-top),#000 calc(100% - var(--__P__-fade-bottom)),transparent 100%)}.__P__-list--fade[data-fade-top=true]{--__P__-fade-top: var(--__P__-fade-size)}.__P__-list--fade[data-fade-bottom=true]{--__P__-fade-bottom: var(--__P__-fade-size)}.__P__-list>*{width:100%;max-width:var(--__P__-conversation-max, 768px);margin-inline:auto}.__P__-load-previous,.__P__-history-more{display:flex;justify-content:center}.__P__-load-previous button,.__P__-history-more button{border:0;padding:4px 8px;background:transparent;color:var(--__P__-accent);font:inherit;font-size:var(--__P__-text-sm);font-weight:600;cursor:pointer}.__P__-load-previous button:hover,.__P__-history-more button:hover{text-decoration:underline}.__P__-load-previous button:focus-visible,.__P__-history-more button:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;border-radius:var(--__P__-radius-sm)}.__P__-load-previous button:disabled,.__P__-history-more button:disabled{cursor:wait;opacity:.6}.__P__-date-divider{display:flex;justify-content:center;margin-block:var(--__P__-space-3)}.__P__-date-pill{padding:3px 10px;border-radius:999px;font-size:calc(11px * var(--__P__-text-scale));font-weight:600;color:var(--__P__-fg-muted);background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);box-shadow:var(--__P__-shadow-card)}.__P__-bubble-row{display:flex}.__P__-bubble-row[data-role=user]{justify-content:flex-end}.__P__-bubble-row[data-role=assistant]{justify-content:flex-start}.__P__-bubble{max-width:100%;min-width:0;padding:var(--__P__-space-3) var(--__P__-space-4);border-radius:var(--__P__-radius);line-height:1.6;font-size:calc(14px * var(--__P__-text-scale));word-wrap:break-word;overflow-wrap:break-word;box-shadow:0 1px 2px #0000000a,0 1px 8px -4px #0000000f;animation:__P__-bubble-in var(--__P__-dur-base) var(--__P__-ease)}.__P__-bubble ::selection{background:color-mix(in srgb,var(--__P__-accent) 30%,transparent)}.__P__-bubble-row[data-role=user] .__P__-bubble ::selection{background:#fff6;color:var(--__P__-bubble-user-text)}@keyframes __P__-bubble-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.__P__-bubble-row[data-role=user] .__P__-bubble{background:var(--__P__-bubble-user);color:var(--__P__-bubble-user-text);border-end-end-radius:5px}.__P__-bubble-row[data-role=assistant] .__P__-bubble{background:var(--__P__-bubble-assistant);color:var(--__P__-bubble-assistant-text);border:1px solid var(--__P__-border);border-end-start-radius:5px}.__P__-bubble-row[data-role=operator] .__P__-bubble{display:flex;align-items:stretch;padding:0;overflow:hidden;background:var(--__P__-bubble-assistant);color:var(--__P__-bubble-assistant-text);border-end-start-radius:5px}.__P__-bubble-row[data-role=operator] .__P__-bubble-col{align-items:flex-start}.__P__-bubble-author{display:flex;flex:0 0 auto;align-items:center;padding:0 .875rem;border-inline-end:1px solid color-mix(in oklab,var(--__P__-accent),transparent 60%);color:var(--__P__-accent);font-size:calc(13px * var(--__P__-text-scale));font-weight:600;letter-spacing:.025em;user-select:none}.__P__-bubble-row[data-role=operator] .__P__-bubble-body{flex:1 1 auto;min-width:0;padding:var(--__P__-space-3) var(--__P__-space-4)}.__P__-bubble-col{display:flex;flex-direction:column;max-width:85%;min-width:0}.__P__-bubble-row[data-role=user] .__P__-bubble-col{align-items:flex-end}.__P__-bubble-row[data-role=assistant] .__P__-bubble-col{align-items:flex-start}.__P__-bubble-row[data-role=assistant] .__P__-bubble-col:has(.__P__-toolui){width:100%}.__P__-bubble-row[data-role=assistant] .__P__-bubble-col:has(.__P__-toolui) .__P__-bubble{width:100%}@media(max-width:640px){.__P__-bubble-col{max-width:92%}.__P__-toolui:not(.__P__-toolui-collapsible){padding:var(--__P__-space-3);gap:var(--__P__-space-2)}details.__P__-toolui-collapsible>summary{padding:var(--__P__-space-2) var(--__P__-space-3)}details.__P__-toolui-collapsible>.__P__-toolui-section{margin:var(--__P__-space-3)}.__P__-toolui-section,.__P__-toolui-desc{padding:var(--__P__-space-2) var(--__P__-space-3)}}.__P__-bubble-meta{display:flex;align-items:center;gap:8px;margin-top:2px;padding:0 2px;min-height:24px}.__P__-bubble-actions{display:flex;align-items:center;gap:2px}.__P__-bubble-time{font-size:calc(11px * var(--__P__-text-scale));line-height:1;color:var(--__P__-fg-muted);user-select:none}.__P__-feedback{display:flex;align-items:center;gap:2px}.__P__-msg-action{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:var(--__P__-radius-sm);background:transparent;color:var(--__P__-fg-muted);cursor:pointer;opacity:.65;transition:opacity var(--__P__-dur-quick) var(--__P__-ease),background var(--__P__-dur-quick) var(--__P__-ease),color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-msg-action:hover{opacity:1;background:var(--__P__-bg-elevated);color:var(--__P__-fg)}.__P__-msg-action:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;opacity:1}.__P__-msg-action[data-active=true]{opacity:1;color:var(--__P__-accent-fg)}.__P__-msg-action svg{width:15px;height:15px}.__P__-md>*:first-child{margin-top:0}.__P__-md>*:last-child{margin-bottom:0}.__P__-md p{margin:10px 0}.__P__-md h1,.__P__-md h2,.__P__-md h3,.__P__-md h4,.__P__-md h5,.__P__-md h6{margin:18px 0 8px;line-height:1.3;letter-spacing:-.01em;font-weight:700}.__P__-md h1{font-size:1.4em}.__P__-md h2{font-size:1.22em}.__P__-md h3{font-size:1.08em}.__P__-md h4,.__P__-md h5,.__P__-md h6{font-size:1em}.__P__-md>h1:first-child,.__P__-md>h2:first-child,.__P__-md>h3:first-child,.__P__-md>h4:first-child,.__P__-md>h5:first-child,.__P__-md>h6:first-child{margin-top:0}.__P__-md ul,.__P__-md ol{padding-inline-start:1.5em;margin:10px 0}.__P__-md ul{list-style:disc}.__P__-md ol{list-style:decimal}.__P__-md li{margin:6px 0;padding-inline-start:2px}.__P__-md li::marker{color:var(--__P__-fg-muted)}.__P__-md li>p{margin:6px 0}.__P__-md li>ul,.__P__-md li>ol{margin:6px 0}.__P__-md strong,.__P__-md b{font-weight:650;letter-spacing:-.005em}.__P__-md em,.__P__-md i{font-style:italic}.__P__-md code{font-family:var(--__P__-font-mono);font-size:.86em;padding:1px 6px;border-radius:5px;background:color-mix(in srgb,var(--__P__-accent) 10%,transparent);color:var(--__P__-fg);border:1px solid color-mix(in srgb,var(--__P__-accent) 16%,transparent)}.__P__-md pre{font-family:var(--__P__-font-mono);font-size:calc(12.5px * var(--__P__-text-scale));padding:12px 14px;border-radius:var(--__P__-radius-sm);background:#7f7f7f1f;overflow-x:auto;margin:var(--__P__-space-3) 0;line-height:1.5}.__P__-md pre code{padding:0;background:none}.__P__-file-image,.__P__-file-chip{margin-block:var(--__P__-space-1);border-radius:var(--__P__-radius-sm);color:inherit;text-decoration:none}.__P__-file-image{display:block;width:fit-content;max-width:min(100%,240px);overflow:hidden}.__P__-file-image img{max-height:240px;object-fit:cover}.__P__-file-chip{display:flex;align-items:center;gap:var(--__P__-space-2);max-width:min(100%,280px);padding:var(--__P__-space-2);border:1px solid color-mix(in srgb,currentColor 18%,transparent);background:color-mix(in srgb,currentColor 5%,transparent);transition:background var(--__P__-dur-base) var(--__P__-ease)}.__P__-file-chip:hover{background:color-mix(in srgb,currentColor 10%,transparent)}.__P__-file-image:focus-visible,.__P__-file-chip:focus-visible{outline:2px solid currentColor;outline-offset:2px}.__P__-file-chip-icon{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:var(--__P__-radius-sm);background:color-mix(in srgb,currentColor 10%,transparent)}.__P__-file-chip-text{display:grid;min-width:0;line-height:1.35}.__P__-file-chip-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.__P__-file-chip-meta{font-size:var(--__P__-text-xs);opacity:.75}.__P__-md a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.__P__-md a:hover{text-decoration-thickness:2px}.__P__-md blockquote{margin:14px 0;padding:6px 14px;border-inline-start:3px solid color-mix(in srgb,var(--__P__-accent) 50%,transparent);background:color-mix(in srgb,var(--__P__-accent) 5%,transparent);border-start-end-radius:var(--__P__-radius-sm);border-end-end-radius:var(--__P__-radius-sm);color:var(--__P__-fg-muted)}.__P__-md blockquote>:first-child{margin-top:0}.__P__-md blockquote>:last-child{margin-bottom:0}.__P__-md hr{border:0;height:1px;background:color-mix(in srgb,currentColor 18%,transparent);margin:var(--__P__-space-4) 0}.__P__-md table{border-collapse:collapse;margin:var(--__P__-space-3) 0;font-size:.95em;display:block;overflow-x:auto;max-width:100%;font-variant-numeric:tabular-nums}.__P__-md th,.__P__-md td{padding:6px 10px;border-bottom:1px solid color-mix(in srgb,currentColor 12%,transparent);text-align:start}.__P__-md th{font-weight:700;background:color-mix(in srgb,currentColor 6%,transparent)}.__P__-md h1+ul,.__P__-md h1+ol,.__P__-md h2+ul,.__P__-md h2+ol,.__P__-md h3+ul,.__P__-md h3+ol,.__P__-md h4+ul,.__P__-md h4+ol{margin-top:var(--__P__-space-1)}.__P__-loading{display:inline-flex;align-items:center;gap:var(--__P__-space-2);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-loading-spinner{width:14px;height:14px;border-radius:999px;border:2px solid currentColor;border-top-color:transparent;animation:__P__-spin .8s linear infinite}@keyframes __P__-spin{to{transform:rotate(1turn)}}.__P__-typing{display:inline-flex;gap:var(--__P__-space-1);padding:var(--__P__-space-1) 0}.__P__-typing span{width:5px;height:5px;border-radius:999px;background:currentColor;opacity:.4;animation:__P__-blink 1.2s var(--__P__-ease) infinite}.__P__-typing span:nth-child(2){animation-delay:.2s}.__P__-typing span:nth-child(3){animation-delay:.4s}@keyframes __P__-blink{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.__P__-steps{margin:var(--__P__-space-1) 0 var(--__P__-space-2);font-size:var(--__P__-text-sm)}.__P__-steps-head,.__P__-steps-row-head{display:flex;align-items:center;gap:var(--__P__-space-2);width:100%;min-width:0;padding:var(--__P__-space-1) 0;border:0;background:none;color:var(--__P__-fg-muted);font:inherit;text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent}.__P__-steps-head:hover,.__P__-steps-row-head:hover{color:var(--__P__-fg)}.__P__-steps-head:focus-visible,.__P__-steps-row-head:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;border-radius:var(--__P__-radius-sm)}.__P__-steps-icon,.__P__-steps-row-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:16px;height:16px}.__P__-steps-icon svg,.__P__-steps-row-icon svg{width:14px;height:14px}.__P__-steps-label{display:flex;flex:1;align-items:center;gap:var(--__P__-space-1);min-width:0;overflow:hidden;white-space:nowrap}.__P__-steps-name{display:inline-flex;align-items:center;gap:var(--__P__-space-1);min-width:0}.__P__-steps-name-text,.__P__-steps-row-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-steps-count,.__P__-steps-failed{flex-shrink:0;font-variant-numeric:tabular-nums}.__P__-steps-failed{color:var(--__P__-danger-text)}.__P__-steps-head .__P__-toolui-chevron[data-open=true]{transform:rotate(180deg)}.__P__-steps-list{display:flex;flex-direction:column;gap:var(--__P__-space-1);margin:var(--__P__-space-1) 0 0;padding:0;padding-inline-start:var(--__P__-space-2);border-inline-start:2px solid var(--__P__-border);list-style:none}.__P__-steps-row[data-status=error] .__P__-steps-row-icon{color:var(--__P__-danger-text)}.__P__-steps-row-name{flex-shrink:0;color:var(--__P__-fg);font-weight:500}.__P__-steps-row-body{display:flex;flex-direction:column;gap:var(--__P__-space-2);margin:var(--__P__-space-1) 0 var(--__P__-space-2)}.__P__-reasoning{margin:var(--__P__-space-1) 0 var(--__P__-space-2);padding-inline-start:var(--__P__-space-3);border-inline-start:2px solid var(--__P__-border-strong)}.__P__-reasoning-summary{display:inline-flex;align-items:center;gap:var(--__P__-space-1);cursor:pointer;list-style:none;user-select:none;color:var(--__P__-fg-muted);font-size:var(--__P__-text-xs);font-weight:600}.__P__-reasoning-summary:hover{color:var(--__P__-fg)}.__P__-reasoning-summary:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;border-radius:var(--__P__-radius-sm)}.__P__-reasoning-summary::-webkit-details-marker{display:none}.__P__-reasoning-summary:before{content:"";width:5px;height:5px;border-inline-end:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);opacity:.7;transition:transform var(--__P__-dur-quick) var(--__P__-ease)}.__P__-reasoning[open] .__P__-reasoning-summary:before{transform:rotate(45deg)}.__P__-reasoning[data-active=true] .__P__-reasoning-label{animation:__P__-reasoning-pulse 1.4s var(--__P__-ease) infinite}@keyframes __P__-reasoning-pulse{0%,to{opacity:.5}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.__P__-reasoning[data-active=true] .__P__-reasoning-label{animation:none}}.__P__-reasoning-body{margin-top:var(--__P__-space-1);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-reasoning-body>:first-child{margin-top:0}.__P__-reasoning-body>:last-child{margin-bottom:0}.__P__-source{display:inline-flex;align-items:center;gap:6px;max-width:100%;margin-top:6px;margin-inline-end:6px;padding:var(--__P__-space-1) var(--__P__-space-2);border-radius:999px;background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);color:var(--__P__-fg-muted);font-size:var(--__P__-text-xs);text-decoration:none}a.__P__-source:hover{color:var(--__P__-fg);border-color:var(--__P__-accent)}.__P__-source-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-composer{border-top:1px solid var(--__P__-border);padding:10px 12px;background:var(--__P__-bg);display:flex;flex-direction:column;gap:var(--__P__-space-2)}.__P__-composer>*{width:100%;max-width:var(--__P__-conversation-max, 768px);margin-inline:auto}.__P__-compaction-status{width:100%;padding:10px 14px;justify-content:center;font-size:var(--__P__-text-xs)}.__P__-message-queue{display:flex;max-height:112px;flex-direction:column;gap:var(--__P__-space-1);overflow-y:auto}.__P__-attachment-chip.__P__-queued-message{width:100%;max-width:none}.__P__-queued-text{min-width:0;flex:1}.__P__-composer-row{display:flex;align-items:flex-end;gap:6px}.__P__-textarea{flex:1;--__P__-textarea-base-height: 40px;height:var(--__P__-textarea-base-height);max-height:160px;padding:10px 12px;border-radius:var(--__P__-radius);background:var(--__P__-bg-elevated);border:1px solid transparent;font-size:calc(14px * var(--__P__-text-scale));line-height:1.4;transition:height var(--__P__-dur-quick) var(--__P__-ease),border-color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-textarea:focus-visible{outline:none;border-color:var(--__P__-focus)}@media(pointer:coarse){.__P__-textarea{--__P__-textarea-base-height: 44px}}.__P__-send{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;transition:opacity var(--__P__-dur-quick) var(--__P__-ease),transform var(--__P__-dur-quick) var(--__P__-ease),background var(--__P__-dur-quick) var(--__P__-ease)}.__P__-send[data-shape=circle]{border-radius:999px}.__P__-send[data-shape=square]{border-radius:var(--__P__-radius-sm)}.__P__-send[data-shape=pill]{width:auto;padding:0 18px;border-radius:999px}.__P__-send[data-variant=filled]{background:var(--__P__-accent);color:var(--__P__-accent-text)}.__P__-send[data-variant=outline]{background:transparent;color:var(--__P__-accent-fg);border-color:var(--__P__-accent)}.__P__-send[data-variant=outline]:not(:disabled):hover{background:color-mix(in srgb,var(--__P__-accent) 10%,transparent)}.__P__-send[data-variant=ghost]{background:transparent;color:var(--__P__-accent-fg)}.__P__-send[data-variant=ghost]:not(:disabled):hover{background:color-mix(in srgb,var(--__P__-accent) 8%,transparent)}.__P__-send:disabled{opacity:.4;cursor:not-allowed}.__P__-send:not(:disabled):hover{transform:translateY(-1px)}.__P__-send:not(:disabled):active{transform:translateY(0)}.__P__-send:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-send svg{width:18px;height:18px}.__P__-composer-actions{display:flex;gap:var(--__P__-space-1);flex-wrap:wrap}.__P__-attachments{display:flex;flex-wrap:wrap;gap:6px}.__P__-attachment-chip{display:inline-flex;align-items:center;gap:6px;padding:var(--__P__-space-1) var(--__P__-space-2) var(--__P__-space-1) var(--__P__-space-1);border-radius:999px;background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);font-size:var(--__P__-text-xs);max-width:200px}.__P__-attachment-thumb{width:24px;height:24px;border-radius:999px;object-fit:cover;background:var(--__P__-border)}.__P__-attachment-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.__P__-attachment-remove{width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--__P__-fg-muted)}.__P__-attachment-remove:hover{background:var(--__P__-border);color:var(--__P__-fg)}.__P__-dropzone{position:absolute;inset:8px;border:2px dashed var(--__P__-accent);border-radius:var(--__P__-radius);background:color-mix(in srgb,var(--__P__-accent) 8%,transparent);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--__P__-accent-fg);pointer-events:none;z-index:10;animation:__P__-fade-in var(--__P__-dur-quick) var(--__P__-ease)}@keyframes __P__-fade-in{0%{opacity:0}to{opacity:1}}.__P__-error{margin-top:var(--__P__-space-1);padding:8px 12px;border-radius:var(--__P__-radius-sm);background:color-mix(in oklab,var(--__P__-danger) 8%,var(--__P__-bg-elevated));border:1px solid color-mix(in oklab,var(--__P__-danger) 20%,transparent);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);display:flex;align-items:center;gap:var(--__P__-space-2)}.__P__-error span{min-width:0}.__P__-error button{margin-inline-start:auto;flex-shrink:0;border:0;background:none;padding:0;color:var(--__P__-accent-fg);font:inherit;font-size:var(--__P__-text-sm);font-weight:600;text-decoration:underline;white-space:nowrap;cursor:pointer}.__P__-history{flex:1;overflow-y:auto;padding:var(--__P__-space-2) var(--__P__-space-1) var(--__P__-space-3)}.__P__-history-footer{flex:none;padding:var(--__P__-space-2) var(--__P__-space-3) var(--__P__-space-3);border-top:1px solid var(--__P__-border);background:var(--__P__-surface)}.__P__-history-new{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--__P__-space-2);padding:var(--__P__-space-2) var(--__P__-space-3);border:none;border-radius:var(--__P__-radius-md);background:var(--__P__-accent);color:var(--__P__-on-accent);cursor:pointer;font-size:var(--__P__-text-sm);font-weight:600;transition:filter var(--__P__-dur-quick) var(--__P__-ease-out),transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-history-new svg{width:16px;height:16px}.__P__-history-new:hover{filter:brightness(1.08)}.__P__-history-new:active{transform:translateY(1px)}.__P__-history-new:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-history-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 16px;color:var(--__P__-fg-muted);font-size:calc(14px * var(--__P__-text-scale));text-align:center}.__P__-history-group{display:flex;flex-direction:column;padding:0 var(--__P__-space-3)}.__P__-history-heading{font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted);padding:14px 4px 8px;text-transform:uppercase;letter-spacing:.04em}.__P__-history-card{display:flex;flex-direction:column;background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-lg, 14px);overflow:hidden}.__P__-history-card>[role=listitem]{display:flex;flex-direction:column}.__P__-history-item{all:unset;display:flex;align-items:center;gap:var(--__P__-space-3);padding:12px var(--__P__-space-3);cursor:pointer;transition:background var(--__P__-dur-base) var(--__P__-ease)}.__P__-history-card>*+*{border-top:1px solid var(--__P__-border)}.__P__-history-item:hover{background:var(--__P__-bg-elevated)}.__P__-history-item:focus-visible{background:var(--__P__-bg-elevated);outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-history-avatar{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:var(--__P__-radius-md);background:color-mix(in oklab,var(--__P__-accent) 12%,transparent);color:var(--__P__-accent-fg)}.__P__-history-avatar svg{width:18px;height:18px}.__P__-history-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.__P__-history-row{display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-2)}.__P__-history-title{flex:1;min-width:0;font-size:calc(14px * var(--__P__-text-scale));font-weight:500;color:var(--__P__-fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-history-time{flex:none;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted)}.__P__-history-preview{flex:1;min-width:0;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-history-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--__P__-accent)}.__P__-history-item[data-unread=true] .__P__-history-title{font-weight:600}.__P__-history-item[data-closed=true] .__P__-history-title{color:var(--__P__-fg-muted)}.__P__-history-item-skeleton{cursor:default;pointer-events:none}.__P__-skeleton{display:block;border-radius:4px;background:linear-gradient(90deg,color-mix(in oklab,var(--__P__-fg) 9%,transparent) 30%,color-mix(in oklab,var(--__P__-fg) 17%,transparent),color-mix(in oklab,var(--__P__-fg) 9%,transparent) 70%);background-size:200% 100%;animation:__P__-skeleton-shimmer 1.8s ease-in-out infinite}.__P__-history-avatar.__P__-skeleton{border-radius:var(--__P__-radius-md)}.__P__-skeleton-heading{width:52px;height:8px}.__P__-skeleton-title{width:55%;height:12px}.__P__-skeleton-time{width:34px;height:10px}.__P__-skeleton-preview{width:80%;height:10px}@keyframes __P__-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.__P__-skeleton{animation:none}}.__P__-list-loading{margin:auto;padding:var(--__P__-space-6) var(--__P__-space-4);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);text-align:center}.__P__-readonly-banner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 12px;margin:0 var(--__P__-space-3) var(--__P__-space-3);border-radius:var(--__P__-radius-md);background:var(--__P__-bg-elevated);color:var(--__P__-fg-muted);text-align:center;font-size:var(--__P__-text-sm)}.__P__-readonly-label{line-height:1.4}.__P__-readonly-cta{appearance:none;border:0;cursor:pointer;padding:var(--__P__-space-2) var(--__P__-space-4);border-radius:999px;background:var(--__P__-accent);color:var(--__P__-accent-text, #fff);font:inherit;font-weight:600;font-size:var(--__P__-text-sm);transition:filter var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-readonly-cta:hover,.__P__-readonly-cta:focus-visible{filter:brightness(1.1)}.__P__-operator-banner{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 var(--__P__-space-3) var(--__P__-space-1);padding:8px 12px;border-radius:var(--__P__-radius-md);background:color-mix(in oklab,var(--__P__-bg-elevated),var(--__P__-accent) 6%);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);line-height:1.3;text-align:center}.__P__-operator-pulse{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--__P__-accent)}.__P__-operator-banner[data-mode=awaiting-operator] .__P__-operator-pulse{animation:__P__-operator-pulse 1.4s var(--__P__-ease-out) infinite}.__P__-cancel-operator-request{flex:0 0 auto;padding:0;border:0;background:none;color:var(--__P__-accent);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.__P__-cancel-operator-request:hover{opacity:.8}.__P__-cancel-operator-request:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px;border-radius:var(--__P__-radius-sm)}@keyframes __P__-operator-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.__P__-readonly-cta:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px}.__P__-composer-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 16px;margin:0 var(--__P__-space-3);border-top:1px solid var(--__P__-border);text-align:center;font-size:calc(11px * var(--__P__-text-scale));line-height:1.4;color:var(--__P__-fg-muted)}.__P__-disclaimer{max-width:320px;margin:0 auto;opacity:.9;letter-spacing:.01em}.__P__-poweredby{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:inherit;text-decoration:none;opacity:.7;transition:opacity var(--__P__-dur-base) var(--__P__-ease);font-size:calc(11px * var(--__P__-text-scale));letter-spacing:.02em}.__P__-poweredby:hover{opacity:1}.__P__-poweredby-logo{height:12px;width:auto;display:inline-block;vertical-align:middle}.__P__-poweredby-bar{flex:none;display:flex;align-items:center;justify-content:center;padding:6px 16px;border-top:1px solid var(--__P__-border);background:var(--__P__-bg-elevated)}.__P__-menu-wrap{position:relative;display:inline-flex}.__P__-menu{position:absolute;top:100%;inset-inline-end:0;margin-top:6px;min-width:200px;padding:6px;background:var(--__P__-bg);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);box-shadow:var(--__P__-shadow-panel);z-index:10;display:flex;flex-direction:column;gap:2px;animation:__P__-menu-in var(--__P__-dur-base) var(--__P__-ease)}@media(prefers-reduced-motion:reduce){.__P__-menu{animation:none}}@keyframes __P__-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.98);transform-origin:top right}to{opacity:1;transform:none}}.__P__-menu-item{all:unset;display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:var(--__P__-text-sm);color:var(--__P__-fg);border-radius:var(--__P__-radius-sm);cursor:pointer;user-select:none}.__P__-menu-item:hover{background:var(--__P__-bg-elevated)}.__P__-menu-item:focus-visible{background:var(--__P__-bg-elevated);outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-menu-item[disabled]{opacity:.45;cursor:not-allowed}.__P__-menu-icon{display:inline-flex;width:16px;height:16px;color:var(--__P__-fg-muted)}.__P__-menu-icon svg{width:16px;height:16px}.__P__-menu-label{flex:1}.__P__-menu-check{display:inline-flex;color:var(--__P__-accent-fg)}.__P__-menu-check svg{width:14px;height:14px}.__P__-menu-item-segmented{cursor:default}.__P__-menu-item-segmented:hover{background:transparent}.__P__-segmented{display:inline-flex;gap:2px;padding:2px;background:var(--__P__-bg-elevated);border-radius:var(--__P__-radius-sm)}.__P__-segment{all:unset;min-width:26px;padding:3px 8px;font-size:var(--__P__-text-xs);font-weight:600;letter-spacing:.02em;text-align:center;color:var(--__P__-fg-muted);border-radius:calc(var(--__P__-radius-sm) - 2px);cursor:pointer;transition:color .12s ease,background .12s ease}.__P__-segment:hover{color:var(--__P__-fg)}.__P__-segment[data-on=true]{background:var(--__P__-bg);color:var(--__P__-accent-fg);box-shadow:var(--__P__-shadow-card)}.__P__-segment:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-resize-grip{position:absolute;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--__P__-fg-muted);opacity:.45;transition:opacity var(--__P__-dur-base) var(--__P__-ease);z-index:2;touch-action:none;user-select:none}.__P__-resize-grip:hover,.__P__-resize-grip:focus-visible{opacity:1}.__P__-resize-grip svg{width:10px;height:10px}.__P__-resize-grip--bottom-left{bottom:2px;left:2px;cursor:nesw-resize;transform:scaleX(-1)}.__P__-resize-grip--bottom-right{bottom:2px;right:2px;cursor:nwse-resize}.__P__-resize-grip--top-left{top:2px;left:2px;cursor:nwse-resize;transform:rotate(180deg)}.__P__-resize-grip--top-right{top:2px;right:2px;cursor:nesw-resize;transform:scaleY(-1)}:host(:not([data-mode="open"])) .__P__-resize-grip{display:none}.__P__-messenger{display:flex;flex-direction:column;overflow:hidden}.__P__-messenger-body,.__P__-messenger-pane{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.__P__-messenger-pane[hidden]{display:none}@keyframes __P__-view-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.__P__-module{display:flex;flex-direction:column;height:100%;min-height:0}@media(prefers-reduced-motion:no-preference){.__P__-module,.__P__-history{animation:__P__-view-in .18s var(--__P__-ease-out)}}.__P__-module-scroll{flex:1;min-height:0;overflow-y:auto;padding:var(--__P__-space-3);display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-home{container-type:inline-size;background:radial-gradient(125% 65% at 88% 0%,color-mix(in srgb,#fff 16%,transparent),transparent 55%),linear-gradient(180deg,var(--__P__-accent) 0%,var(--__P__-accent) 22%,color-mix(in srgb,var(--__P__-accent) 28%,var(--__P__-surface)) 44%,var(--__P__-surface) 70%);border-radius:var(--__P__-radius-lg) var(--__P__-radius-lg) 0 0}.__P__-home-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;background:transparent}.__P__-home-cards{display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:4px 14px 16px}.__P__-module-pad{padding:var(--__P__-space-3) var(--__P__-space-3) 0}.__P__-module-empty{display:flex;flex-direction:column;align-items:center;gap:var(--__P__-space-3);padding:var(--__P__-space-8) var(--__P__-space-4);text-align:center;color:var(--__P__-fg-muted);font-size:var(--__P__-text-base)}.__P__-module-retry{padding:var(--__P__-space-2) var(--__P__-space-4);border:1px solid var(--__P__-border-strong);border-radius:var(--__P__-radius-sm);color:var(--__P__-fg);font-weight:600;cursor:pointer;transition:background var(--__P__-dur-quick) var(--__P__-ease-out),border-color var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-module-retry:hover{background:var(--__P__-hover);border-color:var(--__P__-accent)}.__P__-module-retry:active{background:var(--__P__-border)}.__P__-module-retry:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-help-list{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--__P__-space-3)}.__P__-help-group{display:flex;flex-direction:column}.__P__-help-section-title{position:sticky;top:0;z-index:1;margin:0;padding:var(--__P__-space-3) var(--__P__-space-5) var(--__P__-space-2);font-size:var(--__P__-text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--__P__-fg-muted);background:var(--__P__-bg)}.__P__-help-card{margin:0 var(--__P__-space-3) var(--__P__-space-3);background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);overflow:hidden}.__P__-help-card .__P__-list-row{border-bottom:0;border-radius:0}.__P__-help-card .__P__-list-row+.__P__-list-row{border-top:1px solid var(--__P__-border)}.__P__-help-more{justify-content:center;color:var(--__P__-accent-fg);font-weight:600}.__P__-tabbar{display:flex;border-top:1px solid var(--__P__-border);background:var(--__P__-bg-elevated);flex-shrink:0}.__P__-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--__P__-space-1);min-height:48px;padding:var(--__P__-space-2) var(--__P__-space-1);color:var(--__P__-fg-muted);font-size:var(--__P__-text-xs);font-weight:600;transition:color var(--__P__-dur-quick) var(--__P__-ease-out)}@media(hover:hover){.__P__-tab:hover{background:var(--__P__-hover)}}.__P__-tab[aria-selected=true]{color:var(--__P__-accent-fg)}.__P__-tab:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-tab:active{background:var(--__P__-hover)}.__P__-tab-icon{position:relative;display:inline-flex}.__P__-tab-icon svg{width:22px;height:22px}.__P__-tab-badge{position:absolute;top:-2px;left:calc(50% + 6px);width:8px;height:8px;border-radius:50%;background:var(--__P__-accent);box-shadow:0 0 0 2px var(--__P__-bg-elevated)}.__P__-home-hero{flex-shrink:0;padding:var(--__P__-space-5) var(--__P__-space-5) var(--__P__-space-3);color:var(--__P__-on-accent);--__P__-focus: var(--__P__-on-accent)}.__P__-home-hero-top{display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-3);min-height:32px}.__P__-home-brand{font-size:clamp(calc(12px * var(--__P__-text-scale)),calc(3.2cqi * var(--__P__-text-scale)),calc(14px * var(--__P__-text-scale)));font-weight:600;letter-spacing:.01em;color:color-mix(in srgb,#fff 82%,transparent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.__P__-home-brand-spacer{flex:1}.__P__-home-hero-actions{display:flex;align-items:center;gap:var(--__P__-space-2);flex-shrink:0}.__P__-home-hero-actions .__P__-icon-btn{color:#fff}.__P__-home-hero-actions .__P__-icon-btn:hover{background:color-mix(in srgb,#fff 18%,transparent);color:#fff}.__P__-home-hero-actions .__P__-icon-btn:active{background:color-mix(in srgb,#fff 26%,transparent)}.__P__-home-greeting{margin:28px 0 0;font-family:var(--__P__-font-display);font-size:clamp(calc(19px * var(--__P__-text-scale)),calc(5.5cqi * var(--__P__-text-scale)),var(--__P__-text-2xl));font-weight:800;line-height:1.18;letter-spacing:-.01em;overflow-wrap:anywhere}.__P__-home-lead{margin:10px 0 0;font-family:var(--__P__-font-display);font-size:clamp(calc(15px * var(--__P__-text-scale)),calc(4.2cqi * var(--__P__-text-scale)),var(--__P__-text-xl));font-weight:600;line-height:1.25;letter-spacing:-.005em;color:color-mix(in srgb,var(--__P__-on-accent) 78%,transparent);overflow-wrap:anywhere}.__P__-home-avatars{display:flex}.__P__-home-avatar{width:30px;height:30px;border-radius:var(--__P__-radius-md);overflow:hidden;margin-inline-start:-10px;border:2px solid color-mix(in srgb,#fff 92%,transparent);box-shadow:0 1px 3px #0000002e;background:var(--__P__-surface);display:inline-flex;align-items:center;justify-content:center;font-size:var(--__P__-text-xs);font-weight:700;color:var(--__P__-fg)}.__P__-home-avatar:first-child{margin-inline-start:0}.__P__-home-avatar img{width:100%;height:100%;object-fit:cover}.__P__-home-content{background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);box-shadow:var(--__P__-shadow-card);overflow:hidden}.__P__-home-content-title{padding:var(--__P__-space-4) var(--__P__-space-4) var(--__P__-space-3);font-size:var(--__P__-text-sm);font-weight:700}.__P__-home-content-list{display:flex;flex-direction:column;padding:0 var(--__P__-space-2) var(--__P__-space-2)}.__P__-home-content-list .__P__-list-row+.__P__-list-row{border-top:1px solid var(--__P__-border)}.__P__-home-card{display:block;width:100%;text-align:start;background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);padding:var(--__P__-space-4);box-shadow:var(--__P__-shadow-card)}.__P__-home-card[data-interactive=true]{cursor:pointer;transition:background var(--__P__-dur-quick) var(--__P__-ease-out),transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-home-card[data-interactive=true]:hover{background:var(--__P__-bg-elevated)}.__P__-home-card[data-interactive=true]:active{transform:translateY(1px)}.__P__-home-card[data-interactive=true]:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-home-recent-row{display:flex;align-items:center;gap:var(--__P__-space-3)}.__P__-home-recent-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;border-radius:var(--__P__-radius-md);background:color-mix(in oklch,var(--__P__-accent) 14%,transparent);color:var(--__P__-accent-fg)}.__P__-home-recent-avatar svg{width:20px;height:20px}.__P__-home-recent-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;line-height:1.45}.__P__-home-recent-title{font-weight:600;font-size:calc(14px * var(--__P__-text-scale))}.__P__-home-recent-preview{color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.__P__-home-recent-dot{width:8px;height:8px;border-radius:999px;background:var(--__P__-accent);flex-shrink:0}.__P__-home-recent-row[data-unread=true] .__P__-home-recent-title{font-weight:700}.__P__-home-status{display:flex;align-items:center;gap:var(--__P__-space-3)}.__P__-home-status-icon svg{width:22px;height:22px;color:var(--__P__-success)}.__P__-home-status[data-level=degraded] .__P__-home-status-icon svg{color:var(--__P__-warning)}.__P__-home-status[data-level=down] .__P__-home-status-icon svg{color:var(--__P__-danger)}.__P__-home-status-text{font-weight:600;font-size:calc(14px * var(--__P__-text-scale))}.__P__-home-search{display:flex;align-items:center;gap:var(--__P__-space-2);width:100%;padding:var(--__P__-space-3) var(--__P__-space-4);border-radius:var(--__P__-radius);border:1px solid var(--__P__-border);background:var(--__P__-surface);text-align:start}.__P__-home-search[data-input=true]{background:var(--__P__-bg-elevated)}.__P__-home-search:hover{border-color:var(--__P__-border-strong)}.__P__-home-search:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-home-search[data-input=true]:focus-within{outline:none;border-color:var(--__P__-focus)}.__P__-home-search-text{flex:1;color:var(--__P__-fg-muted);font-size:calc(14px * var(--__P__-text-scale))}.__P__-home-search-input{flex:1;border:0;background:transparent;font-size:calc(14px * var(--__P__-text-scale));color:var(--__P__-fg);outline:none}.__P__-home-search-input:focus-visible{outline:none}.__P__-home-search-icon svg{width:18px;height:18px;color:var(--__P__-accent-fg)}.__P__-home-ask{padding-block:6px;padding-inline-end:6px}.__P__-home-ask .__P__-send{width:32px;height:32px;flex-shrink:0}.__P__-home-ask .__P__-send[data-shape=pill]{width:auto;padding:0 14px}.__P__-home-ask .__P__-send svg{width:16px;height:16px}.__P__-list-row{display:flex;align-items:center;gap:var(--__P__-space-3);width:100%;min-height:44px;text-align:start;padding:var(--__P__-space-3) var(--__P__-space-2);border-radius:var(--__P__-radius-sm)}.__P__-list-row:hover{background:var(--__P__-hover)}.__P__-list-row:active{background:var(--__P__-border)}.__P__-list-row:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-list-row-body{display:flex;flex-direction:column;min-width:0;flex:1}.__P__-list-row-title{font-weight:600;font-size:var(--__P__-text-md);line-height:1.35}.__P__-list-row-sub{color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);margin-top:var(--__P__-space-1);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.__P__-list-row-chevron svg{width:18px;height:18px;color:var(--__P__-accent-fg);flex-shrink:0}.__P__-back-header{display:flex;align-items:center;gap:var(--__P__-space-2);padding:10px 12px;border-bottom:1px solid var(--__P__-border);flex-shrink:0}.__P__-back-title{flex:1;text-align:center;font-size:var(--__P__-text-md);font-weight:700;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-back-spacer{width:32px;height:1px}.__P__-history>*,.__P__-home-scroll>*,.__P__-module-scroll>*,.__P__-help-list>*,.__P__-history-footer>*,.__P__-module-pad{width:100%;max-width:var(--__P__-conversation-max, 768px);margin-inline:auto}.__P__-header,.__P__-back-header{padding-inline:max(12px,calc((100% - var(--__P__-conversation-max, 768px)) / 2))}.__P__-tabbar{padding-inline:max(0px,calc((100% - var(--__P__-conversation-max, 768px)) / 2))}.__P__-content{display:flex;flex-direction:column;gap:14px;width:100%;max-width:68ch;margin:0 auto}.__P__-content-hero{width:100%;border-radius:var(--__P__-radius)}.__P__-content-subtitle{color:var(--__P__-fg-muted);margin:0}.__P__-content-vote{display:flex;align-items:center;flex-wrap:wrap;gap:var(--__P__-space-2);padding-top:var(--__P__-space-3);border-top:1px solid var(--__P__-border)}.__P__-content-frame{flex:1;min-height:0;width:100%;border:0;background:#fff}.__P__-news-list{display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-news-card{display:block;width:100%;text-align:start;line-height:1.45;border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);overflow:hidden;background:var(--__P__-surface);transition:background var(--__P__-dur-quick) var(--__P__-ease-out),transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-news-card:hover{background:var(--__P__-bg-elevated)}.__P__-news-card:active{transform:translateY(1px)}.__P__-news-card:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-news-hero{width:100%;display:block}.__P__-news-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px}.__P__-news-title{font-weight:700;font-size:var(--__P__-text-md)}.__P__-news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-news-tag{padding:1px 8px;border-radius:6px;background:var(--__P__-hover);color:var(--__P__-fg);font-size:calc(12px * var(--__P__-text-scale));white-space:nowrap}.__P__-news-more{display:flex;align-items:center;justify-content:center;gap:var(--__P__-space-2);width:100%;min-height:44px;border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);background:var(--__P__-surface);color:var(--__P__-accent-fg);font-weight:600}.__P__-news-more:hover{background:var(--__P__-bg-elevated)}.__P__-news-more:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-news-summary{color:var(--__P__-fg-muted);font-size:calc(14px * var(--__P__-text-scale));display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.__P__-modules-empty{display:flex;align-items:center;justify-content:center;position:relative}.__P__-modules-empty-close{position:absolute;top:12px;inset-inline-end:12px}.__P__-modules-empty-text{color:var(--__P__-fg-muted);font-size:var(--__P__-text-base)}.__P__-form{display:flex;flex-direction:column;gap:var(--__P__-space-4)}.__P__-field{display:flex;flex-direction:column;gap:6px}.__P__-field-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--__P__-space-2)}.__P__-field-label{font-size:var(--__P__-text-sm);font-weight:600;color:var(--__P__-fg)}.__P__-field-req{color:var(--__P__-danger)}.__P__-field-type{flex-shrink:0;align-self:center;margin-inline-start:auto;border:1px solid var(--__P__-border);border-radius:5px;background:color-mix(in oklab,var(--__P__-fg-muted) 9%,transparent);padding:1px 7px;font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted);white-space:nowrap}.__P__-field-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:10px var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);color:var(--__P__-fg);font:inherit;font-size:var(--__P__-text-sm);resize:vertical;transition:border-color var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-field-input:focus-visible{outline:none;border-color:var(--__P__-accent)}.__P__-field[data-invalid=true] .__P__-field-input{border-color:var(--__P__-danger)}.__P__-field-input[type=date],.__P__-field-input[type=time]{appearance:none;-webkit-appearance:none}@media(pointer:coarse){.__P__-textarea,.__P__-home-search-input,.__P__-field-input{font-size:max(16px,calc(16px * var(--__P__-text-scale)))}}.__P__-field-hint{font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted)}.__P__-field-error{font-size:var(--__P__-text-xs);color:var(--__P__-danger)}.__P__-field-choices{display:flex;flex-direction:column;gap:10px;padding-top:2px}.__P__-choice{display:flex;align-items:flex-start;gap:10px;font-size:var(--__P__-text-sm);color:var(--__P__-fg);cursor:pointer}.__P__-choice input{margin-top:2px;accent-color:var(--__P__-accent)}.__P__-form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--__P__-space-2);margin-top:var(--__P__-space-2)}.__P__-form-hint{flex:1 1 auto;min-width:6rem;margin-inline-end:auto;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted)}.__P__-form-submit{padding:var(--__P__-space-2) var(--__P__-space-4);border:none;border-radius:var(--__P__-radius-md);background:var(--__P__-accent);color:var(--__P__-accent-text, #fff);font:inherit;font-weight:600;font-size:var(--__P__-text-sm);white-space:nowrap;flex-shrink:0;cursor:pointer;transition:filter var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-form-submit:hover:not(:disabled){filter:brightness(1.06)}.__P__-form-submit:disabled{opacity:.6;cursor:default}.__P__-form-skip{padding:var(--__P__-space-2) var(--__P__-space-4);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:transparent;color:var(--__P__-fg-muted);font:inherit;font-size:var(--__P__-text-sm);white-space:nowrap;flex-shrink:0;cursor:pointer;transition:background var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-form-skip:hover:not(:disabled){background:var(--__P__-bg-elevated)}@media(max-width:640px){.__P__-form-hint{flex-basis:100%;margin-inline-end:0;font-size:var(--__P__-text-xs)}.__P__-form-submit,.__P__-form-skip{flex:1 1 0;text-align:center}}.__P__-form-gate{display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:var(--__P__-space-4);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:var(--__P__-bg-elevated)}.__P__-form-gate-title{margin:0;font-size:var(--__P__-text-base);font-weight:700;color:var(--__P__-fg)}.__P__-form-gate-desc{margin:0 0 var(--__P__-space-1);font-size:var(--__P__-text-sm);color:var(--__P__-fg-muted)}.__P__-form-done{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border:1px dashed var(--__P__-border);border-radius:999px;align-self:center;font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted)}.__P__-form-done svg{width:14px;height:14px;color:var(--__P__-success, #22c55e)}.__P__-form-done[data-outcome=skipped] svg{color:var(--__P__-fg-muted)}.__P__-form-done-fill{border:0;background:none;padding:0 2px;cursor:pointer;font:inherit;font-weight:600;color:var(--__P__-accent-fg)}.__P__-form-done-fill:hover{text-decoration:underline}details.__P__-form-done{display:block;padding:0;border-radius:var(--__P__-radius-md)}details[open].__P__-form-done{width:min(100%,420px);background:var(--__P__-surface)}.__P__-form-done-summary{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;cursor:pointer;list-style:none}.__P__-form-done-summary::-webkit-details-marker{display:none}.__P__-form-done-summary>svg:last-child{color:var(--__P__-fg-muted);transition:transform .15s var(--__P__-ease)}details[open]>.__P__-form-done-summary>svg:last-child{transform:rotate(90deg)}.__P__-form-answers{margin:0;padding:var(--__P__-space-2) var(--__P__-space-3) var(--__P__-space-3);display:grid;gap:var(--__P__-space-3);text-align:start}.__P__-form-answer{display:grid;gap:6px}.__P__-form-answer dt{font-size:var(--__P__-text-sm);font-weight:600;color:var(--__P__-fg)}.__P__-form-answer dd{margin:0;padding:10px var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);font-size:var(--__P__-text-sm);font-weight:400;color:var(--__P__-fg);overflow-wrap:anywhere}.__P__-toolui{margin-block:var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-lg, 14px);background:var(--__P__-bg-elevated);font-size:var(--__P__-text-sm)}.__P__-toolui:not(.__P__-toolui-collapsible){display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:var(--__P__-space-4)}.__P__-toolui-group{display:flex;flex-direction:column;gap:var(--__P__-space-3);margin-block:var(--__P__-space-3)}.__P__-toolui-group>.__P__-toolui{margin-block:0}.__P__-toolui-stale{opacity:.7}details.__P__-toolui-collapsible>summary{display:flex;align-items:center;gap:var(--__P__-space-2);padding:var(--__P__-space-3) var(--__P__-space-4);cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent;user-select:none}details.__P__-toolui-collapsible>summary::-webkit-details-marker{display:none}details.__P__-toolui-collapsible[open]>summary{border-bottom:1px solid var(--__P__-border)}details.__P__-toolui-collapsible>.__P__-toolui-section{margin:var(--__P__-space-4)}details.__P__-toolui-collapsible>.__P__-toolui-section~.__P__-toolui-section{margin-top:calc(-1 * var(--__P__-space-2))}.__P__-toolui-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-toolui-chevron{display:inline-flex;color:var(--__P__-fg-muted);transition:transform var(--__P__-dur-quick) var(--__P__-ease-out)}details.__P__-toolui-collapsible>summary .__P__-toolui-status{margin-inline-start:auto}.__P__-toolui-chevron svg{width:16px;height:16px}details.__P__-toolui-collapsible[open]>summary .__P__-toolui-chevron{transform:rotate(180deg)}.__P__-toolui-badge,.__P__-toolui-name-pill,.__P__-toolui-q-pill{--__P__-pill: var(--__P__-fg-muted);display:inline-flex;min-width:0;align-items:center;gap:5px;padding:3px 7px;border-radius:5px;border:1px solid var(--__P__-border);background:color-mix(in oklab,var(--__P__-fg-muted) 9%,transparent);color:var(--__P__-pill);font-size:var(--__P__-text-xs);font-weight:600;white-space:nowrap}.__P__-toolui-badge svg,.__P__-toolui-name-pill svg,.__P__-toolui-q-pill svg{flex-shrink:0;width:14px;height:14px}.__P__-toolui-status-icon{display:inline-flex}.__P__-toolui-name-pill{--__P__-pill: oklch(.68 .13 233)}.__P__-toolui-q-pill{--__P__-pill: oklch(.66 .12 195)}.__P__-toolui-status[data-status=completed]{--__P__-pill: var(--__P__-success, #16a34a)}.__P__-toolui-status[data-status=responded]{--__P__-pill: oklch(.62 .15 255)}.__P__-toolui-status[data-status=awaiting]{--__P__-pill: var(--__P__-warning, #f59e0b)}.__P__-toolui-status[data-status=denied]{--__P__-pill: oklch(.66 .16 45)}.__P__-toolui-status[data-status=error]{--__P__-pill: var(--__P__-danger, #dc2626)}.__P__-toolui-status[data-status=superseded],.__P__-toolui-status[data-status=incomplete]{--__P__-pill: var(--__P__-fg-muted)}@supports (color: oklch(from red l c h)){.__P__-toolui-badge,.__P__-toolui-name-pill,.__P__-toolui-q-pill{color:oklch(from var(--__P__-pill) clamp(var(--__P__-pill-l-min),l,var(--__P__-pill-l-max)) c h)}}.__P__-toolui-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--__P__-space-2)}.__P__-toolui-head-end{display:inline-flex;align-items:center;gap:var(--__P__-space-2);margin-inline-start:auto}.__P__-toolui-collapse-body{display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:var(--__P__-space-4)}.__P__-toolui-summary{display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-toolui-collapse-body>.__P__-form{gap:var(--__P__-space-3)}.__P__-toolui-collapse-body>.__P__-form>.__P__-field,.__P__-toolui-summary>.__P__-field{padding:10px var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:color-mix(in oklab,var(--__P__-bg) 80%,transparent);line-height:1.5}.__P__-toolui-collapse-body>.__P__-form>.__P__-field{gap:var(--__P__-space-2)}.__P__-toolui-summary>.__P__-field{gap:var(--__P__-space-1)}.__P__-toolui-summary .__P__-field-label{color:var(--__P__-fg-muted)}.__P__-toolui-answer{margin:0;font-size:var(--__P__-text-sm);color:var(--__P__-fg-muted);overflow-wrap:anywhere;white-space:pre-wrap}.__P__-toolui-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-3);margin-inline:calc(-1 * var(--__P__-space-4));padding:var(--__P__-space-3) var(--__P__-space-4) 0;border-top:1px solid var(--__P__-border)}.__P__-toolui-options-toggle{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:0;cursor:pointer;font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted);transition:color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-toolui-options-toggle:hover{color:var(--__P__-fg)}.__P__-toolui-options-chevron{display:inline-flex;transition:transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-toolui-options-chevron svg{width:14px;height:14px}.__P__-toolui-options-chevron.__P__-open{transform:rotate(180deg)}.__P__-toolui-desc{margin:0;padding:var(--__P__-space-3);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);border:1px solid var(--__P__-border);color:var(--__P__-fg-muted);line-height:1.5}.__P__-toolui-section{display:flex;flex-direction:column;gap:8px;padding:var(--__P__-space-3);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);border:1px solid var(--__P__-border)}.__P__-toolui:not(.__P__-toolui-collapsible) .__P__-toolui-section,.__P__-toolui:not(.__P__-toolui-collapsible) .__P__-toolui-desc{padding:0;background:none;border:0;border-radius:0}.__P__-toolui-label{font-size:var(--__P__-text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--__P__-fg-muted)}.__P__-toolui-code{margin:0;max-height:240px;overflow:auto;color:var(--__P__-fg);font-family:var(--__P__-font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--__P__-text-xs);line-height:1.5;white-space:pre-wrap;word-break:break-word}.__P__-toolui-code[data-error=true]{color:var(--__P__-danger, #dc2626)}.__P__-toolui-body{gap:6px}.__P__-toolui-prompt{margin:0;font-weight:600;color:var(--__P__-fg);overflow-wrap:anywhere}.__P__-toolui-subtle{margin:0;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted);line-height:1.5}.__P__-toolui-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--__P__-space-2);margin-top:var(--__P__-space-2)}:host([dir="rtl"]) .__P__-icon-dir{transform:scaleX(-1)}:host([dir="rtl"]) .__P__-field-input[type=date],:host([dir="rtl"]) .__P__-field-input[type=time]{position:relative;text-align:right;padding-left:34px}:host([dir="rtl"]) .__P__-field-input[type=date]::-webkit-datetime-edit,:host([dir="rtl"]) .__P__-field-input[type=time]::-webkit-datetime-edit{text-align:right}:host([dir="rtl"]) .__P__-field-input[type=date]::-webkit-calendar-picker-indicator,:host([dir="rtl"]) .__P__-field-input[type=time]::-webkit-calendar-picker-indicator{position:absolute;left:var(--__P__-space-3);margin:0}
|
|
5
|
+
.__P__-anchor{color-scheme:var(--__P__-color-scheme, light);right:16px;bottom:16px}.__P__-surface{display:contents}.__P__-surface[hidden]{display:none}:host([data-position="bottom-left"]) .__P__-anchor,:host([data-position="top-left"]) .__P__-anchor{right:auto;left:16px}:host([data-position="top-right"]) .__P__-anchor,:host([data-position="top-left"]) .__P__-anchor{bottom:auto;top:16px}.__P__-anchor{position:fixed;display:flex;flex-direction:column;align-items:flex-end;gap:var(--__P__-space-3);pointer-events:none}.__P__-anchor{--__P__-fab-size: 56px}.__P__-anchor[data-launcher-size=sm]{--__P__-fab-size: 44px}.__P__-anchor[data-launcher-size=md]{--__P__-fab-size: 56px}.__P__-anchor[data-launcher-size=lg]{--__P__-fab-size: 68px}.__P__-anchor>*{pointer-events:auto}.__P__-fab[data-size=sm]{--__P__-fab-size: 44px;font-size:var(--__P__-text-sm)}.__P__-fab[data-size=md]{--__P__-fab-size: 56px;font-size:calc(14px * var(--__P__-text-scale))}.__P__-fab[data-size=lg]{--__P__-fab-size: 68px;font-size:var(--__P__-text-base)}.__P__-fab{display:inline-flex;align-items:center;justify-content:center;gap:var(--__P__-space-2);color:var(--__P__-accent-text);background:var(--__P__-accent);box-shadow:var(--__P__-shadow-fab);font-weight:600;line-height:1;transform-origin:bottom right;animation:__P__-fab-in var(--__P__-dur-base) var(--__P__-ease) both;transition:transform var(--__P__-dur-base) var(--__P__-ease),opacity var(--__P__-dur-base) var(--__P__-ease),box-shadow var(--__P__-dur-base) var(--__P__-ease)}.__P__-fab:hover{transform:translateY(-2px)}.__P__-fab:active{transform:translateY(0)}.__P__-fab:focus-visible{outline:2px solid var(--__P__-on-accent);outline-offset:3px}.__P__-fab svg{width:24px;height:24px;flex-shrink:0}@keyframes __P__-fab-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}.__P__-fab[data-leaving]{position:absolute;right:0;bottom:0;animation:__P__-fab-out var(--__P__-dur-quick) var(--__P__-ease) forwards;pointer-events:none}:host([data-position^="top-"]) .__P__-fab[data-leaving]{bottom:auto;top:0}:host([data-position$="-left"]) .__P__-fab[data-leaving]{right:auto;left:0}@keyframes __P__-fab-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.85)}}.__P__-fab[data-variant=circle]{width:var(--__P__-fab-size);height:var(--__P__-fab-size);border-radius:999px}.__P__-fab[data-variant=circle] .__P__-fab-label{display:none}.__P__-fab[data-variant=pill]{height:var(--__P__-fab-size);padding:0 18px 0 16px;border-radius:999px}.__P__-fab[data-variant=bar]{height:var(--__P__-fab-size);padding:0 22px;border-radius:var(--__P__-radius)}.__P__-fab[data-variant=minimal]{height:var(--__P__-fab-size);padding:0 var(--__P__-space-4);border-radius:999px;background:transparent;color:var(--__P__-accent-fg);box-shadow:none;border:1px solid currentColor}.__P__-fab[data-variant=minimal]:hover{background:color-mix(in srgb,var(--__P__-accent) 12%,transparent)}.__P__-callout{--__P__-callout-fab-h: var(--__P__-fab-size, 56px);--__P__-callout-gap: clamp(12px, calc(var(--__P__-callout-fab-h) * .25), 22px);--__P__-callout-nudge-direction: -1;position:absolute;display:inline-flex;align-items:center;gap:var(--__P__-space-2);padding:10px 14px;background:var(--__P__-fg);color:var(--__P__-bg);border-radius:999px;font-size:var(--__P__-text-sm);font-weight:600;line-height:1.2;box-shadow:0 10px 30px -8px #00000059;pointer-events:auto;animation:__P__-callout-in var(--__P__-dur-slow) var(--__P__-ease);z-index:1;max-width:240px;white-space:nowrap}.__P__-callout[data-position=left]{right:calc(100% + var(--__P__-callout-gap));bottom:calc(var(--__P__-callout-fab-h) / 2);transform:translateY(50%)}.__P__-callout[data-position=right]{left:calc(100% + var(--__P__-callout-gap));bottom:calc(var(--__P__-callout-fab-h) / 2);transform:translateY(50%);--__P__-callout-nudge-direction: 1}.__P__-callout[data-position=top]{bottom:calc(100% + var(--__P__-callout-gap));right:0;max-width:min(280px,calc(100vw - 32px))}.__P__-callout[data-position=bottom]{top:calc(100% + var(--__P__-callout-gap));right:0;max-width:min(280px,calc(100vw - 32px))}:host([data-position$="-left"]) .__P__-callout[data-position=top],:host([data-position$="-left"]) .__P__-callout[data-position=bottom]{right:auto;left:0}.__P__-callout[data-shape=bubble]{border-radius:var(--__P__-radius-md);white-space:normal;width:max-content;max-width:min(280px,calc(100vw - 32px))}.__P__-callout[data-shape=callout]{padding:12px 18px;font-size:calc(14px * var(--__P__-text-scale));background:var(--__P__-accent);color:var(--__P__-accent-text)}.__P__-callout:after{content:"";position:absolute;width:12px;height:12px;background:inherit;border-radius:2px;transform:rotate(45deg)}.__P__-callout[data-position=left]:after{right:-5px;top:50%;margin-top:-6px}.__P__-callout[data-position=right]:after{left:-5px;top:50%;margin-top:-6px}.__P__-callout[data-position=top]:after{bottom:-5px;right:calc(var(--__P__-fab-size, 56px) / 2 - 6px)}.__P__-callout[data-position=bottom]:after{top:-5px;right:calc(var(--__P__-fab-size, 56px) / 2 - 6px)}:host([data-position$="-left"]) .__P__-callout[data-position=top]:after,:host([data-position$="-left"]) .__P__-callout[data-position=bottom]:after{right:auto;left:calc(var(--__P__-fab-size, 56px) / 2 - 6px)}.__P__-callout[data-animated]{animation:__P__-callout-in var(--__P__-dur-slow) var(--__P__-ease),__P__-callout-nudge 1.6s var(--__P__-ease-in-out) var(--__P__-dur-slow) infinite}@keyframes __P__-callout-in{0%{opacity:0}to{opacity:1}}@keyframes __P__-callout-nudge{0%,to{margin-left:0;margin-right:0}50%{margin-left:calc(6px * var(--__P__-callout-nudge-direction));margin-right:calc(-6px * var(--__P__-callout-nudge-direction))}}@media(prefers-reduced-motion:reduce){.__P__-callout[data-animated]{animation:__P__-callout-in 1ms var(--__P__-ease)}.__P__-icon-btn[data-recording=true],.__P__-typing span{animation:none}}.__P__-callout-close{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;color:inherit;opacity:.7;cursor:pointer}.__P__-callout-close:hover{opacity:1;background:color-mix(in srgb,currentColor 15%,transparent)}.__P__-callout-close:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-callout-close svg{width:12px;height:12px}.__P__-panel{width:var(--__P__-panel-w);height:var(--__P__-panel-h);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);background:var(--__P__-bg);color:var(--__P__-fg);border-radius:var(--__P__-radius-lg);box-shadow:var(--__P__-shadow-panel);display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:none;transform-origin:bottom right;animation:__P__-panel-in var(--__P__-dur-slow) var(--__P__-ease);border:1px solid var(--__P__-border)}@media(prefers-reduced-motion:no-preference){.__P__-panel{transition:width var(--__P__-dur-base) var(--__P__-ease),height var(--__P__-dur-base) var(--__P__-ease),max-width var(--__P__-dur-base) var(--__P__-ease),max-height var(--__P__-dur-base) var(--__P__-ease)}.__P__-panel[data-resizing]{transition:none}}:host([data-mode="open"]) .__P__-panel{width:var(--__P__-widget-w, var(--__P__-panel-w));height:var(--__P__-widget-h, var(--__P__-panel-h));min-width:var(--__P__-resize-min-w, auto);min-height:var(--__P__-resize-min-h, auto);max-width:var(--__P__-resize-max-w, calc(100vw - 32px) );max-height:var(--__P__-resize-max-h, calc(100dvh - 32px) )}@keyframes __P__-panel-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}:host([data-mode="expanded"]) .__P__-panel{width:var(--__P__-expanded-w, 640px);height:var(--__P__-expanded-h, 820px);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}:host([data-mode="fullscreen"]){z-index:var(--__P__-z-panel)!important}:host([data-mode="fullscreen"]) .__P__-anchor{inset:var(--__P__-visual-viewport-top, 0px) 0 auto;height:var(--__P__-visual-viewport-height, 100dvh);padding:0;justify-content:flex-end;align-items:flex-end}:host([data-mode="fullscreen"][data-position*="top"]) .__P__-anchor{justify-content:flex-start}:host([data-mode="fullscreen"][data-position*="left"]) .__P__-anchor{align-items:flex-start}:host([data-mode="fullscreen"]) .__P__-panel{width:100vw;height:100%;max-width:none;max-height:none;border-radius:0;border:0}:host([data-mode="fullscreen"]) .__P__-fab{display:none}@media(max-width:640px){:host([data-mode="open"]) .__P__-anchor,:host([data-mode="expanded"]) .__P__-anchor{inset:var(--__P__-visual-viewport-top, 0px) 0 auto;align-items:stretch;height:var(--__P__-visual-viewport-height, 100dvh);padding:0}:host([data-mode="open"]) .__P__-panel,:host([data-mode="expanded"]) .__P__-panel{width:100vw;height:100%;max-width:none;max-height:none;border-radius:0;border:0}}:host([data-mode="inline"]) .__P__-anchor,:host([data-mode="standalone"]) .__P__-anchor{position:static;inset:auto;padding:0;align-items:stretch;width:100%;height:100%;min-height:0}:host([data-mode="inline"]) .__P__-panel,:host([data-mode="standalone"]) .__P__-panel{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;animation:none}:host([data-mode="inline"]) .__P__-fab,:host([data-mode="standalone"]) .__P__-fab{display:none}:host([data-mode="inline"]){min-height:320px}:host([data-mode="inline"]) .__P__-panel{border-radius:var(--__P__-radius)}:host([data-mode="standalone"]) .__P__-panel{border-radius:0;border:0;box-shadow:none}:host([data-mode="modal"]){position:fixed!important;inset:0!important;z-index:var(--__P__-z-panel)!important;display:block!important;width:100vw;height:100dvh;background:var(--__P__-modal-backdrop, var(--__P__-backdrop));animation:__P__-backdrop-in var(--__P__-dur-base) var(--__P__-ease) both;--__P__-panel-w: min(960px, 92vw);--__P__-panel-h: min(720px, 88dvh)}:host([data-mode="modal"]) .__P__-anchor{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--__P__-space-6);pointer-events:none}:host([data-mode="modal"]) .__P__-panel{pointer-events:auto;width:var(--__P__-widget-w, var(--__P__-panel-w));height:var(--__P__-widget-h, var(--__P__-panel-h));max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);min-width:0;min-height:0;border-radius:var(--__P__-radius);box-shadow:var(--__P__-shadow-panel);animation:__P__-modal-in var(--__P__-dur-base) var(--__P__-ease);translate:var(--__P__-modal-dx, 0px) var(--__P__-modal-dy, 0px)}:host([data-mode="modal"]) .__P__-header,:host([data-mode="modal"]) .__P__-back-header,:host([data-mode="modal"]) .__P__-home-hero{cursor:grab;touch-action:none}:host([data-mode="modal"]) .__P__-panel[data-dragging]{cursor:grabbing;user-select:none}:host([data-mode="modal"]) .__P__-panel[data-dragging] *{cursor:grabbing}:host([data-mode="modal"]) .__P__-fab{display:none}@keyframes __P__-backdrop-in{0%{background:#0000}to{background:var(--__P__-modal-backdrop, var(--__P__-backdrop))}}@keyframes __P__-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}:host([data-mode="drawer"]){--__P__-panel-w: min(440px, calc(100vw - 32px) );--__P__-panel-h: 100dvh}:host([data-mode="drawer"]) .__P__-anchor{position:fixed;--__P__-inset-x: var(--__P__-panel-inset, 12px);--__P__-inset-y: var(--__P__-panel-inset, 3dvh);top:var(--__P__-inset-y);bottom:auto;right:var(--__P__-inset-x);left:auto;width:min(var(--__P__-widget-w, var(--__P__-panel-w)),calc(100vw - var(--__P__-inset-x) * 2));height:min(var(--__P__-widget-h, var(--__P__-panel-h)),calc(100dvh - var(--__P__-inset-y) * 2));padding:0;display:block;pointer-events:auto}:host([data-mode="drawer"][data-position$="-left"]) .__P__-anchor{right:auto;left:var(--__P__-inset-x)}:host([data-mode="drawer"][data-position^="bottom-"]) .__P__-anchor{top:auto;bottom:var(--__P__-inset-y)}:host([data-mode="drawer"]) .__P__-panel{width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0;border-radius:var(--__P__-radius, 12px);border:1px solid var(--__P__-border);box-shadow:-8px 16px 32px -12px #00000038;animation:__P__-drawer-in var(--__P__-dur-base) var(--__P__-ease)}:host([data-mode="drawer"][data-position$="-left"]) .__P__-panel{box-shadow:8px 16px 32px -12px #00000038;animation:__P__-drawer-in-left var(--__P__-dur-base) var(--__P__-ease)}.__P__-fab[data-edge-tab]{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--__P__-space-2);position:fixed;top:50%;height:140px;width:auto;min-width:0;padding:10px 8px;writing-mode:vertical-rl;text-orientation:mixed;transform:translateY(-50%);transform-origin:center;animation:__P__-edge-tab-in var(--__P__-dur-base) var(--__P__-ease) both}.__P__-fab[data-edge-tab] svg{writing-mode:horizontal-tb}.__P__-fab[data-edge-tab]:hover{transform:translateY(-50%) scale(1.03)}.__P__-fab[data-edge-tab]:active{transform:translateY(-50%) scale(.97)}:host([data-position$="-right"]) .__P__-fab[data-edge-tab]{right:0;left:auto;border-radius:12px 0 0 12px;box-shadow:-6px 0 18px -8px #0000004d}:host([data-position$="-left"]) .__P__-fab[data-edge-tab]{left:0;right:auto;border-radius:0 12px 12px 0;box-shadow:6px 0 18px -8px #0000004d}.__P__-fab[data-edge-tab][data-leaving]{position:fixed;top:50%;bottom:auto;animation:__P__-edge-tab-out var(--__P__-dur-quick) var(--__P__-ease) forwards}@keyframes __P__-edge-tab-in{0%{opacity:0;transform:translateY(-50%) scale(.9)}to{opacity:1;transform:translateY(-50%) scale(1)}}@keyframes __P__-edge-tab-out{0%{opacity:1;transform:translateY(-50%) scale(1)}to{opacity:0;transform:translateY(-50%) scale(.85)}}@keyframes __P__-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes __P__-drawer-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){:host([data-mode="drawer"]) .__P__-panel,.__P__-fab[data-edge-tab]{animation:none}}.__P__-header{display:flex;align-items:center;gap:var(--__P__-space-2);padding:10px 12px;border-bottom:1px solid var(--__P__-border);background:var(--__P__-bg)}.__P__-header h1{font-size:calc(14px * var(--__P__-text-scale));font-weight:600;flex:1;letter-spacing:-.01em}.__P__-header-actions{margin-inline-start:auto;display:flex;align-items:center;gap:var(--__P__-space-1);flex-shrink:0}.__P__-agent{flex:1;display:inline-flex;align-items:center;gap:10px;min-width:0}.__P__-agent-avatar{position:relative;width:32px;height:32px;border-radius:var(--__P__-radius-md);background:var(--__P__-bg-elevated);color:var(--__P__-fg-muted);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--__P__-text-xs);flex-shrink:0}.__P__-agent-avatar img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.__P__-agent-avatar:after{content:"";position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:999px;border:2px solid var(--__P__-bg);background:var(--__P__-neutral)}.__P__-agent-avatar[data-status=online]:after{background:var(--__P__-success)}.__P__-agent-avatar[data-status=away]:after{background:var(--__P__-warning)}.__P__-agent-avatar[data-status=offline]:after{background:var(--__P__-neutral)}.__P__-agent-meta{display:flex;flex-direction:column;line-height:1.15;min-width:0}.__P__-agent-meta strong{font-size:calc(14px * var(--__P__-text-scale));font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-agent-meta span{font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-suggestions{display:flex;flex-wrap:nowrap;gap:var(--__P__-space-2);padding:6px 14px 10px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;min-width:0}.__P__-suggestions::-webkit-scrollbar{display:none}.__P__-suggestions[data-cut-end=true]{mask-image:linear-gradient(to right,#000 calc(100% - 32px),transparent)}.__P__-suggestions[data-cut-start=true]{mask-image:linear-gradient(to right,transparent,#000 32px)}.__P__-suggestions[data-cut-start=true][data-cut-end=true]{mask-image:linear-gradient(to right,transparent,#000 32px,#000 calc(100% - 32px),transparent)}:host([dir="rtl"]) .__P__-suggestions[data-cut-end=true]{mask-image:linear-gradient(to left,#000 calc(100% - 32px),transparent)}:host([dir="rtl"]) .__P__-suggestions[data-cut-start=true]{mask-image:linear-gradient(to left,transparent,#000 32px)}:host([dir="rtl"]) .__P__-suggestions[data-cut-start=true][data-cut-end=true]{mask-image:linear-gradient(to left,transparent,#000 32px,#000 calc(100% - 32px),transparent)}.__P__-suggestions:before,.__P__-suggestions:after{content:"";flex:1 1 0;min-width:0}.__P__-suggestion{flex:0 0 auto;scroll-snap-align:center;padding:7px 14px;border-radius:999px;background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);color:var(--__P__-fg);font-size:var(--__P__-text-sm);font-weight:500;white-space:nowrap;transition:background var(--__P__-dur-quick) var(--__P__-ease),border-color var(--__P__-dur-quick) var(--__P__-ease),transform var(--__P__-dur-quick) var(--__P__-ease)}.__P__-suggestion:hover{border-color:var(--__P__-accent);color:var(--__P__-accent-fg);transform:translateY(-1px)}.__P__-suggestion:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px;border-color:var(--__P__-accent)}.__P__-suggestion:active{transform:translateY(0)}.__P__-icon-btn{width:32px;height:32px;border-radius:999px;position:relative;display:inline-flex;align-items:center;justify-content:center;color:var(--__P__-fg-muted);transition:background var(--__P__-dur-quick) var(--__P__-ease),color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-icon-btn:hover{background:var(--__P__-bg-elevated);color:var(--__P__-fg)}.__P__-icon-btn:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-icon-btn:active{background:var(--__P__-border)}.__P__-icon-btn:disabled{opacity:.45;cursor:not-allowed}.__P__-icon-btn:before{content:"";position:absolute;inset:-6px}.__P__-icon-btn svg{width:18px;height:18px}.__P__-icon-btn[data-recording=true]{color:var(--__P__-accent-fg);background:color-mix(in srgb,var(--__P__-accent) 12%,transparent);animation:__P__-pulse 1.2s var(--__P__-ease) infinite}@keyframes __P__-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--__P__-accent) 40%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--__P__-accent) 0%,transparent)}}.__P__-list,.__P__-history,.__P__-module-scroll,.__P__-home-scroll,.__P__-help-list,.__P__-toolui-code,.__P__-sidebar-conversations{scrollbar-width:thin;scrollbar-color:var(--__P__-border-strong) transparent;overscroll-behavior:contain;scrollbar-gutter:stable}.__P__-list::-webkit-scrollbar,.__P__-history::-webkit-scrollbar,.__P__-module-scroll::-webkit-scrollbar,.__P__-home-scroll::-webkit-scrollbar,.__P__-help-list::-webkit-scrollbar,.__P__-toolui-code::-webkit-scrollbar,.__P__-sidebar-conversations::-webkit-scrollbar{width:8px}.__P__-list::-webkit-scrollbar-thumb,.__P__-history::-webkit-scrollbar-thumb,.__P__-module-scroll::-webkit-scrollbar-thumb,.__P__-home-scroll::-webkit-scrollbar-thumb,.__P__-help-list::-webkit-scrollbar-thumb,.__P__-toolui-code::-webkit-scrollbar-thumb,.__P__-sidebar-conversations::-webkit-scrollbar-thumb{background:var(--__P__-border-strong);border-radius:8px}.__P__-list-wrap{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.__P__-jump-strip{display:flex;flex:none;justify-content:center;padding:var(--__P__-space-1) 0}.__P__-jump{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;border:1px solid var(--__P__-border);background:var(--__P__-bg-elevated);color:var(--__P__-fg);box-shadow:var(--__P__-shadow-panel);cursor:pointer;opacity:.85;transition:opacity var(--__P__-dur-quick) var(--__P__-ease),transform var(--__P__-dur-quick) var(--__P__-ease);animation:__P__-bubble-in var(--__P__-dur-base) var(--__P__-ease)}.__P__-jump:hover{opacity:1}.__P__-jump:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;opacity:1}.__P__-jump:active{transform:translateY(1px)}.__P__-jump svg{width:18px;height:18px}.__P__-list{flex:1;min-height:0;overflow-y:auto;padding:var(--__P__-space-4);padding-bottom:var(--__P__-space-8);display:flex;flex-direction:column;gap:14px}.__P__-list--fade{--__P__-fade-size: 20px;--__P__-fade-top: 0px;--__P__-fade-bottom: 0px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 var(--__P__-fade-top),#000 calc(100% - var(--__P__-fade-bottom)),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 var(--__P__-fade-top),#000 calc(100% - var(--__P__-fade-bottom)),transparent 100%)}.__P__-list--fade[data-fade-top=true]{--__P__-fade-top: var(--__P__-fade-size)}.__P__-list--fade[data-fade-bottom=true]{--__P__-fade-bottom: var(--__P__-fade-size)}.__P__-list>*{width:100%;max-width:var(--__P__-conversation-max, 768px);margin-inline:auto}.__P__-load-previous,.__P__-history-more{display:flex;justify-content:center}.__P__-load-previous button,.__P__-history-more button{border:0;padding:4px 8px;background:transparent;color:var(--__P__-accent);font:inherit;font-size:var(--__P__-text-sm);font-weight:600;cursor:pointer}.__P__-load-previous button:hover,.__P__-history-more button:hover{text-decoration:underline}.__P__-load-previous button:focus-visible,.__P__-history-more button:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;border-radius:var(--__P__-radius-sm)}.__P__-load-previous button:disabled,.__P__-history-more button:disabled{cursor:wait;opacity:.6}.__P__-date-divider{display:flex;justify-content:center;margin-block:var(--__P__-space-3)}.__P__-date-pill{padding:3px 10px;border-radius:999px;font-size:calc(11px * var(--__P__-text-scale));font-weight:600;color:var(--__P__-fg-muted);background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);box-shadow:var(--__P__-shadow-card)}.__P__-bubble-row{display:flex}.__P__-bubble-row[data-role=user]{justify-content:flex-end}.__P__-bubble-row[data-role=assistant]{justify-content:flex-start}.__P__-bubble{max-width:100%;min-width:0;padding:var(--__P__-space-3) var(--__P__-space-4);border-radius:var(--__P__-radius);line-height:1.6;font-size:calc(14px * var(--__P__-text-scale));word-wrap:break-word;overflow-wrap:break-word;box-shadow:0 1px 2px #0000000a,0 1px 8px -4px #0000000f;animation:__P__-bubble-in var(--__P__-dur-base) var(--__P__-ease)}.__P__-bubble ::selection{background:color-mix(in srgb,var(--__P__-accent) 30%,transparent)}.__P__-bubble-row[data-role=user] .__P__-bubble ::selection{background:#fff6;color:var(--__P__-bubble-user-text)}@keyframes __P__-bubble-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.__P__-bubble-row[data-role=user] .__P__-bubble{background:var(--__P__-bubble-user);color:var(--__P__-bubble-user-text);border-end-end-radius:5px}.__P__-bubble-row[data-role=assistant] .__P__-bubble{background:var(--__P__-bubble-assistant);color:var(--__P__-bubble-assistant-text);border:1px solid var(--__P__-border);border-end-start-radius:5px}.__P__-bubble-row[data-role=operator] .__P__-bubble{display:flex;align-items:stretch;padding:0;overflow:hidden;background:var(--__P__-bubble-assistant);color:var(--__P__-bubble-assistant-text);border-end-start-radius:5px}.__P__-bubble-row[data-role=operator] .__P__-bubble-col{align-items:flex-start}.__P__-bubble-author{display:flex;flex:0 0 auto;align-items:center;padding:0 .875rem;border-inline-end:1px solid color-mix(in oklab,var(--__P__-accent),transparent 60%);color:var(--__P__-accent);font-size:calc(13px * var(--__P__-text-scale));font-weight:600;letter-spacing:.025em;user-select:none}.__P__-bubble-body{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--__P__-space-3) 6px;min-width:0}.__P__-bubble-body>*{flex:1 0 100%;min-width:0}.__P__-bubble-body>.__P__-source,.__P__-bubble-body>.__P__-typing{flex:0 1 auto}.__P__-bubble-row[data-role=operator] .__P__-bubble-body{flex:1 1 auto;min-width:0;padding:var(--__P__-space-3) var(--__P__-space-4)}.__P__-bubble-col{display:flex;flex-direction:column;max-width:85%;min-width:0}.__P__-bubble-row[data-role=user] .__P__-bubble-col{align-items:flex-end}.__P__-bubble-row[data-role=assistant] .__P__-bubble-col{align-items:flex-start}.__P__-bubble-row[data-role=assistant] .__P__-bubble-col:has(.__P__-toolui,.__P__-steps){width:100%}.__P__-bubble-row[data-role=assistant] .__P__-bubble-col:has(.__P__-toolui,.__P__-steps) .__P__-bubble{width:100%}@media(max-width:640px){.__P__-bubble-col{max-width:92%}.__P__-toolui:not(.__P__-toolui-collapsible){padding:var(--__P__-space-3);gap:var(--__P__-space-2)}details.__P__-toolui-collapsible>summary{padding:var(--__P__-space-2) var(--__P__-space-3)}details.__P__-toolui-collapsible>.__P__-toolui-section{margin:var(--__P__-space-3)}.__P__-toolui-section,.__P__-toolui-desc{padding:var(--__P__-space-2) var(--__P__-space-3)}}.__P__-bubble-meta{display:flex;align-items:center;gap:8px;margin-top:2px;padding:0 2px;min-height:24px}.__P__-bubble-actions{display:flex;align-items:center;gap:2px}.__P__-bubble-time{font-size:calc(11px * var(--__P__-text-scale));line-height:1;color:var(--__P__-fg-muted);user-select:none}.__P__-feedback{display:flex;align-items:center;gap:2px}.__P__-msg-action{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:var(--__P__-radius-sm);background:transparent;color:var(--__P__-fg-muted);cursor:pointer;opacity:.65;transition:opacity var(--__P__-dur-quick) var(--__P__-ease),background var(--__P__-dur-quick) var(--__P__-ease),color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-msg-action:hover{opacity:1;background:var(--__P__-bg-elevated);color:var(--__P__-fg)}.__P__-msg-action:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;opacity:1}.__P__-msg-action[data-active=true]{opacity:1;color:var(--__P__-accent-fg)}.__P__-msg-action svg{width:15px;height:15px}.__P__-md>*:first-child{margin-top:0}.__P__-md>*:last-child{margin-bottom:0}.__P__-md p{margin:10px 0}.__P__-md h1,.__P__-md h2,.__P__-md h3,.__P__-md h4,.__P__-md h5,.__P__-md h6{margin:18px 0 8px;line-height:1.3;letter-spacing:-.01em;font-weight:700}.__P__-md h1{font-size:1.4em}.__P__-md h2{font-size:1.22em}.__P__-md h3{font-size:1.08em}.__P__-md h4,.__P__-md h5,.__P__-md h6{font-size:1em}.__P__-md>h1:first-child,.__P__-md>h2:first-child,.__P__-md>h3:first-child,.__P__-md>h4:first-child,.__P__-md>h5:first-child,.__P__-md>h6:first-child{margin-top:0}.__P__-md ul,.__P__-md ol{padding-inline-start:1.5em;margin:10px 0}.__P__-md ul{list-style:disc}.__P__-md ol{list-style:decimal}.__P__-md li{margin:6px 0;padding-inline-start:2px}.__P__-md li::marker{color:var(--__P__-fg-muted)}.__P__-md li>p{margin:6px 0}.__P__-md li>ul,.__P__-md li>ol{margin:6px 0}.__P__-md strong,.__P__-md b{font-weight:650;letter-spacing:-.005em}.__P__-md em,.__P__-md i{font-style:italic}.__P__-md code{font-family:var(--__P__-font-mono);font-size:.86em;padding:1px 6px;border-radius:5px;background:color-mix(in srgb,var(--__P__-accent) 10%,transparent);color:var(--__P__-fg);border:1px solid color-mix(in srgb,var(--__P__-accent) 16%,transparent)}.__P__-md pre{font-family:var(--__P__-font-mono);font-size:calc(12.5px * var(--__P__-text-scale));padding:12px 14px;border-radius:var(--__P__-radius-sm);background:#7f7f7f1f;overflow-x:auto;margin:var(--__P__-space-3) 0;line-height:1.5}.__P__-md pre code{padding:0;background:none}.__P__-file-image,.__P__-file-chip{border-radius:var(--__P__-radius-sm);color:inherit;text-decoration:none}.__P__-file-image{display:block;width:fit-content;max-width:min(100%,240px);overflow:hidden}.__P__-file-image img{max-height:240px;object-fit:cover}.__P__-file-chip{display:flex;align-items:center;gap:var(--__P__-space-2);max-width:min(100%,280px);padding:var(--__P__-space-2);border:1px solid color-mix(in srgb,currentColor 18%,transparent);background:color-mix(in srgb,currentColor 5%,transparent);transition:background var(--__P__-dur-base) var(--__P__-ease)}.__P__-file-chip:hover{background:color-mix(in srgb,currentColor 10%,transparent)}.__P__-file-image:focus-visible,.__P__-file-chip:focus-visible{outline:2px solid currentColor;outline-offset:2px}.__P__-file-chip-icon{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:var(--__P__-radius-sm);background:color-mix(in srgb,currentColor 10%,transparent)}.__P__-file-chip-text{display:grid;min-width:0;line-height:1.35}.__P__-file-chip-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.__P__-file-chip-meta{font-size:var(--__P__-text-xs);opacity:.75}.__P__-md a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.__P__-md a:hover{text-decoration-thickness:2px}.__P__-md blockquote{margin:14px 0;padding:6px 14px;border-inline-start:3px solid color-mix(in srgb,var(--__P__-accent) 50%,transparent);background:color-mix(in srgb,var(--__P__-accent) 5%,transparent);border-start-end-radius:var(--__P__-radius-sm);border-end-end-radius:var(--__P__-radius-sm);color:var(--__P__-fg-muted)}.__P__-md blockquote>:first-child{margin-top:0}.__P__-md blockquote>:last-child{margin-bottom:0}.__P__-md hr{border:0;height:1px;background:color-mix(in srgb,currentColor 18%,transparent);margin:var(--__P__-space-4) 0}.__P__-md table{border-collapse:collapse;margin:var(--__P__-space-3) 0;font-size:.95em;display:block;overflow-x:auto;max-width:100%;font-variant-numeric:tabular-nums}.__P__-md th,.__P__-md td{padding:6px 10px;border-bottom:1px solid color-mix(in srgb,currentColor 12%,transparent);text-align:start}.__P__-md th{font-weight:700;background:color-mix(in srgb,currentColor 6%,transparent)}.__P__-md h1+ul,.__P__-md h1+ol,.__P__-md h2+ul,.__P__-md h2+ol,.__P__-md h3+ul,.__P__-md h3+ol,.__P__-md h4+ul,.__P__-md h4+ol{margin-top:var(--__P__-space-1)}.__P__-loading{display:inline-flex;align-items:center;gap:var(--__P__-space-2);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-loading-spinner{width:14px;height:14px;border-radius:999px;border:2px solid currentColor;border-top-color:transparent;animation:__P__-spin .8s linear infinite}@keyframes __P__-spin{to{transform:rotate(1turn)}}.__P__-typing{display:inline-flex;gap:var(--__P__-space-1);padding:var(--__P__-space-1) 0}.__P__-typing span{width:5px;height:5px;border-radius:999px;background:currentColor;opacity:.4;animation:__P__-blink 1.2s var(--__P__-ease) infinite}.__P__-typing span:nth-child(2){animation-delay:.2s}.__P__-typing span:nth-child(3){animation-delay:.4s}@keyframes __P__-blink{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.__P__-steps{min-width:0;font-size:var(--__P__-text-sm)}.__P__-steps-head,.__P__-steps-row-head,.__P__-steps-thought-more{display:inline-flex;align-items:center;gap:var(--__P__-space-2);max-width:100%;min-width:0;min-height:28px;padding:0;border:0;background:none;color:var(--__P__-fg-muted);font:inherit;text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent}.__P__-steps-head:hover,.__P__-steps-row-head:hover,.__P__-steps-thought-more:hover{color:var(--__P__-fg)}.__P__-steps-head:focus-visible,.__P__-steps-row-head:focus-visible,.__P__-steps-thought-more:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;border-radius:var(--__P__-radius-sm)}.__P__-steps-icon,.__P__-steps-row-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:16px;height:16px}.__P__-steps-icon svg,.__P__-steps-row-icon svg{width:14px;height:14px}.__P__-steps-label,.__P__-steps-row-label{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-steps-sep{margin-inline:var(--__P__-space-1)}.__P__-steps-name .__P__-steps-count{margin-inline-start:var(--__P__-space-1)}.__P__-steps-count,.__P__-steps-failed,.__P__-steps-denied,.__P__-steps-time{flex:none;font-variant-numeric:tabular-nums}.__P__-steps-failed{color:var(--__P__-danger-text)}.__P__-steps-denied{color:var(--__P__-fg-muted)}.__P__-steps-chevron{display:inline-flex;flex:none;width:16px;height:16px;transition:transform var(--__P__-dur-quick) var(--__P__-ease)}.__P__-steps-chevron svg{width:16px;height:16px}.__P__-steps-chevron[data-open=true]{transform:rotate(180deg)}.__P__-steps-list{position:relative;display:flex;flex-direction:column;gap:var(--__P__-space-1);margin:var(--__P__-space-1) 0 0;padding:0;list-style:none}.__P__-steps-list:before{content:"";position:absolute;inset-block:0;inset-inline-start:7px;width:2px;border-radius:1px;background:var(--__P__-border)}.__P__-steps-row{position:relative;display:grid;grid-template-columns:16px minmax(0,1fr);column-gap:var(--__P__-space-2);align-items:start}.__P__-steps-row .__P__-steps-row-icon{margin-block:6px;border-radius:999px;background:var(--__P__-bubble-assistant);color:var(--__P__-fg-muted)}.__P__-steps-row[data-status=error] .__P__-steps-row-icon{color:var(--__P__-danger-text)}.__P__-steps-row-main{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.__P__-steps-row-name{color:var(--__P__-fg);font-weight:500}.__P__-steps-row-summary{margin-inline-start:var(--__P__-space-2);color:var(--__P__-fg-muted)}.__P__-steps-row-body{display:flex;flex-direction:column;gap:var(--__P__-space-2);width:100%;margin:var(--__P__-space-1) 0 var(--__P__-space-2)}.__P__-steps-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease-out}.__P__-steps-body[data-open=true]{grid-template-rows:1fr}.__P__-steps-body-inner{min-height:0;overflow:hidden}.__P__-steps-live{min-width:0;overflow:hidden;text-overflow:ellipsis;background:linear-gradient(90deg,var(--__P__-fg-muted) 0%,var(--__P__-fg) 50%,var(--__P__-fg-muted) 100%) 0 0 / 200% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:__P__-steps-shimmer 2s linear infinite}@keyframes __P__-steps-shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.__P__-steps-body,.__P__-steps-chevron{transition:none}.__P__-steps-live{background:none;color:var(--__P__-fg-muted);animation:none}}.__P__-steps-thought-label,.__P__-steps-stopped-label{display:inline-flex;align-items:center;min-height:28px;color:var(--__P__-fg-muted)}.__P__-steps-thought-text{width:100%;color:var(--__P__-fg-muted)}.__P__-steps-thought-text[data-clamped=true]{max-height:calc(3 * 1.6em);overflow:hidden;mask-image:linear-gradient(to bottom,#000 60%,transparent)}.__P__-steps-thought-more{min-height:24px;font-size:var(--__P__-text-xs)}.__P__-reasoning-body{color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-reasoning-body>:first-child{margin-top:0}.__P__-reasoning-body>:last-child{margin-bottom:0}.__P__-source{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:var(--__P__-space-1) var(--__P__-space-2);border-radius:999px;background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);color:var(--__P__-fg-muted);font-size:var(--__P__-text-xs);text-decoration:none}a.__P__-source:hover{color:var(--__P__-fg);border-color:var(--__P__-accent)}.__P__-source-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-composer{border-top:1px solid var(--__P__-border);padding:10px 12px;background:var(--__P__-bg);display:flex;flex-direction:column;gap:var(--__P__-space-2)}.__P__-composer>*{width:100%;max-width:var(--__P__-conversation-max, 768px);margin-inline:auto}.__P__-compaction-status{width:100%;padding:10px 14px;justify-content:center;font-size:var(--__P__-text-xs)}.__P__-message-queue{display:flex;max-height:112px;flex-direction:column;gap:var(--__P__-space-1);overflow-y:auto}.__P__-attachment-chip.__P__-queued-message{width:100%;max-width:none}.__P__-queued-text{min-width:0;flex:1}.__P__-composer-row{display:flex;align-items:flex-end;gap:6px}.__P__-textarea{flex:1;--__P__-textarea-base-height: 40px;height:var(--__P__-textarea-base-height);max-height:160px;padding:10px 12px;border-radius:var(--__P__-radius);background:var(--__P__-bg-elevated);border:1px solid transparent;font-size:calc(14px * var(--__P__-text-scale));line-height:1.4;transition:height var(--__P__-dur-quick) var(--__P__-ease),border-color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-textarea:focus-visible{outline:none;border-color:var(--__P__-focus)}@media(pointer:coarse){.__P__-textarea{--__P__-textarea-base-height: 44px}}.__P__-send{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;transition:opacity var(--__P__-dur-quick) var(--__P__-ease),transform var(--__P__-dur-quick) var(--__P__-ease),background var(--__P__-dur-quick) var(--__P__-ease)}.__P__-send[data-shape=circle]{border-radius:999px}.__P__-send[data-shape=square]{border-radius:var(--__P__-radius-sm)}.__P__-send[data-shape=pill]{width:auto;padding:0 18px;border-radius:999px}.__P__-send[data-variant=filled]{background:var(--__P__-accent);color:var(--__P__-accent-text)}.__P__-send[data-variant=outline]{background:transparent;color:var(--__P__-accent-fg);border-color:var(--__P__-accent)}.__P__-send[data-variant=outline]:not(:disabled):hover{background:color-mix(in srgb,var(--__P__-accent) 10%,transparent)}.__P__-send[data-variant=ghost]{background:transparent;color:var(--__P__-accent-fg)}.__P__-send[data-variant=ghost]:not(:disabled):hover{background:color-mix(in srgb,var(--__P__-accent) 8%,transparent)}.__P__-send:disabled{opacity:.4;cursor:not-allowed}.__P__-send:not(:disabled):hover{transform:translateY(-1px)}.__P__-send:not(:disabled):active{transform:translateY(0)}.__P__-send:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-send svg{width:18px;height:18px}.__P__-composer-actions{display:flex;gap:var(--__P__-space-1);flex-wrap:wrap}.__P__-attachments{display:flex;flex-wrap:wrap;gap:6px}.__P__-attachment-chip{display:inline-flex;align-items:center;gap:6px;padding:var(--__P__-space-1) var(--__P__-space-2) var(--__P__-space-1) var(--__P__-space-1);border-radius:999px;background:var(--__P__-bg-elevated);border:1px solid var(--__P__-border);font-size:var(--__P__-text-xs);max-width:200px}.__P__-attachment-thumb{width:24px;height:24px;border-radius:999px;object-fit:cover;background:var(--__P__-border)}.__P__-attachment-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.__P__-attachment-remove{width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--__P__-fg-muted)}.__P__-attachment-remove:hover{background:var(--__P__-border);color:var(--__P__-fg)}.__P__-dropzone{position:absolute;inset:8px;border:2px dashed var(--__P__-accent);border-radius:var(--__P__-radius);background:color-mix(in srgb,var(--__P__-accent) 8%,transparent);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--__P__-accent-fg);pointer-events:none;z-index:10;animation:__P__-fade-in var(--__P__-dur-quick) var(--__P__-ease)}@keyframes __P__-fade-in{0%{opacity:0}to{opacity:1}}.__P__-error{display:flex;align-items:center;gap:var(--__P__-space-2);padding:8px 12px;border-radius:var(--__P__-radius-sm);background:color-mix(in oklab,var(--__P__-danger) 8%,var(--__P__-bg-elevated));border:1px solid color-mix(in oklab,var(--__P__-danger) 20%,transparent);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-error-icon{display:inline-flex;flex:none;width:16px;height:16px;color:var(--__P__-danger-text)}.__P__-error-icon svg{width:16px;height:16px}.__P__-error-text{min-width:0}.__P__-error-retry{flex:none;margin-inline-start:auto;min-height:28px;border:0;background:none;padding:0;color:var(--__P__-accent-fg);font:inherit;font-size:var(--__P__-text-sm);font-weight:600;text-decoration:underline;white-space:nowrap;cursor:pointer}.__P__-error-retry:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px;border-radius:var(--__P__-radius-sm)}.__P__-history{flex:1;overflow-y:auto;padding:var(--__P__-space-2) var(--__P__-space-1) var(--__P__-space-3)}.__P__-history-footer{flex:none;padding:var(--__P__-space-2) var(--__P__-space-3) var(--__P__-space-3);border-top:1px solid var(--__P__-border);background:var(--__P__-surface)}.__P__-history-new{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--__P__-space-2);padding:var(--__P__-space-2) var(--__P__-space-3);border:none;border-radius:var(--__P__-radius-md);background:var(--__P__-accent);color:var(--__P__-on-accent);cursor:pointer;font-size:var(--__P__-text-sm);font-weight:600;transition:filter var(--__P__-dur-quick) var(--__P__-ease-out),transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-history-new svg{width:16px;height:16px}.__P__-history-new:hover{filter:brightness(1.08)}.__P__-history-new:active{transform:translateY(1px)}.__P__-history-new:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-history-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 16px;color:var(--__P__-fg-muted);font-size:calc(14px * var(--__P__-text-scale));text-align:center}.__P__-history-group{display:flex;flex-direction:column;padding:0 var(--__P__-space-3)}.__P__-history-heading{font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted);padding:14px 4px 8px;text-transform:uppercase;letter-spacing:.04em}.__P__-history-card{display:flex;flex-direction:column;background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-lg, 14px);overflow:hidden}.__P__-history-card>[role=listitem]{display:flex;flex-direction:column}.__P__-history-item{all:unset;display:flex;align-items:center;gap:var(--__P__-space-3);padding:12px var(--__P__-space-3);cursor:pointer;transition:background var(--__P__-dur-base) var(--__P__-ease)}.__P__-history-card>*+*{border-top:1px solid var(--__P__-border)}.__P__-history-item:hover{background:var(--__P__-bg-elevated)}.__P__-history-item:focus-visible{background:var(--__P__-bg-elevated);outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-history-avatar{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:var(--__P__-radius-md);background:color-mix(in oklab,var(--__P__-accent) 12%,transparent);color:var(--__P__-accent-fg)}.__P__-history-avatar svg{width:18px;height:18px}.__P__-history-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.__P__-history-row{display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-2)}.__P__-history-title{flex:1;min-width:0;font-size:calc(14px * var(--__P__-text-scale));font-weight:500;color:var(--__P__-fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-history-time{flex:none;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted)}.__P__-history-preview{flex:1;min-width:0;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-history-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--__P__-accent)}.__P__-history-item[data-unread=true] .__P__-history-title{font-weight:600}.__P__-history-item[data-closed=true] .__P__-history-title{color:var(--__P__-fg-muted)}.__P__-history-item-skeleton{cursor:default;pointer-events:none}.__P__-skeleton{display:block;border-radius:4px;background:linear-gradient(90deg,color-mix(in oklab,var(--__P__-fg) 9%,transparent) 30%,color-mix(in oklab,var(--__P__-fg) 17%,transparent),color-mix(in oklab,var(--__P__-fg) 9%,transparent) 70%);background-size:200% 100%;animation:__P__-skeleton-shimmer 1.8s ease-in-out infinite}.__P__-history-avatar.__P__-skeleton{border-radius:var(--__P__-radius-md)}.__P__-skeleton-heading{width:52px;height:8px}.__P__-skeleton-title{width:55%;height:12px}.__P__-skeleton-time{width:34px;height:10px}.__P__-skeleton-preview{width:80%;height:10px}@keyframes __P__-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.__P__-skeleton{animation:none}}.__P__-list-loading{margin:auto;padding:var(--__P__-space-6) var(--__P__-space-4);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);text-align:center}.__P__-readonly-banner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 12px;margin:0 var(--__P__-space-3) var(--__P__-space-3);border-radius:var(--__P__-radius-md);background:var(--__P__-bg-elevated);color:var(--__P__-fg-muted);text-align:center;font-size:var(--__P__-text-sm)}.__P__-readonly-label{line-height:1.4}.__P__-readonly-cta{appearance:none;border:0;cursor:pointer;padding:var(--__P__-space-2) var(--__P__-space-4);border-radius:999px;background:var(--__P__-accent);color:var(--__P__-accent-text, #fff);font:inherit;font-weight:600;font-size:var(--__P__-text-sm);transition:filter var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-readonly-cta:hover,.__P__-readonly-cta:focus-visible{filter:brightness(1.1)}.__P__-operator-banner{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 var(--__P__-space-3) var(--__P__-space-1);padding:8px 12px;border-radius:var(--__P__-radius-md);background:color-mix(in oklab,var(--__P__-bg-elevated),var(--__P__-accent) 6%);color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);line-height:1.3;text-align:center}.__P__-operator-pulse{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--__P__-accent)}.__P__-operator-banner[data-mode=awaiting-operator] .__P__-operator-pulse{animation:__P__-operator-pulse 1.4s var(--__P__-ease-out) infinite}.__P__-cancel-operator-request{flex:0 0 auto;padding:0;border:0;background:none;color:var(--__P__-accent);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.__P__-cancel-operator-request:hover{opacity:.8}.__P__-cancel-operator-request:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px;border-radius:var(--__P__-radius-sm)}@keyframes __P__-operator-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.__P__-readonly-cta:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px}.__P__-composer-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 16px;margin:0 var(--__P__-space-3);border-top:1px solid var(--__P__-border);text-align:center;font-size:calc(11px * var(--__P__-text-scale));line-height:1.4;color:var(--__P__-fg-muted)}.__P__-disclaimer{max-width:320px;margin:0 auto;opacity:.9;letter-spacing:.01em}.__P__-poweredby{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:inherit;text-decoration:none;opacity:.7;transition:opacity var(--__P__-dur-base) var(--__P__-ease);font-size:calc(11px * var(--__P__-text-scale));letter-spacing:.02em}.__P__-poweredby:hover{opacity:1}.__P__-poweredby-logo{height:12px;width:auto;display:inline-block;vertical-align:middle}.__P__-poweredby-bar{flex:none;display:flex;align-items:center;justify-content:center;padding:6px 16px;border-top:1px solid var(--__P__-border);background:var(--__P__-bg-elevated)}.__P__-menu-wrap{position:relative;display:inline-flex}.__P__-menu{position:absolute;top:100%;inset-inline-end:0;margin-top:6px;min-width:200px;padding:6px;background:var(--__P__-bg);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);box-shadow:var(--__P__-shadow-panel);z-index:10;display:flex;flex-direction:column;gap:2px;animation:__P__-menu-in var(--__P__-dur-base) var(--__P__-ease)}@media(prefers-reduced-motion:reduce){.__P__-menu{animation:none}}@keyframes __P__-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.98);transform-origin:top right}to{opacity:1;transform:none}}.__P__-menu-item{all:unset;display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:var(--__P__-text-sm);color:var(--__P__-fg);border-radius:var(--__P__-radius-sm);cursor:pointer;user-select:none}.__P__-menu-item:hover{background:var(--__P__-bg-elevated)}.__P__-menu-item:focus-visible{background:var(--__P__-bg-elevated);outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-menu-item[disabled]{opacity:.45;cursor:not-allowed}.__P__-menu-icon{display:inline-flex;width:16px;height:16px;color:var(--__P__-fg-muted)}.__P__-menu-icon svg{width:16px;height:16px}.__P__-menu-label{flex:1}.__P__-menu-check{display:inline-flex;color:var(--__P__-accent-fg)}.__P__-menu-check svg{width:14px;height:14px}.__P__-menu-item-segmented{cursor:default}.__P__-menu-item-segmented:hover{background:transparent}.__P__-segmented{display:inline-flex;gap:2px;padding:2px;background:var(--__P__-bg-elevated);border-radius:var(--__P__-radius-sm)}.__P__-segment{all:unset;min-width:26px;padding:3px 8px;font-size:var(--__P__-text-xs);font-weight:600;letter-spacing:.02em;text-align:center;color:var(--__P__-fg-muted);border-radius:calc(var(--__P__-radius-sm) - 2px);cursor:pointer;transition:color .12s ease,background .12s ease}.__P__-segment:hover{color:var(--__P__-fg)}.__P__-segment[data-on=true]{background:var(--__P__-bg);color:var(--__P__-accent-fg);box-shadow:var(--__P__-shadow-card)}.__P__-segment:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-resize-grip{position:absolute;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--__P__-fg-muted);opacity:.45;transition:opacity var(--__P__-dur-base) var(--__P__-ease);z-index:2;touch-action:none;user-select:none}.__P__-resize-grip:hover,.__P__-resize-grip:focus-visible{opacity:1}.__P__-resize-grip svg{width:10px;height:10px}.__P__-resize-grip--bottom-left{bottom:2px;left:2px;cursor:nesw-resize;transform:scaleX(-1)}.__P__-resize-grip--bottom-right{bottom:2px;right:2px;cursor:nwse-resize}.__P__-resize-grip--top-left{top:2px;left:2px;cursor:nwse-resize;transform:rotate(180deg)}.__P__-resize-grip--top-right{top:2px;right:2px;cursor:nesw-resize;transform:scaleY(-1)}:host(:not([data-mode="open"])) .__P__-resize-grip{display:none}.__P__-messenger{display:flex;flex-direction:column;overflow:hidden}.__P__-messenger-body,.__P__-messenger-pane{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.__P__-messenger-pane[hidden]{display:none}@keyframes __P__-view-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.__P__-module{display:flex;flex-direction:column;height:100%;min-height:0}@media(prefers-reduced-motion:no-preference){.__P__-module,.__P__-history{animation:__P__-view-in .18s var(--__P__-ease-out)}}.__P__-module-scroll{flex:1;min-height:0;overflow-y:auto;padding:var(--__P__-space-3);display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-home{container-type:inline-size;background:radial-gradient(125% 65% at 88% 0%,color-mix(in srgb,#fff 16%,transparent),transparent 55%),linear-gradient(180deg,var(--__P__-accent) 0%,var(--__P__-accent) 22%,color-mix(in srgb,var(--__P__-accent) 28%,var(--__P__-surface)) 44%,var(--__P__-surface) 70%);border-radius:var(--__P__-radius-lg) var(--__P__-radius-lg) 0 0}.__P__-home-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;background:transparent}.__P__-home-cards{display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:4px 14px 16px}.__P__-module-pad{padding:var(--__P__-space-3) var(--__P__-space-3) 0}.__P__-module-empty{display:flex;flex-direction:column;align-items:center;gap:var(--__P__-space-3);padding:var(--__P__-space-8) var(--__P__-space-4);text-align:center;color:var(--__P__-fg-muted);font-size:var(--__P__-text-base)}.__P__-module-retry{padding:var(--__P__-space-2) var(--__P__-space-4);border:1px solid var(--__P__-border-strong);border-radius:var(--__P__-radius-sm);color:var(--__P__-fg);font-weight:600;cursor:pointer;transition:background var(--__P__-dur-quick) var(--__P__-ease-out),border-color var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-module-retry:hover{background:var(--__P__-hover);border-color:var(--__P__-accent)}.__P__-module-retry:active{background:var(--__P__-border)}.__P__-module-retry:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-help-list{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--__P__-space-3)}.__P__-help-group{display:flex;flex-direction:column}.__P__-help-section-title{position:sticky;top:0;z-index:1;margin:0;padding:var(--__P__-space-3) var(--__P__-space-5) var(--__P__-space-2);font-size:var(--__P__-text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--__P__-fg-muted);background:var(--__P__-bg)}.__P__-help-card{margin:0 var(--__P__-space-3) var(--__P__-space-3);background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);overflow:hidden}.__P__-help-card .__P__-list-row{border-bottom:0;border-radius:0}.__P__-help-card .__P__-list-row+.__P__-list-row{border-top:1px solid var(--__P__-border)}.__P__-help-more{justify-content:center;color:var(--__P__-accent-fg);font-weight:600}.__P__-tabbar{display:flex;border-top:1px solid var(--__P__-border);background:var(--__P__-bg-elevated);flex-shrink:0}.__P__-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--__P__-space-1);min-height:48px;padding:var(--__P__-space-2) var(--__P__-space-1);color:var(--__P__-fg-muted);font-size:var(--__P__-text-xs);font-weight:600;transition:color var(--__P__-dur-quick) var(--__P__-ease-out)}@media(hover:hover){.__P__-tab:hover{background:var(--__P__-hover)}}.__P__-tab[aria-selected=true]{color:var(--__P__-accent-fg)}.__P__-tab:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-tab:active{background:var(--__P__-hover)}.__P__-tab-icon{position:relative;display:inline-flex}.__P__-tab-icon svg{width:22px;height:22px}.__P__-tab-badge{position:absolute;top:-2px;left:calc(50% + 6px);width:8px;height:8px;border-radius:50%;background:var(--__P__-accent);box-shadow:0 0 0 2px var(--__P__-bg-elevated)}.__P__-home-hero{flex-shrink:0;padding:var(--__P__-space-5) var(--__P__-space-5) var(--__P__-space-3);color:var(--__P__-on-accent);--__P__-focus: var(--__P__-on-accent)}.__P__-home-hero-top{display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-3);min-height:32px}.__P__-home-brand{font-size:clamp(calc(12px * var(--__P__-text-scale)),calc(3.2cqi * var(--__P__-text-scale)),calc(14px * var(--__P__-text-scale)));font-weight:600;letter-spacing:.01em;color:color-mix(in srgb,#fff 82%,transparent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.__P__-home-brand-spacer{flex:1}.__P__-home-hero-actions{display:flex;align-items:center;gap:var(--__P__-space-2);flex-shrink:0}.__P__-home-hero-actions .__P__-icon-btn{color:#fff}.__P__-home-hero-actions .__P__-icon-btn:hover{background:color-mix(in srgb,#fff 18%,transparent);color:#fff}.__P__-home-hero-actions .__P__-icon-btn:active{background:color-mix(in srgb,#fff 26%,transparent)}.__P__-home-greeting{margin:28px 0 0;font-family:var(--__P__-font-display);font-size:clamp(calc(19px * var(--__P__-text-scale)),calc(5.5cqi * var(--__P__-text-scale)),var(--__P__-text-2xl));font-weight:800;line-height:1.18;letter-spacing:-.01em;overflow-wrap:anywhere}.__P__-home-lead{margin:10px 0 0;font-family:var(--__P__-font-display);font-size:clamp(calc(15px * var(--__P__-text-scale)),calc(4.2cqi * var(--__P__-text-scale)),var(--__P__-text-xl));font-weight:600;line-height:1.25;letter-spacing:-.005em;color:color-mix(in srgb,var(--__P__-on-accent) 78%,transparent);overflow-wrap:anywhere}.__P__-home-avatars{display:flex}.__P__-home-avatar{width:30px;height:30px;border-radius:var(--__P__-radius-md);overflow:hidden;margin-inline-start:-10px;border:2px solid color-mix(in srgb,#fff 92%,transparent);box-shadow:0 1px 3px #0000002e;background:var(--__P__-surface);display:inline-flex;align-items:center;justify-content:center;font-size:var(--__P__-text-xs);font-weight:700;color:var(--__P__-fg)}.__P__-home-avatar:first-child{margin-inline-start:0}.__P__-home-avatar img{width:100%;height:100%;object-fit:cover}.__P__-home-content{background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);box-shadow:var(--__P__-shadow-card);overflow:hidden}.__P__-home-content-title{padding:var(--__P__-space-4) var(--__P__-space-4) var(--__P__-space-3);font-size:var(--__P__-text-sm);font-weight:700}.__P__-home-content-list{display:flex;flex-direction:column;padding:0 var(--__P__-space-2) var(--__P__-space-2)}.__P__-home-content-list .__P__-list-row+.__P__-list-row{border-top:1px solid var(--__P__-border)}.__P__-home-card{display:block;width:100%;text-align:start;background:var(--__P__-surface);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);padding:var(--__P__-space-4);box-shadow:var(--__P__-shadow-card)}.__P__-home-card[data-interactive=true]{cursor:pointer;transition:background var(--__P__-dur-quick) var(--__P__-ease-out),transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-home-card[data-interactive=true]:hover{background:var(--__P__-bg-elevated)}.__P__-home-card[data-interactive=true]:active{transform:translateY(1px)}.__P__-home-card[data-interactive=true]:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-home-recent-row{display:flex;align-items:center;gap:var(--__P__-space-3)}.__P__-home-recent-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;border-radius:var(--__P__-radius-md);background:color-mix(in oklch,var(--__P__-accent) 14%,transparent);color:var(--__P__-accent-fg)}.__P__-home-recent-avatar svg{width:20px;height:20px}.__P__-home-recent-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;line-height:1.45}.__P__-home-recent-title{font-weight:600;font-size:calc(14px * var(--__P__-text-scale))}.__P__-home-recent-preview{color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.__P__-home-recent-dot{width:8px;height:8px;border-radius:999px;background:var(--__P__-accent);flex-shrink:0}.__P__-home-recent-row[data-unread=true] .__P__-home-recent-title{font-weight:700}.__P__-home-status{display:flex;align-items:center;gap:var(--__P__-space-3)}.__P__-home-status-icon svg{width:22px;height:22px;color:var(--__P__-success)}.__P__-home-status[data-level=degraded] .__P__-home-status-icon svg{color:var(--__P__-warning)}.__P__-home-status[data-level=down] .__P__-home-status-icon svg{color:var(--__P__-danger)}.__P__-home-status-text{font-weight:600;font-size:calc(14px * var(--__P__-text-scale))}.__P__-home-search{display:flex;align-items:center;gap:var(--__P__-space-2);width:100%;padding:var(--__P__-space-3) var(--__P__-space-4);border-radius:var(--__P__-radius);border:1px solid var(--__P__-border);background:var(--__P__-surface);text-align:start}.__P__-home-search[data-input=true]{background:var(--__P__-bg-elevated)}.__P__-home-search:hover{border-color:var(--__P__-border-strong)}.__P__-home-search:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-home-search[data-input=true]:focus-within{outline:none;border-color:var(--__P__-focus)}.__P__-home-search-text{flex:1;color:var(--__P__-fg-muted);font-size:calc(14px * var(--__P__-text-scale))}.__P__-home-search-input{flex:1;border:0;background:transparent;font-size:calc(14px * var(--__P__-text-scale));color:var(--__P__-fg);outline:none}.__P__-home-search-input:focus-visible{outline:none}.__P__-home-search-icon svg{width:18px;height:18px;color:var(--__P__-accent-fg)}.__P__-home-ask{padding-block:6px;padding-inline-end:6px}.__P__-home-ask .__P__-send{width:32px;height:32px;flex-shrink:0}.__P__-home-ask .__P__-send[data-shape=pill]{width:auto;padding:0 14px}.__P__-home-ask .__P__-send svg{width:16px;height:16px}.__P__-list-row{display:flex;align-items:center;gap:var(--__P__-space-3);width:100%;min-height:44px;text-align:start;padding:var(--__P__-space-3) var(--__P__-space-2);border-radius:var(--__P__-radius-sm)}.__P__-list-row:hover{background:var(--__P__-hover)}.__P__-list-row:active{background:var(--__P__-border)}.__P__-list-row:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}.__P__-list-row-body{display:flex;flex-direction:column;min-width:0;flex:1}.__P__-list-row-title{font-weight:600;font-size:var(--__P__-text-md);line-height:1.35}.__P__-list-row-sub{color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm);margin-top:var(--__P__-space-1);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.__P__-list-row-chevron svg{width:18px;height:18px;color:var(--__P__-accent-fg);flex-shrink:0}.__P__-back-header{display:flex;align-items:center;gap:var(--__P__-space-2);padding:10px 12px;border-bottom:1px solid var(--__P__-border);flex-shrink:0}.__P__-back-title{flex:1;text-align:center;font-size:var(--__P__-text-md);font-weight:700;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-back-spacer{width:32px;height:1px}.__P__-history>*,.__P__-home-scroll>*,.__P__-module-scroll>*,.__P__-help-list>*,.__P__-history-footer>*,.__P__-module-pad{width:100%;max-width:var(--__P__-conversation-max, 768px);margin-inline:auto}.__P__-header,.__P__-back-header{padding-inline:max(12px,calc((100% - var(--__P__-conversation-max, 768px)) / 2))}.__P__-tabbar{padding-inline:max(0px,calc((100% - var(--__P__-conversation-max, 768px)) / 2))}.__P__-content{display:flex;flex-direction:column;gap:14px;width:100%;max-width:68ch;margin:0 auto}.__P__-content-hero{width:100%;border-radius:var(--__P__-radius)}.__P__-content-subtitle{color:var(--__P__-fg-muted);margin:0}.__P__-content-vote{display:flex;align-items:center;flex-wrap:wrap;gap:var(--__P__-space-2);padding-top:var(--__P__-space-3);border-top:1px solid var(--__P__-border)}.__P__-content-frame{flex:1;min-height:0;width:100%;border:0;background:#fff}.__P__-news-list{display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-news-card{display:block;width:100%;text-align:start;line-height:1.45;border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);overflow:hidden;background:var(--__P__-surface);transition:background var(--__P__-dur-quick) var(--__P__-ease-out),transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-news-card:hover{background:var(--__P__-bg-elevated)}.__P__-news-card:active{transform:translateY(1px)}.__P__-news-card:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-news-hero{width:100%;display:block}.__P__-news-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px}.__P__-news-title{font-weight:700;font-size:var(--__P__-text-md)}.__P__-news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--__P__-fg-muted);font-size:var(--__P__-text-sm)}.__P__-news-tag{padding:1px 8px;border-radius:6px;background:var(--__P__-hover);color:var(--__P__-fg);font-size:calc(12px * var(--__P__-text-scale));white-space:nowrap}.__P__-news-more{display:flex;align-items:center;justify-content:center;gap:var(--__P__-space-2);width:100%;min-height:44px;border:1px solid var(--__P__-border);border-radius:var(--__P__-radius);background:var(--__P__-surface);color:var(--__P__-accent-fg);font-weight:600}.__P__-news-more:hover{background:var(--__P__-bg-elevated)}.__P__-news-more:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}.__P__-news-summary{color:var(--__P__-fg-muted);font-size:calc(14px * var(--__P__-text-scale));display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.__P__-modules-empty{display:flex;align-items:center;justify-content:center;position:relative}.__P__-modules-empty-close{position:absolute;top:12px;inset-inline-end:12px}.__P__-modules-empty-text{color:var(--__P__-fg-muted);font-size:var(--__P__-text-base)}.__P__-form{display:flex;flex-direction:column;gap:var(--__P__-space-4)}.__P__-field{display:flex;flex-direction:column;gap:6px}.__P__-field-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--__P__-space-2)}.__P__-field-label{font-size:var(--__P__-text-sm);font-weight:600;color:var(--__P__-fg)}.__P__-field-req{color:var(--__P__-danger)}.__P__-field-type{flex-shrink:0;align-self:center;margin-inline-start:auto;border:1px solid var(--__P__-border);border-radius:5px;background:color-mix(in oklab,var(--__P__-fg-muted) 9%,transparent);padding:1px 7px;font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted);white-space:nowrap}.__P__-field-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box;padding:10px var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);color:var(--__P__-fg);font:inherit;font-size:var(--__P__-text-sm);resize:vertical;transition:border-color var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-field-input:focus-visible{outline:none;border-color:var(--__P__-accent)}.__P__-field[data-invalid=true] .__P__-field-input{border-color:var(--__P__-danger)}.__P__-field-input[type=date],.__P__-field-input[type=time]{appearance:none;-webkit-appearance:none}@media(pointer:coarse){.__P__-textarea,.__P__-home-search-input,.__P__-field-input{font-size:max(16px,calc(16px * var(--__P__-text-scale)))}}.__P__-field-hint{font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted)}.__P__-field-error{font-size:var(--__P__-text-xs);color:var(--__P__-danger)}.__P__-field-choices{display:flex;flex-direction:column;gap:10px;padding-top:2px}.__P__-choice{display:flex;align-items:flex-start;gap:10px;font-size:var(--__P__-text-sm);color:var(--__P__-fg);cursor:pointer}.__P__-choice input{margin-top:2px;accent-color:var(--__P__-accent)}.__P__-form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--__P__-space-2);margin-top:var(--__P__-space-2)}.__P__-form-hint{flex:1 1 auto;min-width:6rem;margin-inline-end:auto;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted)}.__P__-form-submit{padding:var(--__P__-space-2) var(--__P__-space-4);border:none;border-radius:var(--__P__-radius-md);background:var(--__P__-accent);color:var(--__P__-accent-text, #fff);font:inherit;font-weight:600;font-size:var(--__P__-text-sm);white-space:nowrap;flex-shrink:0;cursor:pointer;transition:filter var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-form-submit:hover:not(:disabled){filter:brightness(1.06)}.__P__-form-submit:disabled{opacity:.6;cursor:default}.__P__-form-skip{padding:var(--__P__-space-2) var(--__P__-space-4);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:transparent;color:var(--__P__-fg-muted);font:inherit;font-size:var(--__P__-text-sm);white-space:nowrap;flex-shrink:0;cursor:pointer;transition:background var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-form-skip:hover:not(:disabled){background:var(--__P__-bg-elevated)}@media(max-width:640px){.__P__-form-hint{flex-basis:100%;margin-inline-end:0;font-size:var(--__P__-text-xs)}.__P__-form-submit,.__P__-form-skip{flex:1 1 0;text-align:center}}.__P__-form-gate{display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:var(--__P__-space-4);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:var(--__P__-bg-elevated)}.__P__-form-gate-title{margin:0;font-size:var(--__P__-text-base);font-weight:700;color:var(--__P__-fg)}.__P__-form-gate-desc{margin:0 0 var(--__P__-space-1);font-size:var(--__P__-text-sm);color:var(--__P__-fg-muted)}.__P__-form-done{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border:1px dashed var(--__P__-border);border-radius:999px;align-self:center;font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted)}.__P__-form-done svg{width:14px;height:14px;color:var(--__P__-success, #22c55e)}.__P__-form-done[data-outcome=skipped] svg{color:var(--__P__-fg-muted)}.__P__-form-done-fill{border:0;background:none;padding:0 2px;cursor:pointer;font:inherit;font-weight:600;color:var(--__P__-accent-fg)}.__P__-form-done-fill:hover{text-decoration:underline}details.__P__-form-done{display:block;padding:0;border-radius:var(--__P__-radius-md)}details[open].__P__-form-done{width:min(100%,420px);background:var(--__P__-surface)}.__P__-form-done-summary{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;cursor:pointer;list-style:none}.__P__-form-done-summary::-webkit-details-marker{display:none}.__P__-form-done-summary>svg:last-child{color:var(--__P__-fg-muted);transition:transform .15s var(--__P__-ease)}details[open]>.__P__-form-done-summary>svg:last-child{transform:rotate(90deg)}.__P__-form-answers{margin:0;padding:var(--__P__-space-2) var(--__P__-space-3) var(--__P__-space-3);display:grid;gap:var(--__P__-space-3);text-align:start}.__P__-form-answer{display:grid;gap:6px}.__P__-form-answer dt{font-size:var(--__P__-text-sm);font-weight:600;color:var(--__P__-fg)}.__P__-form-answer dd{margin:0;padding:10px var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);font-size:var(--__P__-text-sm);font-weight:400;color:var(--__P__-fg);overflow-wrap:anywhere}.__P__-toolui{border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-lg, 14px);background:var(--__P__-bg-elevated);font-size:var(--__P__-text-sm)}.__P__-toolui:not(.__P__-toolui-collapsible){display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:var(--__P__-space-4)}.__P__-toolui-group{display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-toolui-stale{opacity:.7}details.__P__-toolui-collapsible>summary{display:flex;align-items:center;gap:var(--__P__-space-2);padding:var(--__P__-space-3) var(--__P__-space-4);cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent;user-select:none}details.__P__-toolui-collapsible>summary::-webkit-details-marker{display:none}details.__P__-toolui-collapsible[open]>summary{border-bottom:1px solid var(--__P__-border)}details.__P__-toolui-collapsible>.__P__-toolui-section{margin:var(--__P__-space-4)}details.__P__-toolui-collapsible>.__P__-toolui-section~.__P__-toolui-section{margin-top:calc(-1 * var(--__P__-space-2))}.__P__-toolui-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.__P__-toolui-chevron{display:inline-flex;color:var(--__P__-fg-muted);transition:transform var(--__P__-dur-quick) var(--__P__-ease-out)}details.__P__-toolui-collapsible>summary .__P__-toolui-status{margin-inline-start:auto}.__P__-toolui-chevron svg{width:16px;height:16px}details.__P__-toolui-collapsible[open]>summary .__P__-toolui-chevron{transform:rotate(180deg)}.__P__-toolui-badge,.__P__-toolui-name-pill,.__P__-toolui-q-pill{--__P__-pill: var(--__P__-fg-muted);display:inline-flex;min-width:0;align-items:center;gap:5px;padding:3px 7px;border-radius:5px;border:1px solid var(--__P__-border);background:color-mix(in oklab,var(--__P__-fg-muted) 9%,transparent);color:var(--__P__-pill);font-size:var(--__P__-text-xs);font-weight:600;white-space:nowrap}.__P__-toolui-badge svg,.__P__-toolui-name-pill svg,.__P__-toolui-q-pill svg{flex-shrink:0;width:14px;height:14px}.__P__-toolui-status-icon{display:inline-flex}.__P__-toolui-name-pill{--__P__-pill: oklch(.68 .13 233)}.__P__-toolui-q-pill{--__P__-pill: oklch(.66 .12 195)}.__P__-toolui-status[data-status=completed]{--__P__-pill: var(--__P__-success, #16a34a)}.__P__-toolui-status[data-status=responded]{--__P__-pill: oklch(.62 .15 255)}.__P__-toolui-status[data-status=awaiting]{--__P__-pill: var(--__P__-warning, #f59e0b)}.__P__-toolui-status[data-status=denied]{--__P__-pill: oklch(.66 .16 45)}.__P__-toolui-status[data-status=error]{--__P__-pill: var(--__P__-danger, #dc2626)}.__P__-toolui-status[data-status=superseded],.__P__-toolui-status[data-status=incomplete],.__P__-toolui-status[data-status=stopped]{--__P__-pill: var(--__P__-fg-muted)}@supports (color: oklch(from red l c h)){.__P__-toolui-badge,.__P__-toolui-name-pill,.__P__-toolui-q-pill{color:oklch(from var(--__P__-pill) clamp(var(--__P__-pill-l-min),l,var(--__P__-pill-l-max)) c h)}}.__P__-toolui-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--__P__-space-2)}.__P__-toolui-head-end{display:inline-flex;align-items:center;gap:var(--__P__-space-2);margin-inline-start:auto}.__P__-toolui-collapse-body{display:flex;flex-direction:column;gap:var(--__P__-space-3);padding:var(--__P__-space-4)}.__P__-toolui-summary{display:flex;flex-direction:column;gap:var(--__P__-space-3)}.__P__-toolui-collapse-body>.__P__-form{gap:var(--__P__-space-3)}.__P__-toolui-collapse-body>.__P__-form>.__P__-field,.__P__-toolui-summary>.__P__-field{padding:10px var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);background:color-mix(in oklab,var(--__P__-bg) 80%,transparent);line-height:1.5}.__P__-toolui-collapse-body>.__P__-form>.__P__-field{gap:var(--__P__-space-2)}.__P__-toolui-summary>.__P__-field{gap:var(--__P__-space-1)}.__P__-toolui-summary .__P__-field-label{color:var(--__P__-fg-muted)}.__P__-toolui-answer{margin:0;font-size:var(--__P__-text-sm);color:var(--__P__-fg-muted);overflow-wrap:anywhere;white-space:pre-wrap}.__P__-toolui-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-3);margin-inline:calc(-1 * var(--__P__-space-4));padding:var(--__P__-space-3) var(--__P__-space-4) 0;border-top:1px solid var(--__P__-border)}.__P__-toolui-options-toggle{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:0;cursor:pointer;font-size:var(--__P__-text-xs);font-weight:600;color:var(--__P__-fg-muted);transition:color var(--__P__-dur-quick) var(--__P__-ease)}.__P__-toolui-options-toggle:hover{color:var(--__P__-fg)}.__P__-toolui-options-chevron{display:inline-flex;transition:transform var(--__P__-dur-quick) var(--__P__-ease-out)}.__P__-toolui-options-chevron svg{width:14px;height:14px}.__P__-toolui-options-chevron.__P__-open{transform:rotate(180deg)}.__P__-toolui-desc{margin:0;padding:var(--__P__-space-3);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);border:1px solid var(--__P__-border);color:var(--__P__-fg-muted);line-height:1.5}.__P__-toolui-section{display:flex;flex-direction:column;gap:8px;padding:var(--__P__-space-3);border-radius:var(--__P__-radius-md);background:var(--__P__-bg);border:1px solid var(--__P__-border)}.__P__-toolui:not(.__P__-toolui-collapsible) .__P__-toolui-section,.__P__-toolui:not(.__P__-toolui-collapsible) .__P__-toolui-desc{padding:0;background:none;border:0;border-radius:0}.__P__-toolui-label{font-size:var(--__P__-text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--__P__-fg-muted)}.__P__-toolui-code{margin:0;max-height:240px;overflow:auto;color:var(--__P__-fg);font-family:var(--__P__-font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--__P__-text-xs);line-height:1.5;white-space:pre-wrap;word-break:break-word}.__P__-toolui-code[data-error=true]{color:var(--__P__-danger, #dc2626)}.__P__-toolui-body{gap:6px}.__P__-toolui-prompt{margin:0;font-weight:600;color:var(--__P__-fg);overflow-wrap:anywhere}.__P__-toolui-subtle{margin:0;font-size:var(--__P__-text-xs);color:var(--__P__-fg-muted);line-height:1.5}.__P__-toolui-fields{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px var(--__P__-space-2);margin:0;font-size:var(--__P__-text-xs);line-height:1.5}.__P__-toolui-fields>div{display:contents}.__P__-toolui-fields dt{color:var(--__P__-fg-muted)}.__P__-toolui-fields dd{margin:0;min-width:0;overflow:hidden;color:var(--__P__-fg);font-family:var(--__P__-font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);text-overflow:ellipsis;white-space:nowrap}.__P__-toolui-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--__P__-space-2);margin-top:var(--__P__-space-2)}:host([dir="rtl"]) .__P__-icon-dir{transform:scaleX(-1)}:host([dir="rtl"]) .__P__-field-input[type=date],:host([dir="rtl"]) .__P__-field-input[type=time]{position:relative;text-align:right;padding-left:34px}:host([dir="rtl"]) .__P__-field-input[type=date]::-webkit-datetime-edit,:host([dir="rtl"]) .__P__-field-input[type=time]::-webkit-datetime-edit{text-align:right}:host([dir="rtl"]) .__P__-field-input[type=date]::-webkit-calendar-picker-indicator,:host([dir="rtl"]) .__P__-field-input[type=time]::-webkit-calendar-picker-indicator{position:absolute;left:var(--__P__-space-3);margin:0}
|
|
6
6
|
|
|
7
7
|
.__P__-generative-ui{display:grid;gap:var(--__P__-space-3);overflow-wrap:anywhere;white-space:pre-wrap}.__P__-generative-ui p{margin:0}.__P__-generative-ui-grid-container{container:__P__-generative-ui-grid / inline-size;min-width:0}.__P__-generative-ui-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.__P__-generative-ui-cell{display:grid;align-content:start;min-width:0;gap:16px}@container __P__-generative-ui-grid (min-width: 496px){.__P__-generative-ui-grid:is([data-columns="2"],[data-columns="3"],[data-columns="4"]){grid-template-columns:repeat(2,minmax(0,1fr))}.__P__-generative-ui-grid:is([data-columns="2"],[data-columns="3"],[data-columns="4"])>.__P__-generative-ui-cell:is([data-span="2"],[data-span="3"],[data-span="4"]){grid-column:span 2}}@container __P__-generative-ui-grid (min-width: 752px){.__P__-generative-ui-grid:is([data-columns="3"],[data-columns="4"]){grid-template-columns:repeat(3,minmax(0,1fr))}.__P__-generative-ui-grid:is([data-columns="3"],[data-columns="4"])>.__P__-generative-ui-cell:is([data-span="3"],[data-span="4"]){grid-column:span 3}}@container __P__-generative-ui-grid (min-width: 1008px){.__P__-generative-ui-grid[data-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.__P__-generative-ui-grid[data-columns="4"]>.__P__-generative-ui-cell[data-span="4"]{grid-column:span 4}}.__P__-generative-ui section{display:grid;gap:var(--__P__-space-2);padding:var(--__P__-space-3);border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-md);min-width:0}.__P__-generative-ui-metric{font-size:1.6em;font-weight:700}.__P__-generative-ui-table{overflow-x:auto}.__P__-generative-ui table{width:100%;border-collapse:collapse;white-space:normal}.__P__-generative-ui caption{text-align:start;font-weight:600;padding-bottom:var(--__P__-space-2)}.__P__-generative-ui th,.__P__-generative-ui td{text-align:start;padding:var(--__P__-space-2);border-bottom:1px solid var(--__P__-border)}.__P__-generative-ui-chart{display:block;width:100%;color:var(--__P__-accent)}.__P__-generative-ui-axis{stroke:var(--__P__-border)}.__P__-generative-ui-data{display:flex;flex-wrap:wrap;gap:var(--__P__-space-2);font-size:.85em}
|
|
8
8
|
|
|
9
9
|
:host([data-mode="page"]){min-height:0}:host([data-mode="page"]) .__P__-page-shell{display:grid;grid-template-columns:280px 1fr;width:100%;height:100%;min-height:0;background:var(--__P__-bg);color:var(--__P__-fg);transition:grid-template-columns var(--__P__-dur-base) var(--__P__-ease-in-out)}:host([data-mode="page"]) .__P__-page-shell[data-sidebar-collapsed=true]{grid-template-columns:48px 1fr}:host([data-mode="page"]) .__P__-page-chat{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}:host([data-mode="page"]) .__P__-anchor{position:static;inset:auto;padding:0;align-items:stretch;width:100%;height:100%;min-width:0;min-height:0;flex:1 1 0}:host([data-mode="page"]) .__P__-panel{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;border-radius:0;border:0;box-shadow:none;animation:none}:host([data-mode="page"]) .__P__-sidebar{border-inline-end:1px solid var(--__P__-border);display:flex;flex-direction:column;overflow:hidden;background:var(--__P__-surface)}:host([data-mode="page"]) .__P__-sidebar-header{padding:var(--__P__-space-4) var(--__P__-space-5);border-bottom:1px solid var(--__P__-border);display:flex;align-items:center;justify-content:space-between;gap:var(--__P__-space-2);min-height:56px;box-sizing:border-box}:host([data-mode="page"]) .__P__-sidebar[data-collapsed=true] .__P__-sidebar-header{padding:var(--__P__-space-4) var(--__P__-space-2);justify-content:center}:host([data-mode="page"]) .__P__-sidebar[data-collapsed=true] .__P__-sidebar-logo,:host([data-mode="page"]) .__P__-sidebar[data-collapsed=true] .__P__-sidebar-title{display:none}:host([data-mode="page"]) .__P__-sidebar-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--__P__-border);border-radius:6px;background:transparent;color:var(--__P__-fg);cursor:pointer;transition:background .12s,border-color .12s}:host([data-mode="page"]) .__P__-sidebar-toggle:hover{background:var(--__P__-hover);border-color:var(--__P__-accent)}:host([data-mode="page"]) .__P__-sidebar-toggle:focus-visible{outline:2px solid var(--__P__-accent);outline-offset:2px}:host([data-mode="page"]) .__P__-sidebar-logo{height:32px;display:block;border-radius:var(--__P__-radius-md)}:host([data-mode="page"]) .__P__-sidebar-title{font-size:var(--__P__-text-md);font-weight:600}:host([data-mode="page"]) .__P__-sidebar-section{padding:var(--__P__-space-3) var(--__P__-space-4);border-bottom:1px solid var(--__P__-border)}:host([data-mode="page"]) .__P__-sidebar-nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}:host([data-mode="page"]) .__P__-sidebar-nav-item{display:flex;align-items:center;gap:10px;padding:var(--__P__-space-2) var(--__P__-space-3);border-radius:var(--__P__-radius-sm);color:var(--__P__-fg);text-decoration:none;font-size:calc(14px * var(--__P__-text-scale));transition:background var(--__P__-dur-quick) var(--__P__-ease-out)}:host([data-mode="page"]) .__P__-sidebar-nav-item:hover{background:var(--__P__-hover)}:host([data-mode="page"]) .__P__-sidebar-nav-item:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:-2px}:host([data-mode="page"]) .__P__-sidebar-cards{display:grid;grid-template-columns:1fr;gap:var(--__P__-space-2)}:host([data-mode="page"]) .__P__-sidebar-card{display:block;padding:10px 12px;border:1px solid var(--__P__-border);border-radius:var(--__P__-radius-sm);text-decoration:none;color:var(--__P__-fg);transition:border-color var(--__P__-dur-quick) var(--__P__-ease-out)}:host([data-mode="page"]) .__P__-sidebar-card:hover{border-color:var(--__P__-accent)}:host([data-mode="page"]) .__P__-sidebar-card:focus-visible{outline:2px solid var(--__P__-focus);outline-offset:2px}:host([data-mode="page"]) .__P__-sidebar-card-label{font-weight:600;font-size:calc(14px * var(--__P__-text-scale))}:host([data-mode="page"]) .__P__-sidebar-card-desc{font-size:var(--__P__-text-xs);color:var(--__P__-muted);margin-top:2px}:host([data-mode="page"]) .__P__-sidebar-conversations{flex:1 1 auto;overflow-y:auto;padding:var(--__P__-space-3) var(--__P__-space-4)}:host([data-mode="page"]) .__P__-page-chat{display:flex;flex-direction:column;overflow:hidden}@media(max-width:768px){:host([data-mode="page"]) .__P__-page-shell{grid-template-columns:1fr}:host([data-mode="page"]) .__P__-sidebar{display:none}}
|
|
10
|
-
`.replace(/__P__/g,`helpai`).replaceAll(`__BRAND_ACCENT_TEXT__`,`#FFFFFF`).replaceAll(`__BRAND_ACCENT__`,`#5B5BD6`).replaceAll(`__BRAND_RADIUS__`,`12px`).replaceAll(`__BRAND_FONT__`,`Inter, system-ui, -apple-system, 'Segoe UI', sans-serif`),wt=[`data-theme`,`data-color-scheme`,`data-mode`,`data-bs-theme`];function Tt(e){if(e){if(e.classList.contains(`dark`))return`dark`;if(e.classList.contains(`light`))return`light`;for(let t of wt){let n=e.getAttribute(t);if(n===`dark`||n===`light`)return n}}}function Et(e=document){let t=Tt(e.documentElement)??Tt(e.body);if(t)return t;let n=getComputedStyle(e.documentElement).colorScheme.trim();return n===`dark`||n===`light`?n:typeof matchMedia==`function`&&matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}function Dt(e,t=document){let n=Et(t);e(n);function r(){let r=Et(t);r!==n&&(n=r,e(r))}let i=new MutationObserver(r),a={attributes:!0,attributeFilter:[`class`,`style`,...wt]};i.observe(t.documentElement,a),t.body&&i.observe(t.body,a);let o=typeof matchMedia==`function`?matchMedia(`(prefers-color-scheme: dark)`):void 0;return o?.addEventListener(`change`,r),()=>{i.disconnect(),o?.removeEventListener(`change`,r)}}const Ot=L.scope(`mount`),kt=/* @__PURE__ */ new WeakMap,At={floating:`all: initial; position: fixed; z-index: 2147483600;`,flow:`all: initial; display: block; position: relative; width: 100%; height: 100%; z-index: 1; contain: size;`,viewport:`all: initial; display: block; position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1;`};function jt(e,t){e.style.cssText=At[t]}function Mt(e){return e===`floating`||e===`modal`||e===`drawer`?`floating`:e===`standalone`||e===`page`?`viewport`:`flow`}function Nt(e={}){let t=e.position??`flow`;Ot.debug(`createShadowMount`,{position:t,hasTarget:!!e.target,hasHost:!!e.existingHost});let n=`${j.cssPrefix}-chat-host`;typeof customElements<`u`&&!customElements.get(n)&&customElements.define(n,class extends HTMLElement{});let r;e.existingHost?r=e.existingHost:(r=document.createElement(n),(e.target??document.body).appendChild(r)),r.setAttribute(`data-brand`,j.id),r.style.cssText=At[t];let i=r.shadowRoot??r.attachShadow({mode:`open`});for(let e of[`keydown`,`keypress`,`keyup`])i.addEventListener(e,Pt);let a=r.ownerDocument;if(!Ft(i,a)){let e=a.createElement(`style`);e.textContent=Ct,i.appendChild(e)}let o=document.createElement(`div`);return o.className=`${j.cssPrefix}-app`,i.appendChild(o),{appRoot:o,destroy:()=>r.remove(),hostElement:r,shadowRoot:i}}function Pt(e){let t=e.composedPath()[0];t instanceof HTMLElement&&(t.isContentEditable||t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.tagName===`SELECT`)&&e.stopPropagation()}function Ft(e,t){if(!(`adoptedStyleSheets`in e))return!1;let n=t.defaultView;if(!n||typeof n.CSSStyleSheet!=`function`)return!1;let r=kt.get(t);if(!r)try{r=new n.CSSStyleSheet,r.replaceSync(Ct),kt.set(t,r)}catch{return!1}try{return e.adoptedStyleSheets=[r],!0}catch{return!1}}function It(e,t){let n=j.cssPrefix;t.accent&&e.style.setProperty(`--${n}-accent-user`,t.accent),t.accentText&&e.style.setProperty(`--${n}-accent-text-user`,t.accentText),t.radius&&e.style.setProperty(`--${n}-radius`,t.radius),t.fontFamily&&e.style.setProperty(`--${n}-font`,t.fontFamily),t.contentMaxWidth&&e.style.setProperty(`--${n}-conversation-max`,t.contentMaxWidth)}function Lt(e,t){e.dataset.theme=t===`host`?Et():t}function Rt(e,t){let n=j.cssPrefix;t.width!==void 0&&e.style.setProperty(`--${n}-panel-w`,t.width),t.height!==void 0&&e.style.setProperty(`--${n}-panel-h`,t.height),t.expanded?.width!==void 0&&e.style.setProperty(`--${n}-expanded-w`,t.expanded.width),t.expanded?.height!==void 0&&e.style.setProperty(`--${n}-expanded-h`,t.expanded.height),t.inset!==void 0&&e.style.setProperty(`--${n}-panel-inset`,t.inset)}function zt(e,t){e.dataset.position=t}function Bt(e,t){e.dataset.mode=t}function Vt(e,t){Lt(e,t.themeMode),It(e,t.themeOverrides),zt(e,t.position),Rt(e,t.size)}function Ht(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);return{headers(){let t={"x-ai-agent-deployment-id":e.aiAgentDeploymentId};return e.publicKey&&(t[e.publicKeyHeader??`x-public-key`]=e.publicKey),t}}}const Ut=/* @__PURE__ */ new Set([`home`,`chats`,`help`,`news`]);function Wt(e){return typeof e!=`object`||!e||!(`to`in e)||typeof e.to!=`string`||!Ut.has(e.to)?!1:!(`id`in e)||e.id===void 0||typeof e.id==`string`}function Gt(e){let[t=``,...n]=e.trim().split(`/`);if(t===``||t===`open`)return;let r=n.join(`/`);return r?{to:t,id:r}:{to:t}}function Kt(e,t){return{text:e,send:typeof t==`object`&&!!t&&`send`in t&&t.send===!0}}function qt(e){if(typeof e!=`object`||!e||!(`text`in e)||typeof e.text!=`string`)return;let t=e.text.trim();return t?{text:t,send:`send`in e&&e.send===!0}:void 0}function Jt(e){return`${j.cssPrefix}:${e}`}function Yt(e,t,n){e.dispatchEvent(new CustomEvent(Jt(t),{detail:n}))}function Xt(e,t){let n=Object.entries(t).map(([t,n])=>{let r=Jt(t);function i(e){return n(e.detail)}return e.addEventListener(r,i),[r,i]});return()=>{for(let[t,r]of n)e.removeEventListener(t,r)}}function Zt(e,t){let n=[],r;for(let i of e){let e=new URLSearchParams(i);e.has(t)?r??(r=e.get(t)??``):n.push(i)}return{value:r,rest:n}}function Qt(e){let t=new URL(e),n=j.cssPrefix,r=`${j.cssPrefix}-ask`,i=t.search.slice(1).split(`&`).filter(Boolean),a=t.hash.slice(1).split(`&`).filter(Boolean),o=Zt(i,n),s=Zt(o.rest,r),c=Zt(a,n),l=Zt(c.rest,r),u=o.value??c.value,d=(s.value??l.value)?.trim()||void 0;if(u!==void 0||d!==void 0)return t.search=s.rest.join(`&`),t.hash=l.rest.join(`&`),{target:u===void 0?void 0:Gt(u),...d?{ask:d}:{},url:t.toString()}}function $t(e){"@babel/helpers - typeof";return $t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},$t(e)}function en(e,t){if($t(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if($t(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function tn(e){var t=en(e,`string`);return $t(t)==`symbol`?t:t+``}function z(e,t,n){return(t=tn(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const nn={open:!1,ready:!1,unread:0};var rn=class{constructor(){z(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 an=L.scope(`feedback:audio`);var on=class{constructor(){z(this,`ctx`,null),z(this,`master`,null),z(this,`buffers`,/* @__PURE__ */ new Map)}unlock(){if(this.ctx){this.ctx.state===`suspended`&&this.ctx.resume();return}let e=globalThis.AudioContext??globalThis.webkitAudioContext;if(e)try{this.ctx=new e,this.master=this.ctx.createGain(),this.master.gain.value=1,this.master.connect(this.ctx.destination)}catch(e){an.warn(`AudioContext init failed`,{err:e})}}setVolume(e){if(!this.master||!this.ctx)return;let t=Math.max(0,Math.min(1,e));this.master.gain.setTargetAtTime(t,this.ctx.currentTime,.01)}playTone(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=t.currentTime,i=e.noteMs/1e3;e.notes.forEach((a,o)=>{let s=t.createOscillator();s.type=e.type,s.frequency.value=a;let c=t.createGain(),l=r+o*i;c.gain.setValueAtTime(1e-4,l),c.gain.exponentialRampToValueAtTime(e.peakGain,l+.005),c.gain.exponentialRampToValueAtTime(1e-4,l+i),s.connect(c).connect(n),s.start(l),s.stop(l+i+.01)})}async playUrl(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=await this.getBuffer(e);if(!r)return;let i=t.createBufferSource();i.buffer=r,i.connect(n),i.start()}destroy(){this.ctx&&this.ctx.close().catch(()=>void 0),this.ctx=null,this.master=null,this.buffers.clear()}async getBuffer(e){if(!this.ctx)return null;let t=this.buffers.get(e);if(t)return t instanceof Promise,t;let n=this.ctx,r=fetch(e).then(e=>e.ok?e.arrayBuffer():Promise.reject(/* @__PURE__ */ Error(`fetch ${e.status}`))).then(e=>n.decodeAudioData(e)).then(t=>(this.buffers.set(e,t),t)).catch(t=>(an.warn(`audio fetch/decode failed`,{url:e,err:t}),this.buffers.delete(e),null));return this.buffers.set(e,r),r}};const sn={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},cn={messageReceived:{notes:[880,1318.51],noteMs:90,type:`sine`,peakGain:.45},messageSent:{notes:[1568],noteMs:60,type:`sine`,peakGain:.25},error:{notes:[523.25,392],noteMs:120,type:`triangle`,peakGain:.55},voiceStart:{notes:[1318.51],noteMs:50,type:`sine`,peakGain:.3},voiceStop:{notes:[880],noteMs:50,type:`sine`,peakGain:.3}};let ln=null,un=0;function dn(){return typeof navigator<`u`&&typeof navigator.vibrate==`function`}function fn(){if(typeof document>`u`)return null;let e=document.createElement(`input`);e.type=`checkbox`,e.setAttribute(`switch`,``),e.setAttribute(`aria-hidden`,`true`),e.tabIndex=-1,e.id=`__${j.cssPrefix}_haptic_${Math.random().toString(36).slice(2)}`;let t=document.createElement(`label`);t.htmlFor=e.id,t.setAttribute(`aria-hidden`,`true`);let n=`position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;opacity:0!important;pointer-events:none!important;`;return e.style.cssText=n,t.style.cssText=n,document.body.append(e,t),{input:e,label:t}}function pn(e){if(!(e===0||Array.isArray(e)&&e.every(e=>e===0))){if(dn())try{navigator.vibrate(e);return}catch{}if(ln??(ln=fn()),ln)try{ln.label.click()}catch{}}}function mn(){un++;let e=!1;return()=>{e||(e=!0,un=Math.max(0,un-1),un===0&&ln&&(ln.input.remove(),ln.label.remove(),ln=null))}}const hn=L.scope(`feedback`);var gn=class{constructor(e,t){z(this,`mutedSig`,o(!1)),z(this,`audio`,new on),z(this,`releaseHaptics`,void 0),z(this,`sound`,void 0),z(this,`haptics`,void 0),z(this,`lastPlayed`,/* @__PURE__ */ new Map),z(this,`reducedMotionMq`,null),this.sound=e,this.haptics=t,this.releaseHaptics=mn(),this.audio.setVolume(this.effectiveVolume()),typeof matchMedia<`u`&&(this.reducedMotionMq=matchMedia(`(prefers-reduced-motion: reduce)`))}unlock(){this.audio.unlock(),this.audio.setVolume(this.effectiveVolume())}update(e,t){this.sound=e,this.haptics=t,this.audio.setVolume(this.effectiveVolume())}setMuted(e){this.mutedSig.value!==e&&(this.mutedSig.value=e)}toggleMuted(){this.mutedSig.value=!this.mutedSig.value}play(e){this.mutedSig.value||this.isDeduped(e)||(this.lastPlayed.set(e,performance.now()),this.sound.enabled&&this.playSound(e),this.haptics.enabled&&this.isTouchDevice()&&this.playHaptic(e))}destroy(){this.audio.destroy(),this.releaseHaptics()}isDeduped(e){let t=this.lastPlayed.get(e);return t!==void 0&&performance.now()-t<100}playSound(e){let t=this.sound.events?.[e];if(t===!1)return;if(typeof t==`string`){this.audio.playUrl(t).catch(e=>hn.warn(`audio play failed`,{err:e,url:t}));return}let n=cn[e];n&&this.audio.playTone(n)}playHaptic(e){if(this.reducedMotionMq?.matches)return;let t=this.haptics.events?.[e];t!==!1&&pn(t===!0||t===void 0?sn[e]:t)}effectiveVolume(){let e=this.sound.volume??.3;return this.reducedMotionMq?.matches?e*.5:e}isTouchDevice(){return typeof window>`u`?!1:matchMedia(`(hover: none) and (pointer: coarse)`).matches}};function _n(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function vn(e){return _n(e)}function yn(e){return!(!_n(e)||e.navigation!==void 0&&!Array.isArray(e.navigation)||e.linkCards!==void 0&&!Array.isArray(e.linkCards))}const B={root:`Root`,schema:{$schema:`https://json-schema.org/draft/2020-12/schema`,type:`object`,properties:{Root:{$ref:`#/$defs/Root`},Grid:{$ref:`#/$defs/Grid`},Cell:{$ref:`#/$defs/Cell`},Text:{$ref:`#/$defs/Text`},Card:{$ref:`#/$defs/Card`},Metric:{$ref:`#/$defs/Metric`},Table:{$ref:`#/$defs/Table`},Chart:{$ref:`#/$defs/Chart`}},required:[`Root`,`Grid`,`Cell`,`Text`,`Card`,`Metric`,`Table`,`Chart`],additionalProperties:!1,$defs:{Root:{type:`object`,properties:{children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Grid`},{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}}},required:[`children`],additionalProperties:!1},Grid:{type:`object`,properties:{columns:{type:`integer`,enum:[1,2,3,4],default:1},children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Cell`},{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}}},required:[`columns`,`children`],additionalProperties:!1},Cell:{type:`object`,properties:{children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}},span:{type:`integer`,enum:[1,2,3,4],default:1}},required:[`children`],additionalProperties:!1},Text:{type:`object`,properties:{text:{type:`string`}},required:[`text`],additionalProperties:!1},Card:{type:`object`,properties:{title:{type:`string`},body:{type:`string`}},required:[`title`,`body`],additionalProperties:!1},Metric:{type:`object`,properties:{label:{type:`string`},value:{type:`string`},detail:{type:`string`}},required:[`label`,`value`,`detail`],additionalProperties:!1},Table:{type:`object`,properties:{title:{type:`string`},columns:{type:`array`,items:{type:`string`}},rows:{type:`array`,items:{type:`array`,items:{type:`string`}}}},required:[`title`,`columns`,`rows`],additionalProperties:!1},Chart:{type:`object`,properties:{title:{type:`string`},type:{type:`string`,enum:[`bar`,`line`]},data:{type:`array`,items:{type:`object`,properties:{label:{type:`string`},value:{type:`number`}},required:[`label`,`value`],additionalProperties:!1}}},required:[`title`,`type`,`data`],additionalProperties:!1}}}},bn=Dn,xn={type:`object`,properties:{typeName:{const:`Grid`},statementId:{type:`string`},props:{type:`object`,properties:{columns:{type:`integer`,enum:[1,2,3,4],default:1},children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Cell`},{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}}},required:[`columns`,`children`],additionalProperties:!1}},required:[`typeName`,`statementId`,`props`]},Sn={type:`object`,properties:{typeName:{const:`Cell`},statementId:{type:`string`},props:{type:`object`,properties:{children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}},span:{type:`integer`,enum:[1,2,3,4],default:1}},required:[`children`],additionalProperties:!1}},required:[`typeName`,`statementId`,`props`]};function Cn(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=Cn.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return Cn.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Text`)return Cn.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Text`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return Cn.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.text===void 0&&(e=`text`))return Cn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`text`)return Cn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.text!==void 0&&typeof n.text!=`string`)return Cn.errors=[{instancePath:t+`/props/text`,schemaPath:`#/properties/props/properties/text/type`,keyword:`type`,params:{type:`string`}}],!1}else return Cn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return Cn.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return Cn.errors=null,!0}Cn.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function V(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=V.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return V.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Card`)return V.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Card`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return V.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.title===void 0&&(e=`title`)||n.body===void 0&&(e=`body`))return V.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`title`&&e!==`body`)return V.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.title!==void 0){if(typeof n.title!=`string`)return V.errors=[{instancePath:t+`/props/title`,schemaPath:`#/properties/props/properties/title/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.body!==void 0){if(typeof n.body!=`string`)return V.errors=[{instancePath:t+`/props/body`,schemaPath:`#/properties/props/properties/body/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0}}else return V.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return V.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return V.errors=null,!0}V.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function H(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=H.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return H.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Metric`)return H.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Metric`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return H.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.label===void 0&&(e=`label`)||n.value===void 0&&(e=`value`)||n.detail===void 0&&(e=`detail`))return H.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`label`&&e!==`value`&&e!==`detail`)return H.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.label!==void 0){if(typeof n.label!=`string`)return H.errors=[{instancePath:t+`/props/label`,schemaPath:`#/properties/props/properties/label/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.value!==void 0){if(typeof n.value!=`string`)return H.errors=[{instancePath:t+`/props/value`,schemaPath:`#/properties/props/properties/value/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.detail!==void 0){if(typeof n.detail!=`string`)return H.errors=[{instancePath:t+`/props/detail`,schemaPath:`#/properties/props/properties/detail/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0}}}else return H.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return H.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return H.errors=null,!0}H.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function U(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=U.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return U.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Table`)return U.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Table`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return U.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.title===void 0&&(e=`title`)||n.columns===void 0&&(e=`columns`)||n.rows===void 0&&(e=`rows`))return U.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`title`&&e!==`columns`&&e!==`rows`)return U.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.title!==void 0){if(typeof n.title!=`string`)return U.errors=[{instancePath:t+`/props/title`,schemaPath:`#/properties/props/properties/title/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.columns!==void 0){let e=n.columns;if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++)if(typeof e[r]!=`string`)return U.errors=[{instancePath:t+`/props/columns/`+r,schemaPath:`#/properties/props/properties/columns/items/type`,keyword:`type`,params:{type:`string`}}],!1}else return U.errors=[{instancePath:t+`/props/columns`,schemaPath:`#/properties/props/properties/columns/type`,keyword:`type`,params:{type:`array`}}],!1;var c=!0}else var c=!0;if(c){if(n.rows!==void 0){let e=n.rows;if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r];if(Array.isArray(n)){let e=n.length;for(let i=0;i<e;i++)if(typeof n[i]!=`string`)return U.errors=[{instancePath:t+`/props/rows/`+r+`/`+i,schemaPath:`#/properties/props/properties/rows/items/items/type`,keyword:`type`,params:{type:`string`}}],!1}else return U.errors=[{instancePath:t+`/props/rows/`+r,schemaPath:`#/properties/props/properties/rows/items/type`,keyword:`type`,params:{type:`array`}}],!1}}else return U.errors=[{instancePath:t+`/props/rows`,schemaPath:`#/properties/props/properties/rows/type`,keyword:`type`,params:{type:`array`}}],!1;var c=!0}else var c=!0}}}else return U.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return U.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return U.errors=null,!0}U.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};const wn={type:`object`,properties:{typeName:{const:`Chart`},statementId:{type:`string`},props:{type:`object`,properties:{title:{type:`string`},type:{type:`string`,enum:[`bar`,`line`]},data:{type:`array`,items:{type:`object`,properties:{label:{type:`string`},value:{type:`number`}},required:[`label`,`value`],additionalProperties:!1}}},required:[`title`,`type`,`data`],additionalProperties:!1}},required:[`typeName`,`statementId`,`props`]};function W(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=W.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return W.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Chart`)return W.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Chart`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return W.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.title===void 0&&(e=`title`)||n.type===void 0&&(e=`type`)||n.data===void 0&&(e=`data`))return W.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`title`&&e!==`type`&&e!==`data`)return W.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.title!==void 0){if(typeof n.title!=`string`)return W.errors=[{instancePath:t+`/props/title`,schemaPath:`#/properties/props/properties/title/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.type!==void 0){let e=n.type;if(typeof e!=`string`)return W.errors=[{instancePath:t+`/props/type`,schemaPath:`#/properties/props/properties/type/type`,keyword:`type`,params:{type:`string`}}],!1;if(e!==`bar`&&e!==`line`)return W.errors=[{instancePath:t+`/props/type`,schemaPath:`#/properties/props/properties/type/enum`,keyword:`enum`,params:{allowedValues:wn.properties.props.properties.type.enum}}],!1;var c=!0}else var c=!0;if(c){if(n.data!==void 0){let e=n.data;if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r];if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.label===void 0&&(e=`label`)||n.value===void 0&&(e=`value`))return W.errors=[{instancePath:t+`/props/data/`+r,schemaPath:`#/properties/props/properties/data/items/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`label`&&e!==`value`)return W.errors=[{instancePath:t+`/props/data/`+r,schemaPath:`#/properties/props/properties/data/items/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.label!==void 0){if(typeof n.label!=`string`)return W.errors=[{instancePath:t+`/props/data/`+r+`/label`,schemaPath:`#/properties/props/properties/data/items/properties/label/type`,keyword:`type`,params:{type:`string`}}],!1;var l=!0}else var l=!0;if(l){if(n.value!==void 0){let e=n.value;if(!(typeof e==`number`&&isFinite(e)))return W.errors=[{instancePath:t+`/props/data/`+r+`/value`,schemaPath:`#/properties/props/properties/data/items/properties/value/type`,keyword:`type`,params:{type:`number`}}],!1;var l=!0}else var l=!0}}else return W.errors=[{instancePath:t+`/props/data/`+r,schemaPath:`#/properties/props/properties/data/items/type`,keyword:`type`,params:{type:`object`}}],!1}}else return W.errors=[{instancePath:t+`/props/data`,schemaPath:`#/properties/props/properties/data/type`,keyword:`type`,params:{type:`array`}}],!1;var c=!0}else var c=!0}}}else return W.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return W.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return W.errors=null,!0}W.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function Tn(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=null,s=0,c=Tn.evaluated;if(c.dynamicProps&&(c.props=void 0),c.dynamicItems&&(c.items=void 0),s===0){if(e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return Tn.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){let n=s;if(e.typeName!==`Cell`)return Tn.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Cell`}}],!1;var l=n===s}else var l=!0;if(l){if(e.statementId!==void 0){let n=s;if(typeof e.statementId!=`string`)return Tn.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var l=n===s}else var l=!0;if(l){if(e.props!==void 0){let n=e.props,r=s;if(s===r){if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.children===void 0&&(e=`children`))return Tn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;{let e=s;for(let e in n)if(e!==`children`&&e!==`span`)return Tn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(e===s){if(n.children!==void 0){let e=n.children,r=s;if(s===r){if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r],c=s,l=s,f=!1,p=s;Cn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Cn.errors:o.concat(Cn.errors),s=o.length);var u=p===s;if(f=f||u,u){var d={};d.typeName=!0,d.statementId=!0,d.props=!0}let m=s;V(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?V.errors:o.concat(V.errors),s=o.length);var u=m===s;f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0);let h=s;H(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?H.errors:o.concat(H.errors),s=o.length);var u=h===s;f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0);let g=s;U(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?U.errors:o.concat(U.errors),s=o.length);var u=g===s;f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0);let _=s;W(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?W.errors:o.concat(W.errors),s=o.length);var u=_===s;if(f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0),f)s=l,o!==null&&(l?o.length=l:o=null);else{let e={instancePath:t+`/props/children/`+r,schemaPath:`#/properties/props/properties/children/items/anyOf`,keyword:`anyOf`,params:{}};return o===null?o=[e]:o.push(e),s++,Tn.errors=o,!1}if(c!==s)break}}else return Tn.errors=[{instancePath:t+`/props/children`,schemaPath:`#/properties/props/properties/children/type`,keyword:`type`,params:{type:`array`}}],!1}var f=r===s}else var f=!0;if(f){if(n.span!==void 0){let e=n.span,r=s;if(typeof e!=`number`||e%1||isNaN(e)||!isFinite(e))return Tn.errors=[{instancePath:t+`/props/span`,schemaPath:`#/properties/props/properties/span/type`,keyword:`type`,params:{type:`integer`}}],!1;if(e!==1&&e!==2&&e!==3&&e!==4)return Tn.errors=[{instancePath:t+`/props/span`,schemaPath:`#/properties/props/properties/span/enum`,keyword:`enum`,params:{allowedValues:Sn.properties.props.properties.span.enum}}],!1;var f=r===s}else var f=!0}}}}else return Tn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1}var l=r===s}else var l=!0}}}else return Tn.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1}return Tn.errors=o,s===0}Tn.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function En(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=null,s=0,c=En.evaluated;if(c.dynamicProps&&(c.props=void 0),c.dynamicItems&&(c.items=void 0),s===0){if(e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return En.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){let n=s;if(e.typeName!==`Grid`)return En.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Grid`}}],!1;var l=n===s}else var l=!0;if(l){if(e.statementId!==void 0){let n=s;if(typeof e.statementId!=`string`)return En.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var l=n===s}else var l=!0;if(l){if(e.props!==void 0){let n=e.props,r=s;if(s===r){if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.columns===void 0&&(e=`columns`)||n.children===void 0&&(e=`children`))return En.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;{let e=s;for(let e in n)if(e!==`columns`&&e!==`children`)return En.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(e===s){if(n.columns!==void 0){let e=n.columns,r=s;if(typeof e!=`number`||e%1||isNaN(e)||!isFinite(e))return En.errors=[{instancePath:t+`/props/columns`,schemaPath:`#/properties/props/properties/columns/type`,keyword:`type`,params:{type:`integer`}}],!1;if(e!==1&&e!==2&&e!==3&&e!==4)return En.errors=[{instancePath:t+`/props/columns`,schemaPath:`#/properties/props/properties/columns/enum`,keyword:`enum`,params:{allowedValues:xn.properties.props.properties.columns.enum}}],!1;var u=r===s}else var u=!0;if(u){if(n.children!==void 0){let e=n.children,r=s;if(s===r){if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r],c=s,l=s,u=!1,p=s;Tn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Tn.errors:o.concat(Tn.errors),s=o.length);var d=p===s;if(u=u||d,d){var f={};f.typeName=!0,f.statementId=!0,f.props=!0}let m=s;Cn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Cn.errors:o.concat(Cn.errors),s=o.length);var d=m===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let h=s;V(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?V.errors:o.concat(V.errors),s=o.length);var d=h===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let g=s;H(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?H.errors:o.concat(H.errors),s=o.length);var d=g===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let _=s;U(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?U.errors:o.concat(U.errors),s=o.length);var d=_===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let v=s;W(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?W.errors:o.concat(W.errors),s=o.length);var d=v===s;if(u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0),u)s=l,o!==null&&(l?o.length=l:o=null);else{let e={instancePath:t+`/props/children/`+r,schemaPath:`#/properties/props/properties/children/items/anyOf`,keyword:`anyOf`,params:{}};return o===null?o=[e]:o.push(e),s++,En.errors=o,!1}if(c!==s)break}}else return En.errors=[{instancePath:t+`/props/children`,schemaPath:`#/properties/props/properties/children/type`,keyword:`type`,params:{type:`array`}}],!1}var u=r===s}else var u=!0}}}}else return En.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1}var l=r===s}else var l=!0}}}else return En.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1}return En.errors=o,s===0}En.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function Dn(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=null,s=0,c=Dn.evaluated;c.dynamicProps&&(c.props=void 0),c.dynamicItems&&(c.items=void 0);let l=s,u=!1,d=s;En(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?En.errors:o.concat(En.errors),s=o.length);var f=d===s;if(u=u||f,f){var p={};p.typeName=!0,p.statementId=!0,p.props=!0}let m=s;Tn(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Tn.errors:o.concat(Tn.errors),s=o.length);var f=m===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let h=s;Cn(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Cn.errors:o.concat(Cn.errors),s=o.length);var f=h===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let g=s;V(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?V.errors:o.concat(V.errors),s=o.length);var f=g===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let _=s;H(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?H.errors:o.concat(H.errors),s=o.length);var f=_===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let v=s;U(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?U.errors:o.concat(U.errors),s=o.length);var f=v===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let y=s;W(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?W.errors:o.concat(W.errors),s=o.length);var f=y===s;if(u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0),u)s=l,o!==null&&(l?o.length=l:o=null);else{let e={instancePath:t,schemaPath:`#/anyOf`,keyword:`anyOf`,params:{}};return o===null?o=[e]:o.push(e),s++,Dn.errors=o,!1}return Dn.errors=o,c.props=p,s===0}Dn.evaluated={dynamicProps:!0,dynamicItems:!1};function On(e){switch(e.k){case`StateRef`:case`RuntimeRef`:case`BinOp`:case`UnaryOp`:case`Ternary`:case`Member`:case`Index`:case`Assign`:return!0;default:return!1}}const kn=/* @__PURE__ */ new Set([`Comp`,`Ref`,`StateRef`,`RuntimeRef`,`BinOp`,`UnaryOp`,`Ternary`,`Member`,`Index`,`Assign`,`Str`,`Num`,`Bool`,`Null`,`Arr`,`Obj`,`Ph`]);function An(e){return!e||typeof e!=`object`||Array.isArray(e)?!1:kn.has(e.k)}function jn(e,t){let n=e=>{switch(t(e),e.k){case`Comp`:e.args.forEach(n),Object.values(e.mappedProps??{}).forEach(n);break;case`Arr`:e.els.forEach(n);break;case`Obj`:e.entries.forEach(([,e])=>n(e));break;case`BinOp`:n(e.left),n(e.right);break;case`UnaryOp`:n(e.operand);break;case`Ternary`:n(e.cond),n(e.then),n(e.else);break;case`Member`:n(e.obj);break;case`Index`:n(e.obj),n(e.index);break;case`Assign`:n(e.value)}};n(e)}function Mn(e){return e==null?{k:`Null`}:typeof e==`string`?{k:`Str`,v:e}:typeof e==`number`?{k:`Num`,v:e}:typeof e==`boolean`?{k:`Bool`,v:e}:Array.isArray(e)?{k:`Arr`,els:e.map(Mn)}:typeof e==`object`?{k:`Obj`,entries:Object.entries(e).map(([e,t])=>[e,Mn(t)])}:{k:`Null`}}function Nn(e){switch(e.k){case`Str`:case`Num`:case`Bool`:return{v:e.v};case`Null`:return{v:null};case`Arr`:{let t=[];for(let n of e.els){let e=Nn(n);if(!e)return;t.push(e.v)}return{v:t}}case`Obj`:{let t={};for(let[n,r]of e.entries){let e=Nn(r);if(!e)return;t[n]=e.v}return{v:t}}default:return}}const Pn=/* @__PURE__ */ new Map([[`Count`,{kind:`function`,params:[{name:`array`,required:!1}],builtin:!0}],[`First`,{kind:`function`,params:[{name:`array`,required:!1}],builtin:!0}],[`Last`,{kind:`function`,params:[{name:`array`,required:!1}],builtin:!0}],[`Sum`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Avg`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Min`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Max`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Sort`,{kind:`function`,params:[{name:`array`,required:!1},{name:`field`,required:!1},{name:`direction`,required:!1}],builtin:!0}],[`Filter`,{kind:`function`,params:[{name:`array`,required:!1},{name:`field`,required:!1},{name:`operator`,required:!1},{name:`value`,required:!1}],builtin:!0}],[`Round`,{kind:`function`,params:[{name:`number`,required:!1},{name:`decimals`,required:!1}],builtin:!0}],[`Abs`,{kind:`function`,params:[{name:`number`,required:!1}],builtin:!0}],[`Floor`,{kind:`function`,params:[{name:`number`,required:!1}],builtin:!0}],[`Ceil`,{kind:`function`,params:[{name:`number`,required:!1}],builtin:!0}],[`Each`,{kind:`function`,params:[{name:`array`,required:!1},{name:`varName`,required:!1},{name:`template`,required:!1}],builtin:!0,lazy:!0}],[`Run`,{kind:`action`,params:[{name:`ref`,required:!1}],builtin:!0,lazy:!0}],[`ToAssistant`,{kind:`action`,params:[{name:`message`,required:!1},{name:`context`,required:!1}],builtin:!0}],[`OpenUrl`,{kind:`action`,params:[{name:`url`,required:!1}],builtin:!0}],[`Set`,{kind:`action`,params:[{name:`variable`,required:!1},{name:`value`,required:!1}],builtin:!0,lazy:!0}],[`Reset`,{kind:`action`,params:[{name:`variable`,required:!1}],builtin:!0,lazy:!0}],[`Action`,{kind:`action`,params:[{name:`steps`,required:!0}],builtin:!0,lazy:!0}]]),Fn={ActionExpression:!0,OpenUrl:!0,ToAssistant:!0},In={Query:`Query`,Mutation:`Mutation`};function Ln(e){return e?.callDefs??Pn}function Rn(e){return Pn.has(e)}function zn(e){return e in In}var G;(function(e){e[e.Newline=0]=`Newline`,e[e.LParen=1]=`LParen`,e[e.RParen=2]=`RParen`,e[e.LBrack=3]=`LBrack`,e[e.RBrack=4]=`RBrack`,e[e.LBrace=5]=`LBrace`,e[e.RBrace=6]=`RBrace`,e[e.Comma=7]=`Comma`,e[e.Colon=8]=`Colon`,e[e.Equals=9]=`Equals`,e[e.True=10]=`True`,e[e.False=11]=`False`,e[e.Null=12]=`Null`,e[e.EOF=13]=`EOF`,e[e.Str=14]=`Str`,e[e.Num=15]=`Num`,e[e.Ident=16]=`Ident`,e[e.Type=17]=`Type`,e[e.StateVar=18]=`StateVar`,e[e.Dot=19]=`Dot`,e[e.Plus=20]=`Plus`,e[e.Minus=21]=`Minus`,e[e.Star=22]=`Star`,e[e.Slash=23]=`Slash`,e[e.Percent=24]=`Percent`,e[e.EqEq=25]=`EqEq`,e[e.NotEq=26]=`NotEq`,e[e.Greater=27]=`Greater`,e[e.Less=28]=`Less`,e[e.GreaterEq=29]=`GreaterEq`,e[e.LessEq=30]=`LessEq`,e[e.And=31]=`And`,e[e.Or=32]=`Or`,e[e.Not=33]=`Not`,e[e.Question=34]=`Question`,e[e.BuiltinCall=35]=`BuiltinCall`})(G||(G={}));function Bn(e){let t=0,n=()=>e[t]??{t:G.EOF},r=()=>{let e=n();return t++,e},i=e=>{n().t===e&&t++};function a(e){switch(e.t){case G.Question:return 1;case G.Or:return 2;case G.And:return 3;case G.EqEq:case G.NotEq:return 4;case G.Greater:case G.Less:case G.GreaterEq:case G.LessEq:return 5;case G.Plus:case G.Minus:return 6;case G.Star:case G.Slash:case G.Percent:return 7;case G.Dot:case G.LBrack:return 9;default:return 0}}function o(e=0){let t=s();for(;a(n())>e;)t=c(t);return t}function s(){let a=n();if(a.t===G.Str)return r(),{k:`Str`,v:a.v};if(a.t===G.Num)return r(),{k:`Num`,v:a.v};if(a.t===G.True)return r(),{k:`Bool`,v:!0};if(a.t===G.False)return r(),{k:`Bool`,v:!1};if(a.t===G.Null)return r(),{k:`Null`};if(a.t===G.LBrack)return u();if(a.t===G.LBrace)return d();if(a.t===G.StateVar){let e=a.v;return r(),n().t===G.Equals?(r(),{k:`Assign`,target:e,value:o(0)}):{k:`StateRef`,n:e}}if(a.t===G.Type){let n=a.v;return e[t+1]?.t===G.LParen&&(!Rn(n)||n===`Action`)?l():(r(),{k:`Ref`,n})}if(a.t===G.BuiltinCall){if(e[t+1]?.t===G.LParen){let e=l();return e.k===`Comp`&&!Rn(e.name)&&(e.fn=!0),e}return r(),{k:`Ref`,n:a.v}}if(a.t===G.Ident)return r(),{k:`Ref`,n:a.v};if(a.t===G.Not)return r(),{k:`UnaryOp`,op:`!`,operand:o(8)};if(a.t===G.Minus)return r(),{k:`UnaryOp`,op:`-`,operand:o(8)};if(a.t===G.LParen){r();let e=o(0);return i(G.RParen),e}return r(),{k:`Null`}}function c(e){let t=n();if(t.t===G.Plus)return r(),{k:`BinOp`,op:`+`,left:e,right:o(6)};if(t.t===G.Minus)return r(),{k:`BinOp`,op:`-`,left:e,right:o(6)};if(t.t===G.Star)return r(),{k:`BinOp`,op:`*`,left:e,right:o(7)};if(t.t===G.Slash)return r(),{k:`BinOp`,op:`/`,left:e,right:o(7)};if(t.t===G.Percent)return r(),{k:`BinOp`,op:`%`,left:e,right:o(7)};if(t.t===G.EqEq)return r(),{k:`BinOp`,op:`==`,left:e,right:o(4)};if(t.t===G.NotEq)return r(),{k:`BinOp`,op:`!=`,left:e,right:o(4)};if(t.t===G.Greater)return r(),{k:`BinOp`,op:`>`,left:e,right:o(5)};if(t.t===G.Less)return r(),{k:`BinOp`,op:`<`,left:e,right:o(5)};if(t.t===G.GreaterEq)return r(),{k:`BinOp`,op:`>=`,left:e,right:o(5)};if(t.t===G.LessEq)return r(),{k:`BinOp`,op:`<=`,left:e,right:o(5)};if(t.t===G.And)return r(),{k:`BinOp`,op:`&&`,left:e,right:o(3)};if(t.t===G.Or)return r(),{k:`BinOp`,op:`||`,left:e,right:o(2)};if(t.t===G.Question){r();let t=o(0);return i(G.Colon),{k:`Ternary`,cond:e,then:t,else:o(0)}}if(t.t===G.Dot){r();let t=n();return{k:`Member`,obj:e,field:t.t===G.Ident||t.t===G.Type||t.t===G.Str||t.t===G.Num?(r(),String(t.v)):t.t===G.StateVar?(r(),t.v.replace(/^\$/,``)):(r(),`?`)}}if(t.t===G.LBrack){r();let t=o(0);return i(G.RBrack),{k:`Index`,obj:e,index:t}}return e}function l(){let e=n().v;r(),i(G.LParen);let t=[];for(;n().t!==G.RParen&&n().t!==G.EOF;)t.push(o(0)),n().t===G.Comma&&r();return i(G.RParen),{k:`Comp`,name:e,args:t}}function u(){r();let e=[];for(;n().t!==G.RBrack&&n().t!==G.EOF;)e.push(o(0)),n().t===G.Comma&&r();return i(G.RBrack),{k:`Arr`,els:e}}function d(){r();let e=[];for(;n().t!==G.RBrace&&n().t!==G.EOF;){let t=n(),a=t.t===G.Ident||t.t===G.Str||t.t===G.Type||t.t===G.Num?(r(),String(t.v)):t.t===G.StateVar?(r(),t.v.replace(/^\$/,``)):(r(),`?`);i(G.Colon),e.push([a,o(0)]),n().t===G.Comma&&r()}return i(G.RBrace),{k:`Obj`,entries:e}}return o(0)}function Vn(e){let t=[],n=0,r=e.length;for(;n<r;){for(;n<r&&(e[n]===` `||e[n]===` `||e[n]===`\r`);)n++;if(n>=r)break;let i=e[n];if(i===`
|
|
11
|
-
`){t.push({t:
|
|
12
|
-
`:t===`t`?` `:t,n++}}else if(e[n]===`'`){n++;break}else i+=e[n],n++;t.push({t:G.Str,v:i});continue}if(i===`-`){let i=t.length>0?t[t.length-1]:null;if(!((i==null||i.t!==G.Num&&i.t!==G.Str&&i.t!==G.Ident&&i.t!==G.Type&&i.t!==G.RParen&&i.t!==G.RBrack&&i.t!==G.True&&i.t!==G.False&&i.t!==G.Null&&i.t!==G.StateVar&&i.t!==G.BuiltinCall)&&n+1<r&&e[n+1]>=`0`&&e[n+1]<=`9`)){t.push({t:G.Minus}),n++;continue}}let a=i>=`0`&&i<=`9`,o=i===`-`&&n+1<r&&e[n+1]>=`0`&&e[n+1]<=`9`;if(a||o){let i=n;for(e[n]===`-`&&n++;n<r&&e[n]>=`0`&&e[n]<=`9`;)n++;if(n<r&&e[n]===`.`&&n+1<r&&e[n+1]>=`0`&&e[n+1]<=`9`)for(n++;n<r&&e[n]>=`0`&&e[n]<=`9`;)n++;if(n<r&&(e[n]===`e`||e[n]===`E`))for(n++,n<r&&(e[n]===`+`||e[n]===`-`)&&n++;n<r&&e[n]>=`0`&&e[n]<=`9`;)n++;t.push({t:G.Num,v:+e.slice(i,n)})}else if(i===`$`&&n+1<r&&(e[n+1]>=`a`&&e[n+1]<=`z`||e[n+1]>=`A`&&e[n+1]<=`Z`||e[n+1]===`_`)){let i=n;for(n++;n<r&&(e[n]>=`a`&&e[n]<=`z`||e[n]>=`A`&&e[n]<=`Z`||e[n]>=`0`&&e[n]<=`9`||e[n]===`_`);)n++;t.push({t:G.StateVar,v:e.slice(i,n)})}else if(i>=`a`&&i<=`z`||i>=`A`&&i<=`Z`||i===`_`){let a=n;for(;n<r&&(e[n]>=`a`&&e[n]<=`z`||e[n]>=`A`&&e[n]<=`Z`||e[n]>=`0`&&e[n]<=`9`||e[n]===`_`);)n++;let o=e.slice(a,n);if(o===`true`){t.push({t:G.True});continue}if(o===`false`){t.push({t:G.False});continue}if(o===`null`){t.push({t:G.Null});continue}let s=i>=`A`&&i<=`Z`?G.Type:G.Ident;t.push({t:s,v:o})}else if(i===`@`&&n+1<r&&(e[n+1]>=`a`&&e[n+1]<=`z`||e[n+1]>=`A`&&e[n+1]<=`Z`||e[n+1]===`_`)){n++;let i=n;for(;n<r&&(e[n]>=`a`&&e[n]<=`z`||e[n]>=`A`&&e[n]<=`Z`||e[n]>=`0`&&e[n]<=`9`||e[n]===`_`);)n++;t.push({t:G.BuiltinCall,v:e.slice(i,n)})}else n++}return t.push({t:G.EOF}),t}function Hn(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.type===`element`&&typeof t.typeName==`string`&&typeof t.props==`object`&&t.props!==null&&typeof t.partial==`boolean`}var Un;(function(e){e.ContinueConversation=`continue_conversation`,e.OpenUrl=`open_url`})(Un||(Un={}));const Wn={},Gn=[];function Kn(e){return Array.isArray(e)?`array`:typeof e}function qn(e){return typeof e.$ref==`string`?e.$ref.split(`/`).pop():void 0}function Jn(e){return`$ref`in e||`anyOf`in e||`oneOf`in e||`allOf`in e}function Yn(e){if(Array.isArray(e.enum))return{enumValues:e.enum};if(`const`in e)return{enumValues:[e.const]};switch(e.type){case`string`:return{expectedType:`string`};case`number`:case`integer`:return{expectedType:`number`};case`boolean`:return{expectedType:`boolean`};default:return{}}}function Xn(e){if(e&&typeof e==`object`&&!Array.isArray(e))return e.default}function Zn(e){if(!e||typeof e!=`object`||Array.isArray(e))return;let t=e,n=qn(t);if(n)return n;let r=Yn(t);return r.enumValues?r.enumValues.map(e=>JSON.stringify(e)).join(`|`):r.expectedType?r.expectedType:typeof t.type==`string`?t.type:void 0}function Qn(e,t){return`${e}(${t.map(e=>{let t=Zn(e.schema),n=e.required?`${e.name}*`:e.name;return t?`${n}: ${t}`:n}).join(`, `)})`}function $n(e,t){let n=typeof e;return t.enumValues?t.enumValues.includes(e)?null:{expected:`one of [${t.enumValues.map(e=>JSON.stringify(e)).join(`, `)}]`,actual:Kn(e)}:t.expectedType&&t.expectedType!==n?{expected:t.expectedType,actual:Kn(e)}:null}function er(e,t,n){switch(n.code){case`type-mismatch`:return`field "${t}" expects ${n.expected} but got ${n.actual}`;case`pruned-value`:return`field "${t}" lost an unresolved or invalid value`;case`missing-required`:return`missing required field "${t}"${n.signature?` — signature: ${n.signature}`:``}`;case`null-required`:return`required field "${t}" cannot be null${n.signature?` — signature: ${n.signature}`:``}`;case`unknown-component`:return`Unknown component "${e}" — not found in catalog or builtins${n.available?.length?`. Available components: ${n.available.join(`, `)}`:``}`;case`inline-reserved`:return`${e}() must be declared as a top-level statement, not used inline as a value`;case`excess-args`:return`${e} takes ${n.declared} arg(s), got ${n.got} (${n.got-n.declared} excess dropped)`;case`unknown-function`:return`Unknown function "@${e}": not a built-in or action step. The call evaluates to null`;case`no-root`:return n.reason===`not-component`?`root does not evaluate to a component`:n.reason===`fallback`?`No root statement. Rendering the first statement that calls the root component ${e}`:e?`No root statement, and no statement calls the root component ${e}`:`No root statement`}}function tr(e,t,n,r){e.errors.push({code:r.code,component:t,path:n,message:er(t,n,r),statementId:e.currentStatementId,...r.code===`no-root`&&r.reason===`fallback`&&{severity:`warning`}})}const nr=Symbol(`invalid`);function rr(e,t){return t===void 0?e?nr:void 0:t}function ir(e,t,n,r,i){return Jn(t)?!1:typeof t.type==`string`||Array.isArray(t.enum)||`const`in t?(tr(i,n,r,{code:`type-mismatch`,expected:typeof t.type==`string`?t.type:`a literal value`,actual:`component "${e.typeName}"`}),!0):!1}function ar(e){return(e.anyOf??e.oneOf??[e]).map(qn)}function or(e,t){let n=ar(e);return n.length>0&&n.every(e=>e!==void 0&&t.cat?.has(e))}function sr(e,t,n,r,i){if(typeof e!=`object`||Array.isArray(e))return tr(i,n,r,{code:`type-mismatch`,expected:`object`,actual:Kn(e)}),nr;let a=e,o,s=t.properties&&typeof t.properties==`object`?t.properties:Wn,c=Array.isArray(t.required)?t.required:Gn,l=!1;if(!i.partial)for(let e of c){let t=e in a;if(!t||a[e]==null){let c=Xn(s[e]);if(c!==void 0){(o??(o={...a}))[e]=c;continue}tr(i,n,`${r}/${e}`,{code:t?`null-required`:`missing-required`}),l=!0}}for(let e of Object.keys(s)){if(!(e in a))continue;let t=s[e],u=ur(a[e],t,n,`${r}/${e}`,i);u===nr&&(u=rr(c.includes(e),Xn(t)),u===nr)?l=!0:u!==a[e]&&(o??(o={...a}),u===void 0?delete o[e]:o[e]=u)}return l?nr:o??a}function cr(e,t,n,r,i){if(!Array.isArray(e))return tr(i,n,r,{code:`type-mismatch`,expected:`array`,actual:Kn(e)}),nr;let a=t.items;if(!a||typeof a!=`object`||Array.isArray(a))return e;let o;for(let t=0;t<e.length;t++){let s=ur(e[t],a,n,`${r}/${t}`,i);s!==e[t]&&!o&&(o=e.slice(0,t)),o&&s!==nr&&o.push(s)}return o??e}function lr(e,t,n,r,i){let a=Yn(t);if(a.expectedType==null&&a.enumValues==null||a.enumValues&&i.partial)return!1;let o=$n(e,a);return o?(tr(i,n,r,{code:`type-mismatch`,...o}),!0):!1}function ur(e,t,n,r,i){if(!t||typeof t!=`object`||Array.isArray(t))return e;let a=t;if(e==null||An(e))return e;if(Hn(e))return ir(e,a,n,r,i)?nr:e;if(Jn(a))return or(a,i)?(tr(i,n,r,{code:`type-mismatch`,expected:ar(a).join(` | `),actual:Array.isArray(e)?`array`:typeof e==`object`?`plain object`:typeof e}),nr):e;let o=a.type;return o===`object`?sr(e,a,n,r,i):o===`array`?cr(e,a,n,r,i):lr(e,a,n,r,i)?nr:e}function dr(e){if(typeof e!=`object`||!e)return!1;if(An(e))return!0;if(Array.isArray(e))return e.some(dr);if(Hn(e))return Object.values(e.props).some(dr);let t=e;return Array.isArray(t.steps)?!0:Object.values(t).some(dr)}function fr(e,t,n){if(t.visited.has(e)||!t.syms.has(e))return t.unres.push(e),n===`expr`?{k:`Ph`,n:e}:null;let r=t.syms.get(e);if(t.unreached?.delete(e),r.k===`Comp`&&zn(r.name))return{k:`RuntimeRef`,n:e,refType:r.name===In.Mutation?`mutation`:`query`};t.visited.add(e);let i=t.currentStatementId;t.currentStatementId=e;try{let i=n===`value`?xr(r,t):br(r,t);return n===`value`&&Hn(i)&&(i.statementId=e),i}finally{t.currentStatementId=i,t.visited.delete(e)}}function pr(e,t){return Ln(t.cat).has(e)||zn(e)}function mr(e,t){let n={};for(let r=0;r<t.length&&r<e.length;r++)n[t[r].name]=e[r];return n}function hr(e,t,n,r){let{params:i}=n;t.length>i.length&&tr(r,e,``,{code:`excess-args`,declared:i.length,got:t.length});let a=mr(t,i),o=!1,s=r.errors.length;for(let t of i){let n=a[t.name],s=n?Nn(n):{v:void 0};if(!s)continue;if(s.v==null){if(!t.required||t.defaultValue!==void 0)continue;tr(r,e,`/${t.name}`,{code:n?`null-required`:`missing-required`,signature:Qn(e,i)}),o=!0;continue}let c=ur(s.v,t.schema,e,`/${t.name}`,r);c===nr&&(c=rr(t.required,t.defaultValue)),c===nr?o=!0:c===void 0?delete a[t.name]:c!==s.v&&(a[t.name]=Mn(c))}return n.kind===`action`&&r.errors.length>s&&(o=!0),o?null:a}function gr(e,t,n){let r=e.args.map(n),i=Ln(t.cat).get(e.name);if(!i||i.lazy)return{...e,args:r};let a=i.builtin?mr(r,i.params):hr(e.name,r,i,t);return a?{...e,args:r,mappedProps:a}:i.kind===`action`?{k:`Comp`,name:`Action`,args:[{k:`Arr`,els:[]}]}:{k:`Null`}}function _r(e,t,n){let r=t.currentStatementId;t.currentStatementId=n;let i=/* @__PURE__ */ new Set;for(let n of e)jn(n,e=>{if(e.k!==`Comp`||i.has(e))return;i.add(e);let n=Ln(t.cat).get(e.name);n&&!n.lazy&&(e.mappedProps=(n.builtin?null:hr(e.name,e.args,n,t))??mr(e.args,n.params))});t.currentStatementId=r}function vr(e,t,n){let r=Ln(t.cat).get(e.name);if(r?.kind!==`function`||!r.lazy||e.args.length<3)return null;let i=e.args[1],a=i.k===`Ref`?i.n:i.k===`Str`?i.v:null;if(!a)return null;let o=new Set(n);o.add(a);let s=e.args.map((e,n)=>n===1?e:yr(e,t,o));return{...e,args:s}}function yr(e,t,n){switch(e.k){case`Ref`:return n.has(e.n)?e:fr(e.n,t,`expr`);case`Ph`:return e;case`Comp`:{if(e.fn&&!pr(e.name,t))return tr(t,e.name,``,{code:`unknown-function`}),{k:`Null`};let r=vr(e,t,n);if(r)return r;if(pr(e.name,t))return gr(e,t,e=>yr(e,t,n));let i=e.args.map(e=>yr(e,t,n)),a=t.cat?.get(e.name);if(a){let t={};for(let e=0;e<a.params.length&&e<i.length;e++)t[a.params[e].name]=i[e];return{...e,args:i,mappedProps:t}}return tr(t,e.name,``,{code:`unknown-component`,available:t.cat&&[...t.cat.keys()]}),{...e,args:i}}case`Arr`:return{...e,els:e.els.map(e=>yr(e,t,n))};case`Obj`:return{...e,entries:e.entries.map(([e,r])=>[e,yr(r,t,n)])};case`BinOp`:return{...e,left:yr(e.left,t,n),right:yr(e.right,t,n)};case`UnaryOp`:return{...e,operand:yr(e.operand,t,n)};case`Ternary`:return{...e,cond:yr(e.cond,t,n),then:yr(e.then,t,n),else:yr(e.else,t,n)};case`Member`:return{...e,obj:yr(e.obj,t,n)};case`Index`:return{...e,obj:yr(e.obj,t,n),index:yr(e.index,t,n)};case`Assign`:return{...e,value:yr(e.value,t,n)};default:return e}}function br(e,t){return yr(e,t,/* @__PURE__ */ new Set)}function xr(e,t){switch(e.k){case`Ref`:return fr(e.n,t,`value`);case`Str`:return e.v;case`Num`:return e.v;case`Bool`:return e.v;case`Null`:return null;case`Ph`:return null;case`Arr`:{let n=[];for(let r of e.els){if(r.k===`Ph`){t.prunedValues++;continue}let e=xr(r,t);e===null&&(r.k===`Comp`||r.k===`Ref`)?t.prunedValues++:n.push(e)}return n}case`Obj`:{let n={};for(let[r,i]of e.entries)n[r]=xr(i,t);return n}case`Comp`:{let{name:n,args:r}=e;if(e.fn&&!pr(n,t))return tr(t,n,``,{code:`unknown-function`}),null;if(zn(n))return tr(t,n,``,{code:`inline-reserved`}),null;if(pr(n,t))return vr(e,t,/* @__PURE__ */ new Set)||gr(e,t,e=>br(e,t));let i=t.cat?.get(n),a={};if(i){let e=!1;for(let o=0;o<i.params.length&&o<r.length;o++){let s=i.params[o],c=t.prunedValues,l=xr(r[o],t);if(t.prunedValues>c&&tr(t,n,`/${s.name}`,{code:`pruned-value`}),a[s.name]=l,s.schema===void 0)continue;if(l==null&&s.defaultValue!==void 0){tr(t,n,`/${s.name}`,{code:`type-mismatch`,expected:Zn(s.schema)??`a defined value`,actual:l===null?`null`:`undefined`}),a[s.name]=s.defaultValue,t.prunedValues=c;continue}let u=ur(l,s.schema,n,`/${s.name}`,t);u===nr&&(u=rr(s.required,s.defaultValue),s.defaultValue!==void 0&&(t.prunedValues=c),u===nr?e=!0:u===void 0&&delete a[s.name]),u!==nr&&u!==void 0&&(a[s.name]=u)}r.length>i.params.length&&tr(t,n,``,{code:`excess-args`,declared:i.params.length,got:r.length});let o=i.params.filter(e=>e.required&&(!(e.name in a)||a[e.name]===null));if(o.length){let e=o.filter(e=>e.defaultValue===void 0||(tr(t,n,`/${e.name}`,{code:e.name in a?`null-required`:`missing-required`}),a[e.name]=e.defaultValue,!1));if(e.length){for(let r of e)tr(t,n,`/${r.name}`,{code:r.name in a?`null-required`:`missing-required`,signature:Qn(n,i.params)});return null}}if(e)return null}else return tr(t,n,``,{code:`unknown-component`,available:t.cat&&[...t.cat.keys()]}),null;let o=Object.values(a).some(e=>dr(e));return{type:`element`,typeName:n,props:a,partial:t.partial,hasDynamicProps:o}}default:return On(e)?br(e,t):e}}function Sr(e){let t=[],n=!1,r=!1;for(let i=0;i<e.length;i++){let a=e[i];r?r=!1:a===`\\`&&n?r=!0:n?a===n&&(n=!1):a===`"`||a===`'`?n=a:a===`(`||a===`[`||a===`{`?t.push(a):(a===`)`&&t[t.length-1]===`(`||a===`]`&&t[t.length-1]===`[`||a===`}`&&t[t.length-1]===`{`)&&t.pop()}if(!(n||t.length>0))return{text:e,wasIncomplete:!1};let i=e;n&&(r&&(i+=`\\`),i+=n);for(let e=t.length-1;e>=0;e--)i+=t[e]===`(`?`)`:t[e]===`[`?`]`:`}`;return{text:i,wasIncomplete:!0}}function Cr(e){let t=[],n=0;for(;n<e.length;){for(;n<e.length&&e[n].t===G.Newline;)n++;if(n>=e.length||e[n].t===G.EOF)break;let r=e[n];if(r.t!==G.Ident&&r.t!==G.Type&&r.t!==G.StateVar){for(;n<e.length&&e[n].t!==G.Newline&&e[n].t!==G.EOF;)n++;continue}let i=r.v,a=r.t;if(n++,n>=e.length||e[n].t!==G.Equals){for(;n<e.length&&e[n].t!==G.Newline&&e[n].t!==G.EOF;)n++;continue}n++;let o=[],s=0,c=0;for(;n<e.length&&e[n].t!==G.EOF;){let t=e[n].t;if(t===G.Newline&&s<=0&&c<=0){let t=n+1;for(;t<e.length&&e[t].t===G.Newline;)t++;let r=t<e.length?e[t].t:G.EOF;if(r===G.Question||r===G.Colon&&c>0){n++;continue}break}t===G.Newline?n++:(t===G.LParen||t===G.LBrack||t===G.LBrace?s++:(t===G.RParen||t===G.RBrack||t===G.RBrace)&&s>0?s--:t===G.Question&&s===0?c++:t===G.Colon&&s===0&&c>0&&c--,o.push(e[n++]))}o.length&&t.push({id:i,idTokenType:a,tokens:o})}return t}function wr(e=!0){return{root:null,meta:{incomplete:e,unresolved:[],orphaned:[],statementCount:0,errors:[]},stateDeclarations:{},queryStatements:[],mutationStatements:[]}}function Tr(e){if(!An(e))return[];let t=/* @__PURE__ */ new Set;return jn(e,e=>{e.k===`StateRef`&&t.add(e.n)}),[...t]}function Er(e,t){if(t.k===`Comp`&&t.name===In.Query){let n=Tr(t.args[1]);return{kind:`query`,id:e.id,call:{callee:In.Query,args:t.args},expr:t,deps:n.length>0?n:void 0}}return t.k===`Comp`&&t.name===In.Mutation?{kind:`mutation`,id:e.id,call:{callee:In.Mutation,args:t.args},expr:t}:e.idTokenType===G.StateVar?{kind:`state`,id:e.id,init:t}:{kind:`value`,id:e.id,expr:t}}function Dr(e,t,n){let r={},i=[],a=[];for(let n of e)switch(n.kind){case`state`:r[n.id]=xr(n.init,t);break;case`query`:_r(n.call.args,t,n.id),i.push({statementId:n.id,toolAST:n.call.args[0]??null,argsAST:n.call.args[1]??null,defaultsAST:n.call.args[2]??null,refreshAST:n.call.args[3]??null,deps:n.deps,complete:!0});break;case`mutation`:_r(n.call.args,t,n.id),a.push({statementId:n.id,toolAST:n.call.args[0]??null,argsAST:n.call.args[1]??null})}for(let t of e){let e=t.kind===`state`?[t.init]:t.kind===`value`?[t.expr]:t.kind===`query`||t.kind===`mutation`?t.call.args:[];for(let i of e)for(let e of Tr(i))e===n?.name&&n.stmts.has(t)||e in r||(r[e]=null)}return{stateDeclarations:r,queryStatements:i,mutationStatements:a}}const Or=`root`;function kr(e){return e?.k===`Comp`&&!e.fn&&!Rn(e.name)&&!zn(e.name)}function Ar(e,t){if(e.has(Or))return{id:Or,fallback:!1};for(let n of e.values())if(n.kind===`value`&&kr(n.expr)&&n.expr.name===t)return{id:n.id,fallback:!0};return null}function jr(e,t){let n=/* @__PURE__ */ new Set;for(;e?.k===`Ref`&&!n.has(e.n);)n.add(e.n),e=t.get(e.n);return kr(e)}function Mr(e){let t=!1;return jn(e,e=>{kr(e)&&(t=!0)}),t}function Nr(e,t,n,r,i,a,o){let s=Ar(e,a),c=/* @__PURE__ */ new Map;for(let[t,n]of e)c.set(t,n.kind===`state`?n.init:n.expr);let l=[],u=[],d=/* @__PURE__ */ new Set;for(let[t,n]of e)t!==s?.id&&n.kind!==`state`&&n.kind!==`query`&&n.kind!==`mutation`&&d.add(t);let f={syms:c,cat:i,errors:u,unres:l,prunedValues:0,visited:/* @__PURE__ */ new Set,partial:n,currentStatementId:s?.id,unreached:d},p=null,m;if(s){let e=xr(c.get(s.id),f);Hn(e)?(p=e,p.statementId=s.id):An(e)&&Mr(e)&&(m=e)}let{stateDeclarations:h,queryStatements:g,mutationStatements:_}=Dr(t,f,o);f.currentStatementId=s?.id;let v=a??``;s?!p&&!m&&!jr(c.get(s.id),c)?tr(f,v,``,{code:`no-root`,reason:`not-component`}):s.fallback&&tr(f,v,``,{code:`no-root`,reason:p?`fallback`:`missing`}):tr(f,v,``,{code:`no-root`,reason:`missing`});let y=s?[...d]:[];return{root:p,...m?{rootExpression:m}:{},meta:{incomplete:n,unresolved:l,orphaned:y,statementCount:r,errors:u},stateDeclarations:h,queryStatements:g,mutationStatements:_}}function Pr(e,t){if(e[t]!==`"`)return t;let n=t+1;for(;n<e.length;){let t=e[n];if(t===`\\`)n+=2;else if(t===`"`)return n+1;else n++}return n}function Fr(e){let t=[],n=0;for(;n<e.length;){let r=-1;for(;n<e.length;){let t=Pr(e,n);if(t>n)n=t;else{if(e[n]==="`"&&n+1<e.length&&e[n+1]==="`"&&n+2<e.length&&e[n+2]==="`"){r=n;break}n++}}if(r===-1)break;let i=r+3;for(;i<e.length&&e[i]!==`
|
|
10
|
+
`.replace(/__P__/g,`helpai`).replaceAll(`__BRAND_ACCENT_TEXT__`,`#FFFFFF`).replaceAll(`__BRAND_ACCENT__`,`#5B5BD6`).replaceAll(`__BRAND_RADIUS__`,`12px`).replaceAll(`__BRAND_FONT__`,`Inter, system-ui, -apple-system, 'Segoe UI', sans-serif`),Ct=[`data-theme`,`data-color-scheme`,`data-mode`,`data-bs-theme`];function wt(e){if(e){if(e.classList.contains(`dark`))return`dark`;if(e.classList.contains(`light`))return`light`;for(let t of Ct){let n=e.getAttribute(t);if(n===`dark`||n===`light`)return n}}}function Tt(e=document){let t=wt(e.documentElement)??wt(e.body);if(t)return t;let n=getComputedStyle(e.documentElement).colorScheme.trim();return n===`dark`||n===`light`?n:typeof matchMedia==`function`&&matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}function Et(e,t=document){let n=Tt(t);e(n);function r(){let r=Tt(t);r!==n&&(n=r,e(r))}let i=new MutationObserver(r),a={attributes:!0,attributeFilter:[`class`,`style`,...Ct]};i.observe(t.documentElement,a),t.body&&i.observe(t.body,a);let o=typeof matchMedia==`function`?matchMedia(`(prefers-color-scheme: dark)`):void 0;return o?.addEventListener(`change`,r),()=>{i.disconnect(),o?.removeEventListener(`change`,r)}}const Dt=R.scope(`mount`),Ot=/* @__PURE__ */ new WeakMap,kt={floating:`all: initial; position: fixed; z-index: 2147483600;`,flow:`all: initial; display: block; position: relative; width: 100%; height: 100%; z-index: 1; contain: size;`,viewport:`all: initial; display: block; position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1;`};function At(e,t){e.style.cssText=kt[t]}function jt(e){return e===`floating`||e===`modal`||e===`drawer`?`floating`:e===`standalone`||e===`page`?`viewport`:`flow`}function Mt(e={}){let t=e.position??`flow`;Dt.debug(`createShadowMount`,{position:t,hasTarget:!!e.target,hasHost:!!e.existingHost});let n=`${M.cssPrefix}-chat-host`;typeof customElements<`u`&&!customElements.get(n)&&customElements.define(n,class extends HTMLElement{});let r;e.existingHost?r=e.existingHost:(r=document.createElement(n),(e.target??document.body).appendChild(r)),r.setAttribute(`data-brand`,M.id),r.style.cssText=kt[t];let i=r.shadowRoot??r.attachShadow({mode:`open`});for(let e of[`keydown`,`keypress`,`keyup`])i.addEventListener(e,Nt);let a=r.ownerDocument;if(!Pt(i,a)){let e=a.createElement(`style`);e.textContent=St,i.appendChild(e)}let o=document.createElement(`div`);return o.className=`${M.cssPrefix}-app`,i.appendChild(o),{appRoot:o,destroy:()=>r.remove(),hostElement:r,shadowRoot:i}}function Nt(e){if(e instanceof KeyboardEvent&&(e.metaKey||e.ctrlKey))return;let t=e.composedPath()[0];t instanceof HTMLElement&&(t.isContentEditable||t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.tagName===`SELECT`)&&e.stopPropagation()}function Pt(e,t){if(!(`adoptedStyleSheets`in e))return!1;let n=t.defaultView;if(!n||typeof n.CSSStyleSheet!=`function`)return!1;let r=Ot.get(t);if(!r)try{r=new n.CSSStyleSheet,r.replaceSync(St),Ot.set(t,r)}catch{return!1}try{return e.adoptedStyleSheets=[r],!0}catch{return!1}}function Ft(e,t){let n=M.cssPrefix;t.accent&&e.style.setProperty(`--${n}-accent-user`,t.accent),t.accentText&&e.style.setProperty(`--${n}-accent-text-user`,t.accentText),t.radius&&e.style.setProperty(`--${n}-radius`,t.radius),t.fontFamily&&e.style.setProperty(`--${n}-font`,t.fontFamily),t.contentMaxWidth&&e.style.setProperty(`--${n}-conversation-max`,t.contentMaxWidth)}function It(e,t){e.dataset.theme=t===`host`?Tt():t}function Lt(e,t){let n=M.cssPrefix;t.width!==void 0&&e.style.setProperty(`--${n}-panel-w`,t.width),t.height!==void 0&&e.style.setProperty(`--${n}-panel-h`,t.height),t.expanded?.width!==void 0&&e.style.setProperty(`--${n}-expanded-w`,t.expanded.width),t.expanded?.height!==void 0&&e.style.setProperty(`--${n}-expanded-h`,t.expanded.height),t.inset!==void 0&&e.style.setProperty(`--${n}-panel-inset`,t.inset)}function Rt(e,t){e.dataset.position=t}function zt(e,t){e.dataset.mode=t}function Bt(e,t){It(e,t.themeMode),Ft(e,t.themeOverrides),Rt(e,t.position),Lt(e,t.size)}function Vt(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);return{headers(){let t={"x-ai-agent-deployment-id":e.aiAgentDeploymentId};return e.publicKey&&(t[e.publicKeyHeader??`x-public-key`]=e.publicKey),t}}}const Ht=/* @__PURE__ */ new Set([`home`,`chats`,`help`,`news`]);function Ut(e){return typeof e!=`object`||!e||!(`to`in e)||typeof e.to!=`string`||!Ht.has(e.to)?!1:!(`id`in e)||e.id===void 0||typeof e.id==`string`}function Wt(e){let[t=``,...n]=e.trim().split(`/`);if(t===``||t===`open`)return;let r=n.join(`/`);return r?{to:t,id:r}:{to:t}}function Gt(e,t){return{text:e,send:typeof t==`object`&&!!t&&`send`in t&&t.send===!0}}function Kt(e){if(typeof e!=`object`||!e||!(`text`in e)||typeof e.text!=`string`)return;let t=e.text.trim();return t?{text:t,send:`send`in e&&e.send===!0}:void 0}function qt(e){return`${M.cssPrefix}:${e}`}function Jt(e,t,n){e.dispatchEvent(new CustomEvent(qt(t),{detail:n}))}function Yt(e,t){let n=Object.entries(t).map(([t,n])=>{let r=qt(t);function i(e){return n(e.detail)}return e.addEventListener(r,i),[r,i]});return()=>{for(let[t,r]of n)e.removeEventListener(t,r)}}function Xt(e,t){let n=[],r;for(let i of e){let e=new URLSearchParams(i);e.has(t)?r??(r=e.get(t)??``):n.push(i)}return{value:r,rest:n}}function Zt(e){let t=new URL(e),n=M.cssPrefix,r=`${M.cssPrefix}-ask`,i=t.search.slice(1).split(`&`).filter(Boolean),a=t.hash.slice(1).split(`&`).filter(Boolean),o=Xt(i,n),s=Xt(o.rest,r),c=Xt(a,n),l=Xt(c.rest,r),u=o.value??c.value,d=(s.value??l.value)?.trim()||void 0;if(u!==void 0||d!==void 0)return t.search=s.rest.join(`&`),t.hash=l.rest.join(`&`),{target:u===void 0?void 0:Wt(u),...d?{ask:d}:{},url:t.toString()}}function Qt(e){"@babel/helpers - typeof";return Qt=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Qt(e)}function $t(e,t){if(Qt(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(Qt(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function en(e){var t=$t(e,`string`);return Qt(t)==`symbol`?t:t+``}function B(e,t,n){return(t=en(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const tn={open:!1,ready:!1,unread:0};var nn=class{constructor(){B(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 rn=R.scope(`feedback:audio`);var an=class{constructor(){B(this,`ctx`,null),B(this,`master`,null),B(this,`buffers`,/* @__PURE__ */ new Map)}unlock(){if(this.ctx){this.ctx.state===`suspended`&&this.ctx.resume();return}let e=globalThis.AudioContext??globalThis.webkitAudioContext;if(e)try{this.ctx=new e,this.master=this.ctx.createGain(),this.master.gain.value=1,this.master.connect(this.ctx.destination)}catch(e){rn.warn(`AudioContext init failed`,{err:e})}}setVolume(e){if(!this.master||!this.ctx)return;let t=Math.max(0,Math.min(1,e));this.master.gain.setTargetAtTime(t,this.ctx.currentTime,.01)}playTone(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=t.currentTime,i=e.noteMs/1e3;e.notes.forEach((a,o)=>{let s=t.createOscillator();s.type=e.type,s.frequency.value=a;let c=t.createGain(),l=r+o*i;c.gain.setValueAtTime(1e-4,l),c.gain.exponentialRampToValueAtTime(e.peakGain,l+.005),c.gain.exponentialRampToValueAtTime(1e-4,l+i),s.connect(c).connect(n),s.start(l),s.stop(l+i+.01)})}async playUrl(e){let t=this.ctx,n=this.master;if(!t||!n||t.state!==`running`)return;let r=await this.getBuffer(e);if(!r)return;let i=t.createBufferSource();i.buffer=r,i.connect(n),i.start()}destroy(){this.ctx&&this.ctx.close().catch(()=>void 0),this.ctx=null,this.master=null,this.buffers.clear()}async getBuffer(e){if(!this.ctx)return null;let t=this.buffers.get(e);if(t)return t instanceof Promise,t;let n=this.ctx,r=fetch(e).then(e=>e.ok?e.arrayBuffer():Promise.reject(/* @__PURE__ */ Error(`fetch ${e.status}`))).then(e=>n.decodeAudioData(e)).then(t=>(this.buffers.set(e,t),t)).catch(t=>(rn.warn(`audio fetch/decode failed`,{url:e,err:t}),this.buffers.delete(e),null));return this.buffers.set(e,r),r}};const on={messageReceived:10,messageSent:0,error:[20,40,20],voiceStart:10,voiceStop:0},sn={messageReceived:{notes:[880,1318.51],noteMs:90,type:`sine`,peakGain:.45},messageSent:{notes:[1568],noteMs:60,type:`sine`,peakGain:.25},error:{notes:[523.25,392],noteMs:120,type:`triangle`,peakGain:.55},voiceStart:{notes:[1318.51],noteMs:50,type:`sine`,peakGain:.3},voiceStop:{notes:[880],noteMs:50,type:`sine`,peakGain:.3}};let cn=null,ln=0;function un(){return typeof navigator<`u`&&typeof navigator.vibrate==`function`}function dn(){if(typeof document>`u`)return null;let e=document.createElement(`input`);e.type=`checkbox`,e.setAttribute(`switch`,``),e.setAttribute(`aria-hidden`,`true`),e.tabIndex=-1,e.id=`__${M.cssPrefix}_haptic_${Math.random().toString(36).slice(2)}`;let t=document.createElement(`label`);t.htmlFor=e.id,t.setAttribute(`aria-hidden`,`true`);let n=`position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;opacity:0!important;pointer-events:none!important;`;return e.style.cssText=n,t.style.cssText=n,document.body.append(e,t),{input:e,label:t}}function fn(e){if(!(e===0||Array.isArray(e)&&e.every(e=>e===0))){if(un())try{navigator.vibrate(e);return}catch{}if(cn??(cn=dn()),cn)try{cn.label.click()}catch{}}}function pn(){ln++;let e=!1;return()=>{e||(e=!0,ln=Math.max(0,ln-1),ln===0&&cn&&(cn.input.remove(),cn.label.remove(),cn=null))}}const mn=R.scope(`feedback`);var hn=class{constructor(e,t){B(this,`mutedSig`,o(!1)),B(this,`audio`,new an),B(this,`releaseHaptics`,void 0),B(this,`sound`,void 0),B(this,`haptics`,void 0),B(this,`lastPlayed`,/* @__PURE__ */ new Map),B(this,`reducedMotionMq`,null),this.sound=e,this.haptics=t,this.releaseHaptics=pn(),this.audio.setVolume(this.effectiveVolume()),typeof matchMedia<`u`&&(this.reducedMotionMq=matchMedia(`(prefers-reduced-motion: reduce)`))}unlock(){this.audio.unlock(),this.audio.setVolume(this.effectiveVolume())}update(e,t){this.sound=e,this.haptics=t,this.audio.setVolume(this.effectiveVolume())}setMuted(e){this.mutedSig.value!==e&&(this.mutedSig.value=e)}toggleMuted(){this.mutedSig.value=!this.mutedSig.value}play(e){this.mutedSig.value||this.isDeduped(e)||(this.lastPlayed.set(e,performance.now()),this.sound.enabled&&this.playSound(e),this.haptics.enabled&&this.isTouchDevice()&&this.playHaptic(e))}destroy(){this.audio.destroy(),this.releaseHaptics()}isDeduped(e){let t=this.lastPlayed.get(e);return t!==void 0&&performance.now()-t<100}playSound(e){let t=this.sound.events?.[e];if(t===!1)return;if(typeof t==`string`){this.audio.playUrl(t).catch(e=>mn.warn(`audio play failed`,{err:e,url:t}));return}let n=sn[e];n&&this.audio.playTone(n)}playHaptic(e){if(this.reducedMotionMq?.matches)return;let t=this.haptics.events?.[e];t!==!1&&fn(t===!0||t===void 0?on[e]:t)}effectiveVolume(){let e=this.sound.volume??.3;return this.reducedMotionMq?.matches?e*.5:e}isTouchDevice(){return typeof window>`u`?!1:matchMedia(`(hover: none) and (pointer: coarse)`).matches}};function gn(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function _n(e){return gn(e)}function vn(e){return!(!gn(e)||e.navigation!==void 0&&!Array.isArray(e.navigation)||e.linkCards!==void 0&&!Array.isArray(e.linkCards))}const yn={root:`Root`,schema:{$schema:`https://json-schema.org/draft/2020-12/schema`,type:`object`,properties:{Root:{$ref:`#/$defs/Root`},Grid:{$ref:`#/$defs/Grid`},Cell:{$ref:`#/$defs/Cell`},Text:{$ref:`#/$defs/Text`},Card:{$ref:`#/$defs/Card`},Metric:{$ref:`#/$defs/Metric`},Table:{$ref:`#/$defs/Table`},Chart:{$ref:`#/$defs/Chart`}},required:[`Root`,`Grid`,`Cell`,`Text`,`Card`,`Metric`,`Table`,`Chart`],additionalProperties:!1,$defs:{Root:{type:`object`,properties:{children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Grid`},{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}}},required:[`children`],additionalProperties:!1},Grid:{type:`object`,properties:{columns:{type:`integer`,enum:[1,2,3,4],default:1},children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Cell`},{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}}},required:[`columns`,`children`],additionalProperties:!1},Cell:{type:`object`,properties:{children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}},span:{type:`integer`,enum:[1,2,3,4],default:1}},required:[`children`],additionalProperties:!1},Text:{type:`object`,properties:{text:{type:`string`}},required:[`text`],additionalProperties:!1},Card:{type:`object`,properties:{title:{type:`string`},body:{type:`string`}},required:[`title`,`body`],additionalProperties:!1},Metric:{type:`object`,properties:{label:{type:`string`},value:{type:`string`},detail:{type:`string`}},required:[`label`,`value`,`detail`],additionalProperties:!1},Table:{type:`object`,properties:{title:{type:`string`},columns:{type:`array`,items:{type:`string`}},rows:{type:`array`,items:{type:`array`,items:{type:`string`}}}},required:[`title`,`columns`,`rows`],additionalProperties:!1},Chart:{type:`object`,properties:{title:{type:`string`},type:{type:`string`,enum:[`bar`,`line`]},data:{type:`array`,items:{type:`object`,properties:{label:{type:`string`},value:{type:`number`}},required:[`label`,`value`],additionalProperties:!1}}},required:[`title`,`type`,`data`],additionalProperties:!1}}}},bn=On,xn={type:`object`,properties:{typeName:{const:`Grid`},statementId:{type:`string`},props:{type:`object`,properties:{columns:{type:`integer`,enum:[1,2,3,4],default:1},children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Cell`},{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}}},required:[`columns`,`children`],additionalProperties:!1}},required:[`typeName`,`statementId`,`props`]},Sn={type:`object`,properties:{typeName:{const:`Cell`},statementId:{type:`string`},props:{type:`object`,properties:{children:{type:`array`,items:{anyOf:[{$ref:`#/$defs/Text`},{$ref:`#/$defs/Card`},{$ref:`#/$defs/Metric`},{$ref:`#/$defs/Table`},{$ref:`#/$defs/Chart`}]}},span:{type:`integer`,enum:[1,2,3,4],default:1}},required:[`children`],additionalProperties:!1}},required:[`typeName`,`statementId`,`props`]};function Cn(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=Cn.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return Cn.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Text`)return Cn.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Text`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return Cn.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.text===void 0&&(e=`text`))return Cn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`text`)return Cn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.text!==void 0&&typeof n.text!=`string`)return Cn.errors=[{instancePath:t+`/props/text`,schemaPath:`#/properties/props/properties/text/type`,keyword:`type`,params:{type:`string`}}],!1}else return Cn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return Cn.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return Cn.errors=null,!0}Cn.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function wn(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=wn.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return wn.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Card`)return wn.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Card`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return wn.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.title===void 0&&(e=`title`)||n.body===void 0&&(e=`body`))return wn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`title`&&e!==`body`)return wn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.title!==void 0){if(typeof n.title!=`string`)return wn.errors=[{instancePath:t+`/props/title`,schemaPath:`#/properties/props/properties/title/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.body!==void 0){if(typeof n.body!=`string`)return wn.errors=[{instancePath:t+`/props/body`,schemaPath:`#/properties/props/properties/body/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0}}else return wn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return wn.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return wn.errors=null,!0}wn.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function V(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=V.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return V.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Metric`)return V.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Metric`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return V.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.label===void 0&&(e=`label`)||n.value===void 0&&(e=`value`)||n.detail===void 0&&(e=`detail`))return V.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`label`&&e!==`value`&&e!==`detail`)return V.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.label!==void 0){if(typeof n.label!=`string`)return V.errors=[{instancePath:t+`/props/label`,schemaPath:`#/properties/props/properties/label/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.value!==void 0){if(typeof n.value!=`string`)return V.errors=[{instancePath:t+`/props/value`,schemaPath:`#/properties/props/properties/value/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.detail!==void 0){if(typeof n.detail!=`string`)return V.errors=[{instancePath:t+`/props/detail`,schemaPath:`#/properties/props/properties/detail/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0}}}else return V.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return V.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return V.errors=null,!0}V.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function H(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=H.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return H.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Table`)return H.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Table`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return H.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.title===void 0&&(e=`title`)||n.columns===void 0&&(e=`columns`)||n.rows===void 0&&(e=`rows`))return H.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`title`&&e!==`columns`&&e!==`rows`)return H.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.title!==void 0){if(typeof n.title!=`string`)return H.errors=[{instancePath:t+`/props/title`,schemaPath:`#/properties/props/properties/title/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.columns!==void 0){let e=n.columns;if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++)if(typeof e[r]!=`string`)return H.errors=[{instancePath:t+`/props/columns/`+r,schemaPath:`#/properties/props/properties/columns/items/type`,keyword:`type`,params:{type:`string`}}],!1}else return H.errors=[{instancePath:t+`/props/columns`,schemaPath:`#/properties/props/properties/columns/type`,keyword:`type`,params:{type:`array`}}],!1;var c=!0}else var c=!0;if(c){if(n.rows!==void 0){let e=n.rows;if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r];if(Array.isArray(n)){let e=n.length;for(let i=0;i<e;i++)if(typeof n[i]!=`string`)return H.errors=[{instancePath:t+`/props/rows/`+r+`/`+i,schemaPath:`#/properties/props/properties/rows/items/items/type`,keyword:`type`,params:{type:`string`}}],!1}else return H.errors=[{instancePath:t+`/props/rows/`+r,schemaPath:`#/properties/props/properties/rows/items/type`,keyword:`type`,params:{type:`array`}}],!1}}else return H.errors=[{instancePath:t+`/props/rows`,schemaPath:`#/properties/props/properties/rows/type`,keyword:`type`,params:{type:`array`}}],!1;var c=!0}else var c=!0}}}else return H.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return H.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return H.errors=null,!0}H.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};const Tn={type:`object`,properties:{typeName:{const:`Chart`},statementId:{type:`string`},props:{type:`object`,properties:{title:{type:`string`},type:{type:`string`,enum:[`bar`,`line`]},data:{type:`array`,items:{type:`object`,properties:{label:{type:`string`},value:{type:`number`}},required:[`label`,`value`],additionalProperties:!1}}},required:[`title`,`type`,`data`],additionalProperties:!1}},required:[`typeName`,`statementId`,`props`]};function U(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=U.evaluated;if(o.dynamicProps&&(o.props=void 0),o.dynamicItems&&(o.items=void 0),e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return U.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){if(e.typeName!==`Chart`)return U.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Chart`}}],!1;var s=!0}else var s=!0;if(s){if(e.statementId!==void 0){if(typeof e.statementId!=`string`)return U.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var s=!0}else var s=!0;if(s){if(e.props!==void 0){let n=e.props;if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.title===void 0&&(e=`title`)||n.type===void 0&&(e=`type`)||n.data===void 0&&(e=`data`))return U.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`title`&&e!==`type`&&e!==`data`)return U.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.title!==void 0){if(typeof n.title!=`string`)return U.errors=[{instancePath:t+`/props/title`,schemaPath:`#/properties/props/properties/title/type`,keyword:`type`,params:{type:`string`}}],!1;var c=!0}else var c=!0;if(c){if(n.type!==void 0){let e=n.type;if(typeof e!=`string`)return U.errors=[{instancePath:t+`/props/type`,schemaPath:`#/properties/props/properties/type/type`,keyword:`type`,params:{type:`string`}}],!1;if(e!==`bar`&&e!==`line`)return U.errors=[{instancePath:t+`/props/type`,schemaPath:`#/properties/props/properties/type/enum`,keyword:`enum`,params:{allowedValues:Tn.properties.props.properties.type.enum}}],!1;var c=!0}else var c=!0;if(c){if(n.data!==void 0){let e=n.data;if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r];if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.label===void 0&&(e=`label`)||n.value===void 0&&(e=`value`))return U.errors=[{instancePath:t+`/props/data/`+r,schemaPath:`#/properties/props/properties/data/items/required`,keyword:`required`,params:{missingProperty:e}}],!1;for(let e in n)if(e!==`label`&&e!==`value`)return U.errors=[{instancePath:t+`/props/data/`+r,schemaPath:`#/properties/props/properties/data/items/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(n.label!==void 0){if(typeof n.label!=`string`)return U.errors=[{instancePath:t+`/props/data/`+r+`/label`,schemaPath:`#/properties/props/properties/data/items/properties/label/type`,keyword:`type`,params:{type:`string`}}],!1;var l=!0}else var l=!0;if(l){if(n.value!==void 0){let e=n.value;if(!(typeof e==`number`&&isFinite(e)))return U.errors=[{instancePath:t+`/props/data/`+r+`/value`,schemaPath:`#/properties/props/properties/data/items/properties/value/type`,keyword:`type`,params:{type:`number`}}],!1;var l=!0}else var l=!0}}else return U.errors=[{instancePath:t+`/props/data/`+r,schemaPath:`#/properties/props/properties/data/items/type`,keyword:`type`,params:{type:`object`}}],!1}}else return U.errors=[{instancePath:t+`/props/data`,schemaPath:`#/properties/props/properties/data/type`,keyword:`type`,params:{type:`array`}}],!1;var c=!0}else var c=!0}}}else return U.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1;var s=!0}else var s=!0}}}else return U.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1;return U.errors=null,!0}U.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function En(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=null,s=0,c=En.evaluated;if(c.dynamicProps&&(c.props=void 0),c.dynamicItems&&(c.items=void 0),s===0){if(e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return En.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){let n=s;if(e.typeName!==`Cell`)return En.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Cell`}}],!1;var l=n===s}else var l=!0;if(l){if(e.statementId!==void 0){let n=s;if(typeof e.statementId!=`string`)return En.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var l=n===s}else var l=!0;if(l){if(e.props!==void 0){let n=e.props,r=s;if(s===r){if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.children===void 0&&(e=`children`))return En.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;{let e=s;for(let e in n)if(e!==`children`&&e!==`span`)return En.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(e===s){if(n.children!==void 0){let e=n.children,r=s;if(s===r){if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r],c=s,l=s,f=!1,p=s;Cn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Cn.errors:o.concat(Cn.errors),s=o.length);var u=p===s;if(f=f||u,u){var d={};d.typeName=!0,d.statementId=!0,d.props=!0}let m=s;wn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?wn.errors:o.concat(wn.errors),s=o.length);var u=m===s;f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0);let h=s;V(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?V.errors:o.concat(V.errors),s=o.length);var u=h===s;f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0);let g=s;H(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?H.errors:o.concat(H.errors),s=o.length);var u=g===s;f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0);let _=s;U(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?U.errors:o.concat(U.errors),s=o.length);var u=_===s;if(f=f||u,u&&d!==!0&&(d=d||{},d.typeName=!0,d.statementId=!0,d.props=!0),f)s=l,o!==null&&(l?o.length=l:o=null);else{let e={instancePath:t+`/props/children/`+r,schemaPath:`#/properties/props/properties/children/items/anyOf`,keyword:`anyOf`,params:{}};return o===null?o=[e]:o.push(e),s++,En.errors=o,!1}if(c!==s)break}}else return En.errors=[{instancePath:t+`/props/children`,schemaPath:`#/properties/props/properties/children/type`,keyword:`type`,params:{type:`array`}}],!1}var f=r===s}else var f=!0;if(f){if(n.span!==void 0){let e=n.span,r=s;if(typeof e!=`number`||e%1||isNaN(e)||!isFinite(e))return En.errors=[{instancePath:t+`/props/span`,schemaPath:`#/properties/props/properties/span/type`,keyword:`type`,params:{type:`integer`}}],!1;if(e!==1&&e!==2&&e!==3&&e!==4)return En.errors=[{instancePath:t+`/props/span`,schemaPath:`#/properties/props/properties/span/enum`,keyword:`enum`,params:{allowedValues:Sn.properties.props.properties.span.enum}}],!1;var f=r===s}else var f=!0}}}}else return En.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1}var l=r===s}else var l=!0}}}else return En.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1}return En.errors=o,s===0}En.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function Dn(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=null,s=0,c=Dn.evaluated;if(c.dynamicProps&&(c.props=void 0),c.dynamicItems&&(c.items=void 0),s===0){if(e&&typeof e==`object`&&!Array.isArray(e)){let n;if(e.typeName===void 0&&(n=`typeName`)||e.statementId===void 0&&(n=`statementId`)||e.props===void 0&&(n=`props`))return Dn.errors=[{instancePath:t,schemaPath:`#/required`,keyword:`required`,params:{missingProperty:n}}],!1;if(e.typeName!==void 0){let n=s;if(e.typeName!==`Grid`)return Dn.errors=[{instancePath:t+`/typeName`,schemaPath:`#/properties/typeName/const`,keyword:`const`,params:{allowedValue:`Grid`}}],!1;var l=n===s}else var l=!0;if(l){if(e.statementId!==void 0){let n=s;if(typeof e.statementId!=`string`)return Dn.errors=[{instancePath:t+`/statementId`,schemaPath:`#/properties/statementId/type`,keyword:`type`,params:{type:`string`}}],!1;var l=n===s}else var l=!0;if(l){if(e.props!==void 0){let n=e.props,r=s;if(s===r){if(n&&typeof n==`object`&&!Array.isArray(n)){let e;if(n.columns===void 0&&(e=`columns`)||n.children===void 0&&(e=`children`))return Dn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/required`,keyword:`required`,params:{missingProperty:e}}],!1;{let e=s;for(let e in n)if(e!==`columns`&&e!==`children`)return Dn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/additionalProperties`,keyword:`additionalProperties`,params:{additionalProperty:e}}],!1;if(e===s){if(n.columns!==void 0){let e=n.columns,r=s;if(typeof e!=`number`||e%1||isNaN(e)||!isFinite(e))return Dn.errors=[{instancePath:t+`/props/columns`,schemaPath:`#/properties/props/properties/columns/type`,keyword:`type`,params:{type:`integer`}}],!1;if(e!==1&&e!==2&&e!==3&&e!==4)return Dn.errors=[{instancePath:t+`/props/columns`,schemaPath:`#/properties/props/properties/columns/enum`,keyword:`enum`,params:{allowedValues:xn.properties.props.properties.columns.enum}}],!1;var u=r===s}else var u=!0;if(u){if(n.children!==void 0){let e=n.children,r=s;if(s===r){if(Array.isArray(e)){let n=e.length;for(let r=0;r<n;r++){let n=e[r],c=s,l=s,u=!1,p=s;En(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?En.errors:o.concat(En.errors),s=o.length);var d=p===s;if(u=u||d,d){var f={};f.typeName=!0,f.statementId=!0,f.props=!0}let m=s;Cn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Cn.errors:o.concat(Cn.errors),s=o.length);var d=m===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let h=s;wn(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?wn.errors:o.concat(wn.errors),s=o.length);var d=h===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let g=s;V(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?V.errors:o.concat(V.errors),s=o.length);var d=g===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let _=s;H(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?H.errors:o.concat(H.errors),s=o.length);var d=_===s;u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0);let v=s;U(n,{instancePath:t+`/props/children/`+r,parentData:e,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?U.errors:o.concat(U.errors),s=o.length);var d=v===s;if(u=u||d,d&&f!==!0&&(f=f||{},f.typeName=!0,f.statementId=!0,f.props=!0),u)s=l,o!==null&&(l?o.length=l:o=null);else{let e={instancePath:t+`/props/children/`+r,schemaPath:`#/properties/props/properties/children/items/anyOf`,keyword:`anyOf`,params:{}};return o===null?o=[e]:o.push(e),s++,Dn.errors=o,!1}if(c!==s)break}}else return Dn.errors=[{instancePath:t+`/props/children`,schemaPath:`#/properties/props/properties/children/type`,keyword:`type`,params:{type:`array`}}],!1}var u=r===s}else var u=!0}}}}else return Dn.errors=[{instancePath:t+`/props`,schemaPath:`#/properties/props/type`,keyword:`type`,params:{type:`object`}}],!1}var l=r===s}else var l=!0}}}else return Dn.errors=[{instancePath:t,schemaPath:`#/type`,keyword:`type`,params:{type:`object`}}],!1}return Dn.errors=o,s===0}Dn.evaluated={props:{typeName:!0,statementId:!0,props:!0},dynamicProps:!1,dynamicItems:!1};function On(e,{instancePath:t=``,parentData:n,parentDataProperty:r,rootData:i=e,dynamicAnchors:a={}}={}){let o=null,s=0,c=On.evaluated;c.dynamicProps&&(c.props=void 0),c.dynamicItems&&(c.items=void 0);let l=s,u=!1,d=s;Dn(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Dn.errors:o.concat(Dn.errors),s=o.length);var f=d===s;if(u=u||f,f){var p={};p.typeName=!0,p.statementId=!0,p.props=!0}let m=s;En(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?En.errors:o.concat(En.errors),s=o.length);var f=m===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let h=s;Cn(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?Cn.errors:o.concat(Cn.errors),s=o.length);var f=h===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let g=s;wn(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?wn.errors:o.concat(wn.errors),s=o.length);var f=g===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let _=s;V(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?V.errors:o.concat(V.errors),s=o.length);var f=_===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let v=s;H(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?H.errors:o.concat(H.errors),s=o.length);var f=v===s;u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0);let y=s;U(e,{instancePath:t,parentData:n,parentDataProperty:r,rootData:i,dynamicAnchors:a})||(o=o===null?U.errors:o.concat(U.errors),s=o.length);var f=y===s;if(u=u||f,f&&p!==!0&&(p=p||{},p.typeName=!0,p.statementId=!0,p.props=!0),u)s=l,o!==null&&(l?o.length=l:o=null);else{let e={instancePath:t,schemaPath:`#/anyOf`,keyword:`anyOf`,params:{}};return o===null?o=[e]:o.push(e),s++,On.errors=o,!1}return On.errors=o,c.props=p,s===0}On.evaluated={dynamicProps:!0,dynamicItems:!1};function kn(e){switch(e.k){case`StateRef`:case`RuntimeRef`:case`BinOp`:case`UnaryOp`:case`Ternary`:case`Member`:case`Index`:case`Assign`:return!0;default:return!1}}const An=/* @__PURE__ */ new Set([`Comp`,`Ref`,`StateRef`,`RuntimeRef`,`BinOp`,`UnaryOp`,`Ternary`,`Member`,`Index`,`Assign`,`Str`,`Num`,`Bool`,`Null`,`Arr`,`Obj`,`Ph`]);function jn(e){return!e||typeof e!=`object`||Array.isArray(e)?!1:An.has(e.k)}function Mn(e,t){let n=e=>{switch(t(e),e.k){case`Comp`:e.args.forEach(n),Object.values(e.mappedProps??{}).forEach(n);break;case`Arr`:e.els.forEach(n);break;case`Obj`:e.entries.forEach(([,e])=>n(e));break;case`BinOp`:n(e.left),n(e.right);break;case`UnaryOp`:n(e.operand);break;case`Ternary`:n(e.cond),n(e.then),n(e.else);break;case`Member`:n(e.obj);break;case`Index`:n(e.obj),n(e.index);break;case`Assign`:n(e.value)}};n(e)}function Nn(e){return e==null?{k:`Null`}:typeof e==`string`?{k:`Str`,v:e}:typeof e==`number`?{k:`Num`,v:e}:typeof e==`boolean`?{k:`Bool`,v:e}:Array.isArray(e)?{k:`Arr`,els:e.map(Nn)}:typeof e==`object`?{k:`Obj`,entries:Object.entries(e).map(([e,t])=>[e,Nn(t)])}:{k:`Null`}}function Pn(e){switch(e.k){case`Str`:case`Num`:case`Bool`:return{v:e.v};case`Null`:return{v:null};case`Arr`:{let t=[];for(let n of e.els){let e=Pn(n);if(!e)return;t.push(e.v)}return{v:t}}case`Obj`:{let t={};for(let[n,r]of e.entries){let e=Pn(r);if(!e)return;t[n]=e.v}return{v:t}}default:return}}const Fn=/* @__PURE__ */ new Map([[`Count`,{kind:`function`,params:[{name:`array`,required:!1}],builtin:!0}],[`First`,{kind:`function`,params:[{name:`array`,required:!1}],builtin:!0}],[`Last`,{kind:`function`,params:[{name:`array`,required:!1}],builtin:!0}],[`Sum`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Avg`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Min`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Max`,{kind:`function`,params:[{name:`numbers`,required:!1}],builtin:!0}],[`Sort`,{kind:`function`,params:[{name:`array`,required:!1},{name:`field`,required:!1},{name:`direction`,required:!1}],builtin:!0}],[`Filter`,{kind:`function`,params:[{name:`array`,required:!1},{name:`field`,required:!1},{name:`operator`,required:!1},{name:`value`,required:!1}],builtin:!0}],[`Round`,{kind:`function`,params:[{name:`number`,required:!1},{name:`decimals`,required:!1}],builtin:!0}],[`Abs`,{kind:`function`,params:[{name:`number`,required:!1}],builtin:!0}],[`Floor`,{kind:`function`,params:[{name:`number`,required:!1}],builtin:!0}],[`Ceil`,{kind:`function`,params:[{name:`number`,required:!1}],builtin:!0}],[`Each`,{kind:`function`,params:[{name:`array`,required:!1},{name:`varName`,required:!1},{name:`template`,required:!1}],builtin:!0,lazy:!0}],[`Run`,{kind:`action`,params:[{name:`ref`,required:!1}],builtin:!0,lazy:!0}],[`ToAssistant`,{kind:`action`,params:[{name:`message`,required:!1},{name:`context`,required:!1}],builtin:!0}],[`OpenUrl`,{kind:`action`,params:[{name:`url`,required:!1}],builtin:!0}],[`Set`,{kind:`action`,params:[{name:`variable`,required:!1},{name:`value`,required:!1}],builtin:!0,lazy:!0}],[`Reset`,{kind:`action`,params:[{name:`variable`,required:!1}],builtin:!0,lazy:!0}],[`Action`,{kind:`action`,params:[{name:`steps`,required:!0}],builtin:!0,lazy:!0}]]),In={ActionExpression:!0,OpenUrl:!0,ToAssistant:!0},Ln={Query:`Query`,Mutation:`Mutation`};function Rn(e){return e?.callDefs??Fn}function zn(e){return Fn.has(e)}function Bn(e){return e in Ln}var W;(function(e){e[e.Newline=0]=`Newline`,e[e.LParen=1]=`LParen`,e[e.RParen=2]=`RParen`,e[e.LBrack=3]=`LBrack`,e[e.RBrack=4]=`RBrack`,e[e.LBrace=5]=`LBrace`,e[e.RBrace=6]=`RBrace`,e[e.Comma=7]=`Comma`,e[e.Colon=8]=`Colon`,e[e.Equals=9]=`Equals`,e[e.True=10]=`True`,e[e.False=11]=`False`,e[e.Null=12]=`Null`,e[e.EOF=13]=`EOF`,e[e.Str=14]=`Str`,e[e.Num=15]=`Num`,e[e.Ident=16]=`Ident`,e[e.Type=17]=`Type`,e[e.StateVar=18]=`StateVar`,e[e.Dot=19]=`Dot`,e[e.Plus=20]=`Plus`,e[e.Minus=21]=`Minus`,e[e.Star=22]=`Star`,e[e.Slash=23]=`Slash`,e[e.Percent=24]=`Percent`,e[e.EqEq=25]=`EqEq`,e[e.NotEq=26]=`NotEq`,e[e.Greater=27]=`Greater`,e[e.Less=28]=`Less`,e[e.GreaterEq=29]=`GreaterEq`,e[e.LessEq=30]=`LessEq`,e[e.And=31]=`And`,e[e.Or=32]=`Or`,e[e.Not=33]=`Not`,e[e.Question=34]=`Question`,e[e.BuiltinCall=35]=`BuiltinCall`})(W||(W={}));function Vn(e){let t=0,n=()=>e[t]??{t:W.EOF},r=()=>{let e=n();return t++,e},i=e=>{n().t===e&&t++};function a(e){switch(e.t){case W.Question:return 1;case W.Or:return 2;case W.And:return 3;case W.EqEq:case W.NotEq:return 4;case W.Greater:case W.Less:case W.GreaterEq:case W.LessEq:return 5;case W.Plus:case W.Minus:return 6;case W.Star:case W.Slash:case W.Percent:return 7;case W.Dot:case W.LBrack:return 9;default:return 0}}function o(e=0){let t=s();for(;a(n())>e;)t=c(t);return t}function s(){let a=n();if(a.t===W.Str)return r(),{k:`Str`,v:a.v};if(a.t===W.Num)return r(),{k:`Num`,v:a.v};if(a.t===W.True)return r(),{k:`Bool`,v:!0};if(a.t===W.False)return r(),{k:`Bool`,v:!1};if(a.t===W.Null)return r(),{k:`Null`};if(a.t===W.LBrack)return u();if(a.t===W.LBrace)return d();if(a.t===W.StateVar){let e=a.v;return r(),n().t===W.Equals?(r(),{k:`Assign`,target:e,value:o(0)}):{k:`StateRef`,n:e}}if(a.t===W.Type){let n=a.v;return e[t+1]?.t===W.LParen&&(!zn(n)||n===`Action`)?l():(r(),{k:`Ref`,n})}if(a.t===W.BuiltinCall){if(e[t+1]?.t===W.LParen){let e=l();return e.k===`Comp`&&!zn(e.name)&&(e.fn=!0),e}return r(),{k:`Ref`,n:a.v}}if(a.t===W.Ident)return r(),{k:`Ref`,n:a.v};if(a.t===W.Not)return r(),{k:`UnaryOp`,op:`!`,operand:o(8)};if(a.t===W.Minus)return r(),{k:`UnaryOp`,op:`-`,operand:o(8)};if(a.t===W.LParen){r();let e=o(0);return i(W.RParen),e}return r(),{k:`Null`}}function c(e){let t=n();if(t.t===W.Plus)return r(),{k:`BinOp`,op:`+`,left:e,right:o(6)};if(t.t===W.Minus)return r(),{k:`BinOp`,op:`-`,left:e,right:o(6)};if(t.t===W.Star)return r(),{k:`BinOp`,op:`*`,left:e,right:o(7)};if(t.t===W.Slash)return r(),{k:`BinOp`,op:`/`,left:e,right:o(7)};if(t.t===W.Percent)return r(),{k:`BinOp`,op:`%`,left:e,right:o(7)};if(t.t===W.EqEq)return r(),{k:`BinOp`,op:`==`,left:e,right:o(4)};if(t.t===W.NotEq)return r(),{k:`BinOp`,op:`!=`,left:e,right:o(4)};if(t.t===W.Greater)return r(),{k:`BinOp`,op:`>`,left:e,right:o(5)};if(t.t===W.Less)return r(),{k:`BinOp`,op:`<`,left:e,right:o(5)};if(t.t===W.GreaterEq)return r(),{k:`BinOp`,op:`>=`,left:e,right:o(5)};if(t.t===W.LessEq)return r(),{k:`BinOp`,op:`<=`,left:e,right:o(5)};if(t.t===W.And)return r(),{k:`BinOp`,op:`&&`,left:e,right:o(3)};if(t.t===W.Or)return r(),{k:`BinOp`,op:`||`,left:e,right:o(2)};if(t.t===W.Question){r();let t=o(0);return i(W.Colon),{k:`Ternary`,cond:e,then:t,else:o(0)}}if(t.t===W.Dot){r();let t=n();return{k:`Member`,obj:e,field:t.t===W.Ident||t.t===W.Type||t.t===W.Str||t.t===W.Num?(r(),String(t.v)):t.t===W.StateVar?(r(),t.v.replace(/^\$/,``)):(r(),`?`)}}if(t.t===W.LBrack){r();let t=o(0);return i(W.RBrack),{k:`Index`,obj:e,index:t}}return e}function l(){let e=n().v;r(),i(W.LParen);let t=[];for(;n().t!==W.RParen&&n().t!==W.EOF;)t.push(o(0)),n().t===W.Comma&&r();return i(W.RParen),{k:`Comp`,name:e,args:t}}function u(){r();let e=[];for(;n().t!==W.RBrack&&n().t!==W.EOF;)e.push(o(0)),n().t===W.Comma&&r();return i(W.RBrack),{k:`Arr`,els:e}}function d(){r();let e=[];for(;n().t!==W.RBrace&&n().t!==W.EOF;){let t=n(),a=t.t===W.Ident||t.t===W.Str||t.t===W.Type||t.t===W.Num?(r(),String(t.v)):t.t===W.StateVar?(r(),t.v.replace(/^\$/,``)):(r(),`?`);i(W.Colon),e.push([a,o(0)]),n().t===W.Comma&&r()}return i(W.RBrace),{k:`Obj`,entries:e}}return o(0)}function Hn(e){let t=[],n=0,r=e.length;for(;n<r;){for(;n<r&&(e[n]===` `||e[n]===` `||e[n]===`\r`);)n++;if(n>=r)break;let i=e[n];if(i===`
|
|
11
|
+
`){t.push({t:W.Newline}),n++;continue}if(i===`(`){t.push({t:W.LParen}),n++;continue}if(i===`)`){t.push({t:W.RParen}),n++;continue}if(i===`[`){t.push({t:W.LBrack}),n++;continue}if(i===`]`){t.push({t:W.RBrack}),n++;continue}if(i===`{`){t.push({t:W.LBrace}),n++;continue}if(i===`}`){t.push({t:W.RBrace}),n++;continue}if(i===`,`){t.push({t:W.Comma}),n++;continue}if(i===`:`){t.push({t:W.Colon}),n++;continue}if(i===`=`){n+1<r&&e[n+1]===`=`?(t.push({t:W.EqEq}),n+=2):(t.push({t:W.Equals}),n++);continue}if(i===`!`){n+1<r&&e[n+1]===`=`?(t.push({t:W.NotEq}),n+=2):(t.push({t:W.Not}),n++);continue}if(i===`>`){n+1<r&&e[n+1]===`=`?(t.push({t:W.GreaterEq}),n+=2):(t.push({t:W.Greater}),n++);continue}if(i===`<`){n+1<r&&e[n+1]===`=`?(t.push({t:W.LessEq}),n+=2):(t.push({t:W.Less}),n++);continue}if(i===`&`){n+1<r&&e[n+1]===`&`?(t.push({t:W.And}),n+=2):(t.push({t:W.And}),n++);continue}if(i===`|`){n+1<r&&e[n+1]===`|`?(t.push({t:W.Or}),n+=2):(t.push({t:W.Or}),n++);continue}if(i===`.`){t.push({t:W.Dot}),n++;continue}if(i===`?`){t.push({t:W.Question}),n++;continue}if(i===`+`){t.push({t:W.Plus}),n++;continue}if(i===`*`){t.push({t:W.Star}),n++;continue}if(i===`/`){t.push({t:W.Slash}),n++;continue}if(i===`%`){t.push({t:W.Percent}),n++;continue}if(i===`"`){let i=n;n++;let a=!1;for(;n<r;)if(e[n]===`\\`)n+=2;else if(e[n]===`"`){n++,a=!0;break}else n++;let o=e.slice(i,n);try{let e=a?o:o+`"`;t.push({t:W.Str,v:JSON.parse(e)})}catch{let e=o.replace(/^"|"$/g,``);t.push({t:W.Str,v:e})}continue}if(i===`'`){n++;let i=``;for(;n<r;)if(e[n]===`\\`){if(n++,n<r){let t=e[n];i+=t===`'`?`'`:t===`\\`?`\\`:t===`n`?`
|
|
12
|
+
`:t===`t`?` `:t,n++}}else if(e[n]===`'`){n++;break}else i+=e[n],n++;t.push({t:W.Str,v:i});continue}if(i===`-`){let i=t.length>0?t[t.length-1]:null;if(!((i==null||i.t!==W.Num&&i.t!==W.Str&&i.t!==W.Ident&&i.t!==W.Type&&i.t!==W.RParen&&i.t!==W.RBrack&&i.t!==W.True&&i.t!==W.False&&i.t!==W.Null&&i.t!==W.StateVar&&i.t!==W.BuiltinCall)&&n+1<r&&e[n+1]>=`0`&&e[n+1]<=`9`)){t.push({t:W.Minus}),n++;continue}}let a=i>=`0`&&i<=`9`,o=i===`-`&&n+1<r&&e[n+1]>=`0`&&e[n+1]<=`9`;if(a||o){let i=n;for(e[n]===`-`&&n++;n<r&&e[n]>=`0`&&e[n]<=`9`;)n++;if(n<r&&e[n]===`.`&&n+1<r&&e[n+1]>=`0`&&e[n+1]<=`9`)for(n++;n<r&&e[n]>=`0`&&e[n]<=`9`;)n++;if(n<r&&(e[n]===`e`||e[n]===`E`))for(n++,n<r&&(e[n]===`+`||e[n]===`-`)&&n++;n<r&&e[n]>=`0`&&e[n]<=`9`;)n++;t.push({t:W.Num,v:+e.slice(i,n)})}else if(i===`$`&&n+1<r&&(e[n+1]>=`a`&&e[n+1]<=`z`||e[n+1]>=`A`&&e[n+1]<=`Z`||e[n+1]===`_`)){let i=n;for(n++;n<r&&(e[n]>=`a`&&e[n]<=`z`||e[n]>=`A`&&e[n]<=`Z`||e[n]>=`0`&&e[n]<=`9`||e[n]===`_`);)n++;t.push({t:W.StateVar,v:e.slice(i,n)})}else if(i>=`a`&&i<=`z`||i>=`A`&&i<=`Z`||i===`_`){let a=n;for(;n<r&&(e[n]>=`a`&&e[n]<=`z`||e[n]>=`A`&&e[n]<=`Z`||e[n]>=`0`&&e[n]<=`9`||e[n]===`_`);)n++;let o=e.slice(a,n);if(o===`true`){t.push({t:W.True});continue}if(o===`false`){t.push({t:W.False});continue}if(o===`null`){t.push({t:W.Null});continue}let s=i>=`A`&&i<=`Z`?W.Type:W.Ident;t.push({t:s,v:o})}else if(i===`@`&&n+1<r&&(e[n+1]>=`a`&&e[n+1]<=`z`||e[n+1]>=`A`&&e[n+1]<=`Z`||e[n+1]===`_`)){n++;let i=n;for(;n<r&&(e[n]>=`a`&&e[n]<=`z`||e[n]>=`A`&&e[n]<=`Z`||e[n]>=`0`&&e[n]<=`9`||e[n]===`_`);)n++;t.push({t:W.BuiltinCall,v:e.slice(i,n)})}else n++}return t.push({t:W.EOF}),t}function Un(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.type===`element`&&typeof t.typeName==`string`&&typeof t.props==`object`&&t.props!==null&&typeof t.partial==`boolean`}var Wn;(function(e){e.ContinueConversation=`continue_conversation`,e.OpenUrl=`open_url`})(Wn||(Wn={}));const Gn={},Kn=[];function qn(e){return Array.isArray(e)?`array`:typeof e}function Jn(e){return typeof e.$ref==`string`?e.$ref.split(`/`).pop():void 0}function Yn(e){return`$ref`in e||`anyOf`in e||`oneOf`in e||`allOf`in e}function Xn(e){if(Array.isArray(e.enum))return{enumValues:e.enum};if(`const`in e)return{enumValues:[e.const]};switch(e.type){case`string`:return{expectedType:`string`};case`number`:case`integer`:return{expectedType:`number`};case`boolean`:return{expectedType:`boolean`};default:return{}}}function Zn(e){if(e&&typeof e==`object`&&!Array.isArray(e))return e.default}function Qn(e){if(!e||typeof e!=`object`||Array.isArray(e))return;let t=e,n=Jn(t);if(n)return n;let r=Xn(t);return r.enumValues?r.enumValues.map(e=>JSON.stringify(e)).join(`|`):r.expectedType?r.expectedType:typeof t.type==`string`?t.type:void 0}function $n(e,t){return`${e}(${t.map(e=>{let t=Qn(e.schema),n=e.required?`${e.name}*`:e.name;return t?`${n}: ${t}`:n}).join(`, `)})`}function er(e,t){let n=typeof e;return t.enumValues?t.enumValues.includes(e)?null:{expected:`one of [${t.enumValues.map(e=>JSON.stringify(e)).join(`, `)}]`,actual:qn(e)}:t.expectedType&&t.expectedType!==n?{expected:t.expectedType,actual:qn(e)}:null}function tr(e,t,n){switch(n.code){case`type-mismatch`:return`field "${t}" expects ${n.expected} but got ${n.actual}`;case`pruned-value`:return`field "${t}" lost an unresolved or invalid value`;case`missing-required`:return`missing required field "${t}"${n.signature?` — signature: ${n.signature}`:``}`;case`null-required`:return`required field "${t}" cannot be null${n.signature?` — signature: ${n.signature}`:``}`;case`unknown-component`:return`Unknown component "${e}" — not found in catalog or builtins${n.available?.length?`. Available components: ${n.available.join(`, `)}`:``}`;case`inline-reserved`:return`${e}() must be declared as a top-level statement, not used inline as a value`;case`excess-args`:return`${e} takes ${n.declared} arg(s), got ${n.got} (${n.got-n.declared} excess dropped)`;case`unknown-function`:return`Unknown function "@${e}": not a built-in or action step. The call evaluates to null`;case`no-root`:return n.reason===`not-component`?`root does not evaluate to a component`:n.reason===`fallback`?`No root statement. Rendering the first statement that calls the root component ${e}`:e?`No root statement, and no statement calls the root component ${e}`:`No root statement`}}function G(e,t,n,r){e.errors.push({code:r.code,component:t,path:n,message:tr(t,n,r),statementId:e.currentStatementId,...r.code===`no-root`&&r.reason===`fallback`&&{severity:`warning`}})}const nr=Symbol(`invalid`);function rr(e,t){return t===void 0?e?nr:void 0:t}function ir(e,t,n,r,i){return Yn(t)?!1:typeof t.type==`string`||Array.isArray(t.enum)||`const`in t?(G(i,n,r,{code:`type-mismatch`,expected:typeof t.type==`string`?t.type:`a literal value`,actual:`component "${e.typeName}"`}),!0):!1}function ar(e){return(e.anyOf??e.oneOf??[e]).map(Jn)}function or(e,t){let n=ar(e);return n.length>0&&n.every(e=>e!==void 0&&t.cat?.has(e))}function sr(e,t,n,r,i){if(typeof e!=`object`||Array.isArray(e))return G(i,n,r,{code:`type-mismatch`,expected:`object`,actual:qn(e)}),nr;let a=e,o,s=t.properties&&typeof t.properties==`object`?t.properties:Gn,c=Array.isArray(t.required)?t.required:Kn,l=!1;if(!i.partial)for(let e of c){let t=e in a;if(!t||a[e]==null){let c=Zn(s[e]);if(c!==void 0){(o??(o={...a}))[e]=c;continue}G(i,n,`${r}/${e}`,{code:t?`null-required`:`missing-required`}),l=!0}}for(let e of Object.keys(s)){if(!(e in a))continue;let t=s[e],u=ur(a[e],t,n,`${r}/${e}`,i);u===nr&&(u=rr(c.includes(e),Zn(t)),u===nr)?l=!0:u!==a[e]&&(o??(o={...a}),u===void 0?delete o[e]:o[e]=u)}return l?nr:o??a}function cr(e,t,n,r,i){if(!Array.isArray(e))return G(i,n,r,{code:`type-mismatch`,expected:`array`,actual:qn(e)}),nr;let a=t.items;if(!a||typeof a!=`object`||Array.isArray(a))return e;let o;for(let t=0;t<e.length;t++){let s=ur(e[t],a,n,`${r}/${t}`,i);s!==e[t]&&!o&&(o=e.slice(0,t)),o&&s!==nr&&o.push(s)}return o??e}function lr(e,t,n,r,i){let a=Xn(t);if(a.expectedType==null&&a.enumValues==null||a.enumValues&&i.partial)return!1;let o=er(e,a);return o?(G(i,n,r,{code:`type-mismatch`,...o}),!0):!1}function ur(e,t,n,r,i){if(!t||typeof t!=`object`||Array.isArray(t))return e;let a=t;if(e==null||jn(e))return e;if(Un(e))return ir(e,a,n,r,i)?nr:e;if(Yn(a))return or(a,i)?(G(i,n,r,{code:`type-mismatch`,expected:ar(a).join(` | `),actual:Array.isArray(e)?`array`:typeof e==`object`?`plain object`:typeof e}),nr):e;let o=a.type;return o===`object`?sr(e,a,n,r,i):o===`array`?cr(e,a,n,r,i):lr(e,a,n,r,i)?nr:e}function dr(e){if(typeof e!=`object`||!e)return!1;if(jn(e))return!0;if(Array.isArray(e))return e.some(dr);if(Un(e))return Object.values(e.props).some(dr);let t=e;return Array.isArray(t.steps)?!0:Object.values(t).some(dr)}function fr(e,t,n){if(t.visited.has(e)||!t.syms.has(e))return t.unres.push(e),n===`expr`?{k:`Ph`,n:e}:null;let r=t.syms.get(e);if(t.unreached?.delete(e),r.k===`Comp`&&Bn(r.name))return{k:`RuntimeRef`,n:e,refType:r.name===Ln.Mutation?`mutation`:`query`};t.visited.add(e);let i=t.currentStatementId;t.currentStatementId=e;try{let i=n===`value`?xr(r,t):br(r,t);return n===`value`&&Un(i)&&(i.statementId=e),i}finally{t.currentStatementId=i,t.visited.delete(e)}}function pr(e,t){return Rn(t.cat).has(e)||Bn(e)}function mr(e,t){let n={};for(let r=0;r<t.length&&r<e.length;r++)n[t[r].name]=e[r];return n}function hr(e,t,n,r){let{params:i}=n;t.length>i.length&&G(r,e,``,{code:`excess-args`,declared:i.length,got:t.length});let a=mr(t,i),o=!1,s=r.errors.length;for(let t of i){let n=a[t.name],s=n?Pn(n):{v:void 0};if(!s)continue;if(s.v==null){if(!t.required||t.defaultValue!==void 0)continue;G(r,e,`/${t.name}`,{code:n?`null-required`:`missing-required`,signature:$n(e,i)}),o=!0;continue}let c=ur(s.v,t.schema,e,`/${t.name}`,r);c===nr&&(c=rr(t.required,t.defaultValue)),c===nr?o=!0:c===void 0?delete a[t.name]:c!==s.v&&(a[t.name]=Nn(c))}return n.kind===`action`&&r.errors.length>s&&(o=!0),o?null:a}function gr(e,t,n){let r=e.args.map(n),i=Rn(t.cat).get(e.name);if(!i||i.lazy)return{...e,args:r};let a=i.builtin?mr(r,i.params):hr(e.name,r,i,t);return a?{...e,args:r,mappedProps:a}:i.kind===`action`?{k:`Comp`,name:`Action`,args:[{k:`Arr`,els:[]}]}:{k:`Null`}}function _r(e,t,n){let r=t.currentStatementId;t.currentStatementId=n;let i=/* @__PURE__ */ new Set;for(let n of e)Mn(n,e=>{if(e.k!==`Comp`||i.has(e))return;i.add(e);let n=Rn(t.cat).get(e.name);n&&!n.lazy&&(e.mappedProps=(n.builtin?null:hr(e.name,e.args,n,t))??mr(e.args,n.params))});t.currentStatementId=r}function vr(e,t,n){let r=Rn(t.cat).get(e.name);if(r?.kind!==`function`||!r.lazy||e.args.length<3)return null;let i=e.args[1],a=i.k===`Ref`?i.n:i.k===`Str`?i.v:null;if(!a)return null;let o=new Set(n);o.add(a);let s=e.args.map((e,n)=>n===1?e:yr(e,t,o));return{...e,args:s}}function yr(e,t,n){switch(e.k){case`Ref`:return n.has(e.n)?e:fr(e.n,t,`expr`);case`Ph`:return e;case`Comp`:{if(e.fn&&!pr(e.name,t))return G(t,e.name,``,{code:`unknown-function`}),{k:`Null`};let r=vr(e,t,n);if(r)return r;if(pr(e.name,t))return gr(e,t,e=>yr(e,t,n));let i=e.args.map(e=>yr(e,t,n)),a=t.cat?.get(e.name);if(a){let t={};for(let e=0;e<a.params.length&&e<i.length;e++)t[a.params[e].name]=i[e];return{...e,args:i,mappedProps:t}}return G(t,e.name,``,{code:`unknown-component`,available:t.cat&&[...t.cat.keys()]}),{...e,args:i}}case`Arr`:return{...e,els:e.els.map(e=>yr(e,t,n))};case`Obj`:return{...e,entries:e.entries.map(([e,r])=>[e,yr(r,t,n)])};case`BinOp`:return{...e,left:yr(e.left,t,n),right:yr(e.right,t,n)};case`UnaryOp`:return{...e,operand:yr(e.operand,t,n)};case`Ternary`:return{...e,cond:yr(e.cond,t,n),then:yr(e.then,t,n),else:yr(e.else,t,n)};case`Member`:return{...e,obj:yr(e.obj,t,n)};case`Index`:return{...e,obj:yr(e.obj,t,n),index:yr(e.index,t,n)};case`Assign`:return{...e,value:yr(e.value,t,n)};default:return e}}function br(e,t){return yr(e,t,/* @__PURE__ */ new Set)}function xr(e,t){switch(e.k){case`Ref`:return fr(e.n,t,`value`);case`Str`:return e.v;case`Num`:return e.v;case`Bool`:return e.v;case`Null`:return null;case`Ph`:return null;case`Arr`:{let n=[];for(let r of e.els){if(r.k===`Ph`){t.prunedValues++;continue}let e=xr(r,t);e===null&&(r.k===`Comp`||r.k===`Ref`)?t.prunedValues++:n.push(e)}return n}case`Obj`:{let n={};for(let[r,i]of e.entries)n[r]=xr(i,t);return n}case`Comp`:{let{name:n,args:r}=e;if(e.fn&&!pr(n,t))return G(t,n,``,{code:`unknown-function`}),null;if(Bn(n))return G(t,n,``,{code:`inline-reserved`}),null;if(pr(n,t))return vr(e,t,/* @__PURE__ */ new Set)||gr(e,t,e=>br(e,t));let i=t.cat?.get(n),a={};if(i){let e=!1;for(let o=0;o<i.params.length&&o<r.length;o++){let s=i.params[o],c=t.prunedValues,l=xr(r[o],t);if(t.prunedValues>c&&G(t,n,`/${s.name}`,{code:`pruned-value`}),a[s.name]=l,s.schema===void 0)continue;if(l==null&&s.defaultValue!==void 0){G(t,n,`/${s.name}`,{code:`type-mismatch`,expected:Qn(s.schema)??`a defined value`,actual:l===null?`null`:`undefined`}),a[s.name]=s.defaultValue,t.prunedValues=c;continue}let u=ur(l,s.schema,n,`/${s.name}`,t);u===nr&&(u=rr(s.required,s.defaultValue),s.defaultValue!==void 0&&(t.prunedValues=c),u===nr?e=!0:u===void 0&&delete a[s.name]),u!==nr&&u!==void 0&&(a[s.name]=u)}r.length>i.params.length&&G(t,n,``,{code:`excess-args`,declared:i.params.length,got:r.length});let o=i.params.filter(e=>e.required&&(!(e.name in a)||a[e.name]===null));if(o.length){let e=o.filter(e=>e.defaultValue===void 0||(G(t,n,`/${e.name}`,{code:e.name in a?`null-required`:`missing-required`}),a[e.name]=e.defaultValue,!1));if(e.length){for(let r of e)G(t,n,`/${r.name}`,{code:r.name in a?`null-required`:`missing-required`,signature:$n(n,i.params)});return null}}if(e)return null}else return G(t,n,``,{code:`unknown-component`,available:t.cat&&[...t.cat.keys()]}),null;let o=Object.values(a).some(e=>dr(e));return{type:`element`,typeName:n,props:a,partial:t.partial,hasDynamicProps:o}}default:return kn(e)?br(e,t):e}}function Sr(e){let t=[],n=!1,r=!1;for(let i=0;i<e.length;i++){let a=e[i];r?r=!1:a===`\\`&&n?r=!0:n?a===n&&(n=!1):a===`"`||a===`'`?n=a:a===`(`||a===`[`||a===`{`?t.push(a):(a===`)`&&t[t.length-1]===`(`||a===`]`&&t[t.length-1]===`[`||a===`}`&&t[t.length-1]===`{`)&&t.pop()}if(!(n||t.length>0))return{text:e,wasIncomplete:!1};let i=e;n&&(r&&(i+=`\\`),i+=n);for(let e=t.length-1;e>=0;e--)i+=t[e]===`(`?`)`:t[e]===`[`?`]`:`}`;return{text:i,wasIncomplete:!0}}function Cr(e){let t=[],n=0;for(;n<e.length;){for(;n<e.length&&e[n].t===W.Newline;)n++;if(n>=e.length||e[n].t===W.EOF)break;let r=e[n];if(r.t!==W.Ident&&r.t!==W.Type&&r.t!==W.StateVar){for(;n<e.length&&e[n].t!==W.Newline&&e[n].t!==W.EOF;)n++;continue}let i=r.v,a=r.t;if(n++,n>=e.length||e[n].t!==W.Equals){for(;n<e.length&&e[n].t!==W.Newline&&e[n].t!==W.EOF;)n++;continue}n++;let o=[],s=0,c=0;for(;n<e.length&&e[n].t!==W.EOF;){let t=e[n].t;if(t===W.Newline&&s<=0&&c<=0){let t=n+1;for(;t<e.length&&e[t].t===W.Newline;)t++;let r=t<e.length?e[t].t:W.EOF;if(r===W.Question||r===W.Colon&&c>0){n++;continue}break}t===W.Newline?n++:(t===W.LParen||t===W.LBrack||t===W.LBrace?s++:(t===W.RParen||t===W.RBrack||t===W.RBrace)&&s>0?s--:t===W.Question&&s===0?c++:t===W.Colon&&s===0&&c>0&&c--,o.push(e[n++]))}o.length&&t.push({id:i,idTokenType:a,tokens:o})}return t}function wr(e=!0){return{root:null,meta:{incomplete:e,unresolved:[],orphaned:[],statementCount:0,errors:[]},stateDeclarations:{},queryStatements:[],mutationStatements:[]}}function Tr(e){if(!jn(e))return[];let t=/* @__PURE__ */ new Set;return Mn(e,e=>{e.k===`StateRef`&&t.add(e.n)}),[...t]}function Er(e,t){if(t.k===`Comp`&&t.name===Ln.Query){let n=Tr(t.args[1]);return{kind:`query`,id:e.id,call:{callee:Ln.Query,args:t.args},expr:t,deps:n.length>0?n:void 0}}return t.k===`Comp`&&t.name===Ln.Mutation?{kind:`mutation`,id:e.id,call:{callee:Ln.Mutation,args:t.args},expr:t}:e.idTokenType===W.StateVar?{kind:`state`,id:e.id,init:t}:{kind:`value`,id:e.id,expr:t}}function Dr(e,t,n){let r={},i=[],a=[];for(let n of e)switch(n.kind){case`state`:r[n.id]=xr(n.init,t);break;case`query`:_r(n.call.args,t,n.id),i.push({statementId:n.id,toolAST:n.call.args[0]??null,argsAST:n.call.args[1]??null,defaultsAST:n.call.args[2]??null,refreshAST:n.call.args[3]??null,deps:n.deps,complete:!0});break;case`mutation`:_r(n.call.args,t,n.id),a.push({statementId:n.id,toolAST:n.call.args[0]??null,argsAST:n.call.args[1]??null})}for(let t of e){let e=t.kind===`state`?[t.init]:t.kind===`value`?[t.expr]:t.kind===`query`||t.kind===`mutation`?t.call.args:[];for(let i of e)for(let e of Tr(i))e===n?.name&&n.stmts.has(t)||e in r||(r[e]=null)}return{stateDeclarations:r,queryStatements:i,mutationStatements:a}}const Or=`root`;function kr(e){return e?.k===`Comp`&&!e.fn&&!zn(e.name)&&!Bn(e.name)}function Ar(e,t){if(e.has(Or))return{id:Or,fallback:!1};for(let n of e.values())if(n.kind===`value`&&kr(n.expr)&&n.expr.name===t)return{id:n.id,fallback:!0};return null}function jr(e,t){let n=/* @__PURE__ */ new Set;for(;e?.k===`Ref`&&!n.has(e.n);)n.add(e.n),e=t.get(e.n);return kr(e)}function Mr(e){let t=!1;return Mn(e,e=>{kr(e)&&(t=!0)}),t}function Nr(e,t,n,r,i,a,o){let s=Ar(e,a),c=/* @__PURE__ */ new Map;for(let[t,n]of e)c.set(t,n.kind===`state`?n.init:n.expr);let l=[],u=[],d=/* @__PURE__ */ new Set;for(let[t,n]of e)t!==s?.id&&n.kind!==`state`&&n.kind!==`query`&&n.kind!==`mutation`&&d.add(t);let f={syms:c,cat:i,errors:u,unres:l,prunedValues:0,visited:/* @__PURE__ */ new Set,partial:n,currentStatementId:s?.id,unreached:d},p=null,m;if(s){let e=xr(c.get(s.id),f);Un(e)?(p=e,p.statementId=s.id):jn(e)&&Mr(e)&&(m=e)}let{stateDeclarations:h,queryStatements:g,mutationStatements:_}=Dr(t,f,o);f.currentStatementId=s?.id;let v=a??``;s?!p&&!m&&!jr(c.get(s.id),c)?G(f,v,``,{code:`no-root`,reason:`not-component`}):s.fallback&&G(f,v,``,{code:`no-root`,reason:p?`fallback`:`missing`}):G(f,v,``,{code:`no-root`,reason:`missing`});let y=s?[...d]:[];return{root:p,...m?{rootExpression:m}:{},meta:{incomplete:n,unresolved:l,orphaned:y,statementCount:r,errors:u},stateDeclarations:h,queryStatements:g,mutationStatements:_}}function Pr(e,t){if(e[t]!==`"`)return t;let n=t+1;for(;n<e.length;){let t=e[n];if(t===`\\`)n+=2;else if(t===`"`)return n+1;else n++}return n}function Fr(e){let t=[],n=0;for(;n<e.length;){let r=-1;for(;n<e.length;){let t=Pr(e,n);if(t>n)n=t;else{if(e[n]==="`"&&n+1<e.length&&e[n+1]==="`"&&n+2<e.length&&e[n+2]==="`"){r=n;break}n++}}if(r===-1)break;let i=r+3;for(;i<e.length&&e[i]!==`
|
|
13
13
|
`;)i++;if(i>=e.length){t.push(e.slice(r+3).replace(/^[^\n]*\n?/,``)),n=e.length;break}i++;let a=-1,o=i;for(;o<e.length;){let t=Pr(e,o);if(t>o)o=t;else{if(e[o]==="`"&&o+1<e.length&&e[o+1]==="`"&&o+2<e.length&&e[o+2]==="`"){a=o;break}o++}}a===-1?(t.push(e.slice(i)),n=e.length):(t.push(e.slice(i,a)),n=a+3)}if(t.length>0)return t.join(`
|
|
14
14
|
`);if(e.startsWith("```")){let t=3;for(;t<e.length&&e[t]!==`
|
|
15
15
|
`;)t++;let n=t<e.length?t+1:3,r=e.slice(n),i=r.lastIndexOf("```");return i===-1?r:r.slice(0,i)}return e}function Ir(e){let t=!1;return e.split(`
|
|
16
16
|
`).map(e=>{for(let n=0;n<e.length;n++){let r=e[n];if(t){if(r===`\\`&&n+1<e.length){n++;continue}r===t&&(t=!1)}else if(r===`"`||r===`'`)t=r;else if(r===`/`&&e[n+1]===`/`||r===`#`)return e.substring(0,n).trimEnd()}return e}).join(`
|
|
17
|
-
`)}function Lr(e){return Ir(Fr(e.trim())).trim()}function Rr(e,t,n){let r=Lr(e);if(!r)return wr();let{text:i,wasIncomplete:a}=Sr(r),o=Cr(
|
|
17
|
+
`)}function Lr(e){return Ir(Fr(e.trim())).trim()}function Rr(e,t,n){let r=Lr(e);if(!r)return wr();let{text:i,wasIncomplete:a}=Sr(r),o=Cr(Hn(i));if(!o.length)return wr(a);let s=/* @__PURE__ */ new Map;for(let e of o){let t=Er(e,Vn(e.tokens));s.set(e.id,t)}return Nr(s,[...s.values()],a,s.size,t,n)}function zr(e,t){let n=``,r=``,i=0,a=/* @__PURE__ */ new Map,o=0;function s(e){let t=e.trim();if(t)for(let e of Cr(Hn(t))){let t=Er(e,Vn(e.tokens));a.set(e.id,t),o++}}function c(){let e=Lr(n);e.startsWith(r.slice(0,i))||(i=0,a.clear(),o=0),r=e}function l(){let e=0,t=0,n=!1,a=!1,o=i;for(let c=i;c<r.length;c++){let l=r[c];if(a)a=!1;else if(l===`\\`&&n)a=!0;else if(n)l===n&&(n=!1);else if(l===`"`||l===`'`)n=l;else if(l===`(`||l===`[`||l===`{`)e++;else if(l===`)`||l===`]`||l===`}`)e=Math.max(0,e-1);else if(l===`?`&&e===0)t++;else if(l===`:`&&e===0&&t>0)t--;else if(l===`
|
|
18
18
|
`&&e<=0&&t<=0){let e=c+1;for(;e<r.length&&(r[e]===` `||r[e]===` `||r[e]===`\r`||r[e]===`
|
|
19
|
-
`);)e++;if(e<r.length&&(r[e]===`?`||r[e]===`:`&&t>0))continue;let n=r.slice(o,c).trim();n&&s(n),o=c+1,i=c+1}}return o}function u(i=!1){c();let s=l(),u=r.slice(s).trim();if(!u)return o===0?wr():Nr(a,[...a.values()],!1,o,e,t);let{text:d,wasIncomplete:f}=Sr(u),p=Cr(
|
|
19
|
+
`);)e++;if(e<r.length&&(r[e]===`?`||r[e]===`:`&&t>0))continue;let n=r.slice(o,c).trim();n&&s(n),o=c+1,i=c+1}}return o}function u(i=!1){c();let s=l(),u=r.slice(s).trim();if(!u)return o===0?wr():Nr(a,[...a.values()],!1,o,e,t);let{text:d,wasIncomplete:f}=Sr(u),p=Cr(Hn(d));if(!p.length)return o===0?wr(f):Nr(a,[...a.values()],f,o,e,t);let m=new Map(a),h=/* @__PURE__ */ new Set;for(let e of p){if(a.has(e.id)&&f)continue;let t=Er(e,Vn(e.tokens));m.set(e.id,t),h.add(t)}let g=i?void 0:/\$\w+$/.exec(n)?.[0],_=g&&u.endsWith(g)&&!RegExp(`\\${g}(?!\\w)`).test(u.slice(0,-g.length))?g:void 0;return Nr(m,[...m.values()],f,o+p.length,e,t,_?{name:_,stmts:h}:void 0)}function d(){n=``,r=``,i=0,a.clear(),o=0}return{push(e,t){return n+=e,u(t)},set(e,t){(e.length<n.length||!e.startsWith(n))&&d();let r=e.slice(n.length);return r&&(n+=r),u(t)},getResult:u}}function Br(e,t){if(!e||typeof e!=`object`)return e;let n=e.$ref;if(typeof n==`string`)return t.has(n)?Br(t.get(n),t):e;let r=Array.isArray(e)?[...e]:{...e},i=!1;for(let[e,n]of Object.entries(r))r[e]=Br(n,t),i||(i=r[e]!==n);return i?r:e}function Vr(e,t){let n=e.properties??{},r=e.required??[];return Object.keys(n).map(e=>({name:e,required:r.includes(e),defaultValue:Zn(n[e]),schema:t.size?Br(n[e],t):n[e]}))}function Hr(e){let t=/* @__PURE__ */ new Map,n=e.properties&&new Set(Object.keys(e.properties)),r=/* @__PURE__ */ new Map;for(let t of[...Object.keys(In),...Object.keys(e.actions??{})]){let i=e.$defs?.[t];i&&!n?.has(t)&&r.set(`#/$defs/${t}`,i)}for(let[i,a]of Object.entries(e.$defs??{}))(n?!n.has(i):r.has(`#/$defs/${i}`))||t.set(i,{params:Vr(a,r)});t.callDefs=new Map(Fn);for(let[n,i]of Object.entries(e.functions??{}))t.callDefs.set(n,{kind:`function`,params:Vr(i.params,r)});for(let[n,i]of Object.entries(e.actions??{}))t.callDefs.set(n,{kind:`action`,params:Vr(i.params,r)});return t}const Ur=Hr(yn.schema),Wr={parse(e){return Rr(e,Ur,yn.root)}};function Gr(){return zr(Ur,yn.root)}function Kr(e,t){let n=e.root?.props.children,r=/* @__PURE__ */ new Set,i=e.meta,a=e.meta.errors.some(e=>e.severity!==`warning`&&!(e.component===`Grid`&&e.path===`/columns`||e.component===`Cell`&&e.path===`/span`));function o(t,n,r){i===e.meta&&(i={...e.meta,errors:[...e.meta.errors]}),i.errors.push({code:`type-mismatch`,component:t.typeName,path:n,message:r,statementId:t.statementId}),a=!0}function s(n,i,a){if(!Un(n)||typeof n.statementId!=`string`||r.has(n.statementId)){o(i,`/children/${a}`,`Child must be a valid, uniquely named component`);return}if(n.typeName===`Root`||n.typeName===`Grid`&&i.typeName!==`Root`||n.typeName===`Cell`&&i.typeName===`Cell`){o(i,`/children/${a}`,`Component is not allowed at this nesting level`);return}if(r.add(n.statementId),(n.typeName===`Chart`||n.typeName===`Table`)&&e.meta.errors.some(e=>e.statementId===n.statementId&&e.severity!==`warning`))return;let c=(n.typeName===`Grid`||n.typeName===`Cell`)&&Array.isArray(n.props.children)?n.props.children.flatMap((e,t)=>{let r=s(e,n,t);return r?[r]:[]}):void 0,l=c?{...n,props:{...n.props,children:c}}:n;if(!bn(l))o(n,``,`Component does not match the catalog`);else if(l.typeName===`Table`&&l.props.rows.some(e=>e.length!==l.props.columns.length))o(n,`/rows`,`Every table row must contain one value per column`);else if(c?.length!==0&&(l.typeName!==`Chart`&&l.typeName!==`Table`||!t&&!e.meta.incomplete))return l}let c=e.root,l=c&&Array.isArray(n)?n.flatMap((e,t)=>{if(Un(e)&&e.typeName===`Cell`)return o(c,`/children/${t}`,`Cell must be inside a Grid`),[];let n=s(e,c,t);return n&&n.typeName!==`Cell`?[n]:[]}):[],u=c?.hasDynamicProps===!0||e.queryStatements.length>0||e.mutationStatements.length>0||Object.keys(e.stateDeclarations).length>0||e.meta.errors.some(e=>e.code===`unknown-function`||e.code===`inline-reserved`);u&&c&&o(c,``,`Executable content is not supported by the static catalog`),c&&c.typeName!==yn.root&&o(c,``,`The block must use the catalog root component`);let d=u||c!==null&&c.typeName!==yn.root||!t&&(!Array.isArray(n)||l.length===0),f=!t&&!d&&(a||e.meta.incomplete);return!t&&(d||i.errors.length>0||i.unresolved.length>0||i.incomplete)&&console.warn(`Generative UI diagnostics`,{error:d,partial:f,diagnostics:i}),{elements:d?[]:l,error:d,partial:f,diagnostics:i}}function qr(e){return Kr(Wr.parse(e),!1).elements.flatMap(Jr).join(`
|
|
20
20
|
|
|
21
21
|
`)}function Jr(e){return e.typeName===`Grid`||e.typeName===`Cell`?e.props.children.flatMap(Jr):e.typeName===`Text`?[e.props.text]:e.typeName===`Card`?[`${e.props.title}\n${e.props.body}`]:e.typeName===`Metric`?[[e.props.label,e.props.value,e.props.detail].filter(Boolean).join(`
|
|
22
22
|
`)]:e.typeName===`Table`?[[e.props.title,e.props.columns.join(` `),...e.props.rows.map(e=>e.join(` `))].join(`
|
|
@@ -24,11 +24,12 @@ import{Component as e,h as t,render as n}from"preact";import{batch as r,computed
|
|
|
24
24
|
`)]}function Yr(e,{cssPrefix:t,strings:r}){let i=[],a;return{...v.default_renderer(e),set_attr(e,s,c){if(s!==v.LANG||c!==`openui`||e.index!==1)return v.default_set_attr(e,s,c);let l=document.createElement(`div`);e.nodes[e.index]?.parentElement?.replaceWith(l),a={textSig:o(``),doneSig:o(!1)},i.push(l),n(g(Xr,{cssPrefix:t,textSig:a.textSig,doneSig:a.doneSig,strings:r}),l)},add_text(e,t){a?a.textSig.value=a.textSig.peek()+t:v.default_add_text(e,t)},end_token(e){a&&(a.doneSig.value=!0,a=void 0),v.default_end_token(e)},finish(){a&&(a.doneSig.value=!0)},dispose(){for(let e of i)n(null,e);i.length=0,a=void 0}}}function Xr({textSig:e,doneSig:t,cssPrefix:n,strings:r}){let a=f(()=>{let n=Gr();return i(()=>Kr(n.set(e.value,t.value),!t.value))},[e,t]);return a.value.error?g(`div`,{role:`alert`,children:r.visualError}):_(`div`,{class:`${n}-generative-ui`,"aria-busy":!t.value,children:[a.value.elements.map(e=>g(Zr,{element:e,cssPrefix:n},e.statementId)),a.value.partial&&g(`p`,{role:`status`,children:r.visualPartial}),a.value.elements.length===0&&!t.value?g(`span`,{role:`status`,children:r.visualPreparing}):null]})}function Zr({element:e,cssPrefix:t}){if(e.typeName===`Grid`)return g(`div`,{class:`${t}-generative-ui-grid-container`,children:g(`div`,{class:`${t}-generative-ui-grid`,"data-columns":e.props.columns,children:e.props.children.map(e=>g(`div`,{class:`${t}-generative-ui-cell`,"data-span":e.typeName===`Cell`?e.props.span??1:1,children:e.typeName===`Cell`?e.props.children.map(e=>g(Zr,{element:e,cssPrefix:t},e.statementId)):g(Zr,{element:e,cssPrefix:t})},e.statementId))})});switch(e.typeName){case`Text`:return g(`p`,{children:e.props.text});case`Card`:return _(`section`,{children:[g(`strong`,{children:e.props.title}),g(`p`,{children:e.props.body})]});case`Metric`:return _(`section`,{children:[g(`strong`,{children:e.props.label}),g(`span`,{class:`${t}-generative-ui-metric`,children:e.props.value}),e.props.detail&&g(`p`,{children:e.props.detail})]});case`Table`:return g(`section`,{children:g(`div`,{class:`${t}-generative-ui-table`,children:_(`table`,{children:[g(`caption`,{children:e.props.title}),g(`thead`,{children:g(`tr`,{children:e.props.columns.map((e,t)=>g(`th`,{scope:`col`,children:e},t))})}),g(`tbody`,{children:e.props.rows.map((e,t)=>g(`tr`,{children:e.map((e,t)=>g(`td`,{children:e},t))},t))})]})})});case`Chart`:return g(Qr,{element:e,cssPrefix:t})}}function Qr({element:e,cssPrefix:t}){let n=Math.min(0,...e.props.data.map(e=>e.value)),r=Math.max(0,...e.props.data.map(e=>e.value))-n||1,i=148+n/r*136,a=e.props.data.map((t,i)=>({x:24+(i+.5)*272/e.props.data.length,y:148-(t.value-n)/r*136}));return _(`section`,{children:[g(`strong`,{children:e.props.title}),_(`svg`,{class:`${t}-generative-ui-chart`,viewBox:`0 0 320 168`,role:`img`,"aria-label":`${e.props.title}. ${e.props.data.map(e=>`${e.label}: ${e.value}`).join(`, `)}`,children:[g(`line`,{class:`${t}-generative-ui-axis`,x1:24,x2:296,y1:i,y2:i}),e.props.type===`line`&&g(`polyline`,{points:a.map(e=>`${e.x},${e.y}`).join(` `),fill:`none`,stroke:`currentColor`,"stroke-width":3}),a.map((t,n)=>e.props.type===`bar`?g(`rect`,{x:t.x-96/e.props.data.length,y:Math.min(t.y,i),width:192/e.props.data.length,height:Math.abs(t.y-i),fill:`currentColor`},n):g(`circle`,{cx:t.x,cy:t.y,r:3,fill:`currentColor`},n))]}),g(`div`,{class:`${t}-generative-ui-data`,children:e.props.data.map((e,t)=>_(`span`,{children:[e.label,`: `,e.value]},t))})]})}function $r(e){if(!e.includes("```openui"))return e;let t=``,n=0,r=0,i=0,a=0,o;function s(r){o?.language===`openui`&&(t+=e.slice(n,o.start)+qr(o.source)+(e[r-1]===`
|
|
25
25
|
`?`
|
|
26
26
|
`:``),n=r),o=void 0}let c=v.parser({data:void 0,add_token(e,t){a+=1,t===v.CODE_FENCE&&a===1&&(o={start:i,source:``,language:``})},set_attr(e,t,n){o&&t===v.LANG&&(o.language=n)},add_text(e,t){o&&(o.source+=t)},end_token(){o&&s(Math.min(r+1,e.length)),--a}});for(;r<e.length;r++)v.parser_write(c,e.charAt(r)),e[r]===`
|
|
27
|
-
`&&(i=r+1);return v.parser_end(c),o&&s(e.length),t+e.slice(n)}function ei(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function ti(e){return`tool-${e.startsWith(`tool:`)?e.slice(5):e}`}function ni(e){return e.startsWith(`tool-`)?e.slice(5):e}const ri={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`},ii=`context`;function ai(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function oi(e){if(!ai(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 si(e){if(!ai(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 ci(e){let t=ai(e)?e.suggestions:void 0;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!ai(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 li(e){let t={messages:e.messages.map(e=>({id:e.serverMessageId??e.id,parts:di(e),role:e.role})),conversationId:e.conversationId,responseType:`ack`};return e.visitorId&&(t.visitorId=e.visitorId),e.userPrefs&&(t.userPrefs=e.userPrefs),e.clientTools?.length&&(t.clientTools=e.clientTools),t}function ui(e){return e.state===`output-available`||e.state===`output-error`||e.state===`output-denied`||e.approval?.approved!==void 0}function di(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,filename:n.filename,fileId:n.fileId,fileSize:n.fileSize}),n.kind===`tool`&&ui(n)){let e=n.dynamic?{type:`dynamic-tool`,toolName:n.toolName,toolCallId:n.toolCallId,state:n.state}:{type:ti(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),n.toolMetadata&&(e.toolMetadata=n.toolMetadata),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 fi(e,t,n=ut()){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 pi(){return{id:ut(),role:`assistant`,createdAt:Date.now(),status:`streaming`,partsSig:o([])}}function mi(e){let t=ut();return hi({id:t,role:e.role,createdAt:Date.now(),status:`complete`,ephemeral:!0,parts:[{kind:`text`,id:`${t}-t0`,text:e.text,done:!0}]})}function hi(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(Zi))}}function gi(e){return e.status===`failed`?`error`:e.role===`assistant`&&e.status===`streaming`?`streaming`:`complete`}function _i(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,filename:t.filename,fileId:t.fileId,fileSize:t.fileSize}: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:ni(t.type),dynamic:t.type===`dynamic-tool`||void 0,toolMetadata:t.toolMetadata,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`?ci(r.data):void 0,serverMessageId:e.id,createdAt:Date.parse(e.createdAt),status:gi(e),canceled:e.status===`canceled`,feedback:e.feedback??null,partsSig:o(n)}}function vi(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 yi(e){return e.role===`assistant`&&e.status===`streaming`&&vi(e)}function bi(e){let t=e.length-1;return e.filter((e,n)=>n===t||!yi(e)).map(_i)}function xi(e,t){let n=!t&&e.at(-1)?.role===`assistant`?-2:-1,r=e.at(n);return!r||r.ephemeral?[]:[r]}function Si(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(Qi)}}function Ci(e){let t=``;for(let n of e.partsSig.value)n.kind===`text`&&(t+=n.textSig.value);return t}function wi(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`?$r(Ci(e)):Ci(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 Ti(e){return Ci(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`||e.kind===`source`)}function Ei(e){return Ci(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`)}function Di(e){return e===`approval-responded`||e===`output-available`||e===`output-denied`||e===`output-error`}function Oi(e){return e.kind===`tool`}function ki(e){return e.kind===`text`&&e.textSig.value.trim()!==``||e.kind===`file`}function Ai(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);return t.slice(n+1).some(ki)}function ji(e){if(e.role!==`assistant`)return!1;let t=e.partsSig.value.filter(Oi);return t.length>0&&t.every(e=>Di(e.stateSig.value))}function Mi(e){return e.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`)&&!Ai(e)}function Ni(e,t){return!e.partsSig.value.slice(t+1).some(e=>e.kind===`step-start`||ki(e))}function Pi(e){return e.partsSig.value.some(e=>Oi(e)&&!Di(e.stateSig.value))}function Fi(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 Ii(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 Li(e,t,n,r){if(!Ri(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&&Ci(n).length>=Ci(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&&Ci(t).length>=Ci(e).length)}function Ri(e){return e?.role===`assistant`&&e.status===`streaming`&&e.serverMessageId===void 0}function zi(e,t){let n=new Map(t.partsSig.value.filter(Oi).filter(e=>Di(e.stateSig.value)).map(e=>[e.toolCallId,e]));if(n.size===0)return;let r=!1,i=e.partsSig.value.map(e=>{if(!Oi(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,u=e.toolMetadata??t.toolMetadata;return o===e.approvalSig&&s===e.inputSig&&c===e.toolName&&l===e.dynamic&&u===e.toolMetadata?e:(r=!0,{...e,toolName:c,dynamic:l,toolMetadata:u,inputSig:s,approvalSig:o})});r&&(e.partsSig.value=i)}function Bi(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||Ti(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`)?Ii(t,e):t.status===`streaming`||Ci(t).length>=Ci(e).length?(zi(t,e),t.suggestions??(t.suggestions=e.suggestions),t.feedback===void 0&&(t.feedback=e.feedback),e.canceled&&(t.canceled=!0),t):Ii(t,e):e)}),s=n.filter(e=>!i.has(e)),c=s.findLast(Ri),l=/* @__PURE__ */ new Map;e.forEach((e,t)=>{l.set(e.id,t),e.serverMessageId!==void 0&&l.set(e.serverMessageId,t)});let u=Li(c,c?n.slice(0,n.indexOf(c)):[],a,l);if(c&&u){let e=o.indexOf(u);e>=0&&(o[e]=Ii(c,u)),s=s.filter(e=>e!==c)}return[...o,...s]}function Vi(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,Ii(e,t);if(e.serverMessageId===void 0)return e;let r=Ci(t),i=Ci(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,Ii(e,t);if(e.status===`streaming`&&t.status!==`streaming`&&Ui(e,t)){if(e.continuationStreaming&&Pi(t))return e;if(!Ki(t,e))return a=!0,Ii(e,t)}return e}),s=[...n.values()].filter(e=>!i.has(e.serverMessageId)),c=o.findLastIndex(Ri),l=o[c],u=Li(l,o.slice(0,c),s,r);if(l!==void 0&&u!==void 0&&Ci(u).length>=Ci(l).length&&(Ii(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 Hi(e,t){if(e.role!==t.role)return!1;let n=Ci(t),r=Ci(e);return n.length>r.length||t.partsSig.value.length>e.partsSig.value.length||Ki(e,t)}function Ui(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&&Wi(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 Wi(e,t){return(e.startsWith(`tool:`)?e.slice(5):e)===(t.startsWith(`tool:`)?t.slice(5):t)}const Gi={"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(Oi).map(e=>[e.toolCallId,e]));return t.partsSig.value.filter(Oi).some(e=>{let t=n.get(e.toolCallId);if(!t||Gi[e.stateSig.value]>Gi[t.stateSig.value])return!0;let r=e.approvalSig.value?.approved;return r!==void 0&&r!==t.approvalSig.value?.approved})}function qi(e){return e.role===`assistant`&&e.status!==`streaming`&&!Ti(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`&&!qi(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 Yi(e){return e.canceled===!0&&e.role===`assistant`&&e.status!==`streaming`&&!Ei(e)}function Xi(e,t){return e.operatorRoutedTurn?qi(e)?`drop`:`complete-operator-routed`:t||qi(e)?`error`:`complete`}function Zi(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,toolMetadata:e.toolMetadata,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 Qi(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,toolMetadata:e.toolMetadata,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 $i(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 ea(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 ta(e){return e&&Object.keys(e).length>0?e:void 0}function na(e,t,n=[]){let r=ta(e),i=ta(t),a=Date.now();for(let e=n.length;;--e){let t=n.slice(n.length-e).map(({name:e,data:t,at:n})=>({name:e,data:t,secondsAgo:Math.round((a-n)/1e3)})),o=t.length>0?{...i,recentEvents:t}:i;if(!r&&!o)return;let s=ea(JSON.stringify({...r&&{user:r},...o&&{page:o}}));if(s.length<=8192||e===0)return s}}var ra=class extends Error{constructor(e,t,n,r){super(e),this.code=t,this.status=n,this.cause=r,this.name=`StreamError`}};const ia=L.scope(`parser`);async function*aa(e,t,n){if(!e.ok){let t=await e.text().catch(()=>``);throw new ra(`server responded ${e.status}: ${t.slice(0,200)}`,`server`,e.status)}for await(let r of oa(e,t)){let e=sa(r,n);if(e===`done`)return;e&&(yield e)}}async function*oa(e,t){if(!e.body)throw new ra(`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(`
|
|
27
|
+
`&&(i=r+1);return v.parser_end(c),o&&s(e.length),t+e.slice(n)}function ei(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function ti(e){return`tool-${e.startsWith(`tool:`)?e.slice(5):e}`}function ni(e){return e.startsWith(`tool-`)?e.slice(5):e}const ri={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`},ii=`context`;function ai(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function oi(e){if(!ai(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 si(e){if(!ai(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 ci(e){let t=ai(e)?e.suggestions:void 0;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!ai(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 li(e){let t={messages:e.messages.map(e=>({id:e.serverMessageId??e.id,parts:di(e),role:e.role})),conversationId:e.conversationId,responseType:`ack`};return e.visitorId&&(t.visitorId=e.visitorId),e.userPrefs&&(t.userPrefs=e.userPrefs),e.clientTools?.length&&(t.clientTools=e.clientTools),t}function ui(e){return e.state===`output-available`||e.state===`output-error`||e.state===`output-denied`||e.approval?.approved!==void 0}function di(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,filename:n.filename,fileId:n.fileId,fileSize:n.fileSize}),n.kind===`tool`&&ui(n)){let e=n.dynamic?{type:`dynamic-tool`,toolName:n.toolName,toolCallId:n.toolCallId,state:n.state}:{type:ti(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),n.toolMetadata&&(e.toolMetadata=n.toolMetadata),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 fi(e,t,n=lt()){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 pi(){return{id:lt(),role:`assistant`,createdAt:Date.now(),status:`streaming`,partsSig:o([])}}function mi(e){let t=lt();return hi({id:t,role:e.role,createdAt:Date.now(),status:`complete`,ephemeral:!0,parts:[{kind:`text`,id:`${t}-t0`,text:e.text,done:!0}]})}function hi(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(ea))}}function gi(e){return e.status===`failed`?`error`:e.role===`assistant`&&e.status===`streaming`?`streaming`:`complete`}function _i(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,filename:t.filename,fileId:t.fileId,fileSize:t.fileSize}: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:ni(t.type),dynamic:t.type===`dynamic-tool`||void 0,toolMetadata:t.toolMetadata,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`?ci(r.data):void 0,serverMessageId:e.id,createdAt:Date.parse(e.createdAt),status:gi(e),canceled:e.status===`canceled`,feedback:e.feedback??null,stepTimings:vi(e.metadata?.steps),partsSig:o(n)}}function vi(e){if(e?.length&&e.every(e=>yi(e.durationMs)))return e.map(({durationMs:e,reasoningMs:t})=>({durationMs:Number(e),...yi(t)?{reasoningMs:t}:{}}))}function yi(e){return typeof e==`number`&&Number.isFinite(e)}function bi(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 xi(e){return e.role===`assistant`&&e.status===`streaming`&&bi(e)}function Si(e){let t=e.length-1;return e.filter((e,n)=>n===t||!xi(e)).map(_i)}function Ci(e,t){let n=!t&&e.at(-1)?.role===`assistant`?-2:-1,r=e.at(n);return!r||r.ephemeral?[]:[r]}function wi(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(ta)}}function Ti(e){let t=``;for(let n of e.partsSig.value)n.kind===`text`&&(t+=n.textSig.value);return t}function Ei(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`?$r(Ti(e)):Ti(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 Di(e){return Ti(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`||e.kind===`source`)}function Oi(e){return Ti(e).trim()!==``||e.partsSig.value.some(e=>e.kind===`tool`||e.kind===`file`)}function ki(e){return e===`approval-responded`||e===`output-available`||e===`output-denied`||e===`output-error`}function Ai(e){return e.kind===`tool`}function ji(e){return e.kind===`text`&&e.textSig.value.trim()!==``||e.kind===`file`}function Mi(e){let t=e.partsSig.value,n=t.findLastIndex(e=>e.kind===`tool`);return t.slice(n+1).some(ji)}function Ni(e){if(e.role!==`assistant`)return!1;let t=e.partsSig.value.filter(Ai);return t.length>0&&t.every(e=>ki(e.stateSig.value))}function Pi(e){return e.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`)&&!Mi(e)}function Fi(e,t){return!e.partsSig.value.slice(t+1).some(e=>e.kind===`step-start`||ji(e))}function Ii(e){return e.partsSig.value.some(e=>Ai(e)&&!ki(e.stateSig.value))}function Li(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 Ri(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 zi(e,t,n,r){if(!Bi(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&&Ti(n).length>=Ti(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&&Ti(t).length>=Ti(e).length)}function Bi(e){return e?.role===`assistant`&&e.status===`streaming`&&e.serverMessageId===void 0}function Vi(e,t){let n=e.partsSig.value,r=t.partsSig.value,i=new Map(r.flatMap((e,t)=>Ai(e)?[[e.toolCallId,t]]:[])),a=n.findIndex(e=>Ai(e)&&i.has(e.toolCallId)),o=n[a];if(o===void 0||!Ai(o))return;let s=(i.get(o.toolCallId)??0)-a;s>0&&(e.partsSig.value=[...r.slice(0,s),...n])}function Hi(e,t){let n=new Map(t.partsSig.value.filter(Ai).filter(e=>ki(e.stateSig.value)).map(e=>[e.toolCallId,e]));if(n.size===0)return;let r=!1,i=e.partsSig.value.map(e=>{if(!Ai(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,u=e.toolMetadata??t.toolMetadata;return o===e.approvalSig&&s===e.inputSig&&c===e.toolName&&l===e.dynamic&&u===e.toolMetadata?e:(r=!0,{...e,toolName:c,dynamic:l,toolMetadata:u,inputSig:s,approvalSig:o})});r&&(e.partsSig.value=i)}function Ui(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||Di(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`)?Ri(t,e):t.status===`streaming`||Ti(t).length>=Ti(e).length?(Vi(t,e),Hi(t,e),e.stepTimings&&(t.stepTimings=e.stepTimings),t.suggestions??(t.suggestions=e.suggestions),t.feedback===void 0&&(t.feedback=e.feedback),e.canceled&&(t.canceled=!0),t):Ri(t,e):e)}),s=n.filter(e=>!i.has(e)),c=s.findLast(Bi),l=/* @__PURE__ */ new Map;e.forEach((e,t)=>{l.set(e.id,t),e.serverMessageId!==void 0&&l.set(e.serverMessageId,t)});let u=zi(c,c?n.slice(0,n.indexOf(c)):[],a,l);if(c&&u){let e=o.indexOf(u);e>=0&&(o[e]=Ri(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,Ri(e,t);if(e.serverMessageId===void 0)return e;let r=Ti(t),i=Ti(e),o=t.status!==`streaming`&&r.length>=i.length&&Yi(e,t);if(r.length>i.length||r===i&&t.partsSig.value.length>e.partsSig.value.length||o)return a=!0,Ri(e,t);if((t.stepTimings?.length??0)>(e.stepTimings?.length??0)&&(e.stepTimings=t.stepTimings,a=!0),e.status===`streaming`&&t.status!==`streaming`&&Ki(e,t)){if(e.continuationStreaming&&Ii(t))return e;if(!Yi(t,e))return a=!0,Ri(e,t)}return e}),s=[...n.values()].filter(e=>!i.has(e.serverMessageId)),c=o.findLastIndex(Bi),l=o[c],u=zi(l,o.slice(0,c),s,r);if(l!==void 0&&u!==void 0&&Ti(u).length>=Ti(l).length&&(Ri(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 Gi(e,t){if(e.role!==t.role)return!1;let n=Ti(t),r=Ti(e);return n.length>r.length||t.partsSig.value.length>e.partsSig.value.length||Yi(e,t)}function Ki(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&&qi(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 qi(e,t){return(e.startsWith(`tool:`)?e.slice(5):e)===(t.startsWith(`tool:`)?t.slice(5):t)}const Ji={"input-streaming":0,"input-available":1,"approval-requested":2,"approval-responded":3,"output-available":4,"output-denied":4,"output-error":4};function Yi(e,t){let n=new Map(e.partsSig.value.filter(Ai).map(e=>[e.toolCallId,e]));return t.partsSig.value.filter(Ai).some(e=>{let t=n.get(e.toolCallId);if(!t||Ji[e.stateSig.value]>Ji[t.stateSig.value])return!0;let r=e.approvalSig.value?.approved;return r!==void 0&&r!==t.approvalSig.value?.approved})}function Xi(e){return e.role===`assistant`&&e.status!==`streaming`&&e.canceled!==!0&&!Di(e)}function Zi(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`&&!Xi(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 Qi(e,t){return e.canceled===!0&&e.role===`assistant`&&e.status!==`streaming`&&!Oi(e)&&!t}function $i(e,t){return e.operatorRoutedTurn?Xi(e)?`drop`:`complete-operator-routed`:t||Xi(e)?`error`:`complete`}function ea(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,toolMetadata:e.toolMetadata,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 ta(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,toolMetadata:e.toolMetadata,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 na(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 ra(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 ia(e){return e&&Object.keys(e).length>0?e:void 0}function aa(e,t,n=[]){let r=ia(e),i=ia(t),a=Date.now();for(let e=n.length;;--e){let t=n.slice(n.length-e).map(({name:e,data:t,at:n})=>({name:e,data:t,secondsAgo:Math.round((a-n)/1e3)})),o=t.length>0?{...i,recentEvents:t}:i;if(!r&&!o)return;let s=ra(JSON.stringify({...r&&{user:r},...o&&{page:o}}));if(s.length<=8192||e===0)return s}}var oa=class extends Error{constructor(e,t,n,r,i){super(e),this.code=t,this.status=n,this.cause=r,this.retryAfterSeconds=i,this.name=`StreamError`}};const sa=R.scope(`parser`);async function*ca(e,t,n){if(!e.ok){let t=await e.text().catch(()=>``);throw new oa(`server responded ${e.status}: ${t.slice(0,200)}`,`server`,e.status)}for await(let r of la(e,t)){let e=ua(r,n);if(e===`done`)return;e&&(yield e)}}async function*la(e,t){if(!e.body)throw new oa(`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
|
-
`))!==-1;){let e=r.slice(0,a);r=r.slice(a+2),yield e}}}finally{n.releaseLock()}}function
|
|
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 ia.trace(`chunk`,{type:e.type,eventId:r}),{chunk:e,eventId:r}}catch(e){throw ia.trace(`frame parse failed`,{errorType:e instanceof Error?e.name:typeof e,payloadLength:n.length}),new ra(`invalid SSE frame`,`network`,void 0,e)}}const K=L.scope(`transport`),ca=6e4,la=/* @__PURE__ */ new WeakMap;function ua(e){return la.get(e)}function da(e,t){return la.set(e,t),e}function fa(e){return Math.max(e?.upsertRevision??0,e?.read?.revision??0)}function pa(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 ma(e,t,n=!0){switch(t.type){case`snapshot`:{let n=new Map(e.map(e=>[e.conversationId,e])),r=e.filter(e=>(ua(e)?.activityRevision??0)>t.requestedRevision).toSorted((e,t)=>ua(t).activityRevision-ua(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=ua(r);return(i?.upsertRevision??0)>t.requestedRevision?r:i?.read&&!r.hasUnread&&i.read.lastMessageAt===e.lastMessageAt?da({...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=ua(r);if(fa(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?da({...e,hasUnread:!1},o):e):(da(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?ua(i):void 0;if(fa(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&&pa(i,c)?(da(i,s),e):(da(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 ha=/* @__PURE__ */ new Set([408,425,429,500,502,503,504]);function ga(e){return 400*2**e+Math.floor(Math.random()*250)}function _a(e){return 6e4+Math.ceil(e/1048576)*15e3}function va(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 ya=class{constructor(e){this.ttlMs=e,z(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)}},ba=class{constructor(e){this.opts=e,z(this,`conversationListeners`,/* @__PURE__ */ new Set),z(this,`conversationRevision`,0),z(this,`visitorId`,void 0),z(this,`conversationId`,void 0),z(this,`userContext`,void 0),z(this,`pageContext`,void 0),z(this,`locale`,void 0),z(this,`userTokenSource`,void 0),z(this,`userToken`,void 0),z(this,`userTokenRequest`,void 0),z(this,`conversationsCache`,new ya(1e4)),z(this,`contentCache`,new ya(ca)),z(this,`contentCollectionsCache`,new ya(ca))}setUserToken(e){this.userTokenSource=e,this.userToken=typeof e==`string`&&e||void 0,this.userTokenRequest=typeof e==`function`?this.fetchUserToken():void 0}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:_t};this.visitorId&&(e.visitorId=this.visitorId),this.conversationId&&(e.conversationId=this.conversationId),this.locale&&(e.locale=this.locale);let t=na(this.userContext,this.pageContext);return t&&(e[ii]=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){K.debug(`handshake →`,{visitorId:e.visitorId,conversationId:e.conversationId,locale:e.locale}),this.userTokenRequest&&await this.userTokenRequest;let t=await this.postJson(ri.handshake,e,`handshake`);return K.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){K.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,_a(e.size));return K.debug(`uploadFile ←`,{id:r.id,url:r.url}),r}async transcribe(e,t=`audio/webm`){K.debug(`transcribe →`,{size:e.size,mimeType:t});let n=new FormData;n.append(`audio`,e,`voice.${xa(t)}`),n.append(`mimeType`,t);let r=await this.postForm(this.transcribePath,n,`transcribe`);return K.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=ma(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(ri.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(ri.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=ma(e.conversations,n);return t===e.conversations?e:{...e,conversations:t}});for(let e of this.conversationListeners)e(n);try{await this.postJson(ri.markRead,{conversationId:e},`markRead`,!0)}catch(e){K.debug(`markRead failed (non-fatal)`,{err:e})}}async requestOperator(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(ri.requestOperator,{},`requestOperator`)).controlState}catch(e){K.debug(`requestOperator failed (non-fatal)`,{err:e});return}}async cancelOperatorRequest(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(ri.cancelOperatorRequest,{},`cancelOperatorRequest`)).controlState}catch(e){K.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(ri.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(ri.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(ri.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(ri.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(ri.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??ri.submitForm}async submitForm(e){K.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){K.debug(`submitForm failed (non-fatal)`,{err:e})}}async submitFeedback(e){K.debug(`submitFeedback →`,{messageId:e.messageId,value:e.value});try{await this.postJson(ri.messageFeedback,{messageId:e.messageId,set:{feedback:e.value}},`submitFeedback`)}catch(e){K.debug(`submitFeedback failed (non-fatal)`,{err:e})}}async sendTurn(e,t={}){K.debug(`message →`,{conversationId:e.conversationId,visitorId:e.visitorId,messageCount:e.messages.length});let n=JSON.stringify({...this.withEnvelope(e),[ii]:na(this.userContext,this.pageContext,this.opts.recentHostEvents)}),r=t.keepalive===!0&&new Blob([n]).size<6e4;try{return await this.runWithAbort(async e=>{let t=await this.withFreshUserToken(()=>this.fetchImpl(this.url(ri.streamMessage),{method:`POST`,credentials:`omit`,headers:{accept:`application/json`,"content-type":`application/json`,...this.headersFor(this.url(ri.streamMessage))},body:n,keepalive:r,signal:e}));if(t.status!==202)throw new ra(`sendTurn failed: expected 202, received ${t.status}`,`server`,t.status);let i;try{i=await t.json()}catch(n){throw e?.aborted?n:new ra(`sendTurn failed: invalid acknowledgement`,`server`,t.status,n)}if(!Sa(i))throw new ra(`sendTurn failed: invalid acknowledgement`,`server`,t.status);return i},void 0,3e4)}catch(e){throw e instanceof ra?e:new ra(`sendTurn failed: network error`,`network`,void 0,e)}}cancelTurn(e,t){this.visitorId&&e&&t&&(K.debug(`cancel stream`,{conversationId:e,runId:t,visitorId:this.visitorId}),this.fetchImpl(this.url(ri.cancelStream),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.headersFor(this.url(ri.cancelStream))},body:JSON.stringify(this.withEnvelope({conversationId:e,runId:t})),keepalive:!0}).catch(e=>K.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{this.userTokenRequest&&await this.userTokenRequest,a=await this.fetchImpl(this.resumeUrl(),{method:`GET`,credentials:`omit`,headers:{accept:`text/event-stream`,...this.headersFor(this.resumeUrl())},signal:t.signal})}catch(t){return i(),e.signal.aborted||K.debug(`resume-stream fetch failed — reconnecting`,{err:t}),`held`}if(!a.ok)return i(),a.status===401&&typeof this.userTokenSource==`function`?(await this.fetchUserToken(),`held`):a.status===409||ha.has(a.status)?(K.debug(`resume-stream → transient response; reconnecting`,{status:a.status}),`held`):(K.debug(`resume-stream → endpoint unavailable`,{status:a.status}),`unavailable`);if(!a.body)return i(),K.debug(`resume-stream → bodyless response; stopping`,{status:a.status}),`unavailable`;if(!(a.headers.get(`content-type`)??``).includes(`text/event-stream`))return i(),K.debug(`resume-stream → non-SSE response; stopping`),`unavailable`;let o=!1;try{for await(let{chunk:n}of aa(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`;K.debug(`resume-stream segment dropped — reconnecting`,{err:t})}finally{i()}return`held`}resumeUrl(){return this.withEnvelopeQuery(ri.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.headersFor(this.url(e))},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.withFreshUserToken(()=>this.fetchImpl(this.url(e),{method:`POST`,credentials:`omit`,headers:this.headersFor(this.url(e)),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.headersFor(this.url(e))}}],t);return this.assertOk(n,t)}async fetchWithRetry(e,t){for(let n=0;;n++){let r;try{r=await this.withFreshUserToken(()=>this.fetchImpl(...e()))}catch(e){if(n>=3)throw new ra(`${t} failed: network error`,`network`,void 0,e);K.debug(`request network error — retrying`,{label:t,attempt:n}),await $i(ga(n));continue}if(r.ok||!ha.has(r.status)||n>=3)return r;let i=va(r.headers)??ga(n);K.debug(`request retryable status — retrying`,{label:t,status:r.status,attempt:n,wait:i}),await $i(i)}}async assertOk(e,t){if(!e.ok)throw new ra(`${t} failed: ${e.status}`,`server`,e.status);return await e.json()}fetchUserToken(){let e=this.userTokenSource;if(typeof e!=`function`)return Promise.resolve();let t=Promise.resolve().then(e).then(t=>{this.userTokenSource===e&&(this.userToken=t||void 0)},e=>{K.warn(`userToken function failed; continuing as an anonymous visitor`,{err:e})});return this.userTokenRequest=t,t}headersFor(e){let t=!/^https?:\/\//i.test(e)||e.startsWith(`${this.opts.agentApiBaseUrl}/`);return{...this.opts.auth.headers(),...t&&this.userToken?{"x-user-token":this.userToken}:{}}}async withFreshUserToken(e){let t=await e();return t.status!==401||!this.userTokenSource?t:typeof this.userTokenSource==`function`?(await this.fetchUserToken(),e()):(K.warn(`userToken rejected as invalid or expired; pass a function so the widget can fetch a fresh one`),t)}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 xa(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 Sa(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 Ca(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 wa(e,t,n){return Ca(`close`,e,t)?n.includes(`close`):!1}function Ta(e,t){return e===`inline`&&t===`fullscreen`?`exit-fullscreen`:`close`}function Ea(e,t,n,r){let i={role:n,text:r};e.emit(`message`,i),t.onMessage?.(i)}function Da(e){let t=p(e);t.current=e;let n=p(null);return n.current??(n.current=Oa(t)),n.current}function Oa(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&&ka(r,a)&&!i(e)&&Aa(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 ka(e,t){return e.kind===`after-messages`?t.messageCount()>=Number(e.param??0):e.kind!==`page-area`||t.pageArea()===e.param}function Aa(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 ja(e){return Object.fromEntries(e.map(e=>[e,[]]))}function Ma(e,t,n){return e.includes(t)?t:e.includes(n)?n:e[0]??``}function Na(e,t,n){let r=[...new Set(t)],i=Ma(r,e,``),a=o({activeTab:i,stacks:ja(r)});return{sig:a,reconcile(e,t){let i=[...new Set(e)],o=a.value,s=Ma(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:Ma(r,e,``),stacks:ja(r)}}}}function Pa(e){return e.stacks[e.activeTab]??[]}function Fa(e){return Pa(e).at(-1)}function Ia(e){return Pa(e).length===0}function La(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 Ra(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 za(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:Ra(e.mode,e.size,t)}}function Ba(){return typeof window>`u`?0:window.innerWidth}const q={fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,viewBox:`0 0 24 24`},Va=`${j.cssPrefix}-icon-dir`;function Ha(){return/* @__PURE__ */ g(`svg`,{...q,"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 Ua(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M18 6 6 18M6 6l12 12`})})}function Wa(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 5v14M5 12h14`})})}function Ga(){return/* @__PURE__ */ _(`svg`,{...q,class:Va,"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`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 19V5M5 12l7-7 7 7`})})}function qa(){return/* @__PURE__ */ g(`svg`,{...q,class:Va,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 20V4l18 8-18 8Z`})})}function Ja(){return/* @__PURE__ */ g(`svg`,{...q,class:Va,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m9 18 6-6-6-6`})})}function Ya(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})})}function Xa(){return/* @__PURE__ */ g(`svg`,{...q,"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 Za(){return/* @__PURE__ */ _(`svg`,{...q,"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 Qa(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5`})})}function $a(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5`})})}function eo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z`})})}function to(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7`})})}function no(){return/* @__PURE__ */ _(`svg`,{...q,"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 ro(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,viewBox:`0 0 10 10`,children:/* @__PURE__ */ g(`path`,{d:`M9 1L1 9M9 5L5 9M9 9H9`,strokeWidth:`1.5`})})}function io(){return/* @__PURE__ */ _(`svg`,{...q,"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 ao(){return/* @__PURE__ */ g(`svg`,{...q,"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 oo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6`})})}function so(){return/* @__PURE__ */ _(`svg`,{...q,"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 co(){return/* @__PURE__ */ g(`svg`,{...q,class:Va,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m5 6 6 6-6 6M13 6l6 6-6 6`})})}function lo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M20 6 9 17l-5-5`})})}function uo(){return/* @__PURE__ */ _(`svg`,{...q,"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 fo(){return/* @__PURE__ */ _(`svg`,{...q,"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 po(){return/* @__PURE__ */ g(`svg`,{...q,class:Va,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M19 12H5M12 19l-7-7 7-7`})})}function mo(){return/* @__PURE__ */ _(`svg`,{...q,"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 ho(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m6 9 6 6 6-6`})})}function go(){return/* @__PURE__ */ _(`svg`,{...q,"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 _o(){return/* @__PURE__ */ _(`svg`,{...q,"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 vo(){return/* @__PURE__ */ g(`svg`,{...q,"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 yo(){return/* @__PURE__ */ _(`svg`,{...q,"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 bo(){return/* @__PURE__ */ _(`svg`,{...q,"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 xo(){return/* @__PURE__ */ _(`svg`,{...q,"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 So(){return/* @__PURE__ */ _(`svg`,{...q,"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 Co(){return/* @__PURE__ */ _(`svg`,{...q,"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 wo(){return/* @__PURE__ */ _(`svg`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`11`,cy:`11`,r:`7`}),/* @__PURE__ */ g(`path`,{d:`m21 21-4.3-4.3`})]})}function To(){return/* @__PURE__ */ _(`svg`,{...q,"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 Eo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Do(){return/* @__PURE__ */ _(`svg`,{...q,"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 Oo(){return/* @__PURE__ */ _(`svg`,{...q,"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 ko(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ao(){return/* @__PURE__ */ g(`svg`,{...q,"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 jo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Mo(){return/* @__PURE__ */ _(`svg`,{...q,"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 No(){return/* @__PURE__ */ _(`svg`,{...q,"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 Po(){return/* @__PURE__ */ _(`svg`,{...q,"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 Fo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Io(){return/* @__PURE__ */ _(`svg`,{...q,"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 Lo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ro(){return/* @__PURE__ */ _(`svg`,{...q,"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 zo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Bo(){return/* @__PURE__ */ _(`svg`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`M12 7v5l3 2`})]})}function Vo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ho(){return/* @__PURE__ */ _(`svg`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m15 9-6 6M9 9l6 6`})]})}const Uo={chat:Ha,message:vo,bubbles:Oo,spark:_o,wand:bo,bot:xo,help:yo,lifebuoy:Co,headset:So,search:Mo,sparkles:No,concierge:Po,wave:Fo},J=j.cssPrefix,Y={launcher:`${J}-launcher`,callout:`${J}-callout`,calloutDismiss:`${J}-callout-dismiss`,panel:`${J}-panel`,panelHeader:`${J}-panel-header`,resizeGrip:`${J}-resize-grip`,scrollToBottom:`${J}-scroll-to-bottom`,loadPreviousMessages:`${J}-load-previous-messages`,actionHistory:`${J}-action-history`,actionClose:`${J}-action-close`,langSegment:`${J}-lang-segment`,composer:`${J}-composer`,composerInput:`${J}-composer-input`,composerSend:`${J}-composer-send`,composerStop:`${J}-composer-stop`,compactionStatus:`${J}-compaction-status`,messageQueue:`${J}-message-queue`,queuedMessage:`${J}-queued-message`,queuedMessageRemove:`${J}-queued-message-remove`,composerAttach:`${J}-composer-attach`,composerFileInput:`${J}-composer-file-input`,composerVoice:`${J}-composer-voice`,attachmentChip:`${J}-attachment-chip`,attachmentRemove:`${J}-attachment-remove`,suggestion:`${J}-suggestion`,messageBubble:`${J}-message`,messageRetry:`${J}-message-retry`,messageFile:`${J}-message-file`,messageFeedback:`${J}-message-feedback`,feedbackUp:`${J}-feedback-up`,feedbackDown:`${J}-feedback-down`,messageCopy:`${J}-message-copy`,historyPane:`${J}-history-pane`,historyBack:`${J}-history-back`,historyItem:`${J}-history-item`,historyLoadMore:`${J}-history-load-more`,sidebar:`${J}-sidebar`,sidebarToggle:`${J}-sidebar-toggle`,sidebarNewConversation:`${J}-sidebar-new-conversation`,sidebarItem:`${J}-sidebar-item`,messengerHome:`${J}-messenger-home`,modulesEmpty:`${J}-modules-empty`,tab:`${J}-tab`,tabBadge:`${J}-tab-badge`,homeView:`${J}-home-view`,homeGreeting:`${J}-home-greeting`,homeBrand:`${J}-home-brand`,backHeader:`${J}-back-header`,contentView:`${J}-content-view`,contentScroll:`${J}-content-scroll`,homeSearch:`${J}-home-search`,helpSearch:`${J}-help-search`,homeRecent:`${J}-home-recent`,homeAsk:`${J}-home-ask`,homeWhatsNew:`${J}-home-whats-new`,homeContentRow:`${J}-home-content-row`,helpArticle:`${J}-help-article`,newsItem:`${J}-news-item`,newsMore:`${J}-news-more`,formGate:`${J}-form-gate`,formDone:`${J}-form-done`,formDoneToggle:`${J}-form-done-toggle`,formAnswers:`${J}-form-answers`,formFill:`${J}-form-fill`,formSubmit:`${J}-form-submit`,formSkip:`${J}-form-skip`,formField:`${J}-form-field`,toolAskQuestions:`${J}-tool-ask-questions`,toolInputSubmit:`${J}-tool-input-submit`,toolInputSkip:`${J}-tool-input-skip`,toolApproval:`${J}-tool-approval`,toolApprove:`${J}-tool-approve`,toolReject:`${J}-tool-reject`,toolEdit:`${J}-tool-edit`,toolDecision:`${J}-tool-decision`,typingDots:`${J}-typing-dots`,reasoning:`${J}-reasoning`,toolAskSummary:`${J}-ask-questions-summary`,toolAskOptions:`${J}-ask-questions-options-toggle`,toolCall:`${J}-tool-call`,toolSteps:`${J}-tool-steps`,toolStep:`${J}-tool-step`,source:`${J}-source`,operatorRequest:`${J}-operator-request`,operatorBanner:`${J}-operator-banner`,cancelOperatorRequest:`${J}-cancel-operator-request`};function Wo(e,t){return`${e}-${t}`}const Go=j.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:`${Go}-fab`,part:`launcher`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?`true`:void 0,"data-leaving":r?`true`:void 0,"data-testid":Y.launcher,onClick:e,"aria-label":n.launcherOpen,children:[qo(t.icon),a?/* @__PURE__ */ g(`span`,{class:`${Go}-fab-label`,children:k(n,t.label??``)}):null]})}function qo(e){let t=Uo[e];return t?/* @__PURE__ */ g(t,{}):/* @__PURE__ */ g(Jo,{source:e})}function Jo({source:e}){return/* @__PURE__ */ g(`span`,{ref:t=>{t&&Yo(t,e)},"aria-hidden":`true`})}function Yo(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 Xo({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:`${Go}-callout`,role:`status`,"data-shape":e.shape,"data-position":Zo(e.position,t),"data-animated":e.animated?`true`:void 0,"data-testid":Y.callout,children:[/* @__PURE__ */ g(`span`,{children:k(n,e.text)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Go}-callout-close`,onClick:i,"aria-label":r,title:r,"data-testid":Y.calloutDismiss,children:/* @__PURE__ */ g(Ua,{})})]}):null}function Zo(e,t){let n=t.endsWith(`-right`),r=t.startsWith(`bottom-`);return e===`vertical`?r?`top`:`bottom`:n?`left`:`right`}function Qo(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 $o=j.cssPrefix;function es({title:e,actions:t}){return/* @__PURE__ */ _(`header`,{class:`${$o}-back-header`,part:`header`,"data-variant":`title`,children:[/* @__PURE__ */ g(`span`,{class:`${$o}-back-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ g(`h1`,{class:`${$o}-back-title`,children:e}),t??/* @__PURE__ */ g(`span`,{class:`${$o}-back-spacer`,"aria-hidden":`true`})]})}function ts({title:e,backLabel:t,onBack:n,actions:r,testid:i}){return/* @__PURE__ */ _(`header`,{class:`${$o}-back-header`,part:`header`,"data-testid":i,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${$o}-icon-btn`,onClick:n,"aria-label":t,title:t,children:/* @__PURE__ */ g(po,{})}),/* @__PURE__ */ g(`h1`,{class:`${$o}-back-title`,children:e}),r??/* @__PURE__ */ g(`span`,{class:`${$o}-back-spacer`,"aria-hidden":`true`})]})}function ns({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(`${j.cssPrefix}-md`),o.replaceChildren();let s=n?Yr(o,{cssPrefix:j.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?Yr(o,{cssPrefix:j.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(()=>os(o));d.observe(o,{childList:!0,subtree:!0}),os(o);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 rs({text:e}){let t=f(()=>o(e),[e]),n=f(()=>o(!0),[]);return/* @__PURE__ */ g(ns,{textSig:t,doneSig:n})}const is=/<(\/?)(?:(Note|Info|Tip|Warning|Danger|Check|Callout)|Tabs?|Steps?|AccordionGroup|Accordion|Expandable|Columns|CardGroup|Card|Frame|CodeGroup|Badge|Icon|Video|Embed|ParamField|ResponseField)\b((?:"[^"]*"|'[^']*'|[^>"'])*?)(\/?)>|(^|\n)([ \t]*)(```[^]*?(?:\n[ \t]*```|$))?/g;function as(e){let t=0,n=``;return e.replace(is,(e,r,i,a,o,s,c,l)=>{if(r===void 0)return t?s+(l?.split(`\n${c}`).join(`
|
|
31
|
-
`)??n):e;if(r)return t--,i&&(n=n.slice(2)),i?`\n${n}`:``;o||(t++,i&&(n+=`> `));let u={};a.replace(/(\w+)=(["'])(.*?)\2/g,(e,t,n,r)=>u[t]=r);let d=u.href??u.src,f=u.title??u.path??u.query??u.body??u.header??u.name??d;return(i?`> `:``)+(f?`**${d?`[${f}](${d})`:f}**${u.type?` \`${u.type}\``:``}\n${n}`:``)})}function os(e){for(let t of e.querySelectorAll(`a`)){let e=t.getAttribute(`href`)??``;e&&!e.startsWith(`#`)&&(t.target=`_blank`,t.rel=`noopener noreferrer`)}}const ss=/* @__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 cs(e){let t=``,n=[],r=v.parser({data:void 0,add_token:(e,r)=>{n.push(r),ss.has(r)||(t+=` `)},end_token:()=>{let e=n.pop();e!==void 0&&!ss.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 ls=j.cssPrefix;function us({tone:e=`info`,message:t,onRetry:n,strings:r}){return/* @__PURE__ */ _(`div`,{class:`${ls}-module-empty`,role:e===`error`?`alert`:`status`,"aria-live":`polite`,children:[/* @__PURE__ */ g(`span`,{children:t}),n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ls}-module-retry`,onClick:n,children:r.errorRetry}):null]})}const ds=j.cssPrefix,fs=L.scope(`content`);function ps({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||(fs.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(us,{tone:`error`,message:r.errorGeneric,onRetry:C,strings:r}):s===null?/* @__PURE__ */ g(us,{message:r.contentLoading,strings:r}):/* @__PURE__ */ _(`article`,{class:`${ds}-content`,"data-testid":Y.contentView,onClick:w,children:[s.image?/* @__PURE__ */ g(`img`,{class:`${ds}-content-hero`,src:s.image,alt:``,loading:`lazy`}):null,s.description?/* @__PURE__ */ g(`p`,{class:`${ds}-content-subtitle`,children:s.description}):null,/* @__PURE__ */ g(rs,{text:as(s.content??``)}),d?/* @__PURE__ */ g(`div`,{class:`${ds}-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:`${ds}-module-retry`,onClick:()=>T(1),children:r.confirmYes}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${ds}-module-retry`,onClick:()=>T(0),children:r.confirmNo})]})}):null]})}return/* @__PURE__ */ _(`div`,{class:`${ds}-module`,children:[/* @__PURE__ */ g(ts,{title:s?.title||t||r.moduleBack,backLabel:r.moduleBack,onBack:a,actions:o,testid:Y.backHeader}),/* @__PURE__ */ g(`div`,{class:`${ds}-module-scroll`,"data-testid":Y.contentScroll,children:E()})]})}function ms({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 hs({items:e,triggerLabel:t}){let n=j.cssPrefix,r=ms({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(io,{})}),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":`${Y.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(lo,{})}):null]},e.id))}):null]})}const gs=j.cssPrefix;function _s(e){let t=typeof matchMedia!=`function`||matchMedia(`(prefers-color-scheme: dark)`).matches;return e===`host`?Et()===`dark`?`light`:`dark`:e===`auto`?t?`light`:`dark`:t?e===`light`?`dark`:`auto`:e===`dark`?`light`:`auto`}const vs={normal:`large`,large:`small`,small:`normal`};function ys(e){return g(e===`light`?ko:e===`dark`?Ao:jo,{})}function bs(e){return(e.split(`-`)[0]??e).toUpperCase()}function xs(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 Ss({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&&Ca(e,v,r)}let T=n.themeMode,E={auto:h.themeAuto,light:h.themeLight,dark:h.themeDark,host:h.themeAuto},D=n.textSize,O={small:h.textSizeSmall,normal:h.textSizeNormal,large:h.textSizeLarge},ee=[];if(y&&S(`clear`)&&ee.push({id:`clear`,icon:/* @__PURE__ */ g(mo,{}),label:h.newConversation,onSelect:o}),S(`expand`)&&w(`expand`)){let e=r===`expanded`;ee.push({id:`expand`,icon:g(e?$a:Qa,{}),label:e?h.collapse:h.expand,type:`switch`,on:e,onSelect:c})}if(S(`fullscreen`)&&w(`fullscreen`)){let e=r===`fullscreen`;ee.push({id:`fullscreen`,icon:g(e?to:eo,{}),label:e?h.exitFullscreen:h.fullscreen,type:`switch`,on:e,onSelect:l})}let k=n.popOutUrl,A=n.aiAgentDeploymentId;S(`popOut`)&&k&&A&&Ca(`popOut`,v,r)&&ee.push({id:`popOut`,icon:/* @__PURE__ */ g(no,{}),label:h.popOut,onSelect:()=>{let t=xs(k,{conversationId:e.conversationId,widgetId:n.widgetId,publicKey:n.publicKey,aiAgentDeploymentId:A});t&&window.open(t,`_blank`,`noopener,noreferrer`)}}),y&&S(`sound`)&&ee.push({id:`sound`,icon:g(b?oo:ao,{}),label:b?h.soundOff:h.soundOn,type:`switch`,on:!b,onSelect:u}),S(`theme`)&&ee.push({id:`theme`,icon:ys(T),label:`${h.theme}: ${E[T]}`,onSelect:()=>p(_s(T)),keepOpen:!0}),S(`textSize`)&&ee.push({id:`textSize`,icon:/* @__PURE__ */ g(so,{}),label:`${h.textSize}: ${O[D]}`,onSelect:()=>m(vs[D]),keepOpen:!0}),S(`language`)&&n.availableLocales.length>1&&ee.push({id:`language`,icon:/* @__PURE__ */ g(fo,{}),label:h.language,segments:n.availableLocales.map(e=>({value:e,label:bs(e),lang:e})),value:n.locale,onSelectValue:f});let j=!!a&&wa(v,r,n.actions),te=y&&S(`history`);return/* @__PURE__ */ _(`div`,{class:`${gs}-header-actions`,children:[te?/* @__PURE__ */ g(`button`,{type:`button`,class:`${gs}-icon-btn`,onClick:d,"aria-label":h.history,title:h.history,"data-testid":Y.actionHistory,children:/* @__PURE__ */ g(uo,{})}):null,ee.length>0?/* @__PURE__ */ g(hs,{items:ee,triggerLabel:h.moreActions}):null,j?/* @__PURE__ */ g(`button`,{type:`button`,class:`${gs}-icon-btn`,onClick:a,"aria-label":h.close,title:h.close,"data-testid":Y.actionClose,children:/* @__PURE__ */ g(Ua,{})}):null]})}const Cs={Icon:Oo};function ws(e,t){return e instanceof ra&&e.status===429?t.errorRateLimited:t.errorGeneric}const Ts=j.cssPrefix;function Es({placeholder:e,onActivate:t}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Ts}-home-search`,onClick:t,"data-testid":Y.homeSearch,children:[/* @__PURE__ */ g(`span`,{class:`${Ts}-home-search-text`,children:e}),/* @__PURE__ */ g(`span`,{class:`${Ts}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(wo,{})})]})}function Ds({placeholder:e,value:t,onInput:n}){return/* @__PURE__ */ _(`div`,{class:`${Ts}-home-search`,"data-input":`true`,children:[/* @__PURE__ */ g(`input`,{type:`search`,class:`${Ts}-home-search-input`,placeholder:e,value:t,maxLength:200,onInput:e=>n(e.currentTarget.value),"data-testid":Y.helpSearch}),/* @__PURE__ */ g(`span`,{class:`${Ts}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(wo,{})})]})}const Os=j.cssPrefix;function ks({title:e,subtitle:t,onClick:n,testid:r}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Os}-list-row`,onClick:n,"data-testid":r,children:[/* @__PURE__ */ _(`span`,{class:`${Os}-list-row-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Os}-list-row-title`,children:e}),t?/* @__PURE__ */ g(`span`,{class:`${Os}-list-row-sub`,children:t}):null]}),/* @__PURE__ */ g(`span`,{class:`${Os}-list-row-chevron`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Ja,{})})]})}const As=j.cssPrefix,js=L.scope(`help`);function Ms(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 Ns({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&&(js.warn(`listContent (help) failed`,{err:e,page:a}),o(n=>n&&{...n,loading:!1,error:ws(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 Ps(e){let{strings:t,config:n,nav:r,panelProps:i}=e,a=n.contentCollectionIds,[o,s]=m(``),[c,l]=m(``),d=Ns(e,a),f=Ns(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(us,{message:t.helpEmpty,strings:t});let e=p?.error?/* @__PURE__ */ g(us,{tone:`error`,message:p.error,onRetry:v,strings:t}):null;return e&&!p?.pagination?e:!p||!p.pagination&&!p.items.length?/* @__PURE__ */ g(us,{message:t.helpLoading,strings:t}):p.items.length?/* @__PURE__ */ _(h,{children:[Ms(p.items,a,p.collections).map(e=>/* @__PURE__ */ _(`section`,{class:`${As}-help-group`,children:[e.title?/* @__PURE__ */ g(`h2`,{class:`${As}-help-section-title`,children:e.title}):null,/* @__PURE__ */ g(`div`,{class:`${As}-help-card`,children:e.rows.map(e=>/* @__PURE__ */ g(ks,{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:Wo(Y.helpArticle,e.id)},e.id))})]},e.id)),e,p.pagination?.hasNext&&!e?/* @__PURE__ */ g(`div`,{children:/* @__PURE__ */ g(`div`,{class:`${As}-help-card`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${As}-list-row ${As}-help-more`,onClick:v,"aria-busy":p.loading,children:[p.loading?/* @__PURE__ */ g(`span`,{class:`${As}-loading-spinner`,"aria-hidden":`true`}):null,t.helpShowMore]})})}):null]}):/* @__PURE__ */ g(us,{message:p.search?t.helpSearchEmpty.replace(`{query}`,p.search):t.helpEmpty,strings:t})}return/* @__PURE__ */ _(`div`,{class:`${As}-module`,children:[/* @__PURE__ */ g(es,{title:t.helpTitle,actions:/* @__PURE__ */ g(Ss,{panelProps:i,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${As}-module-pad`,children:/* @__PURE__ */ g(Ds,{placeholder:t.helpSearchPlaceholder,value:o,onInput:s})}),/* @__PURE__ */ g(`div`,{class:`${As}-help-list`,children:y()})]})}const Fs={Icon:yo,Root:e=>/* @__PURE__ */ g(Ps,{...e})},Is=L.scope(`attachments`);function Ls(e,t,n){let r=Bs(e),i=[],a=[],o=Us(n.accept),s=t.reduce((e,t)=>e+t.size,0),c=t.length;for(let e of r){let t=zs(e,c,s,n,o);t?a.push({file:e,reason:t}):(i.push(Hs(e)),s+=e.size,c+=1)}return(i.length||a.length)&&Is.debug(`ingest`,{accepted:i.length,rejected:a.map(e=>({name:e.file.name,reason:e.reason}))}),{accepted:i,rejected:a}}function Rs(e){try{URL.revokeObjectURL(e.previewUrl)}catch(e){Is.debug(`revokeObjectURL failed`,{error:e})}}function zs(e,t,n,r,i){return t>=r.maxCount?`count`:n+e.size>r.maxBytes?`bytes`:Ws(e,i)?null:`mime`}function Bs(e){return e?Array.isArray(e)?e.filter(e=>e instanceof File):[...e].map(e=>e instanceof File?e:Vs(e)).filter(e=>e!==null):[]}function Vs(e){let t=e;return!t?.getAsFile||t.kind!==`file`?null:t.getAsFile()}function Hs(e){return{file:e,id:ut(),mediaType:e.type||`application/octet-stream`,name:e.name||`pasted-file`,previewUrl:URL.createObjectURL(e),size:e.size}}function Us(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 Ws(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 Gs=j.cssPrefix;function Ks({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:`${Gs}-attachment-chip`,title:e.name,"data-testid":Wo(Y.attachmentChip,e.id),children:[r?/* @__PURE__ */ g(`img`,{class:`${Gs}-attachment-thumb`,src:e.previewUrl,alt:``}):/* @__PURE__ */ g(`span`,{class:`${Gs}-attachment-thumb`,"aria-hidden":`true`,children:/* @__PURE__ */ g(go,{})}),/* @__PURE__ */ g(`span`,{class:`${Gs}-attachment-name`,children:e.name}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Gs}-attachment-remove`,onClick:t,disabled:n,"aria-label":`Remove ${e.name}`,"data-testid":Wo(Y.attachmentRemove,e.id),children:/* @__PURE__ */ g(Ua,{})})]})}const qs={isSupported:!1,start:()=>void 0,stop:()=>void 0,cancel:()=>void 0};function Js(e,t,n){return e===`disabled`?qs:e===`server`?Qs(n):Ys(t)}function Ys(e){let t=Xs();if(!t)return qs;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 Xs(){return window.SpeechRecognition??window.webkitSpeechRecognition}const Zs=[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`];function Qs(e){if(typeof MediaRecorder>`u`||!navigator?.mediaDevices?.getUserMedia)return qs;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=$s(),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 $s(){for(let e of Zs)if(MediaRecorder.isTypeSupported(e))return e}const ec=j.cssPrefix,tc=L.scope(`composer`);function nc(e){return e.reduce((e,t)=>e+t.size,0)}const rc={arrowUp:Ka,paperPlane:Ga,send:qa,chevron:Ja};function ic(e){return`activeElement`in e}function ac(e){return`host`in e&&`activeElement`in e}function oc({options:e,transport:t,feedback:n,bus:r,persistence:i,conversationId:a,isStreaming:o,pageToolRunning:s=!1,isMemoryCompacting:c=!1,canReleaseQueuedMessages:f=!0,queueManualMessages:h=!1,active:v=!0,isPreparing:y=!1,operatorRequestEnabled:b,canRequestOperator:x=!1,controlMode:S=`ai-agent`,onRequestOperator:C,onSend:w,onStop:T,apiRef:E}){let D=e.strings,[O,ee]=m(()=>i.loadDraft(a)),[k,A]=m([]),[j,te]=m(()=>i.loadMessageQueue(a).map(e=>({id:e.id,text:e.text,attachments:[]}))),ne=p(j),M=p(!1),[re,ie]=m(!1),[N,ae]=m(!1),oe=p(!1),se=p(null),P=p(null),ce=p(null),le=p(0),ue=p(a);ue.current=a;let F=p(v);F.current=v;let de=p(y);de.current=y;let fe=N||y||!v,pe=o&&S===`ai-agent`,me=pe||c&&S===`ai-agent`,he=S===`ai-agent`&&(me||h||j.length>0),ge=l(e=>{te(t=>{let n=e(t);return i.saveMessageQueue(ue.current,n.filter(e=>e.attachments.length===0).map(({id:e,text:t})=>({id:e,text:t}))),ne.current=n,n})},[i]),I=l(e=>{ge(t=>(t.find(t=>t.id===e)?.attachments.forEach(Rs),t.filter(t=>t.id!==e)))},[ge]),_e=l(e=>{ee(t=>{let n=typeof e==`function`?e(t):e;return n===t?t:(i.saveDraft(ue.current,n),n)})},[i]),ve=e.features.fileUpload,L=e.features.voice,[ye,be]=m(()=>Js(L,e.locale,(e,n)=>t.transcribe(e,n))),xe=p(ye);xe.current=ye;let Se=p({mode:L,locale:e.locale,transport:t});u(()=>{let n=Se.current;(n.mode!==L||n.locale!==e.locale||n.transport!==t)&&(Se.current={mode:L,locale:e.locale,transport:t},le.current++,xe.current.cancel(),ce.current=null,ie(!1),be(Js(L,e.locale,(e,n)=>t.transcribe(e,n))))},[e.locale,L,t]),d(()=>()=>{le.current++,ye.cancel()},[ye]);let Ce=l(e=>{let t=ce.current;if(t===null)return!1;let n=Math.round(performance.now()-t);return tc[e](`voiceStop`,{durationMs:n}),r.emit(`voiceStop`,{durationMs:n}),ce.current=null,!0},[r]),we=l(()=>{ce.current!==null&&(ye.stop(),ie(!1),Ce(`info`)&&n.play(`voiceStop`))},[Ce,n,ye]),Te=l(()=>{le.current++,ye.cancel(),ie(!1),Ce(`info`)&&n.play(`voiceStop`)},[Ce,n,ye]);u(()=>{(y||!v)&&Te()},[v,Te,y]),u(()=>{let e=se.current;if(!e)return;let t=e.getRootNode(),n=ic(t)?t.activeElement:null;n&&e.closest(`.${ec}-panel`)?.contains(n)||e.focus({preventScroll:!0})},[]),u(()=>{let e=se.current;if(!e)return;if(O.length===0){e.style.height=``;return}e.style.height=`auto`;let t=getComputedStyle(e),n=Number.parseFloat(t.getPropertyValue(`--${ec}-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`},[O]);let Ee=p(k);Ee.current=k,u(()=>()=>{Ee.current.forEach(Rs);for(let e of ne.current)e.attachments.forEach(Rs)},[]),d(()=>{if(E)return E.current={attachFromDrop:t=>{if(!ve||!F.current||oe.current||de.current)return;let n=Ls(t,Ee.current,e.attachments);n.accepted.length!==0&&(tc.info(`attach (drop)`,{count:n.accepted.length,totalBytes:nc(n.accepted)}),r.emit(`attach`,{count:n.accepted.length,totalBytes:nc(n.accepted)}),A(e=>[...e,...n.accepted]))},fill:e=>{if(!F.current||oe.current||de.current)return;_e(e);let t=se.current;t&&(t.focus({preventScroll:!0}),requestAnimationFrame(()=>t.setSelectionRange(t.value.length,t.value.length)))},acceptQueuedMessage:I},()=>{E.current&&(E.current=null)}},[E,ve,y,e.attachments,I,_e]),u(()=>{let t=se.current;if(!t)return;let n=t.closest(`.${ec}-panel`);if(!n)return;let i=n=>{if(!F.current||oe.current||de.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(ve){let t=Ls(i.items,Ee.current,e.attachments);if(t.accepted.length>0){n.preventDefault(),tc.info(`attach (paste)`,{count:t.accepted.length,totalBytes:nc(t.accepted)}),r.emit(`attach`,{count:t.accepted.length,totalBytes:nc(t.accepted)}),A(e=>[...e,...t.accepted]);return}}if(a===t)return;let o=i.getData(`text/plain`);o&&(n.preventDefault(),_e(e=>e+o),t.focus())};return n.addEventListener(`paste`,i),()=>n.removeEventListener(`paste`,i)},[ve,e.attachments,_e]);async function De(){let e=O.trim();if(!e&&k.length===0||!v||pe||oe.current||y)return;Te(),oe.current=!0,ae(!0);let t=O,n=k;try{await w(e,n)&&(_e(e=>e===t?``:e),A(e=>e===n?(n.forEach(Rs),Ee.current=[],[]):e))}finally{oe.current=!1,ae(!1),requestAnimationFrame(()=>{let e=se.current;if(!e||e.disabled||!F.current)return;let t=e.getRootNode(),n=ic(t)?t.activeElement:null,r=n?.getAttribute(`data-testid`);if(!(n&&n!==e&&r!==Y.composerSend&&r!==Y.composerStop)){if(ac(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 Oe(){let e=O.trim();if(!e&&k.length===0||!v||!he||oe.current||y)return;Te();let t=k;ge(n=>[...n,{id:ut(),text:e,attachments:t}]),_e(``),A(e=>e===t?(Ee.current=[],[]):e),se.current?.focus({preventScroll:!0})}u(()=>{me&&(M.current=!1)},[me]),u(()=>{let e=j[0];if(!e||!f||me||M.current||N||y||!v)return;let t=setTimeout(()=>{M.current=!0,w(e.text,e.attachments,e.id).then(t=>{t?I(e.id):M.current=!1})},300);return()=>clearTimeout(t)},[v,f,y,w,me,j,I,N]);function ke(e){e.key!==`Enter`||e.shiftKey||e.isComposing||(e.preventDefault(),he&&(O.trim()||k.length>0)?Oe():pe?T():De())}function Ae(t){let n=t.target;if(!v||oe.current||y){n.value=``;return}let i=Ls(n.files,k,e.attachments);i.accepted.length>0&&(tc.info(`attach (file picker)`,{count:i.accepted.length,totalBytes:nc(i.accepted)}),r.emit(`attach`,{count:i.accepted.length,totalBytes:nc(i.accepted)}),A(e=>[...e,...i.accepted])),n.value=``}function je(e){!v||oe.current||y||(tc.info(`removeAttachment`,{id:e}),r.emit(`removeAttachment`,{id:e}),A(t=>{let n=t.find(t=>t.id===e);return n&&Rs(n),t.filter(t=>t.id!==e)}))}function Me(){if(re){we();return}if(!v||!ye.isSupported||oe.current||y)return;let e=++le.current;ce.current=performance.now(),tc.info(`voiceStart`),r.emit(`voiceStart`,void 0),ie(!0),n.play(`voiceStart`),ye.start((t,n)=>{le.current===e&&F.current&&!de.current&&!oe.current&&n&&_e(e=>`${e}${t} `)},()=>{le.current===e&&F.current&&(ie(!1),Ce(`debug`))})}let Ne=rc[e.composer.sendButton.icon],Pe=!!(O.trim()||k.length>0),Fe=pe||s&&!Pe;return/* @__PURE__ */ _(`div`,{class:`${ec}-composer`,part:`composer`,"data-testid":Y.composer,children:[j.length>0?/* @__PURE__ */ g(`div`,{class:`${ec}-message-queue`,"aria-label":D.queueMessage,"data-testid":Y.messageQueue,children:j.map(e=>/* @__PURE__ */ _(`div`,{class:`${ec}-attachment-chip ${ec}-queued-message`,"data-testid":`${Y.queuedMessage}-${e.id}`,children:[/* @__PURE__ */ g(`span`,{class:`${ec}-attachment-name ${ec}-queued-text`,children:e.text||e.attachments.map(e=>e.name).join(`, `)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-attachment-remove`,onClick:()=>I(e.id),"aria-label":D.removeQueuedMessage,title:D.removeQueuedMessage,"data-testid":`${Y.queuedMessageRemove}-${e.id}`,children:/* @__PURE__ */ g(Ua,{})})]},e.id))}):null,k.length>0?/* @__PURE__ */ g(`div`,{class:`${ec}-attachments`,children:k.map(e=>/* @__PURE__ */ g(Ks,{attachment:e,onRemove:()=>je(e.id),disabled:fe},e.id))}):null,/* @__PURE__ */ _(`div`,{class:`${ec}-composer-row`,children:[/* @__PURE__ */ _(`div`,{class:`${ec}-composer-actions`,children:[ve?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-icon-btn`,onClick:()=>P.current?.click(),disabled:fe,"aria-label":D.attach,"data-testid":Y.composerAttach,children:/* @__PURE__ */ g(Xa,{})}):null,ye.isSupported?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-icon-btn`,onClick:Me,disabled:fe,"aria-label":re?D.micStop:D.micStart,"aria-pressed":re,"data-recording":re?`true`:void 0,"data-testid":Y.composerVoice,children:/* @__PURE__ */ g(Za,{})}):null]}),/* @__PURE__ */ g(`textarea`,{ref:se,name:`message`,class:`${ec}-textarea`,rows:1,value:O,placeholder:D.composerPlaceholder,onInput:e=>_e(e.currentTarget.value),onKeyDown:ke,disabled:fe,"aria-label":D.composerPlaceholder,"data-testid":Y.composerInput}),he&&Pe?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:Oe,disabled:fe,"aria-label":D.queueMessage,title:D.queueMessage,"data-testid":Y.composerSend,children:/* @__PURE__ */ g(Ne,{})}):null,Fe?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-send`,onClick:T,disabled:fe,"aria-label":D.stop,"data-testid":Y.composerStop,children:/* @__PURE__ */ g(Ya,{})}):null,!Fe&&(!he||!Pe)?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:()=>void De(),disabled:fe||!O.trim()&&k.length===0,"aria-label":D.send,"data-testid":Y.composerSend,children:/* @__PURE__ */ g(Ne,{})}):null,b&&S===`ai-agent`&&C?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ec}-icon-btn`,onClick:C,disabled:fe||!x,"aria-label":D.talkToOperator,title:D.talkToOperator,"data-testid":Y.operatorRequest,children:/* @__PURE__ */ g(So,{})}):null]}),/* @__PURE__ */ g(`input`,{ref:P,name:`attachments`,type:`file`,multiple:!0,accept:e.attachments.accept,onChange:Ae,disabled:fe,class:`${ec}-sr-only`,"data-testid":Y.composerFileInput})]})}const sc=j.cssPrefix;function cc({onClick:e,children:t,testid:n}){return e?/* @__PURE__ */ g(`button`,{type:`button`,class:`${sc}-home-card`,"data-interactive":`true`,onClick:e,"data-testid":n,children:t}):/* @__PURE__ */ g(`div`,{class:`${sc}-home-card`,"data-testid":n,children:t})}function lc(e){return e.trim().split(/\s+/).slice(0,2).map(e=>e.charAt(0).toUpperCase()).join(``)}const uc=j.cssPrefix,dc=L.scope(`news`);function fc(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 pc({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&&(dc.warn(`listContent (news) failed`,{err:t,page:e}),d(e=>({...e,loading:!1,error:ws(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=fc(t.publishedAt,e.locale);return/* @__PURE__ */ _(`button`,{type:`button`,class:`${uc}-news-card`,onClick:()=>i.push({kind:`content`,id:t.id,title:t.title}),"data-testid":Wo(Y.newsItem,t.id),children:[t.image?/* @__PURE__ */ g(`img`,{class:`${uc}-news-hero`,src:t.image,alt:``,loading:`lazy`}):null,/* @__PURE__ */ _(`span`,{class:`${uc}-news-body`,children:[/* @__PURE__ */ g(`span`,{class:`${uc}-news-title`,children:t.title}),n||t.tags?.length?/* @__PURE__ */ _(`span`,{class:`${uc}-news-meta`,children:[n?/* @__PURE__ */ g(`time`,{dateTime:t.publishedAt,children:n}):null,t.tags?.map(e=>/* @__PURE__ */ g(`span`,{class:`${uc}-news-tag`,children:e},e))]}):null,t.description?/* @__PURE__ */ g(`span`,{class:`${uc}-news-summary`,children:t.description}):null]})]},t.id)}function b(){if(!c?.length)return/* @__PURE__ */ g(us,{message:n.newsEmpty,strings:n});let e=l.error?/* @__PURE__ */ g(us,{tone:`error`,message:l.error,onRetry:v,strings:n}):null;return e&&!l.pagination?e:l.pagination?l.items.length?/* @__PURE__ */ _(`div`,{class:`${uc}-news-list`,children:[l.items.map(y),e,l.pagination.hasNext&&!e?/* @__PURE__ */ _(`button`,{type:`button`,class:`${uc}-news-more`,onClick:v,"aria-busy":l.loading,"data-testid":Y.newsMore,children:[l.loading?/* @__PURE__ */ g(`span`,{class:`${uc}-loading-spinner`,"aria-hidden":`true`}):null,n.newsShowMore]}):null]}):/* @__PURE__ */ g(us,{message:n.newsEmpty,strings:n}):/* @__PURE__ */ g(us,{message:n.newsLoading,strings:n})}return/* @__PURE__ */ _(`div`,{class:`${uc}-module`,children:[/* @__PURE__ */ g(es,{title:n.newsTitle,actions:/* @__PURE__ */ g(Ss,{panelProps:o,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${uc}-module-scroll`,children:b()})]})}const mc={Icon:Do,Root:e=>/* @__PURE__ */ g(pc,{...e})},X=j.cssPrefix,hc=L.scope(`home`);function gc(e){let t=e.options.userContext?.name,n=e.config.greetingText?k(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 _c(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 vc({options:e,onAsk:t}){let[n,r]=m(``),{sendButton:i}=e.composer,a=rc[i.icon];function o(e){e.preventDefault();let i=n.trim();i&&(r(``),t(i))}return/* @__PURE__ */ _(`form`,{class:`${X}-home-search ${X}-home-ask`,"data-input":`true`,onSubmit:o,"data-testid":Y.homeAsk,children:[/* @__PURE__ */ g(`input`,{type:`text`,class:`${X}-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:`${X}-send`,"data-shape":i.shape,"data-variant":i.variant,disabled:!n.trim(),"aria-label":e.strings.send,children:/* @__PURE__ */ g(a,{})})]})}function yc(e,t){return ma(e,t,t.type!==`upsert`||t.activity===!0)}function bc(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=>yc(t?[t]:[],e)[0]??null)});return t.listConversations({limit:v?50:1}).then(t=>{if(e)return;let r=i.reduce(yc,t.conversations);i=[],n=!1,l(r[0]??null)}).catch(t=>{e||(i=[],n=!1,hc.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&&hc.warn(`listContent (home) failed`,{err:t})),()=>{e=!0}},[t,p,a]);let y=gc(e),b=r.userAvatars??[],x=r.status,S=x?.text?k(n,x.text):n.homeStatus,C=r.contentBlockTitle?k(n,r.contentBlockTitle):n.homeContentTitle,w=s.item,T=fc(w?.publishedAt,e.options.locale);return/* @__PURE__ */ g(`div`,{class:`${X}-module ${X}-home`,"data-testid":Y.homeView,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-scroll`,children:[/* @__PURE__ */ _(`div`,{class:`${X}-home-hero`,children:[/* @__PURE__ */ _(`div`,{class:`${X}-home-hero-top`,children:[r.brandName?/* @__PURE__ */ g(`span`,{class:`${X}-home-brand`,"data-testid":Y.homeBrand,children:r.brandName}):/* @__PURE__ */ g(`span`,{class:`${X}-home-brand-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ _(`div`,{class:`${X}-home-hero-actions`,children:[b.length>0?/* @__PURE__ */ g(`div`,{class:`${X}-home-avatars`,children:b.map(e=>/* @__PURE__ */ g(`span`,{class:`${X}-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:lc(e.name)})},e.name))}):null,/* @__PURE__ */ g(Ss,{panelProps:o,variant:`plain`})]})]}),r.showGreeting===!1?null:/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`h1`,{class:`${X}-home-greeting`,"data-testid":Y.homeGreeting,children:y.title}),y.subtitle?/* @__PURE__ */ g(`p`,{class:`${X}-home-lead`,children:y.subtitle}):null]})]}),/* @__PURE__ */ _(`div`,{class:`${X}-home-cards`,children:[v?/* @__PURE__ */ g(vc,{options:e.options,onAsk:e=>i.startNewConversation(e)}):null,r.showSearchBar===!1?null:/* @__PURE__ */ g(Es,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout(`help`)}),w?/* @__PURE__ */ g(cc,{onClick:()=>{s.markSeen(w.id),i.push({kind:`content`,id:w.id,title:w.title})},testid:Y.homeWhatsNew,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-recent-row`,"data-unread":s.unseen?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Do,{})}),/* @__PURE__ */ _(`span`,{class:`${X}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-title`,children:n.homeWhatsNew}),/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-preview`,children:T?`${w.title} · ${T}`:w.title})]}),s.unseen?/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-dot`,role:`img`,"aria-label":n.newsUnseen}):null]})}):null,c?/* @__PURE__ */ g(cc,{onClick:()=>i.selectConversation(c),testid:Y.homeRecent,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-recent-row`,"data-unread":c.hasUnread?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Oo,{})}),/* @__PURE__ */ _(`span`,{class:`${X}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-title`,children:c.title}),c.preview?/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-preview`,children:cs(c.preview)}):null]}),c.hasUnread?/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-dot`,"aria-label":`Unread`}):null]})}):null,x?/* @__PURE__ */ g(cc,{onClick:x.url?()=>i.push({kind:`iframe`,url:x.url,title:S}):void 0,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-status`,"data-level":x.level??`operational`,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-status-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(To,{})}),/* @__PURE__ */ g(`span`,{class:`${X}-home-status-text`,children:S})]})}):null,d.length>0?/* @__PURE__ */ _(`section`,{class:`${X}-home-content`,children:[/* @__PURE__ */ g(`div`,{class:`${X}-home-content-title`,children:C}),/* @__PURE__ */ g(`div`,{class:`${X}-home-content-list`,children:d.map(e=>/* @__PURE__ */ g(ks,{title:e.title,subtitle:e.description,onClick:()=>_c(i,e),testid:Wo(Y.homeContentRow,e.id)},e.id))})]}):null]})]})})}const xc={chat:Cs,home:{Icon:Eo,Root:e=>/* @__PURE__ */ g(bc,{...e})},help:Fs,news:mc},Sc=j.cssPrefix;function Cc({modules:e,activeTab:t,strings:n,hasUnread:r,onSelect:i}){return/* @__PURE__ */ g(`nav`,{class:`${Sc}-tabbar`,role:`tablist`,"aria-label":n.panelTitle,children:e.map(e=>{let a=xc[e.layout].Icon,o=e.id===t,s=e.layout===`chat`&&r;return/* @__PURE__ */ _(`button`,{type:`button`,role:`tab`,"aria-selected":o,class:`${Sc}-tab`,onClick:()=>i(e.id),"data-testid":Wo(Y.tab,e.id),children:[/* @__PURE__ */ _(`span`,{class:`${Sc}-tab-icon`,"aria-hidden":`true`,children:[/* @__PURE__ */ g(a,{}),s?/* @__PURE__ */ g(`span`,{class:`${Sc}-tab-badge`,"data-testid":Y.tabBadge,"aria-label":`Unread`}):null]}),/* @__PURE__ */ g(`span`,{class:`${Sc}-tab-label`,children:k(n,e.label)})]},e.id)})})}const wc=j.cssPrefix;function Tc({url:e,title:t,strings:n,onBack:r,actions:i}){return/* @__PURE__ */ _(`div`,{class:`${wc}-module`,children:[/* @__PURE__ */ g(ts,{title:t||n.moduleBack,backLabel:n.moduleBack,onBack:r,actions:i}),/* @__PURE__ */ g(`iframe`,{class:`${wc}-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 Ec=j.cssPrefix;function Dc({agent:e,strings:t}){let n=e.status??`online`,r=k(t,e.name),i=e.title?k(t,e.title):null;return/* @__PURE__ */ _(`div`,{class:`${Ec}-agent`,children:[/* @__PURE__ */ g(`div`,{class:`${Ec}-agent-avatar`,"data-status":n,children:e.avatar?/* @__PURE__ */ g(`img`,{src:e.avatar,alt:``}):/* @__PURE__ */ g(`span`,{children:lc(r)})}),/* @__PURE__ */ _(`div`,{class:`${Ec}-agent-meta`,children:[/* @__PURE__ */ g(`strong`,{children:r}),i?/* @__PURE__ */ g(`span`,{children:i}):null]})]})}const Oc=[`today`,`yesterday`,`lastWeek`,`older`];function kc(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return`older`;let r=Math.floor((jc(e)-jc(n))/864e5);return r<=0?`today`:r===1?`yesterday`:r<7?`lastWeek`:`older`}function Ac(e,t){let n=/* @__PURE__ */ new Map;for(let r of t){let t=kc(e,r.lastMessageAt),i=n.get(t);i?i.push(r):n.set(t,[r])}return Oc.filter(e=>n.has(e)).map(e=>({bucket:e,conversations:n.get(e)}))}function jc(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}const Mc=L.scope(`history`),Nc={today:`dateToday`,yesterday:`dateYesterday`,lastWeek:`dateLastWeek`,older:`dateOlder`};function Pc(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=ma(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=ma(e.conversations,t,n);return r===e.conversations?e:{...t.type===`snapshot`?t.result:e,conversations:r}}function Fc(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 Ic({transport:e,strings:t,locale:n,persistence:r,onSelect:i,onNewConversation:a}){let o=j.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&&Pc(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=Pc(a,e);i=[],n=!1,f(a),l(`loaded`),r.saveHistoryCount(a.conversations.length)}).catch(e=>{t||(i=[],n=!1,Mc.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;Mc.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":Y.sidebarNewConversation,children:[/* @__PURE__ */ g(Wa,{}),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=Ac(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[Nc[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":Wo(Y.historyItem,e.conversationId),children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(vo,{})}),/* @__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:Fc(e.lastMessageAt,T,n)})]}),/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-preview`,children:e.preview&&cs(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":Y.historyLoadMore,children:t.loadMoreConversations})}):null]}),w]})}const Lc=j.cssPrefix;function Rc({visible:e,strings:t}){return e?/* @__PURE__ */ g(`div`,{class:`${Lc}-dropzone`,role:`status`,"aria-live":`polite`,children:t.dropZone}):null}const zc=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,Bc=/^https?:\/\/[^\s.]+\.[^\s]+$/i,Vc=/^[+]?[\d\s().-]{6,}$/;function Hc(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>String(t[n]??`{${n}}`))}function Uc(e){return Array.isArray(e)?e.length:+!!e?.trim()}function Wc(e,t,n){let r=e.required??!0,i=e.validation;if(e.type===`multiselect`){let e=Uc(t);return r&&e===0?n.formRequired:e===0?void 0:i?.minSelections!=null&&e<i.minSelections?Hc(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&e>i.maxSelections?Hc(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(!zc.test(a))return n.formInvalidEmail;break;case`url`:if(!Bc.test(a))return n.formInvalidUrl;break;case`tel`:if(!Vc.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 Hc(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&e>i.max)return Hc(n.formNumberTooLarge,{max:i.max});break}}if(i?.minLength!=null&&a.length<i.minLength)return Hc(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return Hc(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function Gc(e,t,n){let r={};for(let i of e){let e=Wc(i,t[i.name],n);e&&(r[i.name]=e)}return r}function Kc(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 Z=j.cssPrefix,qc=`__other__`;function Jc({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(()=>({...Qc(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=$c(e,v,b),a=Gc(e,i,t);Object.keys(a).length>0?C(a):r(Kc(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:`${Z}-form`,onSubmit:D,onKeyDown:O,"data-testid":f,noValidate:!0,children:[e.map(e=>/* @__PURE__ */ g(Yc,{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:`${Z}-form-actions`,children:[o?/* @__PURE__ */ g(`span`,{class:`${Z}-form-hint`,children:o}):null,i&&a?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Z}-form-skip`,onClick:a,disabled:c,"data-testid":h,children:i}):null,/* @__PURE__ */ g(`button`,{type:`submit`,class:`${Z}-form-submit`,disabled:c,"data-testid":p,children:n})]})]})}function Yc({field:e,value:t,otherText:n,error:r,disabled:i,typeLabel:a,strings:o,onChange:s,onOtherChange:c}){let l=Xc({field:e,value:t,otherText:n,disabled:i,strings:o,onChange:s,onOtherChange:c,fieldTid:Wo(Y.formField,e.name)});return/* @__PURE__ */ _(`label`,{class:`${Z}-field`,"data-field":e.name,"data-invalid":r?`true`:void 0,children:[/* @__PURE__ */ _(`span`,{class:`${Z}-field-head`,children:[/* @__PURE__ */ _(`span`,{class:`${Z}-field-label`,children:[e.label,e.required??!0?/* @__PURE__ */ g(`span`,{class:`${Z}-field-req`,"aria-hidden":`true`,children:` *`}):null]}),a?/* @__PURE__ */ g(`span`,{class:`${Z}-field-type`,children:a}):null]}),l,e.validationHint&&!r?/* @__PURE__ */ g(`span`,{class:`${Z}-field-hint`,children:e.validationHint}):null,r?/* @__PURE__ */ g(`span`,{class:`${Z}-field-error`,role:`alert`,children:r}):null]})}function Xc(e){let{field:t,value:n,otherText:r,disabled:i,strings:a,onChange:o,onOtherChange:s,fieldTid:c}=e,l=typeof n==`string`?n:``,u=t.type===`select`?a.formOtherPlaceholder:t.placeholder??a.formOtherPlaceholder,d=t.allowOther&&l===qc?/* @__PURE__ */ g(`input`,{class:`${Z}-field-input`,value:r,placeholder:u,disabled:i,onInput:e=>s(e.currentTarget.value)}):null;switch(t.type){case`textarea`:return/* @__PURE__ */ g(`textarea`,{class:`${Z}-field-input`,rows:3,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c});case`select`:return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`select`,{class:`${Z}-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)),t.allowOther?/* @__PURE__ */ g(`option`,{value:qc,children:a.formOther}):null]}),d]});case`radio`:return/* @__PURE__ */ _(`div`,{class:`${Z}-field-choices`,role:`radiogroup`,"data-testid":c,children:[(t.options??[]).map(e=>/* @__PURE__ */ _(`label`,{class:`${Z}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${Z}-${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:`${Z}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${Z}-${t.name}`,checked:l===qc,disabled:i,onChange:()=>o(qc)}),/* @__PURE__ */ g(`span`,{children:a.formOther})]}):null,d]});case`checkbox`:return/* @__PURE__ */ _(`label`,{class:`${Z}-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:`${Z}-field-choices`,"data-testid":c,children:[(t.options??[]).map(t=>/* @__PURE__ */ _(`label`,{class:`${Z}-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:`${Z}-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`,{...Zc(t.type),class:`${Z}-field-input`,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c})}}function Zc(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 Qc(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 $c(e,t,n){let r={...t};for(let i of e){let e=n[i.name]?.trim();if((i.type===`radio`||i.type===`select`)&&i.allowOther&&t[i.name]===qc)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 el=j.cssPrefix;function tl({form:e,strings:t,onSubmit:n,onSkip:r}){return/* @__PURE__ */ _(`div`,{class:`${el}-form-gate`,"data-testid":Y.formGate,children:[e.title?/* @__PURE__ */ g(`h3`,{class:`${el}-form-gate-title`,children:e.title}):null,e.description?/* @__PURE__ */ g(`p`,{class:`${el}-form-gate-desc`,children:e.description}):null,/* @__PURE__ */ g(Jc,{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:Y.formSubmit,skipTestId:Y.formSkip})]})}function nl({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:`${el}-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:`${el}-form-done`,"data-outcome":e.outcome,"data-testid":Y.formDone,children:[/* @__PURE__ */ _(`summary`,{class:`${el}-form-done-summary`,"data-testid":Y.formDoneToggle,children:[/* @__PURE__ */ g(lo,{}),a,/* @__PURE__ */ g(Ja,{})]}),/* @__PURE__ */ g(`dl`,{class:`${el}-form-answers`,"data-testid":Y.formAnswers,children:Object.entries(s).map(([e,n])=>/* @__PURE__ */ _(`div`,{class:`${el}-form-answer`,children:[/* @__PURE__ */ g(`dt`,{children:t(e)}),/* @__PURE__ */ g(`dd`,{children:n})]},e))})]})}return/* @__PURE__ */ _(`div`,{class:`${el}-form-done`,"data-outcome":e.outcome,"data-testid":Y.formDone,role:`status`,children:[g(r?co:lo,{}),a,r&&e.form?.reopenable&&n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${el}-form-done-fill`,"data-testid":Y.formFill,onClick:n,children:t.formFillOut}):null]})}const rl=j.cssPrefix;function il({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:`${rl}-feedback`,role:`group`,"data-testid":Y.messageFeedback,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${rl}-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":Y.feedbackUp,children:/* @__PURE__ */ g(Lo,{})}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${rl}-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":Y.feedbackDown,children:/* @__PURE__ */ g(Ro,{})}),/* @__PURE__ */ g(`span`,{class:`${rl}-sr-only`,role:`status`,"aria-live":`polite`,children:i?n.feedbackThanks:``})]})}const al=/* @__PURE__ */ new Set([`hidden`,`submit`,`button`,`reset`,`image`,`file`,`password`]);function ol(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement}function sl(e){return!ol(e)||e.name===``||e.disabled?!1:!(e instanceof HTMLInputElement&&al.has(e.type))}function cl(e){let t=e.labels?.[0]?.textContent?.trim();return e.getAttribute(`toolparamdescription`)??(t||e.getAttribute(`aria-description`))??void 0}function ll(e,t){let n=cl(e),r=n?{description:n}:{};return e instanceof HTMLSelectElement?{...r,type:`string`,enum:[...e.options].map(e=>e.value)}:e instanceof HTMLTextAreaElement?{...r,type:`string`}:e.type===`checkbox`?{...r,type:`boolean`}:e.type===`radio`?{...r,type:`string`,enum:t}:e.type===`number`||e.type===`range`?{...r,type:`number`}:{...r,type:`string`}}function ul(e,t){Object.getOwnPropertyDescriptor(Reflect.getPrototypeOf(e)??e,`value`)?.set?.call(e,t),e.dispatchEvent(new Event(`input`,{bubbles:!0})),e.dispatchEvent(new Event(`change`,{bubbles:!0}))}function dl(e){return e==null?``:typeof e==`string`?e:JSON.stringify(e)}function fl(e,t){e instanceof HTMLInputElement&&e.type===`checkbox`?e.checked!==(t===!0||t===`true`)&&e.click():e instanceof HTMLInputElement&&e.type===`radio`?e.value===dl(t)&&!e.checked&&e.click():ul(e,dl(t))}function pl(e,t,n){let r=[...e.elements].filter(sl),i={},a=/* @__PURE__ */ new Set;for(let e of r){var o;let t=r.flatMap(t=>t instanceof HTMLInputElement&&t.type===`radio`&&t.name===e.name?[t.value]:[]);i[o=e.name]??(i[o]=ll(e,t)),e.required&&a.add(e.name)}return{name:t,description:n,inputSchema:{type:`object`,properties:i,...a.size>0?{required:[...a]}:{}},execute(t){let n=typeof t==`object`&&t?Object.entries(t):[];for(let[e,t]of n)for(let n of r)n.name===e&&fl(n,t);if(!e.hasAttribute(`toolautosubmit`))return`Filled in the form. The visitor still needs to check it and press its submit button.`;let i=[...new Set([...e.elements].flatMap(e=>ol(e)&&e.name&&!e.checkValidity()?[e.name]:[]))];return i.length>0?`Filled in the form, but it can't be submitted yet: ${i.join(`, `)} still needs the visitor. Ask them to complete it and press the submit button.`:(setTimeout(()=>e.requestSubmit(),0),`Filled in the form and submitted it.`)}}}function ml(){return[...document.querySelectorAll(`form[toolname][tooldescription]`)].flatMap(e=>{let t=e.getAttribute(`toolname`)?.trim()??``,n=e.getAttribute(`tooldescription`)?.trim()??``;return t&&n?[pl(e,t,n)]:[]})}const hl=`${j.cssPrefix}.page-tools`;function gl(e){return typeof e==`object`&&!!e}function _l(e){return gl(e)&&(e.state===`running`||e.state===`stopped`||e.state===`finished`&&gl(e.outcome))}function vl(e){let t=e?JSON.parse(e):void 0;return gl(t)?{sent:Array.isArray(t.sent)?t.sent.filter(e=>typeof e==`string`):[],calls:Object.fromEntries(Object.entries(gl(t.calls)?t.calls:{}).filter(e=>_l(e[1])))}:{sent:[],calls:{}}}let yl={sent:[],calls:{}};function bl(){try{yl=vl(sessionStorage.getItem(hl))}catch{}return yl}function xl(e){yl=e;try{sessionStorage.setItem(hl,JSON.stringify(e))}catch{}}const Sl={markSent(e){let t=bl();xl({...t,sent:[...t.sent.filter(t=>t!==e),e].slice(-20)})},sentHere(e){return bl().sent.includes(e)},get(e){return bl().calls[e]},set(e,t){let n=bl(),r=Object.entries(n.calls).filter(([t])=>t!==e);xl({...n,calls:Object.fromEntries([...r,[e,t]].slice(-50))})},clear(e){let t=bl();e.some(e=>e in t.calls)&&xl({...t,calls:Object.fromEntries(Object.entries(t.calls).filter(([t])=>!e.includes(t)))})}},Cl=L.scope(`page-tools`),wl=3e4,Tl=Symbol.for(`${j.cssPrefix}.page-tools`),El={state:`output-error`,errorText:`The page reloaded before this finished, so it may or may not have taken effect. Check with the visitor before trying it again.`},Dl=`The visitor stopped this before it finished.`;function Ol(e){return typeof e==`object`&&!!e}function kl(e){return Ol(e)&&Array.isArray(e.registered)&&e.runs instanceof Map}function Al(){let e=Reflect.get(globalThis,Tl);if(kl(e))return e;let t={registered:[],runs:/* @__PURE__ */ new Map};return Reflect.set(globalThis,Tl,t),t}function jl(e,t){let n=Ol(t)&&t.signal instanceof AbortSignal?t.signal:void 0;if(n?.aborted)return;let r=Al().registered;r.push(e);function i(){let t=r.indexOf(e);t>=0&&r.splice(t,1)}n?.addEventListener(`abort`,i,{once:!0})}function Ml(e){return e.replace(/[^A-Za-z0-9_-]/g,`_`).slice(0,58)}function Nl(e){if(!Ol(e)||typeof e.name!=`string`||!Ml(e.name))return;let t=[e.description,e.title].find(e=>typeof e==`string`&&e.trim()!==``)??e.name;return{name:Ml(e.name),description:t.trim().slice(0,1024),inputSchema:{properties:{},...Ol(e.inputSchema)?e.inputSchema:{},type:`object`},consequential:Ol(e.annotations)&&e.annotations.consequentialHint===!0}}function Pl(e){return e.flatMap(e=>{let t=Nl(e),n=Ol(e)?e.execute:void 0;return!t||typeof n!=`function`?(Cl.warn(`skipped a tool without a name or an execute function`,e),[]):[{...t,run:(t,r)=>Reflect.apply(n,e,[t,{signal:r}])}]})}async function Fl(){let e=Reflect.get(document,`modelContext`)??Reflect.get(navigator,`modelContext`);if(!Ol(e)||typeof e.getTools!=`function`||typeof e.executeTool!=`function`)return[];let t=e.getTools,n=e.executeTool,r=await Promise.race([Promise.resolve().then(()=>Reflect.apply(t,e,[])),$i(1e3).then(()=>[])]).catch(()=>[]);return(Array.isArray(r)?r:[]).flatMap(t=>{let r=Nl(t);return r?[{...r,run:(r,i)=>Reflect.apply(n,e,[t,r,{signal:i}])}]:[]})}async function Il(e=[]){let t=Pl(ml()),n=new Set(t.map(e=>e.name)),r=[...(await Fl()).filter(e=>!n.has(e.name)),...t,...Pl(e),...Pl(Al().registered)];return new Map(r.map(e=>[e.name,e]))}function Ll(e){return[...e.values()].map(({name:e,description:t,inputSchema:n,consequential:r})=>r?{name:e,description:t,inputSchema:n,annotations:{consequentialHint:!0}}:{name:e,description:t,inputSchema:n})}function Rl(e){return e?.execution===`client`}function zl(e){return e.startsWith(`site__`)?e.slice(6):e}function Bl(e){if(e===void 0||typeof e==`function`||typeof e==`symbol`)return null;let t=/* @__PURE__ */ new WeakSet,n=JSON.stringify(e,(e,n)=>{if(typeof n==`bigint`)return n.toString();if(typeof n!=`function`&&typeof n!=`symbol`)return n instanceof Node?`[${n.nodeName.toLowerCase()}]`:Ol(n)?t.has(n)?`[circular]`:(t.add(n),n):n});return n.length>wl?{truncated:!0,preview:n.slice(0,wl)}:JSON.parse(n)}async function Vl(e){let t=zl(e.toolName),n=(await Il(e.optionTools)).get(t);return n?Promise.resolve().then(()=>n.run(e.input,e.signal)).then(e=>({state:`output-available`,output:Bl(e)})).catch(e=>(Cl.warn(`a page tool failed`,{name:t,error:e}),{state:`output-error`,errorText:(e instanceof Error?e.message:String(e)).slice(0,1e3)||`The page tool failed.`})):{state:`output-error`,errorText:`This page doesn't offer "${t}" right now; the visitor may have moved on. Tell them, or continue without it.`}}function Hl(e){let{toolCallId:t}=e,n=Sl.get(t);if(n?.state===`finished`)return Promise.resolve(n.outcome);let{runs:r}=Al(),i=r.get(t);if(i)return i.outcome;if(n?.state===`running`)return Sl.set(t,{state:`finished`,outcome:El}),e.onSettled(`interrupted`,0),Promise.resolve(El);let a=new AbortController,o=performance.now();Sl.set(t,{state:`running`});let s=Vl({...e,signal:a.signal}).then(n=>(r.delete(t),Sl.get(t)?.state===`running`&&(Sl.set(t,{state:`finished`,outcome:n}),e.onSettled(n.state===`output-available`?`completed`:`failed`,Math.round(performance.now()-o))),n));return r.set(t,{outcome:s,controller:a}),s}function Ul(e){return e===El.errorText||e===Dl}function Wl(e){return Sl.set(e,{state:`stopped`}),Al().runs.get(e)?.controller.abort(),Dl}function Gl(e){Sl.clear([e]),Al().runs.get(e)?.controller.abort()}const Kl=j.cssPrefix;function ql(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 Jl(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?`${ql(e.slice(0,t))} · ${ql(n)}`:e}function Yl(e){let t=e.indexOf(`__`),n=e.slice(t+2);return t>0&&n?ql(n):Jl(e)}function Xl(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 Zl({status:e,icon:t,label:n}){return/* @__PURE__ */ _(`span`,{class:`${Kl}-toolui-badge ${Kl}-toolui-status`,"data-status":e,children:[/* @__PURE__ */ g(`span`,{class:`${Kl}-toolui-status-icon`,children:t}),n]})}function Ql(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 $l(e,t,n={}){return n.submitted?`responded`:n.incomplete?`incomplete`:nu(Ql(e,t),n.superseded,n.live??!0)}function eu({status:e}){return g(e===`denied`||e===`error`||e===`superseded`||e===`incomplete`?Ho:e===`completed`||e===`responded`?Vo:Bo,{})}function tu(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;case`incomplete`:return t.statusIncomplete;default:return t.statusRunning}}function nu(e,t,n){return t&&(e===`awaiting`||e===`running`)?`superseded`:!n&&e===`running`?`error`:e}function ru({state:e,approval:t,strings:n,superseded:r,live:i=!0,submitted:a=!1,incomplete:o=!1}){let s=$l(e,t,{superseded:r,live:i,submitted:a,incomplete:o});return/* @__PURE__ */ g(Zl,{status:s,icon:/* @__PURE__ */ g(eu,{status:s}),label:tu(s,n)})}function iu({name:e,state:t,approval:n,strings:r,superseded:i,live:a,submitted:o,incomplete:s}){return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`span`,{class:`${Kl}-toolui-name-pill`,children:[/* @__PURE__ */ g(zo,{}),/* @__PURE__ */ g(`span`,{class:`${Kl}-toolui-name-text`,children:e})]}),/* @__PURE__ */ g(ru,{state:t,approval:n,strings:r,superseded:i,live:a,submitted:o,incomplete:s}),/* @__PURE__ */ g(`span`,{class:`${Kl}-toolui-chevron`,children:/* @__PURE__ */ g(ho,{})})]})}function au({part:e,strings:t,testid:n,superseded:r,live:a,submitted:o,incomplete:s}){let c=f(()=>i(()=>e.inputSig.value),[e]),l=f(()=>i(()=>e.outputSig.value),[e]),u=f(()=>i(()=>e.errorSig.value),[e]),d=f(()=>i(()=>e.stateSig.value),[e]),p=f(()=>i(()=>e.approvalSig.value),[e]),m=f(()=>i(()=>Rl(e.toolMetadata)&&Ul(e.errorSig.value)),[e]),h=s===!0||m.value;return/* @__PURE__ */ _(`details`,{class:`${Kl}-toolui ${Kl}-toolui-collapsible`,"data-testid":n,children:[/* @__PURE__ */ g(`summary`,{class:`${Kl}-toolui-head`,children:/* @__PURE__ */ g(iu,{name:Jl(e.toolName),state:d.value,approval:p.value,strings:t,superseded:r,live:a,submitted:o,incomplete:h})}),/* @__PURE__ */ g(ou,{label:t.toolParameters,value:c.value}),l.value===void 0?null:/* @__PURE__ */ g(ou,{label:t.toolResult,value:l.value}),u.value&&!h?/* @__PURE__ */ g(ou,{label:t.statusError,value:u.value,error:!0}):null]})}function ou({label:e,value:t,error:n}){let r=n?typeof t==`string`?t:``:lu(cu(t));return r?/* @__PURE__ */ _(`div`,{class:`${Kl}-toolui-section`,children:[/* @__PURE__ */ g(`span`,{class:`${Kl}-toolui-label`,children:e}),/* @__PURE__ */ g(`pre`,{class:`${Kl}-toolui-code`,"data-error":n?`true`:void 0,children:r})]}):null}function su(e){return!!lu(e.inputSig.value)||!!e.errorSig.value||!!lu(cu(e.outputSig.value))}function cu(e){if(e&&typeof e==`object`){let t=e;if(t.storage===`tool-result-ref`&&`summary`in t)return t.summary}return e}function lu(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 uu(e){return e.partsSig.value.some(e=>e.kind===`text`&&e.textSig.value.length>0)}function du(e){return e.partsSig.value.some(e=>e.kind===`reasoning`)}function fu(e){return e.streaming&&!e.bufferedHold&&!(e.reasoningVisible&&e.working)}function pu(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:fu({streaming:t,bufferedHold:a,reasoningVisible:n,working:o}),emptyReply:r,hidden:i}}function mu(e,t){let n=e.stateSig.value,r=e.approvalSig.value,{terminal:i,responded:a,decided:o}=Xl(n,r),s=t.continuationStreaming===!0&&!o,c=t.superseded&&!o&&!s;return{pill:$l(n,r,{superseded:c,live:t.live,submitted:s,incomplete:Rl(e.toolMetadata)&&Ul(e.errorSig.value)}),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 hu=j.cssPrefix;function gu({part:e,strings:t}){let n=e.title||e.filename||e.url||t.sources;return e.url?/* @__PURE__ */ _(`a`,{class:`${hu}-source`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,"data-testid":Y.source,children:[/* @__PURE__ */ g(`span`,{class:`${hu}-source-icon`,"aria-hidden":`true`,children:`🔗`}),/* @__PURE__ */ g(`span`,{class:`${hu}-source-label`,children:n})]}):/* @__PURE__ */ _(`span`,{class:`${hu}-source`,"data-testid":Y.source,children:[/* @__PURE__ */ g(`span`,{class:`${hu}-source-icon`,"aria-hidden":`true`,children:`📄`}),/* @__PURE__ */ g(`span`,{class:`${hu}-source-label`,children:n})]})}const _u=j.cssPrefix;function vu({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(()=>mu(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=Jl(e.toolName),x=l.answeredApproved,S=e.toolCallId,C=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`p`,{class:`${_u}-toolui-prompt`,children:t.approvalPrompt.replace(`{tool}`,b)}),/* @__PURE__ */ g(`p`,{class:`${_u}-toolui-subtle`,children:t.approvalBody})]});m?C=/* @__PURE__ */ g(`p`,{class:`${_u}-toolui-subtle`,children:t.approvalSubmitting}):p&&x!==!1?C=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`p`,{class:`${_u}-toolui-prompt`,children:[t.approvalYourResponse.replace(`{decision}`,x?t.approve:t.reject),c.value?.reason?` — ${c.value.reason}`:``]}),v?/* @__PURE__ */ g(`p`,{class:`${_u}-toolui-subtle`,children:t.approvalEditHint}):null,v?null:/* @__PURE__ */ g(`p`,{class:`${_u}-toolui-subtle`,children:t.approvalSubmitting})]}):p&&(C=/* @__PURE__ */ g(h,{}));let w=d||m||v||p&&x!==!1;return/* @__PURE__ */ _(`div`,{class:`${_u}-toolui-group`,"data-testid":l.decided?Y.toolDecision:Y.toolApproval,children:[/* @__PURE__ */ g(au,{part:e,strings:t,superseded:y,submitted:m}),y||u||!w?null:/* @__PURE__ */ _(`div`,{class:`${_u}-toolui ${_u}-toolui-body`,children:[C,d?/* @__PURE__ */ _(`div`,{class:`${_u}-toolui-actions`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${_u}-form-skip`,disabled:!n,onClick:()=>o(S,!1),"data-testid":Y.toolReject,children:t.reject}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${_u}-form-submit`,disabled:!n,onClick:()=>o(S,!0),"data-testid":Y.toolApprove,children:t.approve})]}):null,v?/* @__PURE__ */ g(`div`,{class:`${_u}-toolui-actions`,children:/* @__PURE__ */ g(`button`,{type:`button`,class:`${_u}-form-skip`,onClick:()=>s(S),"data-testid":Y.toolEdit,children:t.edit})}):null]})]})}const yu=[`text`,`email`,`phone`,`number`,`date`,`single-select`,`multi-select`,`boolean`];function bu(e){return typeof e==`object`&&!!e}function xu(e){let t=bu(e)?e:{},n=(Array.isArray(t.questions)?t.questions:[]).map(Su).filter(e=>e!==null);return{intro:Tu(t.intro),questions:n}}function Su(e,t){if(!bu(e))return null;let n=yu.find(t=>t===e.type)??`text`;return{key:Tu(e.key)??`q${t+1}`,question:Tu(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:Tu(e.helpText)}}function Cu(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 wu(e,t,n){return e.questions.map(e=>{let r=Cu(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 Tu(e){return typeof e==`string`&&e.trim()?e.trim():void 0}const Eu=j.cssPrefix;function Du({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 Ou={text:`qtypeText`,email:`qtypeEmail`,phone:`qtypePhone`,number:`qtypeNumber`,date:`qtypeDate`,"single-select":`qtypeChooseOne`,"multi-select":`qtypeChooseAny`,boolean:`qtypeBoolean`};function ku(e,t){let n={};for(let r of e)n[r.key]=t[Ou[r.type]];return n}function Au({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(()=>xu(e.inputSig.value)),[e]).value,{terminal:d,decided:p}=Xl(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?Ha:yo,ee=y?t.inputRequired:t.inputBadge,k=v?/* @__PURE__ */ g(`p`,{class:`${Eu}-toolui-subtle`,children:t.approvalSubmitting}):y?/* @__PURE__ */ g(ju,{req:u,strings:t,active:n,resolve:(t,n)=>o(e.toolCallId,n,t)}):E?/* @__PURE__ */ g(Jc,{fields:wu(u,t.confirmYes,t.confirmNo),strings:t,submitLabel:t.inputSubmit,onSubmit:()=>{},disabled:!0,hideActions:!0,fieldTypeLabels:ku(S,t),initialValues:h?Lu(S,l?.reason):void 0}):/* @__PURE__ */ g(Mu,{questions:S,answers:h?Iu(l?.reason):{},strings:t}),{status:A,statusLabel:j}=Du({skipped:b,submitted:v,strings:t});return/* @__PURE__ */ _(`details`,{class:`${Eu}-toolui ${Eu}-toolui-collapsible${r?` ${Eu}-toolui-stale`:``}`,open:T,onToggle:e=>{let t=e.currentTarget.open;t!==T&&w(t)},"data-testid":y?Y.toolAskQuestions:Y.toolDecision,children:[/* @__PURE__ */ _(`summary`,{class:`${Eu}-toolui-head`,children:[/* @__PURE__ */ _(`span`,{class:`${Eu}-toolui-q-pill`,children:[/* @__PURE__ */ g(O,{}),ee]}),/* @__PURE__ */ _(`span`,{class:`${Eu}-toolui-head-end`,children:[y?null:/* @__PURE__ */ g(Zl,{status:A,icon:g(b?Ho:Vo,{}),label:j}),/* @__PURE__ */ g(`span`,{class:`${Eu}-toolui-chevron`,children:/* @__PURE__ */ g(ho,{})})]})]}),/* @__PURE__ */ _(`div`,{class:`${Eu}-toolui-collapse-body`,children:[u.intro?/* @__PURE__ */ g(`div`,{class:`${Eu}-toolui-desc`,children:u.intro}):null,k,y||v?null:/* @__PURE__ */ _(`div`,{class:`${Eu}-toolui-footer`,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${Eu}-toolui-options-toggle`,onClick:()=>D(e=>!e),"data-testid":Y.toolAskOptions,children:[/* @__PURE__ */ g(`span`,{class:`${Eu}-toolui-options-chevron${E?` ${Eu}-open`:``}`,children:/* @__PURE__ */ g(ho,{})}),E?t.hideOptions:t.showOptions]}),x?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Eu}-form-skip`,onClick:()=>s(e.toolCallId),"data-testid":Y.toolEdit,children:t.edit}):null]})]})]})}function ju({req:e,strings:t,active:n,resolve:r}){let i=wu(e,t.confirmYes,t.confirmNo),a=e.questions.length===1&&e.questions[0]?.type===`text`;return/* @__PURE__ */ g(Jc,{fields:i,strings:t,disabled:!n,submitLabel:t.inputSubmit,footerHint:a?t.inputSubmitHint:void 0,onSubmit:t=>r(Pu(e.questions,t),!0),skipLabel:t.inputSkip,onSkip:()=>r(void 0,!1),submitOnEnter:a,fieldTypeLabels:ku(e.questions,t),submitTestId:Y.toolInputSubmit,skipTestId:Y.toolInputSkip})}function Mu({questions:e,answers:t,strings:n}){return/* @__PURE__ */ g(`div`,{class:`${Eu}-toolui-summary`,"data-testid":Y.toolAskSummary,children:e.map(e=>/* @__PURE__ */ _(`div`,{class:`${Eu}-field`,children:[/* @__PURE__ */ g(`span`,{class:`${Eu}-field-head`,children:/* @__PURE__ */ _(`span`,{class:`${Eu}-field-label`,children:[e.question,e.required?/* @__PURE__ */ g(`span`,{class:`${Eu}-field-req`,"aria-hidden":`true`,children:` *`}):null]})}),/* @__PURE__ */ g(`p`,{class:`${Eu}-toolui-answer`,children:Nu(e,t[e.key],n)||`—`})]},e.key))})}function Nu(e,t,n){return e.type===`boolean`?t===`yes`?n.confirmYes:t===`no`?n.confirmNo:t??``:t??``}function Pu(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 Fu(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 Iu(e){let t=Fu(e),n={};for(let[e,r]of Object.entries(t))n[e]=Array.isArray(r)?r.join(`, `):r;return n}function Lu(e,t){let n=Fu(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 Ru({part:e,strings:t,live:n,superseded:r}){let a=Rl(e.toolMetadata);if(!f(()=>i(()=>su(e)),[e]).value&&!a)return null;let o=e.outputSig.value===void 0&&!e.errorSig.value;return/* @__PURE__ */ g(au,{part:e,strings:t,testid:Y.toolCall,live:n||a&&!r,incomplete:a&&r&&o})}const Q=j.cssPrefix;function zu(e){return e.kind===`tool`&&e.approvalSig.value===void 0&&!e.toolMetadata?.card&&!Rl(e.toolMetadata)}function Bu(e,t){let n=[];for(let[r,i]of e.entries()){let e=n.at(-1);i.kind===`reasoning`&&t.showReasoning||zu(i)&&su(i)?e?.kind===`steps`?(e.parts.push(i),e.indices.push(r)):n.push({kind:`steps`,parts:[i],indices:[r]}):i.kind===`step-start`||i.kind===`reasoning`||i.kind===`source`&&!t.showSources||zu(i)||n.push({kind:`part`,part:i,index:r})}return n}function Vu(e){if(e&&typeof e==`object`)return Object.values(e).find(e=>typeof e==`string`&&e.trim().length>0)?.trim()}function Hu({parts:e,strings:t,live:n,running:r}){let[i,a]=m(!1),o=e.filter(e=>e.kind===`tool`),s=o.filter(e=>$l(e.stateSig.value,e.approvalSig.value,{live:n})===`error`).length,c=/* @__PURE__ */ new Map;for(let e of o)c.set(Yl(e.toolName),(c.get(Yl(e.toolName))??0)+1);let l=e.at(-1),u=l?.kind===`tool`?`${Yl(l.toolName)}…`:t.thinking;return/* @__PURE__ */ _(`div`,{class:`${Q}-steps`,"data-testid":Y.toolSteps,"data-running":r?`true`:void 0,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${Q}-steps-head`,"aria-expanded":i,onClick:()=>a(!i),children:[/* @__PURE__ */ g(`span`,{class:`${Q}-steps-icon`,"aria-hidden":`true`,children:r?/* @__PURE__ */ g(`span`,{class:`${Q}-loading-spinner`}):/* @__PURE__ */ g(zo,{})}),/* @__PURE__ */ g(`span`,{class:`${Q}-steps-label`,children:r?u:[...c].map(([e,t],n)=>/* @__PURE__ */ _(`span`,{class:`${Q}-steps-name`,children:[n>0?/* @__PURE__ */ g(`span`,{"aria-hidden":`true`,children:`·`}):null,/* @__PURE__ */ g(`span`,{class:`${Q}-steps-name-text`,children:e}),t>1?/* @__PURE__ */ _(`span`,{class:`${Q}-steps-count`,children:[`×`,t]}):null]},e))}),!r&&s>0?/* @__PURE__ */ g(`span`,{class:`${Q}-steps-failed`,children:t.toolStepsFailed.replace(`{count}`,String(s))}):null,/* @__PURE__ */ g(`span`,{class:`${Q}-toolui-chevron`,"data-open":i?`true`:void 0,children:/* @__PURE__ */ g(ho,{})})]}),/* @__PURE__ */ g(`span`,{class:`${Q}-sr-only`,role:`status`,children:r?u:``}),i?/* @__PURE__ */ g(`ol`,{class:`${Q}-steps-list`,children:e.map((e,r)=>e.kind===`tool`?/* @__PURE__ */ g(Uu,{part:e,strings:t,live:n},e.toolCallId):/* @__PURE__ */ g(Gu,{part:e,strings:t},`${e.id}#${r}`))}):null]})}function Uu({part:e,strings:t,live:n}){let[r,i]=m(!1),a=$l(e.stateSig.value,e.approvalSig.value,{live:n}),o=Vu(e.inputSig.value);return/* @__PURE__ */ _(`li`,{class:`${Q}-steps-row`,"data-testid":Y.toolStep,"data-status":a,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${Q}-steps-row-head`,"aria-expanded":r,onClick:()=>i(!r),children:[/* @__PURE__ */ g(`span`,{class:`${Q}-steps-row-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Wu,{status:a})}),/* @__PURE__ */ g(`span`,{class:`${Q}-steps-row-name`,children:Jl(e.toolName)}),o?/* @__PURE__ */ g(`span`,{class:`${Q}-steps-row-summary`,children:o}):null,a===`error`?/* @__PURE__ */ g(`span`,{class:`${Q}-steps-failed`,children:t.statusError}):null]}),r?/* @__PURE__ */ _(`div`,{class:`${Q}-steps-row-body`,children:[/* @__PURE__ */ g(ou,{label:t.toolParameters,value:e.inputSig.value}),e.outputSig.value===void 0?null:/* @__PURE__ */ g(ou,{label:t.toolResult,value:e.outputSig.value}),e.errorSig.value?/* @__PURE__ */ g(ou,{label:t.statusError,value:e.errorSig.value,error:!0}):null]}):null]})}function Wu({status:e}){return e===`running`?/* @__PURE__ */ g(`span`,{class:`${Q}-loading-spinner`}):g(e===`error`?Ho:Vo,{})}function Gu({part:e,strings:t}){let[n,r]=m(!1);return/* @__PURE__ */ _(`li`,{class:`${Q}-steps-row`,"data-status":`thought`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${Q}-steps-row-head`,"aria-expanded":n,onClick:()=>r(!n),children:/* @__PURE__ */ g(`span`,{class:`${Q}-steps-row-name`,children:t.thoughts})}),n?/* @__PURE__ */ g(`div`,{class:`${Q}-steps-row-body ${Q}-reasoning-body`,children:/* @__PURE__ */ g(ns,{textSig:e.textSig,doneSig:e.doneSig})}):null]})}const Ku=j.cssPrefix,qu=y(Ju);function Ju({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,filename:t.name,fileId:t.id,fileSize:t.size});let v=f(()=>i(()=>qi(e)),[e]),y=f(()=>i(()=>Yi(e)),[e]),b=f(()=>i(()=>uu(e)),[e]),x=f(()=>i(()=>a&&du(e)),[e,a]),S=t===`streaming`,C=e.role===`assistant`&&S,w=pu({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=Xu(e.createdAt),ee=e.role===`assistant`||e.role===`operator`,k=p&&!!m&&!!e.serverMessageId&&ee&&!S&&t!==`error`&&!v.value,A=S?``:h.filter(e=>e.kind===`text`).map(t=>e.role===`assistant`?$r(t.textSig.peek()):t.textSig.peek()).join(`
|
|
29
|
+
`))!==-1;){let e=r.slice(0,a);r=r.slice(a+2),yield e}}}finally{n.releaseLock()}}function ua(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 sa.trace(`chunk`,{type:e.type,eventId:r}),{chunk:e,eventId:r}}catch(e){throw sa.trace(`frame parse failed`,{errorType:e instanceof Error?e.name:typeof e,payloadLength:n.length}),new oa(`invalid SSE frame`,`network`,void 0,e)}}const K=R.scope(`transport`),da=6e4,fa=/* @__PURE__ */ new WeakMap;function pa(e){return fa.get(e)}function ma(e,t){return fa.set(e,t),e}function ha(e){return Math.max(e?.upsertRevision??0,e?.read?.revision??0)}function ga(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 _a(e,t,n=!0){switch(t.type){case`snapshot`:{let n=new Map(e.map(e=>[e.conversationId,e])),r=e.filter(e=>(pa(e)?.activityRevision??0)>t.requestedRevision).toSorted((e,t)=>pa(t).activityRevision-pa(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=pa(r);return(i?.upsertRevision??0)>t.requestedRevision?r:i?.read&&!r.hasUnread&&i.read.lastMessageAt===e.lastMessageAt?ma({...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=pa(r);if(ha(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?ma({...e,hasUnread:!1},o):e):(ma(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?pa(i):void 0;if(ha(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&&ga(i,c)?(ma(i,s),e):(ma(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 va=/* @__PURE__ */ new Set([408,425,429,500,502,503,504]);function ya(e){return 400*2**e+Math.floor(Math.random()*250)}function ba(e){return 6e4+Math.ceil(e/1048576)*15e3}function xa(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 Sa=class{constructor(e){this.ttlMs=e,B(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)}},Ca=class{constructor(e){this.opts=e,B(this,`conversationListeners`,/* @__PURE__ */ new Set),B(this,`conversationRevision`,0),B(this,`visitorId`,void 0),B(this,`conversationId`,void 0),B(this,`userContext`,void 0),B(this,`pageContext`,void 0),B(this,`locale`,void 0),B(this,`userTokenSource`,void 0),B(this,`userToken`,void 0),B(this,`userTokenRequest`,void 0),B(this,`conversationsCache`,new Sa(1e4)),B(this,`contentCache`,new Sa(da)),B(this,`contentCollectionsCache`,new Sa(da))}setUserToken(e){this.userTokenSource=e,this.userToken=typeof e==`string`&&e||void 0,this.userTokenRequest=typeof e==`function`?this.fetchUserToken():void 0}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:gt};this.visitorId&&(e.visitorId=this.visitorId),this.conversationId&&(e.conversationId=this.conversationId),this.locale&&(e.locale=this.locale);let t=aa(this.userContext,this.pageContext);return t&&(e[ii]=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){K.debug(`handshake →`,{visitorId:e.visitorId,conversationId:e.conversationId,locale:e.locale}),this.userTokenRequest&&await this.userTokenRequest;let t=await this.postJson(ri.handshake,e,`handshake`);return K.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){K.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,ba(e.size));return K.debug(`uploadFile ←`,{id:r.id,url:r.url}),r}async transcribe(e,t=`audio/webm`){K.debug(`transcribe →`,{size:e.size,mimeType:t});let n=new FormData;n.append(`audio`,e,`voice.${wa(t)}`),n.append(`mimeType`,t);let r=await this.postForm(this.transcribePath,n,`transcribe`);return K.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=_a(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(ri.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(ri.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=_a(e.conversations,n);return t===e.conversations?e:{...e,conversations:t}});for(let e of this.conversationListeners)e(n);try{await this.postJson(ri.markRead,{conversationId:e},`markRead`,!0)}catch(e){K.debug(`markRead failed (non-fatal)`,{err:e})}}async requestOperator(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(ri.requestOperator,{},`requestOperator`)).controlState}catch(e){K.debug(`requestOperator failed (non-fatal)`,{err:e});return}}async cancelOperatorRequest(){if(this.visitorId&&this.conversationId)try{return(await this.postJson(ri.cancelOperatorRequest,{},`cancelOperatorRequest`)).controlState}catch(e){K.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(ri.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(ri.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(ri.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(ri.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(ri.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??ri.submitForm}async submitForm(e){K.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){K.debug(`submitForm failed (non-fatal)`,{err:e})}}async submitFeedback(e){K.debug(`submitFeedback →`,{messageId:e.messageId,value:e.value});try{await this.postJson(ri.messageFeedback,{messageId:e.messageId,set:{feedback:e.value}},`submitFeedback`)}catch(e){K.debug(`submitFeedback failed (non-fatal)`,{err:e})}}async sendTurn(e,t={}){K.debug(`message →`,{conversationId:e.conversationId,visitorId:e.visitorId,messageCount:e.messages.length});let n=JSON.stringify({...this.withEnvelope(e),[ii]:aa(this.userContext,this.pageContext,this.opts.recentHostEvents)}),r=t.keepalive===!0&&new Blob([n]).size<6e4;try{return await this.runWithAbort(async e=>{let t=await this.withFreshUserToken(()=>this.fetchImpl(this.url(ri.streamMessage),{method:`POST`,credentials:`omit`,headers:{accept:`application/json`,"content-type":`application/json`,...this.headersFor(this.url(ri.streamMessage))},body:n,keepalive:r,signal:e}));if(t.status!==202)throw new oa(`sendTurn failed: expected 202, received ${t.status}`,`server`,t.status,void 0,Ea(t));let i;try{i=await t.json()}catch(n){throw e?.aborted?n:new oa(`sendTurn failed: invalid acknowledgement`,`server`,t.status,n)}if(!Ta(i))throw new oa(`sendTurn failed: invalid acknowledgement`,`server`,t.status);return i},void 0,3e4)}catch(e){throw e instanceof oa?e:new oa(`sendTurn failed: network error`,`network`,void 0,e)}}cancelTurn(e,t){this.visitorId&&e&&t&&(K.debug(`cancel stream`,{conversationId:e,runId:t,visitorId:this.visitorId}),this.fetchImpl(this.url(ri.cancelStream),{method:`POST`,credentials:`omit`,headers:{"content-type":`application/json`,...this.headersFor(this.url(ri.cancelStream))},body:JSON.stringify(this.withEnvelope({conversationId:e,runId:t})),keepalive:!0}).catch(e=>K.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{this.userTokenRequest&&await this.userTokenRequest,a=await this.fetchImpl(this.resumeUrl(),{method:`GET`,credentials:`omit`,headers:{accept:`text/event-stream`,...this.headersFor(this.resumeUrl())},signal:t.signal})}catch(t){return i(),e.signal.aborted||K.debug(`resume-stream fetch failed — reconnecting`,{err:t}),`held`}if(!a.ok)return i(),a.status===401&&typeof this.userTokenSource==`function`?(await this.fetchUserToken(),`held`):a.status===409||va.has(a.status)?(K.debug(`resume-stream → transient response; reconnecting`,{status:a.status}),`held`):(K.debug(`resume-stream → endpoint unavailable`,{status:a.status}),`unavailable`);if(!a.body)return i(),K.debug(`resume-stream → bodyless response; stopping`,{status:a.status}),`unavailable`;if(!(a.headers.get(`content-type`)??``).includes(`text/event-stream`))return i(),K.debug(`resume-stream → non-SSE response; stopping`),`unavailable`;let o=!1;try{for await(let{chunk:n}of ca(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`;K.debug(`resume-stream segment dropped — reconnecting`,{err:t})}finally{i()}return`held`}resumeUrl(){return this.withEnvelopeQuery(ri.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.headersFor(this.url(e))},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.withFreshUserToken(()=>this.fetchImpl(this.url(e),{method:`POST`,credentials:`omit`,headers:this.headersFor(this.url(e)),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.headersFor(this.url(e))}}],t);return this.assertOk(n,t)}async fetchWithRetry(e,t){for(let n=0;;n++){let r;try{r=await this.withFreshUserToken(()=>this.fetchImpl(...e()))}catch(e){if(n>=3)throw new oa(`${t} failed: network error`,`network`,void 0,e);K.debug(`request network error — retrying`,{label:t,attempt:n}),await na(ya(n));continue}if(r.ok||!va.has(r.status)||n>=3)return r;let i=xa(r.headers)??ya(n);K.debug(`request retryable status — retrying`,{label:t,status:r.status,attempt:n,wait:i}),await na(i)}}async assertOk(e,t){if(!e.ok)throw new oa(`${t} failed: ${e.status}`,`server`,e.status);return await e.json()}fetchUserToken(){let e=this.userTokenSource;if(typeof e!=`function`)return Promise.resolve();let t=Promise.resolve().then(e).then(t=>{this.userTokenSource===e&&(this.userToken=t||void 0)},e=>{K.warn(`userToken function failed; continuing as an anonymous visitor`,{err:e})});return this.userTokenRequest=t,t}headersFor(e){let t=!/^https?:\/\//i.test(e)||e.startsWith(`${this.opts.agentApiBaseUrl}/`);return{...this.opts.auth.headers(),...t&&this.userToken?{"x-user-token":this.userToken}:{}}}async withFreshUserToken(e){let t=await e();return t.status!==401||!this.userTokenSource?t:typeof this.userTokenSource==`function`?(await this.fetchUserToken(),e()):(K.warn(`userToken rejected as invalid or expired; pass a function so the widget can fetch a fresh one`),t)}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 wa(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 Ta(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 Ea(e){let t=Number(e.headers.get(`retry-after`));return Number.isInteger(t)&&t>0?t:void 0}function Da(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 Oa(e,t,n){return Da(`close`,e,t)?n.includes(`close`):!1}function ka(e,t){return e===`inline`&&t===`fullscreen`?`exit-fullscreen`:`close`}function Aa(e,t,n,r){let i={role:n,text:r};e.emit(`message`,i),t.onMessage?.(i)}function ja(e){let t=p(e);t.current=e;let n=p(null);return n.current??(n.current=Ma(t)),n.current}function Ma(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&&Na(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 Na(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 Fa(e){return Object.fromEntries(e.map(e=>[e,[]]))}function Ia(e,t,n){return e.includes(t)?t:e.includes(n)?n:e[0]??``}function La(e,t,n){let r=[...new Set(t)],i=Ia(r,e,``),a=o({activeTab:i,stacks:Fa(r)});return{sig:a,reconcile(e,t){let i=[...new Set(e)],o=a.value,s=Ia(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:Ia(r,e,``),stacks:Fa(r)}}}}function Ra(e){return e.stacks[e.activeTab]??[]}function za(e){return Ra(e).at(-1)}function Ba(e){return Ra(e).length===0}function Va(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 Ha(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 Ua(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:Ha(e.mode,e.size,t)}}function Wa(){return typeof window>`u`?0:window.innerWidth}const q={fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,viewBox:`0 0 24 24`},Ga=`${M.cssPrefix}-icon-dir`;function Ka(){return/* @__PURE__ */ g(`svg`,{...q,"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 qa(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M18 6 6 18M6 6l12 12`})})}function Ja(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 5v14M5 12h14`})})}function Ya(){return/* @__PURE__ */ _(`svg`,{...q,class:Ga,"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 Xa(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 19V5M5 12l7-7 7 7`})})}function Za(){return/* @__PURE__ */ g(`svg`,{...q,class:Ga,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 20V4l18 8-18 8Z`})})}function Qa(){return/* @__PURE__ */ g(`svg`,{...q,class:Ga,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m9 18 6-6-6-6`})})}function $a(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})})}function eo(){return/* @__PURE__ */ g(`svg`,{...q,"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 to(){return/* @__PURE__ */ _(`svg`,{...q,"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 no(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 8V3h5M21 8V3h-5M3 16v5h5M21 16v5h-5`})})}function ro(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M8 3v5H3M16 3v5h5M8 21v-5H3M16 21v-5h5`})})}function io(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M3 3h7v2H5v5H3zM21 3h-7v2h5v5h2zM3 21h7v-2H5v-5H3zM21 21h-7v-2h5v-5h2z`})})}function ao(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M10 3v5H3M14 3v5h7M10 21v-5H3M14 21v-5h7`})})}function oo(){return/* @__PURE__ */ _(`svg`,{...q,"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 so(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,viewBox:`0 0 10 10`,children:/* @__PURE__ */ g(`path`,{d:`M9 1L1 9M9 5L5 9M9 9H9`,strokeWidth:`1.5`})})}function co(){return/* @__PURE__ */ _(`svg`,{...q,"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 lo(){return/* @__PURE__ */ g(`svg`,{...q,"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 uo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M11 5 6 9H2v6h4l5 4zM22 9l-6 6M16 9l6 6`})})}function fo(){return/* @__PURE__ */ _(`svg`,{...q,"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 po(){return/* @__PURE__ */ g(`svg`,{...q,class:Ga,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m5 6 6 6-6 6M13 6l6 6-6 6`})})}function mo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M20 6 9 17l-5-5`})})}function ho(){return/* @__PURE__ */ _(`svg`,{...q,"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 go(){return/* @__PURE__ */ _(`svg`,{...q,"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 _o(){return/* @__PURE__ */ g(`svg`,{...q,class:Ga,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M19 12H5M12 19l-7-7 7-7`})})}function vo(){return/* @__PURE__ */ _(`svg`,{...q,"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 yo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`m6 9 6 6 6-6`})})}function bo(){return/* @__PURE__ */ _(`svg`,{...q,"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 xo(){return/* @__PURE__ */ _(`svg`,{...q,"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 So(){return/* @__PURE__ */ g(`svg`,{...q,"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 Co(){return/* @__PURE__ */ _(`svg`,{...q,"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 wo(){return/* @__PURE__ */ _(`svg`,{...q,"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 To(){return/* @__PURE__ */ _(`svg`,{...q,"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 Eo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Do(){return/* @__PURE__ */ _(`svg`,{...q,"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`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`11`,cy:`11`,r:`7`}),/* @__PURE__ */ g(`path`,{d:`m21 21-4.3-4.3`})]})}function ko(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ao(){return/* @__PURE__ */ _(`svg`,{...q,"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 jo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Mo(){return/* @__PURE__ */ _(`svg`,{...q,"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 No(){return/* @__PURE__ */ _(`svg`,{...q,"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`,{...q,"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 Fo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Io(){return/* @__PURE__ */ _(`svg`,{...q,"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 Lo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ro(){return/* @__PURE__ */ _(`svg`,{...q,"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 zo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Bo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Vo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ho(){return/* @__PURE__ */ _(`svg`,{...q,"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 Uo(){return/* @__PURE__ */ _(`svg`,{...q,"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 Wo(){return/* @__PURE__ */ _(`svg`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`M12 7v5l3 2`})]})}function Go(){return/* @__PURE__ */ _(`svg`,{...q,"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 Ko(){return/* @__PURE__ */ _(`svg`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`9`}),/* @__PURE__ */ g(`path`,{d:`m15 9-6 6M9 9l6 6`})]})}function qo(){return/* @__PURE__ */ g(`svg`,{...q,"aria-hidden":`true`,children:/* @__PURE__ */ g(`path`,{d:`M12 18V5M15 13a4.17 4.17 0 01-3-4 4.17 4.17 0 01-3 4M17.707 6.294A3 3 0 1012 5a3 3 0 10-5.707 1.294M17.996 5.125a4 4 0 012.526 5.77M18 18a4 4 0 002-7.465M19.967 17.482a4 4 0 11-7.967.517 4 4 0 11-7.967-.517M6 18a4 4 0 01-2-7.465M6.004 5.125a4 4 0 00-2.526 5.77`})})}function Jo(){return/* @__PURE__ */ _(`svg`,{...q,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`circle`,{cx:`12`,cy:`12`,r:`10`}),/* @__PURE__ */ g(`path`,{d:`M12 8v4M12 16h.01`})]})}const Yo={chat:Ka,message:So,bubbles:Mo,spark:xo,wand:wo,bot:To,help:Co,lifebuoy:Do,headset:Eo,search:Io,sparkles:Lo,concierge:Ro,wave:zo},J=M.cssPrefix,Y={launcher:`${J}-launcher`,callout:`${J}-callout`,calloutDismiss:`${J}-callout-dismiss`,panel:`${J}-panel`,panelHeader:`${J}-panel-header`,resizeGrip:`${J}-resize-grip`,scrollToBottom:`${J}-scroll-to-bottom`,loadPreviousMessages:`${J}-load-previous-messages`,actionHistory:`${J}-action-history`,actionClose:`${J}-action-close`,langSegment:`${J}-lang-segment`,composer:`${J}-composer`,composerInput:`${J}-composer-input`,composerSend:`${J}-composer-send`,composerStop:`${J}-composer-stop`,compactionStatus:`${J}-compaction-status`,messageQueue:`${J}-message-queue`,queuedMessage:`${J}-queued-message`,queuedMessageRemove:`${J}-queued-message-remove`,composerAttach:`${J}-composer-attach`,composerFileInput:`${J}-composer-file-input`,composerVoice:`${J}-composer-voice`,attachmentChip:`${J}-attachment-chip`,attachmentRemove:`${J}-attachment-remove`,suggestion:`${J}-suggestion`,messageBubble:`${J}-message`,messageRetry:`${J}-message-retry`,messageFile:`${J}-message-file`,messageFeedback:`${J}-message-feedback`,feedbackUp:`${J}-feedback-up`,feedbackDown:`${J}-feedback-down`,messageCopy:`${J}-message-copy`,historyPane:`${J}-history-pane`,historyBack:`${J}-history-back`,historyItem:`${J}-history-item`,historyLoadMore:`${J}-history-load-more`,sidebar:`${J}-sidebar`,sidebarToggle:`${J}-sidebar-toggle`,sidebarNewConversation:`${J}-sidebar-new-conversation`,sidebarItem:`${J}-sidebar-item`,messengerHome:`${J}-messenger-home`,modulesEmpty:`${J}-modules-empty`,tab:`${J}-tab`,tabBadge:`${J}-tab-badge`,homeView:`${J}-home-view`,homeGreeting:`${J}-home-greeting`,homeBrand:`${J}-home-brand`,backHeader:`${J}-back-header`,contentView:`${J}-content-view`,contentScroll:`${J}-content-scroll`,homeSearch:`${J}-home-search`,helpSearch:`${J}-help-search`,homeRecent:`${J}-home-recent`,homeAsk:`${J}-home-ask`,homeWhatsNew:`${J}-home-whats-new`,homeContentRow:`${J}-home-content-row`,helpArticle:`${J}-help-article`,newsItem:`${J}-news-item`,newsMore:`${J}-news-more`,formGate:`${J}-form-gate`,formDone:`${J}-form-done`,formDoneToggle:`${J}-form-done-toggle`,formAnswers:`${J}-form-answers`,formFill:`${J}-form-fill`,formSubmit:`${J}-form-submit`,formSkip:`${J}-form-skip`,formField:`${J}-form-field`,toolAskQuestions:`${J}-tool-ask-questions`,toolInputSubmit:`${J}-tool-input-submit`,toolInputSkip:`${J}-tool-input-skip`,toolApproval:`${J}-tool-approval`,toolApprovalFields:`${J}-tool-approval-fields`,toolApprove:`${J}-tool-approve`,toolReject:`${J}-tool-reject`,toolEdit:`${J}-tool-edit`,toolDecision:`${J}-tool-decision`,typingDots:`${J}-typing-dots`,reasoning:`${J}-reasoning`,replyStopped:`${J}-reply-stopped`,toolAskSummary:`${J}-ask-questions-summary`,toolAskOptions:`${J}-ask-questions-options-toggle`,toolCall:`${J}-tool-call`,toolSteps:`${J}-tool-steps`,toolStep:`${J}-tool-step`,source:`${J}-source`,operatorRequest:`${J}-operator-request`,operatorBanner:`${J}-operator-banner`,cancelOperatorRequest:`${J}-cancel-operator-request`};function Xo(e,t){return`${e}-${t}`}const Zo=M.cssPrefix;function Qo({onToggle:e,launcher:t,strings:n,leaving:r,edgeTab:i}){let a=t.variant!==`circle`&&!!t.label;return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Zo}-fab`,part:`launcher`,"data-variant":t.variant,"data-size":t.size,"data-edge-tab":i?`true`:void 0,"data-leaving":r?`true`:void 0,"data-testid":Y.launcher,onClick:e,"aria-label":n.launcherOpen,children:[$o(t.icon),a?/* @__PURE__ */ g(`span`,{class:`${Zo}-fab-label`,children:A(n,t.label??``)}):null]})}function $o(e){let t=Yo[e];return t?/* @__PURE__ */ g(t,{}):/* @__PURE__ */ g(es,{source:e})}function es({source:e}){return/* @__PURE__ */ g(`span`,{ref:t=>{t&&ts(t,e)},"aria-hidden":`true`})}function ts(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 ns({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:`${Zo}-callout`,role:`status`,"data-shape":e.shape,"data-position":rs(e.position,t),"data-animated":e.animated?`true`:void 0,"data-testid":Y.callout,children:[/* @__PURE__ */ g(`span`,{children:A(n,e.text)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Zo}-callout-close`,onClick:i,"aria-label":r,title:r,"data-testid":Y.calloutDismiss,children:/* @__PURE__ */ g(qa,{})})]}):null}function rs(e,t){let n=t.endsWith(`-right`),r=t.startsWith(`bottom-`);return e===`vertical`?r?`top`:`bottom`:n?`left`:`right`}function is(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 as=M.cssPrefix;function os({title:e,actions:t}){return/* @__PURE__ */ _(`header`,{class:`${as}-back-header`,part:`header`,"data-variant":`title`,children:[/* @__PURE__ */ g(`span`,{class:`${as}-back-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ g(`h1`,{class:`${as}-back-title`,children:e}),t??/* @__PURE__ */ g(`span`,{class:`${as}-back-spacer`,"aria-hidden":`true`})]})}function ss({title:e,backLabel:t,onBack:n,actions:r,testid:i}){return/* @__PURE__ */ _(`header`,{class:`${as}-back-header`,part:`header`,"data-testid":i,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${as}-icon-btn`,onClick:n,"aria-label":t,title:t,children:/* @__PURE__ */ g(_o,{})}),/* @__PURE__ */ g(`h1`,{class:`${as}-back-title`,children:e}),r??/* @__PURE__ */ g(`span`,{class:`${as}-back-spacer`,"aria-hidden":`true`})]})}function cs({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?Yr(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?Yr(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(()=>fs(o));d.observe(o,{childList:!0,subtree:!0}),fs(o);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 ls({text:e}){let t=f(()=>o(e),[e]),n=f(()=>o(!0),[]);return/* @__PURE__ */ g(cs,{textSig:t,doneSig:n})}const us=/<(\/?)(?:(Note|Info|Tip|Warning|Danger|Check|Callout)|Tabs?|Steps?|AccordionGroup|Accordion|Expandable|Columns|CardGroup|Card|Frame|CodeGroup|Badge|Icon|Video|Embed|ParamField|ResponseField)\b((?:"[^"]*"|'[^']*'|[^>"'])*?)(\/?)>|(^|\n)([ \t]*)(```[^]*?(?:\n[ \t]*```|$))?/g;function ds(e){let t=0,n=``;return e.replace(us,(e,r,i,a,o,s,c,l)=>{if(r===void 0)return t?s+(l?.split(`\n${c}`).join(`
|
|
31
|
+
`)??n):e;if(r)return t--,i&&(n=n.slice(2)),i?`\n${n}`:``;o||(t++,i&&(n+=`> `));let u={};a.replace(/(\w+)=(["'])(.*?)\2/g,(e,t,n,r)=>u[t]=r);let d=u.href??u.src,f=u.title??u.path??u.query??u.body??u.header??u.name??d;return(i?`> `:``)+(f?`**${d?`[${f}](${d})`:f}**${u.type?` \`${u.type}\``:``}\n${n}`:``)})}function fs(e){for(let t of e.querySelectorAll(`a`)){let e=t.getAttribute(`href`)??``;e&&!e.startsWith(`#`)&&(t.target=`_blank`,t.rel=`noopener noreferrer`)}}const ps=/* @__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 ms(e){let t=``,n=[],r=v.parser({data:void 0,add_token:(e,r)=>{n.push(r),ps.has(r)||(t+=` `)},end_token:()=>{let e=n.pop();e!==void 0&&!ps.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 hs=M.cssPrefix;function gs({tone:e=`info`,message:t,onRetry:n,strings:r}){return/* @__PURE__ */ _(`div`,{class:`${hs}-module-empty`,role:e===`error`?`alert`:`status`,"aria-live":`polite`,children:[/* @__PURE__ */ g(`span`,{children:t}),n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${hs}-module-retry`,onClick:n,children:r.errorRetry}):null]})}const _s=M.cssPrefix,vs=R.scope(`content`);function ys({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||(vs.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(gs,{tone:`error`,message:r.errorGeneric,onRetry:C,strings:r}):s===null?/* @__PURE__ */ g(gs,{message:r.contentLoading,strings:r}):/* @__PURE__ */ _(`article`,{class:`${_s}-content`,"data-testid":Y.contentView,onClick:w,children:[s.image?/* @__PURE__ */ g(`img`,{class:`${_s}-content-hero`,src:s.image,alt:``,loading:`lazy`}):null,s.description?/* @__PURE__ */ g(`p`,{class:`${_s}-content-subtitle`,children:s.description}):null,/* @__PURE__ */ g(ls,{text:ds(s.content??``)}),d?/* @__PURE__ */ g(`div`,{class:`${_s}-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:`${_s}-module-retry`,onClick:()=>T(1),children:r.confirmYes}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${_s}-module-retry`,onClick:()=>T(0),children:r.confirmNo})]})}):null]})}return/* @__PURE__ */ _(`div`,{class:`${_s}-module`,children:[/* @__PURE__ */ g(ss,{title:s?.title||t||r.moduleBack,backLabel:r.moduleBack,onBack:a,actions:o,testid:Y.backHeader}),/* @__PURE__ */ g(`div`,{class:`${_s}-module-scroll`,"data-testid":Y.contentScroll,children:E()})]})}function bs({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 xs({items:e,triggerLabel:t}){let n=M.cssPrefix,r=bs({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(co,{})}),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":`${Y.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(mo,{})}):null]},e.id))}):null]})}const Ss=M.cssPrefix;function Cs(e){let t=typeof matchMedia!=`function`||matchMedia(`(prefers-color-scheme: dark)`).matches;return e===`host`?Tt()===`dark`?`light`:`dark`:e===`auto`?t?`light`:`dark`:t?e===`light`?`dark`:`auto`:e===`dark`?`light`:`auto`}const ws={normal:`large`,large:`small`,small:`normal`};function Ts(e){return g(e===`light`?No:e===`dark`?Po:Fo,{})}function Es(e){return(e.split(`-`)[0]??e).toUpperCase()}function Ds(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 Os({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&&Da(e,v,r)}let T=n.themeMode,E={auto:h.themeAuto,light:h.themeLight,dark:h.themeDark,host:h.themeAuto},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(vo,{}),label:h.newConversation,onSelect:o}),S(`expand`)&&w(`expand`)){let e=r===`expanded`;k.push({id:`expand`,icon:g(e?ro:no,{}),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?ao:io,{}),label:e?h.exitFullscreen:h.fullscreen,type:`switch`,on:e,onSelect:l})}let A=n.popOutUrl,j=n.aiAgentDeploymentId;S(`popOut`)&&A&&j&&Da(`popOut`,v,r)&&k.push({id:`popOut`,icon:/* @__PURE__ */ g(oo,{}),label:h.popOut,onSelect:()=>{let t=Ds(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?uo:lo,{}),label:b?h.soundOff:h.soundOn,type:`switch`,on:!b,onSelect:u}),S(`theme`)&&k.push({id:`theme`,icon:Ts(T),label:`${h.theme}: ${E[T]}`,onSelect:()=>p(Cs(T)),keepOpen:!0}),S(`textSize`)&&k.push({id:`textSize`,icon:/* @__PURE__ */ g(fo,{}),label:`${h.textSize}: ${O[D]}`,onSelect:()=>m(ws[D]),keepOpen:!0}),S(`language`)&&n.availableLocales.length>1&&k.push({id:`language`,icon:/* @__PURE__ */ g(go,{}),label:h.language,segments:n.availableLocales.map(e=>({value:e,label:Es(e),lang:e})),value:n.locale,onSelectValue:f});let M=!!a&&Oa(v,r,n.actions),ee=y&&S(`history`);return/* @__PURE__ */ _(`div`,{class:`${Ss}-header-actions`,children:[ee?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ss}-icon-btn`,onClick:d,"aria-label":h.history,title:h.history,"data-testid":Y.actionHistory,children:/* @__PURE__ */ g(ho,{})}):null,k.length>0?/* @__PURE__ */ g(xs,{items:k,triggerLabel:h.moreActions}):null,M?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ss}-icon-btn`,onClick:a,"aria-label":h.close,title:h.close,"data-testid":Y.actionClose,children:/* @__PURE__ */ g(qa,{})}):null]})}const ks={Icon:Mo};function As(e,t){return e instanceof oa?e.status===429?e.retryAfterSeconds?t.errorRateLimitedIn.replace(`{seconds}`,String(e.retryAfterSeconds)):t.errorRateLimited:e.code===`network`?t.errorOffline:e.status!==void 0&&e.status>=500?t.errorServer:t.errorGeneric:t.errorGeneric}const js=M.cssPrefix;function Ms({placeholder:e,onActivate:t}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${js}-home-search`,onClick:t,"data-testid":Y.homeSearch,children:[/* @__PURE__ */ g(`span`,{class:`${js}-home-search-text`,children:e}),/* @__PURE__ */ g(`span`,{class:`${js}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Oo,{})})]})}function Ns({placeholder:e,value:t,onInput:n}){return/* @__PURE__ */ _(`div`,{class:`${js}-home-search`,"data-input":`true`,children:[/* @__PURE__ */ g(`input`,{type:`search`,class:`${js}-home-search-input`,placeholder:e,value:t,maxLength:200,onInput:e=>n(e.currentTarget.value),"data-testid":Y.helpSearch}),/* @__PURE__ */ g(`span`,{class:`${js}-home-search-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Oo,{})})]})}const Ps=M.cssPrefix;function Fs({title:e,subtitle:t,onClick:n,testid:r}){return/* @__PURE__ */ _(`button`,{type:`button`,class:`${Ps}-list-row`,onClick:n,"data-testid":r,children:[/* @__PURE__ */ _(`span`,{class:`${Ps}-list-row-body`,children:[/* @__PURE__ */ g(`span`,{class:`${Ps}-list-row-title`,children:e}),t?/* @__PURE__ */ g(`span`,{class:`${Ps}-list-row-sub`,children:t}):null]}),/* @__PURE__ */ g(`span`,{class:`${Ps}-list-row-chevron`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Qa,{})})]})}const Is=M.cssPrefix,Ls=R.scope(`help`);function Rs(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 zs({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&&(Ls.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 Bs(e){let{strings:t,config:n,nav:r,panelProps:i}=e,a=n.contentCollectionIds,[o,s]=m(``),[c,l]=m(``),d=zs(e,a),f=zs(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(gs,{message:t.helpEmpty,strings:t});let e=p?.error?/* @__PURE__ */ g(gs,{tone:`error`,message:p.error,onRetry:v,strings:t}):null;return e&&!p?.pagination?e:!p||!p.pagination&&!p.items.length?/* @__PURE__ */ g(gs,{message:t.helpLoading,strings:t}):p.items.length?/* @__PURE__ */ _(h,{children:[Rs(p.items,a,p.collections).map(e=>/* @__PURE__ */ _(`section`,{class:`${Is}-help-group`,children:[e.title?/* @__PURE__ */ g(`h2`,{class:`${Is}-help-section-title`,children:e.title}):null,/* @__PURE__ */ g(`div`,{class:`${Is}-help-card`,children:e.rows.map(e=>/* @__PURE__ */ g(Fs,{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:Xo(Y.helpArticle,e.id)},e.id))})]},e.id)),e,p.pagination?.hasNext&&!e?/* @__PURE__ */ g(`div`,{children:/* @__PURE__ */ g(`div`,{class:`${Is}-help-card`,children:/* @__PURE__ */ _(`button`,{type:`button`,class:`${Is}-list-row ${Is}-help-more`,onClick:v,"aria-busy":p.loading,children:[p.loading?/* @__PURE__ */ g(`span`,{class:`${Is}-loading-spinner`,"aria-hidden":`true`}):null,t.helpShowMore]})})}):null]}):/* @__PURE__ */ g(gs,{message:p.search?t.helpSearchEmpty.replace(`{query}`,p.search):t.helpEmpty,strings:t})}return/* @__PURE__ */ _(`div`,{class:`${Is}-module`,children:[/* @__PURE__ */ g(os,{title:t.helpTitle,actions:/* @__PURE__ */ g(Os,{panelProps:i,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${Is}-module-pad`,children:/* @__PURE__ */ g(Ns,{placeholder:t.helpSearchPlaceholder,value:o,onInput:s})}),/* @__PURE__ */ g(`div`,{class:`${Is}-help-list`,children:y()})]})}const Vs={Icon:Co,Root:e=>/* @__PURE__ */ g(Bs,{...e})},Hs=R.scope(`attachments`);function Us(e,t,n){let r=Ks(e),i=[],a=[],o=Ys(n.accept),s=t.reduce((e,t)=>e+t.size,0),c=t.length;for(let e of r){let t=Gs(e,c,s,n,o);t?a.push({file:e,reason:t}):(i.push(Js(e)),s+=e.size,c+=1)}return(i.length||a.length)&&Hs.debug(`ingest`,{accepted:i.length,rejected:a.map(e=>({name:e.file.name,reason:e.reason}))}),{accepted:i,rejected:a}}function Ws(e){try{URL.revokeObjectURL(e.previewUrl)}catch(e){Hs.debug(`revokeObjectURL failed`,{error:e})}}function Gs(e,t,n,r,i){return t>=r.maxCount?`count`:n+e.size>r.maxBytes?`bytes`:Xs(e,i)?null:`mime`}function Ks(e){return e?Array.isArray(e)?e.filter(e=>e instanceof File):[...e].map(e=>e instanceof File?e:qs(e)).filter(e=>e!==null):[]}function qs(e){let t=e;return!t?.getAsFile||t.kind!==`file`?null:t.getAsFile()}function Js(e){return{file:e,id:lt(),mediaType:e.type||`application/octet-stream`,name:e.name||`pasted-file`,previewUrl:URL.createObjectURL(e),size:e.size}}function Ys(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 Xs(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 Zs=M.cssPrefix;function Qs({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:`${Zs}-attachment-chip`,title:e.name,"data-testid":Xo(Y.attachmentChip,e.id),children:[r?/* @__PURE__ */ g(`img`,{class:`${Zs}-attachment-thumb`,src:e.previewUrl,alt:``}):/* @__PURE__ */ g(`span`,{class:`${Zs}-attachment-thumb`,"aria-hidden":`true`,children:/* @__PURE__ */ g(bo,{})}),/* @__PURE__ */ g(`span`,{class:`${Zs}-attachment-name`,children:e.name}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Zs}-attachment-remove`,onClick:t,disabled:n,"aria-label":`Remove ${e.name}`,"data-testid":Xo(Y.attachmentRemove,e.id),children:/* @__PURE__ */ g(qa,{})})]})}const $s={isSupported:!1,start:()=>void 0,stop:()=>void 0,cancel:()=>void 0};function ec(e,t,n){return e===`disabled`?$s:e===`server`?ic(n):tc(t)}function tc(e){let t=nc();if(!t)return $s;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 nc(){return window.SpeechRecognition??window.webkitSpeechRecognition}const rc=[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`];function ic(e){if(typeof MediaRecorder>`u`||!navigator?.mediaDevices?.getUserMedia)return $s;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=ac(),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 ac(){for(let e of rc)if(MediaRecorder.isTypeSupported(e))return e}const oc=M.cssPrefix,sc=R.scope(`composer`);function cc(e){return e.reduce((e,t)=>e+t.size,0)}const lc={arrowUp:Xa,paperPlane:Ya,send:Za,chevron:Qa};function uc(e){return`activeElement`in e}function dc(e){return`host`in e&&`activeElement`in e}function fc({options:e,transport:t,feedback:n,bus:r,persistence:i,conversationId:a,isStreaming:o,pageToolRunning:s=!1,isMemoryCompacting:c=!1,canReleaseQueuedMessages:f=!0,queueManualMessages:h=!1,active:v=!0,isPreparing:y=!1,operatorRequestEnabled:b,canRequestOperator:x=!1,controlMode:S=`ai-agent`,onRequestOperator:C,onSend:w,onStop:T,apiRef:E}){let D=e.strings,[O,k]=m(()=>i.loadDraft(a)),[A,j]=m([]),[M,ee]=m(()=>i.loadMessageQueue(a).map(e=>({id:e.id,text:e.text,attachments:[]}))),te=p(M),ne=p(!1),[N,re]=m(!1),[ie,P]=m(!1),ae=p(!1),oe=p(null),se=p(null),F=p(null),ce=p(0),le=p(a);le.current=a;let ue=p(v);ue.current=v;let I=p(y);I.current=y;let de=ie||y||!v,fe=o&&S===`ai-agent`,pe=fe||c&&S===`ai-agent`,me=S===`ai-agent`&&(pe||h||M.length>0),he=l(e=>{ee(t=>{let n=e(t);return i.saveMessageQueue(le.current,n.filter(e=>e.attachments.length===0).map(({id:e,text:t})=>({id:e,text:t}))),te.current=n,n})},[i]),ge=l(e=>{he(t=>(t.find(t=>t.id===e)?.attachments.forEach(Ws),t.filter(t=>t.id!==e)))},[he]),L=l(e=>{k(t=>{let n=typeof e==`function`?e(t):e;return n===t?t:(i.saveDraft(le.current,n),n)})},[i]),_e=e.features.fileUpload,R=e.features.voice,[ve,ye]=m(()=>ec(R,e.locale,(e,n)=>t.transcribe(e,n))),be=p(ve);be.current=ve;let xe=p({mode:R,locale:e.locale,transport:t});u(()=>{let n=xe.current;(n.mode!==R||n.locale!==e.locale||n.transport!==t)&&(xe.current={mode:R,locale:e.locale,transport:t},ce.current++,be.current.cancel(),F.current=null,re(!1),ye(ec(R,e.locale,(e,n)=>t.transcribe(e,n))))},[e.locale,R,t]),d(()=>()=>{ce.current++,ve.cancel()},[ve]);let Se=l(e=>{let t=F.current;if(t===null)return!1;let n=Math.round(performance.now()-t);return sc[e](`voiceStop`,{durationMs:n}),r.emit(`voiceStop`,{durationMs:n}),F.current=null,!0},[r]),Ce=l(()=>{F.current!==null&&(ve.stop(),re(!1),Se(`info`)&&n.play(`voiceStop`))},[Se,n,ve]),we=l(()=>{ce.current++,ve.cancel(),re(!1),Se(`info`)&&n.play(`voiceStop`)},[Se,n,ve]);u(()=>{(y||!v)&&we()},[v,we,y]),u(()=>{let e=oe.current;if(!e)return;let t=e.getRootNode(),n=uc(t)?t.activeElement:null;n&&e.closest(`.${oc}-panel`)?.contains(n)||e.focus({preventScroll:!0})},[]),u(()=>{let e=oe.current;if(!e)return;if(O.length===0){e.style.height=``;return}e.style.height=`auto`;let t=getComputedStyle(e),n=Number.parseFloat(t.getPropertyValue(`--${oc}-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`},[O]);let Te=p(A);Te.current=A,u(()=>()=>{Te.current.forEach(Ws);for(let e of te.current)e.attachments.forEach(Ws)},[]),d(()=>{if(E)return E.current={attachFromDrop:t=>{if(!_e||!ue.current||ae.current||I.current)return;let n=Us(t,Te.current,e.attachments);n.accepted.length!==0&&(sc.info(`attach (drop)`,{count:n.accepted.length,totalBytes:cc(n.accepted)}),r.emit(`attach`,{count:n.accepted.length,totalBytes:cc(n.accepted)}),j(e=>[...e,...n.accepted]))},fill:e=>{if(!ue.current||ae.current||I.current)return;L(e);let t=oe.current;t&&(t.focus({preventScroll:!0}),requestAnimationFrame(()=>t.setSelectionRange(t.value.length,t.value.length)))},acceptQueuedMessage:ge},()=>{E.current&&(E.current=null)}},[E,_e,y,e.attachments,ge,L]),u(()=>{let t=oe.current;if(!t)return;let n=t.closest(`.${oc}-panel`);if(!n)return;let i=n=>{if(!ue.current||ae.current||I.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(_e){let t=Us(i.items,Te.current,e.attachments);if(t.accepted.length>0){n.preventDefault(),sc.info(`attach (paste)`,{count:t.accepted.length,totalBytes:cc(t.accepted)}),r.emit(`attach`,{count:t.accepted.length,totalBytes:cc(t.accepted)}),j(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)},[_e,e.attachments,L]);async function Ee(){let e=O.trim();if(!e&&A.length===0||!v||fe||ae.current||y)return;we(),ae.current=!0,P(!0);let t=O,n=A;try{await w(e,n)&&(L(e=>e===t?``:e),j(e=>e===n?(n.forEach(Ws),Te.current=[],[]):e))}finally{ae.current=!1,P(!1),requestAnimationFrame(()=>{let e=oe.current;if(!e||e.disabled||!ue.current)return;let t=e.getRootNode(),n=uc(t)?t.activeElement:null,r=n?.getAttribute(`data-testid`);if(!(n&&n!==e&&r!==Y.composerSend&&r!==Y.composerStop)){if(dc(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 De(){let e=O.trim();if(!e&&A.length===0||!v||!me||ae.current||y)return;we();let t=A;he(n=>[...n,{id:lt(),text:e,attachments:t}]),L(``),j(e=>e===t?(Te.current=[],[]):e),oe.current?.focus({preventScroll:!0})}u(()=>{pe&&(ne.current=!1)},[pe]),u(()=>{let e=M[0];if(!e||!f||pe||ne.current||ie||y||!v)return;let t=setTimeout(()=>{ne.current=!0,w(e.text,e.attachments,e.id).then(t=>{t?ge(e.id):ne.current=!1})},300);return()=>clearTimeout(t)},[v,f,y,w,pe,M,ge,ie]);function Oe(e){e.key!==`Enter`||e.shiftKey||e.isComposing||(e.preventDefault(),me&&(O.trim()||A.length>0)?De():fe?T():Ee())}function ke(t){let n=t.target;if(!v||ae.current||y){n.value=``;return}let i=Us(n.files,A,e.attachments);i.accepted.length>0&&(sc.info(`attach (file picker)`,{count:i.accepted.length,totalBytes:cc(i.accepted)}),r.emit(`attach`,{count:i.accepted.length,totalBytes:cc(i.accepted)}),j(e=>[...e,...i.accepted])),n.value=``}function Ae(e){!v||ae.current||y||(sc.info(`removeAttachment`,{id:e}),r.emit(`removeAttachment`,{id:e}),j(t=>{let n=t.find(t=>t.id===e);return n&&Ws(n),t.filter(t=>t.id!==e)}))}function je(){if(N){Ce();return}if(!v||!ve.isSupported||ae.current||y)return;let e=++ce.current;F.current=performance.now(),sc.info(`voiceStart`),r.emit(`voiceStart`,void 0),re(!0),n.play(`voiceStart`),ve.start((t,n)=>{ce.current===e&&ue.current&&!I.current&&!ae.current&&n&&L(e=>`${e}${t} `)},()=>{ce.current===e&&ue.current&&(re(!1),Se(`debug`))})}let Me=lc[e.composer.sendButton.icon],Ne=!!(O.trim()||A.length>0),Pe=fe||s&&!Ne;return/* @__PURE__ */ _(`div`,{class:`${oc}-composer`,part:`composer`,"data-testid":Y.composer,children:[M.length>0?/* @__PURE__ */ g(`div`,{class:`${oc}-message-queue`,"aria-label":D.queueMessage,"data-testid":Y.messageQueue,children:M.map(e=>/* @__PURE__ */ _(`div`,{class:`${oc}-attachment-chip ${oc}-queued-message`,"data-testid":`${Y.queuedMessage}-${e.id}`,children:[/* @__PURE__ */ g(`span`,{class:`${oc}-attachment-name ${oc}-queued-text`,children:e.text||e.attachments.map(e=>e.name).join(`, `)}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-attachment-remove`,onClick:()=>ge(e.id),"aria-label":D.removeQueuedMessage,title:D.removeQueuedMessage,"data-testid":`${Y.queuedMessageRemove}-${e.id}`,children:/* @__PURE__ */ g(qa,{})})]},e.id))}):null,A.length>0?/* @__PURE__ */ g(`div`,{class:`${oc}-attachments`,children:A.map(e=>/* @__PURE__ */ g(Qs,{attachment:e,onRemove:()=>Ae(e.id),disabled:de},e.id))}):null,/* @__PURE__ */ _(`div`,{class:`${oc}-composer-row`,children:[/* @__PURE__ */ _(`div`,{class:`${oc}-composer-actions`,children:[_e?/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-icon-btn`,onClick:()=>se.current?.click(),disabled:de,"aria-label":D.attach,"data-testid":Y.composerAttach,children:/* @__PURE__ */ g(eo,{})}):null,ve.isSupported?/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-icon-btn`,onClick:je,disabled:de,"aria-label":N?D.micStop:D.micStart,"aria-pressed":N,"data-recording":N?`true`:void 0,"data-testid":Y.composerVoice,children:/* @__PURE__ */ g(to,{})}):null]}),/* @__PURE__ */ g(`textarea`,{ref:oe,name:`message`,class:`${oc}-textarea`,rows:1,value:O,placeholder:D.composerPlaceholder,onInput:e=>L(e.currentTarget.value),onKeyDown:Oe,disabled:de,"aria-label":D.composerPlaceholder,"data-testid":Y.composerInput}),me&&Ne?/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:De,disabled:de,"aria-label":D.queueMessage,title:D.queueMessage,"data-testid":Y.composerSend,children:/* @__PURE__ */ g(Me,{})}):null,Pe?/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-send`,onClick:T,disabled:de,"aria-label":D.stop,"data-testid":Y.composerStop,children:/* @__PURE__ */ g($a,{})}):null,!Pe&&(!me||!Ne)?/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-send`,"data-shape":e.composer.sendButton.shape,"data-variant":e.composer.sendButton.variant,onClick:()=>void Ee(),disabled:de||!O.trim()&&A.length===0,"aria-label":D.send,"data-testid":Y.composerSend,children:/* @__PURE__ */ g(Me,{})}):null,b&&S===`ai-agent`&&C?/* @__PURE__ */ g(`button`,{type:`button`,class:`${oc}-icon-btn`,onClick:C,disabled:de||!x,"aria-label":D.talkToOperator,title:D.talkToOperator,"data-testid":Y.operatorRequest,children:/* @__PURE__ */ g(Eo,{})}):null]}),/* @__PURE__ */ g(`input`,{ref:se,name:`attachments`,type:`file`,multiple:!0,accept:e.attachments.accept,onChange:ke,disabled:de,class:`${oc}-sr-only`,"data-testid":Y.composerFileInput})]})}const pc=M.cssPrefix;function mc({onClick:e,children:t,testid:n}){return e?/* @__PURE__ */ g(`button`,{type:`button`,class:`${pc}-home-card`,"data-interactive":`true`,onClick:e,"data-testid":n,children:t}):/* @__PURE__ */ g(`div`,{class:`${pc}-home-card`,"data-testid":n,children:t})}function hc(e){return e.trim().split(/\s+/).slice(0,2).map(e=>e.charAt(0).toUpperCase()).join(``)}const gc=M.cssPrefix,_c=R.scope(`news`);function vc(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 yc({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&&(_c.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=vc(t.publishedAt,e.locale);return/* @__PURE__ */ _(`button`,{type:`button`,class:`${gc}-news-card`,onClick:()=>i.push({kind:`content`,id:t.id,title:t.title}),"data-testid":Xo(Y.newsItem,t.id),children:[t.image?/* @__PURE__ */ g(`img`,{class:`${gc}-news-hero`,src:t.image,alt:``,loading:`lazy`}):null,/* @__PURE__ */ _(`span`,{class:`${gc}-news-body`,children:[/* @__PURE__ */ g(`span`,{class:`${gc}-news-title`,children:t.title}),n||t.tags?.length?/* @__PURE__ */ _(`span`,{class:`${gc}-news-meta`,children:[n?/* @__PURE__ */ g(`time`,{dateTime:t.publishedAt,children:n}):null,t.tags?.map(e=>/* @__PURE__ */ g(`span`,{class:`${gc}-news-tag`,children:e},e))]}):null,t.description?/* @__PURE__ */ g(`span`,{class:`${gc}-news-summary`,children:t.description}):null]})]},t.id)}function b(){if(!c?.length)return/* @__PURE__ */ g(gs,{message:n.newsEmpty,strings:n});let e=l.error?/* @__PURE__ */ g(gs,{tone:`error`,message:l.error,onRetry:v,strings:n}):null;return e&&!l.pagination?e:l.pagination?l.items.length?/* @__PURE__ */ _(`div`,{class:`${gc}-news-list`,children:[l.items.map(y),e,l.pagination.hasNext&&!e?/* @__PURE__ */ _(`button`,{type:`button`,class:`${gc}-news-more`,onClick:v,"aria-busy":l.loading,"data-testid":Y.newsMore,children:[l.loading?/* @__PURE__ */ g(`span`,{class:`${gc}-loading-spinner`,"aria-hidden":`true`}):null,n.newsShowMore]}):null]}):/* @__PURE__ */ g(gs,{message:n.newsEmpty,strings:n}):/* @__PURE__ */ g(gs,{message:n.newsLoading,strings:n})}return/* @__PURE__ */ _(`div`,{class:`${gc}-module`,children:[/* @__PURE__ */ g(os,{title:n.newsTitle,actions:/* @__PURE__ */ g(Os,{panelProps:o,variant:`plain`})}),/* @__PURE__ */ g(`div`,{class:`${gc}-module-scroll`,children:b()})]})}const bc={Icon:jo,Root:e=>/* @__PURE__ */ g(yc,{...e})},X=M.cssPrefix,xc=R.scope(`home`);function Sc(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 Cc(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 wc({options:e,onAsk:t}){let[n,r]=m(``),{sendButton:i}=e.composer,a=lc[i.icon];function o(e){e.preventDefault();let i=n.trim();i&&(r(``),t(i))}return/* @__PURE__ */ _(`form`,{class:`${X}-home-search ${X}-home-ask`,"data-input":`true`,onSubmit:o,"data-testid":Y.homeAsk,children:[/* @__PURE__ */ g(`input`,{type:`text`,class:`${X}-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:`${X}-send`,"data-shape":i.shape,"data-variant":i.variant,disabled:!n.trim(),"aria-label":e.strings.send,children:/* @__PURE__ */ g(a,{})})]})}function Tc(e,t){return _a(e,t,t.type!==`upsert`||t.activity===!0)}function Ec(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=>Tc(t?[t]:[],e)[0]??null)});return t.listConversations({limit:v?50:1}).then(t=>{if(e)return;let r=i.reduce(Tc,t.conversations);i=[],n=!1,l(r[0]??null)}).catch(t=>{e||(i=[],n=!1,xc.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&&xc.warn(`listContent (home) failed`,{err:t})),()=>{e=!0}},[t,p,a]);let y=Sc(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=vc(w?.publishedAt,e.options.locale);return/* @__PURE__ */ g(`div`,{class:`${X}-module ${X}-home`,"data-testid":Y.homeView,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-scroll`,children:[/* @__PURE__ */ _(`div`,{class:`${X}-home-hero`,children:[/* @__PURE__ */ _(`div`,{class:`${X}-home-hero-top`,children:[r.brandName?/* @__PURE__ */ g(`span`,{class:`${X}-home-brand`,"data-testid":Y.homeBrand,children:r.brandName}):/* @__PURE__ */ g(`span`,{class:`${X}-home-brand-spacer`,"aria-hidden":`true`}),/* @__PURE__ */ _(`div`,{class:`${X}-home-hero-actions`,children:[b.length>0?/* @__PURE__ */ g(`div`,{class:`${X}-home-avatars`,children:b.map(e=>/* @__PURE__ */ g(`span`,{class:`${X}-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:hc(e.name)})},e.name))}):null,/* @__PURE__ */ g(Os,{panelProps:o,variant:`plain`})]})]}),r.showGreeting===!1?null:/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`h1`,{class:`${X}-home-greeting`,"data-testid":Y.homeGreeting,children:y.title}),y.subtitle?/* @__PURE__ */ g(`p`,{class:`${X}-home-lead`,children:y.subtitle}):null]})]}),/* @__PURE__ */ _(`div`,{class:`${X}-home-cards`,children:[v?/* @__PURE__ */ g(wc,{options:e.options,onAsk:e=>i.startNewConversation(e)}):null,r.showSearchBar===!1?null:/* @__PURE__ */ g(Ms,{placeholder:n.homeSearchPlaceholder,onActivate:()=>i.switchToLayout(`help`)}),w?/* @__PURE__ */ g(mc,{onClick:()=>{s.markSeen(w.id),i.push({kind:`content`,id:w.id,title:w.title})},testid:Y.homeWhatsNew,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-recent-row`,"data-unread":s.unseen?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(jo,{})}),/* @__PURE__ */ _(`span`,{class:`${X}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-title`,children:n.homeWhatsNew}),/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-preview`,children:T?`${w.title} · ${T}`:w.title})]}),s.unseen?/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-dot`,role:`img`,"aria-label":n.newsUnseen}):null]})}):null,c?/* @__PURE__ */ g(mc,{onClick:()=>i.selectConversation(c),testid:Y.homeRecent,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-recent-row`,"data-unread":c.hasUnread?`true`:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Mo,{})}),/* @__PURE__ */ _(`span`,{class:`${X}-home-recent-body`,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-title`,children:c.title}),c.preview?/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-preview`,children:ms(c.preview)}):null]}),c.hasUnread?/* @__PURE__ */ g(`span`,{class:`${X}-home-recent-dot`,"aria-label":`Unread`}):null]})}):null,x?/* @__PURE__ */ g(mc,{onClick:x.url?()=>i.push({kind:`iframe`,url:x.url,title:S}):void 0,children:/* @__PURE__ */ _(`div`,{class:`${X}-home-status`,"data-level":x.level??`operational`,children:[/* @__PURE__ */ g(`span`,{class:`${X}-home-status-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(ko,{})}),/* @__PURE__ */ g(`span`,{class:`${X}-home-status-text`,children:S})]})}):null,d.length>0?/* @__PURE__ */ _(`section`,{class:`${X}-home-content`,children:[/* @__PURE__ */ g(`div`,{class:`${X}-home-content-title`,children:C}),/* @__PURE__ */ g(`div`,{class:`${X}-home-content-list`,children:d.map(e=>/* @__PURE__ */ g(Fs,{title:e.title,subtitle:e.description,onClick:()=>Cc(i,e),testid:Xo(Y.homeContentRow,e.id)},e.id))})]}):null]})]})})}const Dc={chat:ks,home:{Icon:Ao,Root:e=>/* @__PURE__ */ g(Ec,{...e})},help:Vs,news:bc},Oc=M.cssPrefix;function kc({modules:e,activeTab:t,strings:n,hasUnread:r,onSelect:i}){return/* @__PURE__ */ g(`nav`,{class:`${Oc}-tabbar`,role:`tablist`,"aria-label":n.panelTitle,children:e.map(e=>{let a=Dc[e.layout].Icon,o=e.id===t,s=e.layout===`chat`&&r;return/* @__PURE__ */ _(`button`,{type:`button`,role:`tab`,"aria-selected":o,class:`${Oc}-tab`,onClick:()=>i(e.id),"data-testid":Xo(Y.tab,e.id),children:[/* @__PURE__ */ _(`span`,{class:`${Oc}-tab-icon`,"aria-hidden":`true`,children:[/* @__PURE__ */ g(a,{}),s?/* @__PURE__ */ g(`span`,{class:`${Oc}-tab-badge`,"data-testid":Y.tabBadge,"aria-label":`Unread`}):null]}),/* @__PURE__ */ g(`span`,{class:`${Oc}-tab-label`,children:A(n,e.label)})]},e.id)})})}const Ac=M.cssPrefix;function jc({url:e,title:t,strings:n,onBack:r,actions:i}){return/* @__PURE__ */ _(`div`,{class:`${Ac}-module`,children:[/* @__PURE__ */ g(ss,{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 Mc=M.cssPrefix;function Nc({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:`${Mc}-agent`,children:[/* @__PURE__ */ g(`div`,{class:`${Mc}-agent-avatar`,"data-status":n,children:e.avatar?/* @__PURE__ */ g(`img`,{src:e.avatar,alt:``}):/* @__PURE__ */ g(`span`,{children:hc(r)})}),/* @__PURE__ */ _(`div`,{class:`${Mc}-agent-meta`,children:[/* @__PURE__ */ g(`strong`,{children:r}),i?/* @__PURE__ */ g(`span`,{children:i}):null]})]})}const Pc=[`today`,`yesterday`,`lastWeek`,`older`];function Fc(e,t){let n=Date.parse(t);if(!Number.isFinite(n))return`older`;let r=Math.floor((Lc(e)-Lc(n))/864e5);return r<=0?`today`:r===1?`yesterday`:r<7?`lastWeek`:`older`}function Ic(e,t){let n=/* @__PURE__ */ new Map;for(let r of t){let t=Fc(e,r.lastMessageAt),i=n.get(t);i?i.push(r):n.set(t,[r])}return Pc.filter(e=>n.has(e)).map(e=>({bucket:e,conversations:n.get(e)}))}function Lc(e){let t=new Date(e);return t.setUTCHours(0,0,0,0),t.getTime()}const Rc=R.scope(`history`),zc={today:`dateToday`,yesterday:`dateYesterday`,lastWeek:`dateLastWeek`,older:`dateOlder`};function Bc(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=_a(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=_a(e.conversations,t,n);return r===e.conversations?e:{...t.type===`snapshot`?t.result:e,conversations:r}}function Vc(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 Hc({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&&Bc(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=Bc(a,e);i=[],n=!1,f(a),l(`loaded`),r.saveHistoryCount(a.conversations.length)}).catch(e=>{t||(i=[],n=!1,Rc.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;Rc.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":Y.sidebarNewConversation,children:[/* @__PURE__ */ g(Ja,{}),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=Ic(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[zc[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":Xo(Y.historyItem,e.conversationId),children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-avatar`,"aria-hidden":`true`,children:/* @__PURE__ */ g(So,{})}),/* @__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:Vc(e.lastMessageAt,T,n)})]}),/* @__PURE__ */ _(`span`,{class:`${o}-history-row`,children:[/* @__PURE__ */ g(`span`,{class:`${o}-history-preview`,children:e.preview&&ms(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":Y.historyLoadMore,children:t.loadMoreConversations})}):null]}),w]})}const Uc=M.cssPrefix;function Wc({visible:e,strings:t}){return e?/* @__PURE__ */ g(`div`,{class:`${Uc}-dropzone`,role:`status`,"aria-live":`polite`,children:t.dropZone}):null}const Gc=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,Kc=/^https?:\/\/[^\s.]+\.[^\s]+$/i,qc=/^[+]?[\d\s().-]{6,}$/;function Jc(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>String(t[n]??`{${n}}`))}function Yc(e){return Array.isArray(e)?e.length:+!!e?.trim()}function Xc(e,t,n){let r=e.required??!0,i=e.validation;if(e.type===`multiselect`){let e=Yc(t);return r&&e===0?n.formRequired:e===0?void 0:i?.minSelections!=null&&e<i.minSelections?Jc(n.formChooseAtLeast,{min:i.minSelections}):i?.maxSelections!=null&&e>i.maxSelections?Jc(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(!Gc.test(a))return n.formInvalidEmail;break;case`url`:if(!Kc.test(a))return n.formInvalidUrl;break;case`tel`:if(!qc.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 Jc(n.formNumberTooSmall,{min:i.min});if(i?.max!=null&&e>i.max)return Jc(n.formNumberTooLarge,{max:i.max});break}}if(i?.minLength!=null&&a.length<i.minLength)return Jc(n.formTooShort,{min:i.minLength});if(i?.maxLength!=null&&a.length>i.maxLength)return Jc(n.formTooLong,{max:i.maxLength});if(i?.pattern)try{if(!new RegExp(i.pattern).test(a))return n.formPatternMismatch}catch{}}function Zc(e,t,n){let r={};for(let i of e){let e=Xc(i,t[i.name],n);e&&(r[i.name]=e)}return r}function Qc(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 $c=M.cssPrefix,el=`__other__`;function tl({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(()=>({...al(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=ol(e,v,b),a=Zc(e,i,t);Object.keys(a).length>0?C(a):r(Qc(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:`${$c}-form`,onSubmit:D,onKeyDown:O,"data-testid":f,noValidate:!0,children:[e.map(e=>/* @__PURE__ */ g(nl,{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:`${$c}-form-actions`,children:[o?/* @__PURE__ */ g(`span`,{class:`${$c}-form-hint`,children:o}):null,i&&a?/* @__PURE__ */ g(`button`,{type:`button`,class:`${$c}-form-skip`,onClick:a,disabled:c,"data-testid":h,children:i}):null,/* @__PURE__ */ g(`button`,{type:`submit`,class:`${$c}-form-submit`,disabled:c,"data-testid":p,children:n})]})]})}function nl({field:e,value:t,otherText:n,error:r,disabled:i,typeLabel:a,strings:o,onChange:s,onOtherChange:c}){let l=rl({field:e,value:t,otherText:n,disabled:i,strings:o,onChange:s,onOtherChange:c,fieldTid:Xo(Y.formField,e.name)});return/* @__PURE__ */ _(`label`,{class:`${$c}-field`,"data-field":e.name,"data-invalid":r?`true`:void 0,children:[/* @__PURE__ */ _(`span`,{class:`${$c}-field-head`,children:[/* @__PURE__ */ _(`span`,{class:`${$c}-field-label`,children:[e.label,e.required??!0?/* @__PURE__ */ g(`span`,{class:`${$c}-field-req`,"aria-hidden":`true`,children:` *`}):null]}),a?/* @__PURE__ */ g(`span`,{class:`${$c}-field-type`,children:a}):null]}),l,e.validationHint&&!r?/* @__PURE__ */ g(`span`,{class:`${$c}-field-hint`,children:e.validationHint}):null,r?/* @__PURE__ */ g(`span`,{class:`${$c}-field-error`,role:`alert`,children:r}):null]})}function rl(e){let{field:t,value:n,otherText:r,disabled:i,strings:a,onChange:o,onOtherChange:s,fieldTid:c}=e,l=typeof n==`string`?n:``,u=t.type===`select`?a.formOtherPlaceholder:t.placeholder??a.formOtherPlaceholder,d=t.allowOther&&l===el?/* @__PURE__ */ g(`input`,{class:`${$c}-field-input`,value:r,placeholder:u,disabled:i,onInput:e=>s(e.currentTarget.value)}):null;switch(t.type){case`textarea`:return/* @__PURE__ */ g(`textarea`,{class:`${$c}-field-input`,rows:3,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c});case`select`:return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`select`,{class:`${$c}-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)),t.allowOther?/* @__PURE__ */ g(`option`,{value:el,children:a.formOther}):null]}),d]});case`radio`:return/* @__PURE__ */ _(`div`,{class:`${$c}-field-choices`,role:`radiogroup`,"data-testid":c,children:[(t.options??[]).map(e=>/* @__PURE__ */ _(`label`,{class:`${$c}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${$c}-${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:`${$c}-choice`,children:[/* @__PURE__ */ g(`input`,{type:`radio`,name:`${$c}-${t.name}`,checked:l===el,disabled:i,onChange:()=>o(el)}),/* @__PURE__ */ g(`span`,{children:a.formOther})]}):null,d]});case`checkbox`:return/* @__PURE__ */ _(`label`,{class:`${$c}-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:`${$c}-field-choices`,"data-testid":c,children:[(t.options??[]).map(t=>/* @__PURE__ */ _(`label`,{class:`${$c}-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:`${$c}-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`,{...il(t.type),class:`${$c}-field-input`,value:l,placeholder:t.placeholder,disabled:i,onInput:e=>o(e.currentTarget.value),"data-testid":c})}}function il(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 al(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 ol(e,t,n){let r={...t};for(let i of e){let e=n[i.name]?.trim();if((i.type===`radio`||i.type===`select`)&&i.allowOther&&t[i.name]===el)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 sl=M.cssPrefix;function cl({form:e,strings:t,onSubmit:n,onSkip:r}){return/* @__PURE__ */ _(`div`,{class:`${sl}-form-gate`,"data-testid":Y.formGate,children:[e.title?/* @__PURE__ */ g(`h3`,{class:`${sl}-form-gate-title`,children:e.title}):null,e.description?/* @__PURE__ */ g(`p`,{class:`${sl}-form-gate-desc`,children:e.description}):null,/* @__PURE__ */ g(tl,{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:Y.formSubmit,skipTestId:Y.formSkip})]})}function ll({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:`${sl}-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:`${sl}-form-done`,"data-outcome":e.outcome,"data-testid":Y.formDone,children:[/* @__PURE__ */ _(`summary`,{class:`${sl}-form-done-summary`,"data-testid":Y.formDoneToggle,children:[/* @__PURE__ */ g(mo,{}),a,/* @__PURE__ */ g(Qa,{})]}),/* @__PURE__ */ g(`dl`,{class:`${sl}-form-answers`,"data-testid":Y.formAnswers,children:Object.entries(s).map(([e,n])=>/* @__PURE__ */ _(`div`,{class:`${sl}-form-answer`,children:[/* @__PURE__ */ g(`dt`,{children:t(e)}),/* @__PURE__ */ g(`dd`,{children:n})]},e))})]})}return/* @__PURE__ */ _(`div`,{class:`${sl}-form-done`,"data-outcome":e.outcome,"data-testid":Y.formDone,role:`status`,children:[g(r?po:mo,{}),a,r&&e.form?.reopenable&&n?/* @__PURE__ */ g(`button`,{type:`button`,class:`${sl}-form-done-fill`,"data-testid":Y.formFill,onClick:n,children:t.formFillOut}):null]})}const ul=M.cssPrefix;function dl({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:`${ul}-feedback`,role:`group`,"data-testid":Y.messageFeedback,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${ul}-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":Y.feedbackUp,children:/* @__PURE__ */ g(Vo,{})}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${ul}-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":Y.feedbackDown,children:/* @__PURE__ */ g(Ho,{})}),/* @__PURE__ */ g(`span`,{class:`${ul}-sr-only`,role:`status`,"aria-live":`polite`,children:i?n.feedbackThanks:``})]})}const fl=/* @__PURE__ */ new Set([`hidden`,`submit`,`button`,`reset`,`image`,`file`,`password`]);function pl(e){return e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement}function ml(e){return!pl(e)||e.name===``||e.disabled?!1:!(e instanceof HTMLInputElement&&fl.has(e.type))}function hl(e){let t=e.labels?.[0]?.textContent?.trim();return e.getAttribute(`toolparamdescription`)??(t||e.getAttribute(`aria-description`))??void 0}function gl(e,t){let n=hl(e),r=n?{description:n}:{};return e instanceof HTMLSelectElement?{...r,type:`string`,enum:[...e.options].map(e=>e.value)}:e instanceof HTMLTextAreaElement?{...r,type:`string`}:e.type===`checkbox`?{...r,type:`boolean`}:e.type===`radio`?{...r,type:`string`,enum:t}:e.type===`number`||e.type===`range`?{...r,type:`number`}:{...r,type:`string`}}function _l(e,t){Object.getOwnPropertyDescriptor(Reflect.getPrototypeOf(e)??e,`value`)?.set?.call(e,t),e.dispatchEvent(new Event(`input`,{bubbles:!0})),e.dispatchEvent(new Event(`change`,{bubbles:!0}))}function vl(e){return e==null?``:typeof e==`string`?e:JSON.stringify(e)}function yl(e,t){e instanceof HTMLInputElement&&e.type===`checkbox`?e.checked!==(t===!0||t===`true`)&&e.click():e instanceof HTMLInputElement&&e.type===`radio`?e.value===vl(t)&&!e.checked&&e.click():_l(e,vl(t))}function bl(e,t,n){let r=[...e.elements].filter(ml),i={},a=/* @__PURE__ */ new Set;for(let e of r){var o;let t=r.flatMap(t=>t instanceof HTMLInputElement&&t.type===`radio`&&t.name===e.name?[t.value]:[]);i[o=e.name]??(i[o]=gl(e,t)),e.required&&a.add(e.name)}return{name:t,description:n,inputSchema:{type:`object`,properties:i,...a.size>0?{required:[...a]}:{}},execute(t){let n=typeof t==`object`&&t?Object.entries(t):[];for(let[e,t]of n)for(let n of r)n.name===e&&yl(n,t);if(!e.hasAttribute(`toolautosubmit`))return`Filled in the form. The visitor still needs to check it and press its submit button.`;let i=[...new Set([...e.elements].flatMap(e=>pl(e)&&e.name&&!e.checkValidity()?[e.name]:[]))];return i.length>0?`Filled in the form, but it can't be submitted yet: ${i.join(`, `)} still needs the visitor. Ask them to complete it and press the submit button.`:(setTimeout(()=>e.requestSubmit(),0),`Filled in the form and submitted it.`)}}}function xl(){return[...document.querySelectorAll(`form[toolname][tooldescription]`)].flatMap(e=>{let t=e.getAttribute(`toolname`)?.trim()??``,n=e.getAttribute(`tooldescription`)?.trim()??``;return t&&n?[bl(e,t,n)]:[]})}const Sl=`${M.cssPrefix}.page-tools`;function Cl(e){return typeof e==`object`&&!!e}function wl(e){return Cl(e)&&(e.state===`running`||e.state===`stopped`||e.state===`finished`&&Cl(e.outcome))}function Tl(e){let t=e?JSON.parse(e):void 0;return Cl(t)?{sent:Array.isArray(t.sent)?t.sent.filter(e=>typeof e==`string`):[],calls:Object.fromEntries(Object.entries(Cl(t.calls)?t.calls:{}).filter(e=>wl(e[1])))}:{sent:[],calls:{}}}let El={sent:[],calls:{}};function Dl(){try{El=Tl(sessionStorage.getItem(Sl))}catch{}return El}function Ol(e){El=e;try{sessionStorage.setItem(Sl,JSON.stringify(e))}catch{}}const kl={markSent(e){let t=Dl();Ol({...t,sent:[...t.sent.filter(t=>t!==e),e].slice(-20)})},sentHere(e){return Dl().sent.includes(e)},get(e){return Dl().calls[e]},set(e,t){let n=Dl(),r=Object.entries(n.calls).filter(([t])=>t!==e);Ol({...n,calls:Object.fromEntries([...r,[e,t]].slice(-50))})},clear(e){let t=Dl();e.some(e=>e in t.calls)&&Ol({...t,calls:Object.fromEntries(Object.entries(t.calls).filter(([t])=>!e.includes(t)))})}},Al=R.scope(`page-tools`),jl=3e4,Ml=Symbol.for(`${M.cssPrefix}.page-tools`),Nl={state:`output-error`,errorText:`The page reloaded before this finished, so it may or may not have taken effect. Check with the visitor before trying it again.`},Pl=`The visitor stopped this before it finished.`;function Fl(e){return typeof e==`object`&&!!e}function Il(e){return Fl(e)&&Array.isArray(e.registered)&&e.runs instanceof Map}function Ll(){let e=Reflect.get(globalThis,Ml);if(Il(e))return e;let t={registered:[],runs:/* @__PURE__ */ new Map};return Reflect.set(globalThis,Ml,t),t}function Rl(e,t){let n=Fl(t)&&t.signal instanceof AbortSignal?t.signal:void 0;if(n?.aborted)return;let r=Ll().registered;r.push(e);function i(){let t=r.indexOf(e);t>=0&&r.splice(t,1)}n?.addEventListener(`abort`,i,{once:!0})}function zl(e){return e.replace(/[^A-Za-z0-9_-]/g,`_`).slice(0,58)}function Bl(e){if(!Fl(e)||typeof e.name!=`string`||!zl(e.name))return;let t=[e.description,e.title].find(e=>typeof e==`string`&&e.trim()!==``)??e.name;return{name:zl(e.name),description:t.trim().slice(0,1024),inputSchema:{properties:{},...Fl(e.inputSchema)?e.inputSchema:{},type:`object`},consequential:Fl(e.annotations)&&e.annotations.consequentialHint===!0}}function Vl(e){return e.flatMap(e=>{let t=Bl(e),n=Fl(e)?e.execute:void 0;return!t||typeof n!=`function`?(Al.warn(`skipped a tool without a name or an execute function`,e),[]):[{...t,run:(t,r)=>Reflect.apply(n,e,[t,{signal:r}])}]})}async function Hl(){let e=Reflect.get(document,`modelContext`)??Reflect.get(navigator,`modelContext`);if(!Fl(e)||typeof e.getTools!=`function`||typeof e.executeTool!=`function`)return[];let t=e.getTools,n=e.executeTool,r=await Promise.race([Promise.resolve().then(()=>Reflect.apply(t,e,[])),na(1e3).then(()=>[])]).catch(()=>[]);return(Array.isArray(r)?r:[]).flatMap(t=>{let r=Bl(t);return r?[{...r,run:(r,i)=>Reflect.apply(n,e,[t,r,{signal:i}])}]:[]})}async function Ul(e=[]){let t=Vl(xl()),n=new Set(t.map(e=>e.name)),r=[...(await Hl()).filter(e=>!n.has(e.name)),...t,...Vl(e),...Vl(Ll().registered)];return new Map(r.map(e=>[e.name,e]))}function Wl(e){return[...e.values()].map(({name:e,description:t,inputSchema:n,consequential:r})=>r?{name:e,description:t,inputSchema:n,annotations:{consequentialHint:!0}}:{name:e,description:t,inputSchema:n})}function Gl(e){return e?.execution===`client`}function Kl(e){return e.startsWith(`site__`)?e.slice(6):e}function ql(e){if(e===void 0||typeof e==`function`||typeof e==`symbol`)return null;let t=/* @__PURE__ */ new WeakSet,n=JSON.stringify(e,(e,n)=>{if(typeof n==`bigint`)return n.toString();if(typeof n!=`function`&&typeof n!=`symbol`)return n instanceof Node?`[${n.nodeName.toLowerCase()}]`:Fl(n)?t.has(n)?`[circular]`:(t.add(n),n):n});return n.length>jl?{truncated:!0,preview:n.slice(0,jl)}:JSON.parse(n)}async function Jl(e){let t=Kl(e.toolName),n=(await Ul(e.optionTools)).get(t);return n?Promise.resolve().then(()=>n.run(e.input,e.signal)).then(e=>({state:`output-available`,output:ql(e)})).catch(e=>(Al.warn(`a page tool failed`,{name:t,error:e}),{state:`output-error`,errorText:(e instanceof Error?e.message:String(e)).slice(0,1e3)||`The page tool failed.`})):{state:`output-error`,errorText:`This page doesn't offer "${t}" right now; the visitor may have moved on. Tell them, or continue without it.`}}function Yl(e){let{toolCallId:t}=e,n=kl.get(t);if(n?.state===`finished`)return Promise.resolve(n.outcome);let{runs:r}=Ll(),i=r.get(t);if(i)return i.outcome;if(n?.state===`running`)return kl.set(t,{state:`finished`,outcome:Nl}),e.onSettled(`interrupted`,0),Promise.resolve(Nl);let a=new AbortController,o=performance.now();kl.set(t,{state:`running`});let s=Jl({...e,signal:a.signal}).then(n=>(r.delete(t),kl.get(t)?.state===`running`&&(kl.set(t,{state:`finished`,outcome:n}),e.onSettled(n.state===`output-available`?`completed`:`failed`,Math.round(performance.now()-o))),n));return r.set(t,{outcome:s,controller:a}),s}function Xl(e){return e===Nl.errorText||e===Pl}function Zl(e){return kl.set(e,{state:`stopped`}),Ll().runs.get(e)?.controller.abort(),Pl}function Ql(e){kl.clear([e]),Ll().runs.get(e)?.controller.abort()}const $l=M.cssPrefix;function eu(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 tu(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?`${eu(e.slice(0,t))} · ${eu(n)}`:e}function nu(e){let t=e.indexOf(`__`),n=e.slice(t+2);return t>0&&n?eu(n):tu(e)}function ru(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 iu({status:e,icon:t,label:n}){return/* @__PURE__ */ _(`span`,{class:`${$l}-toolui-badge ${$l}-toolui-status`,"data-status":e,children:[/* @__PURE__ */ g(`span`,{class:`${$l}-toolui-status-icon`,children:t}),n]})}function au(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 ou(e,t,n={}){return n.submitted?`responded`:n.incomplete?`incomplete`:lu(au(e,t),n.superseded,n.live??!0,n.stopped??!1)}function su({status:e}){return g(e===`stopped`?$a:e===`denied`||e===`error`||e===`superseded`||e===`incomplete`?Ko:e===`completed`||e===`responded`?Go:Wo,{})}function cu(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;case`incomplete`:return t.statusIncomplete;case`stopped`:return t.statusStopped;default:return t.statusRunning}}function lu(e,t,n,r){return t&&(e===`awaiting`||e===`running`)?`superseded`:r&&(e===`running`||e===`responded`)?`stopped`:!n&&e===`running`?`error`:e}function uu({state:e,approval:t,strings:n,superseded:r,live:i=!0,submitted:a=!1,incomplete:o=!1,stopped:s=!1}){let c=ou(e,t,{superseded:r,live:i,submitted:a,incomplete:o,stopped:s});return/* @__PURE__ */ g(iu,{status:c,icon:/* @__PURE__ */ g(su,{status:c}),label:cu(c,n)})}function du({name:e,state:t,approval:n,strings:r,superseded:i,live:a,submitted:o,incomplete:s,stopped:c}){return/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`span`,{class:`${$l}-toolui-name-pill`,children:[/* @__PURE__ */ g(Uo,{}),/* @__PURE__ */ g(`span`,{class:`${$l}-toolui-name-text`,children:e})]}),/* @__PURE__ */ g(uu,{state:t,approval:n,strings:r,superseded:i,live:a,submitted:o,incomplete:s,stopped:c}),/* @__PURE__ */ g(`span`,{class:`${$l}-toolui-chevron`,children:/* @__PURE__ */ g(yo,{})})]})}function fu({part:e,strings:t,testid:n,superseded:r,live:a,submitted:o,incomplete:s,stopped:c,open:l}){let u=f(()=>i(()=>e.inputSig.value),[e]),d=f(()=>i(()=>e.outputSig.value),[e]),p=f(()=>i(()=>e.errorSig.value),[e]),m=f(()=>i(()=>e.stateSig.value),[e]),h=f(()=>i(()=>e.approvalSig.value),[e]),v=f(()=>i(()=>Gl(e.toolMetadata)&&Xl(e.errorSig.value)),[e]),y=s===!0||v.value;return/* @__PURE__ */ _(`details`,{class:`${$l}-toolui ${$l}-toolui-collapsible`,"data-testid":n,open:l||void 0,children:[/* @__PURE__ */ g(`summary`,{class:`${$l}-toolui-head`,children:/* @__PURE__ */ g(du,{name:tu(e.toolName),state:m.value,approval:h.value,strings:t,superseded:r,live:a,submitted:o,incomplete:y,stopped:c})}),/* @__PURE__ */ g(pu,{label:t.toolParameters,value:u.value}),d.value===void 0?null:/* @__PURE__ */ g(pu,{label:t.toolResult,value:d.value}),p.value&&!y?/* @__PURE__ */ g(pu,{label:t.statusError,value:p.value,error:!0}):null]})}function pu({label:e,value:t,error:n}){let r=n?typeof t==`string`?t:``:gu(hu(t));return r?/* @__PURE__ */ _(`div`,{class:`${$l}-toolui-section`,children:[/* @__PURE__ */ g(`span`,{class:`${$l}-toolui-label`,children:e}),/* @__PURE__ */ g(`pre`,{class:`${$l}-toolui-code`,"data-error":n?`true`:void 0,children:r})]}):null}function mu(e){return!!gu(e.inputSig.value)||!!e.errorSig.value||!!gu(hu(e.outputSig.value))}function hu(e){if(e&&typeof e==`object`){let t=e;if(t.storage===`tool-result-ref`&&`summary`in t)return t.summary}return e}function gu(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 _u(e){return e.partsSig.value.some(e=>e.kind===`text`&&e.textSig.value.length>0)}function vu(e){return e.partsSig.value.some(e=>e.kind===`reasoning`)}function yu(e){return e.streaming&&!e.bufferedHold&&!(e.reasoningVisible&&e.working)}function bu(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:yu({streaming:t,bufferedHold:a,reasoningVisible:n,working:o}),emptyReply:r,hidden:i}}function xu(e,t){let n=e.stateSig.value,r=e.approvalSig.value,{terminal:i,responded:a,decided:o}=ru(n,r),s=t.continuationStreaming===!0&&!o,c=t.superseded&&!o&&!s;return{pill:ou(n,r,{superseded:c,live:t.live,submitted:s,incomplete:Gl(e.toolMetadata)&&Xl(e.errorSig.value),stopped:t.stopped}),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 Su=M.cssPrefix;function Cu({part:e,strings:t}){let n=e.title||e.filename||e.url||t.sources;return e.url?/* @__PURE__ */ _(`a`,{class:`${Su}-source`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,"data-testid":Y.source,children:[/* @__PURE__ */ g(`span`,{class:`${Su}-source-icon`,"aria-hidden":`true`,children:`🔗`}),/* @__PURE__ */ g(`span`,{class:`${Su}-source-label`,children:n})]}):/* @__PURE__ */ _(`span`,{class:`${Su}-source`,"data-testid":Y.source,children:[/* @__PURE__ */ g(`span`,{class:`${Su}-source-icon`,"aria-hidden":`true`,children:`📄`}),/* @__PURE__ */ g(`span`,{class:`${Su}-source-label`,children:n})]})}const wu=M.cssPrefix;function Tu(e){return!e||typeof e!=`object`||Array.isArray(e)?[]:Object.entries(e).flatMap(([e,t])=>typeof t==`string`?t.trim()?[{key:e,value:t.trim()}]:[]:typeof t==`number`||typeof t==`boolean`?[{key:e,value:String(t)}]:[]).slice(0,4)}function Eu({part:e,strings:t,active:n,superseded:r=!1,continuationStreaming:a=!1,stopped:o=!1,onDecision:s,onEdit:c}){let l=f(()=>i(()=>e.approvalSig.value),[e]),u=f(()=>i(()=>xu(e,{active:n,superseded:r,continuationStreaming:a,stopped:o})),[e,n,r,a,o]).value,{terminal:d,showApproveReject:p,showAnswered:m,showSubmitted:v,showEdit:y,skipped:b}=u,x=tu(e.toolName),S=u.answeredApproved,C=e.toolCallId,w=Tu(e.inputSig.value),T=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`p`,{class:`${wu}-toolui-prompt`,children:t.approvalPrompt.replace(`{tool}`,x)}),w.length>0?/* @__PURE__ */ g(`dl`,{class:`${wu}-toolui-fields`,"data-testid":Y.toolApprovalFields,children:w.map(({key:e,value:t})=>/* @__PURE__ */ _(`div`,{children:[/* @__PURE__ */ g(`dt`,{children:e}),/* @__PURE__ */ g(`dd`,{title:t,children:t})]},e))}):null,/* @__PURE__ */ g(`p`,{class:`${wu}-toolui-subtle`,children:t.approvalBody})]});v?T=/* @__PURE__ */ g(`p`,{class:`${wu}-toolui-subtle`,children:t.approvalSubmitting}):m&&S!==!1?T=/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`p`,{class:`${wu}-toolui-prompt`,children:[t.approvalYourResponse.replace(`{decision}`,S?t.approve:t.reject),l.value?.reason?` — ${l.value.reason}`:``]}),y?/* @__PURE__ */ g(`p`,{class:`${wu}-toolui-subtle`,children:t.approvalEditHint}):null,y?null:/* @__PURE__ */ g(`p`,{class:`${wu}-toolui-subtle`,children:t.approvalSubmitting})]}):m&&(T=/* @__PURE__ */ g(h,{}));let E=p||v||y||m&&S!==!1;return/* @__PURE__ */ _(`div`,{class:`${wu}-toolui-group`,"data-testid":u.decided?Y.toolDecision:Y.toolApproval,children:[/* @__PURE__ */ g(fu,{part:e,strings:t,superseded:b,submitted:v,stopped:o,open:p}),b||d||!E?null:/* @__PURE__ */ _(`div`,{class:`${wu}-toolui ${wu}-toolui-body`,children:[T,p?/* @__PURE__ */ _(`div`,{class:`${wu}-toolui-actions`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${wu}-form-skip`,disabled:!n,onClick:()=>s(C,!1),"data-testid":Y.toolReject,children:t.reject}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${wu}-form-submit`,disabled:!n,onClick:()=>s(C,!0),"data-testid":Y.toolApprove,children:t.approve})]}):null,y?/* @__PURE__ */ g(`div`,{class:`${wu}-toolui-actions`,children:/* @__PURE__ */ g(`button`,{type:`button`,class:`${wu}-form-skip`,onClick:()=>c(C),"data-testid":Y.toolEdit,children:t.edit})}):null]})]})}const Du=[`text`,`email`,`phone`,`number`,`date`,`single-select`,`multi-select`,`boolean`];function Ou(e){return typeof e==`object`&&!!e}function ku(e){let t=Ou(e)?e:{},n=(Array.isArray(t.questions)?t.questions:[]).map(Au).filter(e=>e!==null);return{intro:Nu(t.intro),questions:n}}function Au(e,t){if(!Ou(e))return null;let n=Du.find(t=>t===e.type)??`text`;return{key:Nu(e.key)??`q${t+1}`,question:Nu(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:Nu(e.helpText)}}function ju(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 Mu(e,t,n){return e.questions.map(e=>{let r=ju(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 Nu(e){return typeof e==`string`&&e.trim()?e.trim():void 0}const Pu=M.cssPrefix;function Fu({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 Iu={text:`qtypeText`,email:`qtypeEmail`,phone:`qtypePhone`,number:`qtypeNumber`,date:`qtypeDate`,"single-select":`qtypeChooseOne`,"multi-select":`qtypeChooseAny`,boolean:`qtypeBoolean`};function Lu(e,t){let n={};for(let r of e)n[r.key]=t[Iu[r.type]];return n}function Ru({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(()=>ku(e.inputSig.value)),[e]).value,{terminal:d,decided:p}=ru(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?Ka:Co,k=y?t.inputRequired:t.inputBadge,A=v?/* @__PURE__ */ g(`p`,{class:`${Pu}-toolui-subtle`,children:t.approvalSubmitting}):y?/* @__PURE__ */ g(zu,{req:u,strings:t,active:n,resolve:(t,n)=>o(e.toolCallId,n,t)}):E?/* @__PURE__ */ g(tl,{fields:Mu(u,t.confirmYes,t.confirmNo),strings:t,submitLabel:t.inputSubmit,onSubmit:()=>{},disabled:!0,hideActions:!0,fieldTypeLabels:Lu(S,t),initialValues:h?Gu(S,l?.reason):void 0}):/* @__PURE__ */ g(Bu,{questions:S,answers:h?Wu(l?.reason):{},strings:t}),{status:j,statusLabel:M}=Fu({skipped:b,submitted:v,strings:t});return/* @__PURE__ */ _(`details`,{class:`${Pu}-toolui ${Pu}-toolui-collapsible${r?` ${Pu}-toolui-stale`:``}`,open:T,onToggle:e=>{let t=e.currentTarget.open;t!==T&&w(t)},"data-testid":y?Y.toolAskQuestions:Y.toolDecision,children:[/* @__PURE__ */ _(`summary`,{class:`${Pu}-toolui-head`,children:[/* @__PURE__ */ _(`span`,{class:`${Pu}-toolui-q-pill`,children:[/* @__PURE__ */ g(O,{}),k]}),/* @__PURE__ */ _(`span`,{class:`${Pu}-toolui-head-end`,children:[y?null:/* @__PURE__ */ g(iu,{status:j,icon:g(b?Ko:Go,{}),label:M}),/* @__PURE__ */ g(`span`,{class:`${Pu}-toolui-chevron`,children:/* @__PURE__ */ g(yo,{})})]})]}),/* @__PURE__ */ _(`div`,{class:`${Pu}-toolui-collapse-body`,children:[u.intro?/* @__PURE__ */ g(`div`,{class:`${Pu}-toolui-desc`,children:u.intro}):null,A,y||v?null:/* @__PURE__ */ _(`div`,{class:`${Pu}-toolui-footer`,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${Pu}-toolui-options-toggle`,onClick:()=>D(e=>!e),"data-testid":Y.toolAskOptions,children:[/* @__PURE__ */ g(`span`,{class:`${Pu}-toolui-options-chevron${E?` ${Pu}-open`:``}`,children:/* @__PURE__ */ g(yo,{})}),E?t.hideOptions:t.showOptions]}),x?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Pu}-form-skip`,onClick:()=>s(e.toolCallId),"data-testid":Y.toolEdit,children:t.edit}):null]})]})]})}function zu({req:e,strings:t,active:n,resolve:r}){let i=Mu(e,t.confirmYes,t.confirmNo),a=e.questions.length===1&&e.questions[0]?.type===`text`;return/* @__PURE__ */ g(tl,{fields:i,strings:t,disabled:!n,submitLabel:t.inputSubmit,footerHint:a?t.inputSubmitHint:void 0,onSubmit:t=>r(Hu(e.questions,t),!0),skipLabel:t.inputSkip,onSkip:()=>r(void 0,!1),submitOnEnter:a,fieldTypeLabels:Lu(e.questions,t),submitTestId:Y.toolInputSubmit,skipTestId:Y.toolInputSkip})}function Bu({questions:e,answers:t,strings:n}){return/* @__PURE__ */ g(`div`,{class:`${Pu}-toolui-summary`,"data-testid":Y.toolAskSummary,children:e.map(e=>/* @__PURE__ */ _(`div`,{class:`${Pu}-field`,children:[/* @__PURE__ */ g(`span`,{class:`${Pu}-field-head`,children:/* @__PURE__ */ _(`span`,{class:`${Pu}-field-label`,children:[e.question,e.required?/* @__PURE__ */ g(`span`,{class:`${Pu}-field-req`,"aria-hidden":`true`,children:` *`}):null]})}),/* @__PURE__ */ g(`p`,{class:`${Pu}-toolui-answer`,children:Vu(e,t[e.key],n)||`—`})]},e.key))})}function Vu(e,t,n){return e.type===`boolean`?t===`yes`?n.confirmYes:t===`no`?n.confirmNo:t??``:t??``}function Hu(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 Uu(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 Wu(e){let t=Uu(e),n={};for(let[e,r]of Object.entries(t))n[e]=Array.isArray(r)?r.join(`, `):r;return n}function Gu(e,t){let n=Uu(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 Ku({part:e,strings:t,live:n,superseded:r,stopped:a=!1}){let o=Gl(e.toolMetadata);if(!f(()=>i(()=>mu(e)),[e]).value&&!o)return null;let s=e.outputSig.value===void 0&&!e.errorSig.value;return/* @__PURE__ */ g(fu,{part:e,strings:t,testid:Y.toolCall,live:n||o&&!r,incomplete:o&&r&&s,stopped:a})}const Z=M.cssPrefix;function qu(e){if(e.kind!==`tool`)return!1;let t=e.stateSig.value;return t!==`approval-requested`&&t!==`approval-responded`&&!e.toolMetadata?.card&&!Gl(e.toolMetadata)}function Ju(e,t){let n=[];for(let[r,i]of e.entries()){let e=n.at(-1);i.kind===`reasoning`&&t.showReasoning||qu(i)&&mu(i)?e?.kind===`steps`?(e.parts.push(i),e.indices.push(r)):n.push({kind:`steps`,parts:[i],indices:[r]}):i.kind===`step-start`||i.kind===`reasoning`||i.kind===`source`&&!t.showSources||qu(i)||n.push({kind:`part`,part:i,index:r})}return n}function Yu(e){if(e&&typeof e==`object`)return Object.values(e).find(e=>typeof e==`string`&&e.trim().length>0)?.trim()}function Xu(e,t){let n=[...new Set(t)];if(e&&n.length!==0&&!n.some(t=>t<0||t>=e.length))return n.reduce((t,n)=>t+(e[n]?.durationMs??0),0)}function Zu(e){let t=[];for(let n of e)t.push((t.at(-1)??-1)+ +(n.kind===`step-start`));return t}function Qu(e,t){return e.streaming?t.thinking:e.reasoningMs===void 0?t.thought:t.thoughtFor.replace(`{time}`,$u(e.reasoningMs))}function $u(e){if(e<1e4)return`${Number((e/1e3).toFixed(1))} s`;let t=Math.round(e/1e3);return t<60?`${t} s`:`${Math.floor(t/60)} m ${t%60} s`}function ed(e){return e.split(`
|
|
32
|
+
`).map(e=>e.trim()).findLast(e=>/^\*\*[^*].*\*\*$/.test(e))?.slice(2,-2).trim()}function td(e,t){return e?.kind===`tool`?`${nu(e.toolName)}…`:(e&&ed(e.textSig.value))??t.thinking}function nd(e,t){let n=e.map(e=>e.kind===`tool`?{kind:`tool`,part:e,name:tu(e.toolName),summary:Yu(e.inputSig.value),status:ou(e.stateSig.value,e.approvalSig.value,{live:t.live,stopped:t.stopped})}:{kind:`thought`,part:e}),r=n.flatMap(e=>e.kind===`tool`?[e]:[]),i=/* @__PURE__ */ new Map;for(let e of r)i.set(nu(e.part.toolName),(i.get(nu(e.part.toolName))??0)+1);let a=r.some(e=>e.status===`stopped`),[o]=r;return{tools:[...i].map(([e,t])=>({name:e,count:t})),...r.length===1&&o?{single:{name:nu(o.part.toolName),...o.summary?{summary:o.summary}:{}}}:{},failed:r.filter(e=>e.status===`error`).length,...t.stopped&&a?{stopped:{finished:r.filter(e=>e.status!==`stopped`).length}}:{},rows:n}}function rd({parts:e,steps:t=[],stepTimings:n,timed:r=!0,strings:a,live:o,running:s,stopped:c=!1,runStartedAt:l}){let[u,d]=m(!1),[p,h]=m(!1),v=nd(e,{live:o,stopped:c}),y=e.at(-1),b=f(()=>i(()=>td(y,a)),[y,a]).value,x=r?Xu(n,t):void 0;function S(){d(!u),h(!0)}return/* @__PURE__ */ _(`div`,{class:`${Z}-steps`,"data-testid":Y.toolSteps,"data-running":s?`true`:void 0,"data-stopped":v.stopped?`true`:void 0,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${Z}-steps-head`,"aria-expanded":u,onClick:S,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-steps-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(ad,{running:s,stopped:v.stopped!==void 0})}),/* @__PURE__ */ g(`span`,{class:`${Z}-steps-label`,children:s?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-live`,children:b}):/* @__PURE__ */ g(sd,{view:v,strings:a})}),!s&&v.failed>0?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-failed`,children:a.toolStepsFailed.replace(`{count}`,String(v.failed))}):null,s&&l?/* @__PURE__ */ g(id,{since:l}):null,!s&&x!==void 0?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-time`,children:$u(x)}):null,/* @__PURE__ */ g(`span`,{class:`${Z}-steps-chevron`,"data-open":u?`true`:void 0,children:/* @__PURE__ */ g(yo,{})})]}),/* @__PURE__ */ g(`span`,{class:`${Z}-sr-only`,role:`status`,children:s?b:``}),/* @__PURE__ */ g(`div`,{class:`${Z}-steps-body`,"data-open":u?`true`:void 0,inert:!u,children:/* @__PURE__ */ g(`div`,{class:`${Z}-steps-body-inner`,children:p?/* @__PURE__ */ g(`ol`,{class:`${Z}-steps-list`,children:v.rows.map((e,r)=>e.kind===`tool`?/* @__PURE__ */ g(cd,{row:e,strings:a},e.part.toolCallId):/* @__PURE__ */ g(ud,{part:e.part,current:s&&r===v.rows.length-1,reasoningMs:n?.[t[r]??-1]?.reasoningMs,strings:a},`${e.part.id}#${r}`))}):null})})]})}function id({since:e}){let[t,n]=m(()=>Date.now());u(()=>{let e=setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(e)},[]);let r=Math.max(0,Math.floor((t-Date.parse(e))/1e3));return/* @__PURE__ */ g(`span`,{class:`${Z}-steps-time`,children:r<60?`${r} s`:`${Math.floor(r/60)} m ${r%60} s`})}function ad({running:e,stopped:t}){return e?/* @__PURE__ */ g(`span`,{class:`${Z}-loading-spinner`}):g(t?$a:Uo,{})}function od(e,t){return e===0?t.statusStopped:e===1?t.toolStepsStoppedOne:t.toolStepsStopped.replace(`{count}`,String(e))}function sd({view:e,strings:t}){return e.stopped?/* @__PURE__ */ g(h,{children:od(e.stopped.finished,t)}):e.single?/* @__PURE__ */ _(h,{children:[e.single.name,e.single.summary?/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(`span`,{class:`${Z}-steps-sep`,"aria-hidden":`true`,children:`·`}),/* @__PURE__ */ g(`span`,{class:`${Z}-steps-summary`,children:e.single.summary})]}):null]}):/* @__PURE__ */ g(h,{children:e.tools.map(({name:e,count:t},n)=>/* @__PURE__ */ _(`span`,{class:`${Z}-steps-name`,children:[n>0?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-sep`,"aria-hidden":`true`,children:`·`}):null,e,t>1?/* @__PURE__ */ _(`span`,{class:`${Z}-steps-count`,children:[`×`,t]}):null]},e))})}function cd({row:e,strings:t}){let[n,r]=m(!1),{part:i,name:a,summary:o,status:s}=e;return/* @__PURE__ */ _(`li`,{class:`${Z}-steps-row`,"data-testid":Y.toolStep,"data-status":s,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-steps-row-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(ld,{status:s})}),/* @__PURE__ */ _(`div`,{class:`${Z}-steps-row-main`,children:[/* @__PURE__ */ _(`button`,{type:`button`,class:`${Z}-steps-row-head`,"aria-expanded":n,onClick:()=>r(!n),children:[/* @__PURE__ */ _(`span`,{class:`${Z}-steps-row-label`,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-steps-row-name`,children:a}),o?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-row-summary`,children:o}):null]}),s===`error`?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-failed`,children:t.statusError}):null,s===`denied`?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-denied`,children:t.statusDenied}):null,s===`stopped`?/* @__PURE__ */ g(`span`,{class:`${Z}-steps-denied`,children:t.statusStopped}):null,/* @__PURE__ */ g(`span`,{class:`${Z}-steps-chevron`,"data-open":n?`true`:void 0,children:/* @__PURE__ */ g(yo,{})})]}),n?/* @__PURE__ */ _(`div`,{class:`${Z}-steps-row-body`,children:[/* @__PURE__ */ g(pu,{label:t.toolParameters,value:i.inputSig.value}),i.outputSig.value===void 0?null:/* @__PURE__ */ g(pu,{label:t.toolResult,value:i.outputSig.value}),i.errorSig.value?/* @__PURE__ */ g(pu,{label:t.statusError,value:i.errorSig.value,error:!0}):null]}):null]})]})}function ld({status:e}){return e===`running`?/* @__PURE__ */ g(`span`,{class:`${Z}-loading-spinner`}):g(e===`stopped`?$a:e===`error`||e===`denied`?Ko:Go,{})}function ud({part:e,current:t,reasoningMs:n,strings:r,standalone:a=!1}){let[o,s]=m(!1),c=f(()=>i(()=>e.textSig.value.trim()===``),[e]).value,l=f(()=>i(()=>e.textSig.value.length>200),[e]).value,u=Qu({streaming:t,reasoningMs:n},r);return/* @__PURE__ */ _(a?`div`:`li`,{class:`${Z}-steps-row ${Z}-steps-thought`,"data-status":`thought`,"data-testid":a?Y.reasoning:void 0,children:[/* @__PURE__ */ g(`span`,{class:`${Z}-steps-row-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(qo,{})}),/* @__PURE__ */ _(`div`,{class:`${Z}-steps-row-main`,children:[/* @__PURE__ */ g(`span`,{class:t?`${Z}-steps-thought-label ${Z}-steps-live`:`${Z}-steps-thought-label`,children:u}),c?null:/* @__PURE__ */ g(`div`,{class:`${Z}-steps-thought-text ${Z}-reasoning-body`,"data-clamped":l&&!o?`true`:void 0,children:/* @__PURE__ */ g(cs,{textSig:e.textSig,doneSig:e.doneSig})}),l&&!c?/* @__PURE__ */ _(`button`,{type:`button`,class:`${Z}-steps-thought-more`,"aria-expanded":o,onClick:()=>s(!o),children:[o?r.thoughtsShowLess:r.thoughtsShowMore,/* @__PURE__ */ g(`span`,{class:`${Z}-steps-chevron`,"data-open":o?`true`:void 0,children:/* @__PURE__ */ g(yo,{})})]}):null]})]})}const Q=M.cssPrefix,dd=y(fd);function fd({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,reconnecting:h=!1}){let v=[...f(()=>i(()=>e.partsSig.value),[e]).value];for(let t of e.attachments??[])t.url&&!v.some(e=>e.kind===`file`&&e.url===t.url)&&v.push({kind:`file`,url:t.url,mediaType:t.mediaType,filename:t.name,fileId:t.id,fileSize:t.size});let y=f(()=>i(()=>Xi(e)),[e]),b=f(()=>i(()=>_u(e)),[e]),x=f(()=>i(()=>a&&vu(e)),[e,a]),S=f(()=>i(()=>Qi(e,x.value)),[e,x]),C=f(()=>i(()=>!Oi(e)),[e]),w=t===`streaming`,T=e.role===`assistant`&&w,E=bu({streaming:T,responseMode:r,reasoningVisible:x.value,hasAnswerText:b.value,emptyReply:y.value,hidden:S.value}),{bufferedHold:D,showStreamDots:O}=E;if(E.hidden)return null;let k=md(e.createdAt),A=e.role===`assistant`||e.role===`operator`,j=p&&!!m&&!!e.serverMessageId&&A&&!w&&t!==`error`&&!y.value,M=w?``:v.filter(e=>e.kind===`text`).map(t=>e.role===`assistant`?$r(t.textSig.peek()):t.textSig.peek()).join(`
|
|
32
33
|
|
|
33
|
-
`).trim(),j=!S&&t!==`error`&&!v.value&&A.length>0,te=o?Bu(h,{showReasoning:a,showSources:s}):h.map((e,t)=>({kind:`part`,part:e,index:t}));function ne(r,i){return/* @__PURE__ */ g(Zu,{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`||Ni(e,i)),superseded:l,continuationStreaming:e.continuationStreaming===!0,tool:u},`${nd(r)}#${i}`)}let M=k||j;return/* @__PURE__ */ g(`div`,{class:`${Ku}-bubble-row`,"data-role":e.role,"data-testid":Wo(Y.messageBubble,e.serverMessageId??e.id),children:/* @__PURE__ */ _(`div`,{class:`${Ku}-bubble-col`,children:[/* @__PURE__ */ _(`div`,{class:`${Ku}-bubble`,children:[e.role===`operator`&&e.operatorInitials?/* @__PURE__ */ g(`span`,{class:`${Ku}-bubble-author`,children:e.operatorInitials}):null,/* @__PURE__ */ _(`div`,{class:`${Ku}-bubble-body`,children:[T?/* @__PURE__ */ g(id,{label:n.loading}):te.flatMap((e,t)=>e.kind===`part`?[ne(e.part,e.index)]:e.parts.some(e=>e.kind===`tool`)?[/* @__PURE__ */ g(Hu,{parts:e.parts,strings:n,live:C,running:C&&t===te.length-1},`steps#${e.indices[0]}`)]:e.parts.map((t,n)=>ne(t,e.indices[n]??n))),D&&/* @__PURE__ */ g(rd,{}),t===`error`||v.value?/* @__PURE__ */ _(`div`,{class:`${Ku}-error`,role:`alert`,children:[/* @__PURE__ */ g(`span`,{children:e.errorText??n.errorGeneric}),d?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ku}-error-retry`,onClick:()=>d(e),"data-testid":Y.messageRetry,children:n.errorRetry}):null]}):null]})]}),O||M?/* @__PURE__ */ _(`div`,{class:`${Ku}-bubble-meta`,children:[O?/* @__PURE__ */ g(`time`,{class:`${Ku}-bubble-time`,dateTime:O.iso,title:O.full,children:O.short}):null,M?/* @__PURE__ */ _(`div`,{class:`${Ku}-bubble-actions`,children:[k&&e.serverMessageId?/* @__PURE__ */ g(il,{messageId:e.serverMessageId,initial:e.feedback??null,strings:n,onFeedback:m}):null,j?/* @__PURE__ */ g(Yu,{text:A,strings:n}):null]}):null]}):null]})})}function Yu({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:`${Ku}-msg-action`,"data-active":n?`true`:void 0,"aria-label":a,title:a,onClick:i,"data-testid":Y.messageCopy,children:g(n?lo:Io,{})})}function Xu(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 Zu({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(ns,{textSig:e.textSig,doneSig:e.doneSig,generativeUi:t,strings:i});case`reasoning`:return a?/* @__PURE__ */ g(td,{part:e,active:n,strings:i}):null;case`tool`:return/* @__PURE__ */ g(ed,{part:e,strings:i,showToolCalls:o,interactive:c,superseded:l,continuationStreaming:u,live:r,tool:d});case`file`:return/* @__PURE__ */ g(Qu,{part:e,strings:i});case`source`:return s?/* @__PURE__ */ g(gu,{part:e,strings:i}):null}}function Qu({part:e,strings:t}){let n=e.filename??t.file;if(e.mediaType.startsWith(`image/`))return/* @__PURE__ */ g(`a`,{class:`${Ku}-file-image`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,title:n,"data-testid":Y.messageFile,children:/* @__PURE__ */ g(`img`,{src:e.url,alt:n,loading:`lazy`})});let r=(n.includes(`.`)?n.split(`.`).pop():e.mediaType.split(`/`).pop())?.toUpperCase(),i=e.fileSize===void 0?void 0:$u(e.fileSize);return/* @__PURE__ */ _(`a`,{class:`${Ku}-file-chip`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,title:n,"data-testid":Y.messageFile,children:[/* @__PURE__ */ g(`span`,{class:`${Ku}-file-chip-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(go,{})}),/* @__PURE__ */ _(`span`,{class:`${Ku}-file-chip-text`,children:[/* @__PURE__ */ g(`span`,{class:`${Ku}-file-chip-name`,children:n}),/* @__PURE__ */ g(`span`,{class:`${Ku}-file-chip-meta`,children:[r,i].filter(Boolean).join(` · `)})]})]})}function $u(e){let t=Math.min(Math.floor(Math.log10(Math.max(e,1))/3),2);return new Intl.NumberFormat(void 0,{style:`unit`,unit:[`byte`,`kilobyte`,`megabyte`][t],unitDisplay:`narrow`,maximumFractionDigits:1}).format(e/1e3**t)}function ed({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?e.toolMetadata?.card===`questions`?/* @__PURE__ */ g(Au,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:c.onDecision,onEdit:c.onEdit}):/* @__PURE__ */ g(vu,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:c.onDecision,onEdit:c.onEdit}):n?/* @__PURE__ */ g(Ru,{part:e,strings:t,live:s,superseded:a}):null}function td({part:e,active:t,strings:n}){return/* @__PURE__ */ _(`details`,{class:`${Ku}-reasoning`,"data-testid":Y.reasoning,open:t,"data-active":t?`true`:void 0,children:[/* @__PURE__ */ g(`summary`,{class:`${Ku}-reasoning-summary`,children:/* @__PURE__ */ g(`span`,{class:`${Ku}-reasoning-label`,children:t?n.thinking:n.thoughts})}),/* @__PURE__ */ g(`div`,{class:`${Ku}-reasoning-body`,children:/* @__PURE__ */ g(ns,{textSig:e.textSig,doneSig:e.doneSig})})]})}function nd(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 rd(){return/* @__PURE__ */ _(`span`,{class:`${Ku}-typing`,"data-testid":Y.typingDots,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{})]})}function id({label:e}){return/* @__PURE__ */ _(`span`,{class:`${Ku}-loading`,role:`status`,children:[/* @__PURE__ */ g(`span`,{class:`${Ku}-loading-spinner`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${Ku}-loading-label`,children:e})]})}const ad=j.cssPrefix;function od({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,ee]=m(!1),k=p(!1),A=p(!1),[j,te]=m(),ne=p(!1),M=p(!1),re=p(!1),ie=p(0);function N(){return re.current||performance.now()-ie.current<350}let ae=p(0);function oe(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 se(e){return D(e.scrollHeight-e.scrollTop-e.clientHeight>240)}function P(e){ae.current=performance.now(),e.scrollTop=e.scrollHeight,oe(e)}function ce(e,t){P(e);let n=t,r=0;function i(){M.current||N()||(P(e),--n>0&&(r=requestAnimationFrame(i)))}return t>0&&(r=requestAnimationFrame(i)),()=>cancelAnimationFrame(r)}function le(e,t){let n,r,i,a=-1;function o(){n.disconnect(),r.disconnect(),clearTimeout(i)}function s(){if(M.current||N()||a>=0&&e.scrollTop<a-4)return o();P(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 ue=T.value[0]?.id;d(()=>{let e=w.current;if(e&&T.value.length!==0&&!A.current&&(ne.current=!0,T.value.some(e=>e.role===`user`)))return le(e,300)},[ue]);let F=p(0);u(()=>{let e=w.current,t=T.value,n=F.current;if(F.current=t.length,e&&ne.current&&!A.current){if(t.slice(n).some(e=>e.role===`user`))return M.current=!1,ce(e,3);t.some(e=>e.role===`user`)&&(M.current||N()||e.scrollHeight-e.scrollTop-e.clientHeight<120&&P(e))}},[T.value.length]);let de=p(null);u(()=>{let e=w.current,t=T.value.at(-1),n=de.current;if(de.current=t?{id:t.id,streaming:t.status===`streaming`}:null,e&&ne.current&&t&&t.id===n?.id&&!n.streaming&&t.status===`streaming`)return M.current=!1,ce(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=()=>{M.current||N()||e.scrollHeight-e.scrollTop-e.clientHeight<240&&P(e)};if(t.status!==`streaming`)return le(e,300);n();let r=new MutationObserver(n);return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>r.disconnect()},[T.value]);let fe=x?.form.id,pe=!!x&&(S??[]).some(e=>e.formId===x.form.id);d(()=>{let e=w.current;e&&fe&&!M.current&&T.value.some(e=>e.role===`user`)&&(pe?e.querySelector(`[data-testid="${Y.formGate}"]`)?.scrollIntoView({block:`nearest`}):P(e))},[fe,pe]),u(()=>{let e=w.current;if(!e)return;let t=()=>{se(e),oe(e),performance.now()-ae.current>150&&(M.current=e.scrollHeight-e.scrollTop-e.clientHeight>8)};function n(){M.current=!0}function r(e){e.deltaY<0&&n()}let i=0;function a(e){i=e.touches[0]?.clientY??0,re.current=!0}function o(e){(e.touches[0]?.clientY??0)>i+4&&n()}function s(){re.current=!1,ie.current=performance.now()}function c(){re.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}),se(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 me(){let e=w.current;e&&(M.current=!1,P(e))}let he=T.value.filter(e=>!e.ephemeral),ge=he[0],I=ge?.serverMessageId??ge?.id,_e=!!(f&&he.length>=50&&I!==j);async function ve(){if(!f||k.current)return;let e=w.current,t=e?.scrollHeight??0,n=e?.scrollTop??0;k.current=!0,A.current=!0,ee(!0);try{let r=await f();r===!1&&I&&te(I),r&&e&&(await new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e()))),e.scrollTop=n+e.scrollHeight-t,oe(e),se(e))}finally{A.current=!1,k.current=!1,ee(!1)}}let L=[],ye=``,be=T.value.at(-1)?.id,xe=[...S??[]].toSorted((e,t)=>(e.createdAt??1/0)-(t.createdAt??1/0));function Se(e){return x&&e.formId===x.form.id?/* @__PURE__ */ g(tl,{form:x.form,strings:t,onSubmit:x.onSubmit,onSkip:x.onSkip},`gate:${e.formId}`):/* @__PURE__ */ g(nl,{marker:e,strings:t,onFill:!x&&C?()=>C(e.formId):void 0},e.key)}function Ce(e){for(let t=xe[0];t?.createdAt!==void 0&&!(e!==void 0&&t.createdAt>e);t=xe[0])xe.shift(),L.push(Se(t))}for(let e of T.value){if(e.role===`assistant`&&e.id!==be&&qi(e))continue;Ce(e.createdAt);let s=sd(e.createdAt);s&&s!==ye&&(L.push(/* @__PURE__ */ g(`div`,{class:`${ad}-date-divider`,children:/* @__PURE__ */ g(`span`,{class:`${ad}-date-pill`,title:cd(e.createdAt),children:ld(e.createdAt,t)})},`day:${s}`)),ye=s);let l=e.retryAction!==void 0||e.role===`assistant`&&e.id===be?Ji(T.value,e):void 0,u=l!==void 0&&(l.kind!==`continue-assistant`||v===`ai-agent`);L.push(/* @__PURE__ */ g(qu,{message:e,status:e.status,strings:t,responseMode:n,showReasoning:r,showToolCalls:i,showSources:a,interactive:!!h&&v===`ai-agent`&&e.id===be,superseded:e.id!==be,tool:y,onRetry:h&&u&&(e.role===`user`||e.id===be)?b:void 0,enableMessageFeedback:o,onFeedback:c},e.id))}for(let e of xe)L.push(Se(e));return/* @__PURE__ */ _(`div`,{class:`${ad}-list-wrap`,children:[/* @__PURE__ */ _(`div`,{ref:w,class:`${ad}-list ${ad}-list--fade`,part:`messages`,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,children:[l&&T.value.length===0?/* @__PURE__ */ g(`div`,{class:`${ad}-list-loading`,role:`status`,children:t.conversationLoading}):null,_e?/* @__PURE__ */ g(`div`,{class:`${ad}-load-previous`,children:/* @__PURE__ */ g(`button`,{type:`button`,onClick:ve,disabled:O,"aria-busy":O,"data-testid":Y.loadPreviousMessages,children:t.loadPreviousMessages})}):null,L,x&&!pe?/* @__PURE__ */ g(tl,{form:x.form,strings:t,onSubmit:x.onSubmit,onSkip:x.onSkip}):null]}),E?/* @__PURE__ */ g(`button`,{type:`button`,class:`${ad}-jump`,onClick:me,"aria-label":t.scrollToBottom,title:t.scrollToBottom,"data-testid":Y.scrollToBottom,children:/* @__PURE__ */ g(ho,{})}):null]})}function sd(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function cd(e){if(typeof e!=`number`||!Number.isFinite(e))return``;try{return new Date(e).toLocaleDateString(void 0,{dateStyle:`full`})}catch{return``}}function ld(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 ud({panelEl:e,resize:t,position:n,initialSize:r,onSizeChange:i,strings:a}){let o=j.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":Y.resizeGrip,children:/* @__PURE__ */ g(ro,{})})}const dd=j.cssPrefix;function fd({suggestions:e,onPick:t,disabled:n=!1}){return e.length===0?null:/* @__PURE__ */ g(`div`,{class:`${dd}-suggestions`,role:`group`,"aria-label":`Suggested replies`,children:e.map((e,r)=>/* @__PURE__ */ g(`button`,{type:`button`,class:`${dd}-suggestion`,onClick:()=>t(e),disabled:n,"data-testid":Wo(Y.suggestion,r),children:e.label},e.id))})}const pd=j.cssPrefix,md=`.${pd}-header, .${pd}-back-header, .${pd}-home-hero`;function hd(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(md)||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(`--${pd}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${pd}-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(`--${pd}-modal-dx`,`${n}px`),e.style.setProperty(`--${pd}-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 gd({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 _d=j.cssPrefix;function vd(e){let{options:t,onClose:n}=e,r=t.strings,i=p(null);u(()=>{let e=i.current;if(!e)return;let t=Qo(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?.blocking&&!e.sendPreparing&&e.options.features.fileUpload,{visible:s}=gd({containerRef:i,onDrop:l(e=>{o&&a.current?.attachFromDrop(e)},[a,o]),disabled:!o});return hd(i.current,t.mode===`modal`),/* @__PURE__ */ _(`div`,{ref:i,class:`${_d}-panel`,part:`panel`,role:`dialog`,"aria-modal":`false`,"aria-label":r.panelTitle,style:{position:`relative`},"data-testid":Y.panel,children:[/* @__PURE__ */ g(yd,{...e,containerEl:i.current,dragOver:s}),/* @__PURE__ */ g(Td,{poweredBy:e.options.poweredBy})]})}function yd(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:ee,suggestions:k,initialWidgetSize:A,onClose:j,onBack:te,onClear:ne,onToggleHistory:M,onSelectHistoryConversation:re,onNewConversation:ie,onWidgetSizeChange:N,onSend:ae,onStop:oe,onSuggestion:se,activeForm:P,formMarkers:ce,onFormSubmit:le,onFormSkip:ue,onFormFill:F,tool:de,onRetry:fe,onMessageFeedback:pe,containerEl:me,dragOver:he,composerApiRef:ge}=e,I=t.strings,_e=s(()=>O.value.some(e=>!e.ephemeral&&e.role!==`system`)).value,ve;return ve=P?.blocking?null:d?/* @__PURE__ */ _(h,{children:[b&&b!==`ai-agent`?/* @__PURE__ */ g(Sd,{controlMode:b,operatorInitials:x,operatorAvailable:S,onCancelOperatorRequest:T,strings:I}):null,p&&b===`ai-agent`?/* @__PURE__ */ _(`div`,{class:`${_d}-loading ${_d}-compaction-status`,role:`status`,"data-testid":Y.compactionStatus,children:[/* @__PURE__ */ g(`span`,{class:`${_d}-loading-spinner`,"aria-hidden":`true`}),I.compactingContext]}):null,!f&&!p&&b===`ai-agent`&&/* @__PURE__ */ g(fd,{suggestions:k,onPick:se,disabled:y}),/* @__PURE__ */ g(oc,{options:t,transport:n,feedback:r,bus:i,persistence:a,conversationId:o,isStreaming:f,pageToolRunning:e.pageToolRunning,isMemoryCompacting:p,canReleaseQueuedMessages:m,queueManualMessages:v,active:e.composerActive&&u===`chat`,isPreparing:y,operatorRequestEnabled:C,canRequestOperator:_e,controlMode:b,onRequestOperator:w,onSend:ae,onStop:oe,apiRef:ge},c)]}):/* @__PURE__ */ g(xd,{label:I.conversationClosed,ctaLabel:I.startNewConversation,onNewConversation:ne}),/* @__PURE__ */ _(h,{children:[u===`history`?/* @__PURE__ */ g(bd,{strings:I,onBack:M,onClose:j,showClose:wa(t.mode,l,t.actions)}):/* @__PURE__ */ _(`header`,{class:`${_d}-header`,part:`header`,"data-testid":Y.panelHeader,children:[te?/* @__PURE__ */ g(`button`,{type:`button`,class:`${_d}-icon-btn`,onClick:te,"aria-label":I.moduleBack,title:I.moduleBack,children:/* @__PURE__ */ g(po,{})}):null,ee?/* @__PURE__ */ g(Dc,{agent:ee,strings:I}):/* @__PURE__ */ g(`h1`,{children:I.panelTitle}),/* @__PURE__ */ g(Ss,{panelProps:e,variant:`chat`})]}),u===`history`?/* @__PURE__ */ g(Ic,{transport:n,strings:I,locale:t.locale,persistence:a,onSelect:re,onNewConversation:ie}):/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(Rc,{visible:he,strings:I}),/* @__PURE__ */ g(od,{messagesSig:O,strings:I,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,showSources:t.showSources,enableMessageFeedback:t.enableMessageFeedback,onFeedback:pe,loading:E,onLoadPreviousMessages:D,idle:!f&&!y&&d&&!P?.blocking,controlMode:b,tool:de,onRetry:fe,form:P?{form:P,onSubmit:le,onSkip:ue}:null,formMarkers:ce,onFillForm:F}),ve,/* @__PURE__ */ g(wd,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?/* @__PURE__ */ g(ud,{panelEl:me,resize:t.size.resize,position:t.position,initialSize:A,onSizeChange:N,strings:I}):null]})}function bd({strings:e,onBack:t,onClose:n,showClose:r}){return/* @__PURE__ */ _(`header`,{class:`${_d}-header`,part:`header`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${_d}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:/* @__PURE__ */ g(po,{})}),/* @__PURE__ */ g(`h1`,{children:e.historyTitle}),r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${_d}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(Ua,{})}):null]})}function xd({label:e,ctaLabel:t,onNewConversation:n}){return/* @__PURE__ */ _(`div`,{class:`${_d}-readonly-banner`,role:`note`,children:[/* @__PURE__ */ g(`span`,{class:`${_d}-readonly-label`,children:e}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${_d}-readonly-cta`,onClick:n,children:t})]})}function Sd({controlMode:e,operatorInitials:t,operatorAvailable:n,onCancelOperatorRequest:r,strings:i}){let a=Cd(e,t,n,i);return/* @__PURE__ */ _(`div`,{class:`${_d}-operator-banner`,role:`status`,"data-mode":e,"data-testid":Y.operatorBanner,children:[/* @__PURE__ */ g(`span`,{class:`${_d}-operator-pulse`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${_d}-operator-label`,children:a}),e===`awaiting-operator`&&r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${_d}-cancel-operator-request`,"data-testid":Y.cancelOperatorRequest,onClick:r,children:i.cancelOperatorRequest}):null]})}function Cd(e,t,n,r){return e===`operator`?r.chattingWithOperator.replace(`{operator}`,t??``):n===!1?r.noOperatorAvailable:r.connectingOperator}function wd({disclaimer:e}){return e?/* @__PURE__ */ g(`div`,{class:`${_d}-composer-footer`,children:/* @__PURE__ */ g(`div`,{class:`${_d}-disclaimer`,children:e})}):null}function Td({poweredBy:e}){return e?/* @__PURE__ */ g(`div`,{class:`${_d}-poweredby-bar`,children:/* @__PURE__ */ g(Ed,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function Ed({logoUrl:e,text:t,href:n}){let r=/* @__PURE__ */ _(h,{children:[e?/* @__PURE__ */ g(`img`,{class:`${_d}-poweredby-logo`,src:e,alt:``,loading:`lazy`}):null,t?/* @__PURE__ */ g(`span`,{children:t}):null]});return n?/* @__PURE__ */ g(`a`,{class:`${_d}-poweredby`,href:n,target:`_blank`,rel:`noopener noreferrer`,children:r}):/* @__PURE__ */ g(`span`,{class:`${_d}-poweredby`,children:r})}const Dd=j.cssPrefix;function Od({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=Qo(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=Fa(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?.blocking&&!e.sendPreparing&&e.options.features.fileUpload,{visible:T}=gd({containerRef:h,onDrop:l(e=>{w&&C.current?.attachFromDrop(e)},[C,w]),disabled:!w});hd(h.current,f.mode===`modal`);let E=b?.kind===`iframe`||b?.kind===`content`,D=t.length>1&&(Ia(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 ee={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 k(t){return{options:f,transport:e.transport,strings:m,config:t,nav:ee,bus:r,panelProps:e,latestNews:a}}let A=/* @__PURE__ */ g(Ss,{panelProps:e,variant:`plain`});x&&v.current.add(x.id);let j=t.filter(e=>v.current.has(e.id));function te(t){if(t.layout===`chat`)return/* @__PURE__ */ g(yd,{...e,composerActive:S,containerEl:h.current,dragOver:T});let n=xc[t.layout].Root;return n?/* @__PURE__ */ g(n,{...k(t)}):null}function ne(){return b?.kind===`iframe`?/* @__PURE__ */ g(Tc,{url:b.url,title:b.title,strings:m,onBack:()=>n.pop(),actions:A}):b?.kind===`content`?/* @__PURE__ */ g(ps,{id:b.id,title:b.title,transport:e.transport,strings:m,bus:r,onBack:()=>n.pop(),actions:A}):null}return/* @__PURE__ */ _(`div`,{ref:h,class:`${Dd}-panel ${Dd}-messenger`,part:`panel`,role:`dialog`,"aria-modal":`false`,"aria-label":m.panelTitle,style:{position:`relative`},"data-testid":Y.messengerHome,children:[/* @__PURE__ */ _(`div`,{class:`${Dd}-messenger-body`,children:[j.map(e=>/* @__PURE__ */ g(`div`,{class:`${Dd}-messenger-pane`,hidden:E||e.id!==x?.id,children:te(e)},e.id)),ne()]}),D?/* @__PURE__ */ g(Cc,{modules:t,activeTab:y.activeTab,strings:m,hasUnread:i,onSelect:e=>n.switchTab(e)}):null,/* @__PURE__ */ g(Td,{poweredBy:f.poweredBy}),f.size.resize?.enabled&&(x?.layout!==`chat`||b)?/* @__PURE__ */ g(ud,{panelEl:h.current,resize:f.size.resize,position:f.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:m}):null]})}const kd=j.cssPrefix;function Ad({strings:e,onClose:t}){return/* @__PURE__ */ _(`div`,{class:`${kd}-panel ${kd}-modules-empty`,part:`panel`,role:`dialog`,"aria-label":e.panelTitle,"data-testid":Y.modulesEmpty,children:[t?/* @__PURE__ */ g(`button`,{type:`button`,class:`${kd}-icon-btn ${kd}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(Ua,{})}):null,/* @__PURE__ */ g(`p`,{class:`${kd}-modules-empty-text`,children:e.modulesEmpty})]})}function jd(e){let t=j.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":Y.sidebar,children:[/* @__PURE__ */ _(`div`,{class:`${t}-sidebar-header`,children:[/* @__PURE__ */ g(Md,{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":Y.sidebarToggle,children:/* @__PURE__ */ g(Nd,{collapsed:a})})]}),a?null:/* @__PURE__ */ _(h,{children:[o.length>0?/* @__PURE__ */ g(`nav`,{class:`${t}-sidebar-section`,"data-section":`navigation`,children:/* @__PURE__ */ g(Pd,{items:o})}):null,s.length>0?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-section`,"data-section":`link-cards`,children:/* @__PURE__ */ g(Fd,{items:s})}):null,e.showConversations?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-conversations`,children:/* @__PURE__ */ g(Ic,{transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function Md({site:e}){let t=j.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??j.name})}function Nd({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 Pd({items:e}){let t=j.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 Fd({items:e}){let t=j.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 Id=j.cssPrefix;function Ld(e){return/* @__PURE__ */ _(`main`,{class:`${Id}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?`true`:`false`,children:[/* @__PURE__ */ g(jd,{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:`${Id}-page-chat`,"aria-label":e.strings.panelTitle,children:e.children})]})}const Rd=L.scope(`hitl`);function zd(e){return e.kind===`tool`&&Rl(e.toolMetadata)&&(e.stateSig.value===`input-available`||e.stateSig.value===`approval-responded`&&e.approvalSig.value?.approved===!0)}function Bd(e,t){t.errorSig.value=Wl(t.toolCallId),t.stateSig.value=`output-error`,e.partsSig.value=[...e.partsSig.value]}function Vd(e,t){let n=e.slice(0,e.indexOf(t)).findLast(e=>e.role===`user`);return n!==void 0&&Sl.sentHere(n.id)}function Hd(e){let{streaming:t,controlModeSig:n,messagesSig:r,sendAiTurn:i,bus:a,humanInLoop:o,tools:s}=e,c=p(t);c.current=t;let d=p(s);d.current=s;let h=p(/* @__PURE__ */ new Map),[g,_]=m(!1),v=l((e,t,a)=>{if(c.current||n.value!==`ai-agent`)return!1;let o=r.value.at(-1),s=o?.partsSig.value.findIndex(t=>t.kind===`tool`&&t.toolCallId===e)??-1,l=o?.partsSig.value[s];if(!o||l?.kind!==`tool`)return Rd.warn(`decideTool: tool part not found`,{toolCallId:e}),!1;if(o.status!==`complete`||!Ni(o,s)||!t(l))return!1;if(a(l),o.partsSig.value=[...o.partsSig.value],!ji(o)||o.partsSig.value.some(zd))return!0;o.status=`streaming`,o.retryAction={kind:`continue-assistant`,messageId:o.serverMessageId??o.id},o.awaitingContinuation=!0,r.value=[...r.value];let u=o.partsSig.value.flatMap(e=>e.kind===`tool`?[e.toolCallId]:[]);return i({continueExisting:!0}).then(e=>e&&Sl.clear(u)),!0},[n,r,i]),y=l((e,t)=>{let{toolCallId:n,toolName:r}=t;h.current.has(n)||(h.current.set(n,e),_(!0),Hl({toolCallId:n,toolName:r,input:t.inputSig.value,optionTools:d.current??[],onSettled:(e,t)=>{Rd.info(`toolResult`,{toolCallId:n,status:e}),a.emit(`toolResult`,{toolCallId:n,name:zl(r),status:e,durationMs:t})}}).then(e=>{h.current.delete(n)&&(_(h.current.size>0),v(n,zd,t=>{e.state===`output-available`?t.outputSig.value=e.output:t.errorSig.value=e.errorText,t.stateSig.value=e.state}))}))},[a,v]),b=l(()=>{let e=r.value;for(let[t,n]of h.current){let r=e.findIndex(e=>e.id===n);r<0||r===e.length-1||(h.current.delete(t),Gl(t),_(h.current.size>0))}let t=e.at(-1);if(c.current||t?.role!==`assistant`||t.status!==`complete`)return;let n=t.partsSig.value.filter(e=>zd(e)&&e.stateSig.value===`input-available`);if(n.length!==0&&Vd(e,t))for(let e of n)Sl.get(e.toolCallId)?.state===`stopped`?Bd(t,e):y(t.id,e)},[r,y]);u(()=>b(),[t,b]),u(()=>r.subscribe(()=>b()),[r,b]);let x=l((e,t,n)=>{let i=!1,o;if(!v(e,e=>e.stateSig.value===`approval-requested`,r=>{Rl(r.toolMetadata)&&(o=r),i=r.toolMetadata?.card===`questions`;let a=r.approvalSig.value?.id??e;r.approvalSig.value={id:a,approved:t,reason:n},r.stateSig.value=`approval-responded`}))return;let s=r.value.at(-1);o&&t&&s&&y(s.id,o),o&&!t&&a.emit(`toolResult`,{toolCallId:e,name:zl(o.toolName),status:`declined`,durationMs:0}),i?(Rd.info(`toolResult`,{toolCallId:e}),a.emit(`toolResult`,{toolCallId:e})):(Rd.info(`toolDecision`,{toolCallId:e,approved:t}),a.emit(`toolDecision`,{toolCallId:e,approved:t}))},[a,v,r,y]),S=l(e=>{v(e,e=>e.stateSig.value===`approval-responded`&&e.approvalSig.value?.approved!==void 0&&!zd(e),t=>{let n=t.approvalSig.value?.id??e;t.approvalSig.value={id:n},t.stateSig.value=`approval-requested`})},[v]);return{toolInteraction:f(()=>({humanInLoop:o,onDecision:x,onEdit:S}),[o,x,S]),pageToolsRunning:g,stopPageTools:l(()=>{let e=r.value.at(-1);for(let t of h.current.keys()){let n=e?.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);e&&n?Bd(e,n):Wl(t),Rd.info(`toolResult`,{toolCallId:t,status:`stopped`}),a.emit(`toolResult`,{toolCallId:t,name:n?zl(n.toolName):void 0,status:`stopped`,durationMs:0})}h.current.clear(),_(!1)},[a,r])}}const Ud=L.scope(`latest-news`);function Wd({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=>Ud.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 Gd({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 Kd(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=oi(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 qd=j.cssPrefix,Jd=`--${qd}-visual-viewport-height`,Yd=`--${qd}-visual-viewport-top`;function Xd(e){let{hostElement:t,mode:n,panelSize:r,isOpen:i,surfaceReady:a,setIsOpen:o}=e;d(()=>{Bt(t,La(n,r,i))},[t,i,r,n]),d(()=>{if(!i||!a)return;let e=t.ownerDocument.defaultView,n=e?.visualViewport,r=t.shadowRoot?.querySelector(`.${qd}-anchor`);if(!e||!n||!r)return;let o=()=>{r.style.setProperty(Jd,`${n.height}px`),r.style.setProperty(Yd,`${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(Jd),r.style.removeProperty(Yd)}},[t,i,a]),u(()=>{if(n!==`modal`||!i)return;function e(e){e.composedPath().some(e=>e instanceof HTMLElement&&e.classList.contains(`${qd}-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 Zd=L.scope(`reducer`);var Qd=class{constructor(e,t){this.messagesSig=e,this.onReconcileNeeded=t,z(this,`active`,null),z(this,`openTextParts`,/* @__PURE__ */ new Map),z(this,`partSeq`,0),z(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=pi();n.id=e.id;let r=ef(e)||Mi(e)&&(e.status!==`streaming`||ji(e)),i=e.status===`streaming`&&ji(e)&&Ai(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,tf(a,i),e.liveCatchUp&&ef(e.shadow)&&(i.status===`streaming`||Mi(i))?(e.probeContinuation=!1,e.continuationTailReplay=!1,e):(e.probeContinuation=ef(i)||Mi(i)&&(i.status!==`streaming`||ji(i)),e.continuationTailReplay=i.status===`streaming`&&ji(i)&&Ai(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;tf(e,i);let a=ef(e)&&Mi(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=Pi(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=Pi(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&&!Ti(a))return this.attach(a),this.apply(e),null;let o=pi();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(!of(n,r,e))return s&&(uf(n,r)&&(n.continuationStreaming=!0,this.messagesSig.value=[...this.messagesSig.value],this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id})),this.detach()),null;let t=ef(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&&rf(n,r)){let e=this.promoteContinuation(!0);return s?(this.detach(),e):null}if(!o)return s&&this.detach(),null;if(s&&!Ti(n)&&Ti(r)){let e=this.promoteReplay();return this.detach(),e}if(!nf(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),ff(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`:ff(t,{kind:`step-start`,id:`ss-${this.partSeq++}`});return;case`finish`:Zd.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`:Zd.warn(`stream error chunk`,{errorText:e.errorText}),t.status=`error`,t.errorText=e.errorText,this.bumpDone(t);return;case`abort`:Zd.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`:mf(t,e);return;case`file`:ff(t,{kind:`file`,url:e.url,mediaType:e.mediaType});return;case`source-url`:pf(t,{kind:`source`,sourceId:e.sourceId,url:e.url,title:e.title});return;case`source-document`:pf(t,{kind:`source`,sourceId:e.sourceId,title:e.title,filename:e.filename,mediaType:e.mediaType});return;case`data-suggestions`:t.suggestions=ci(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 $d={"input-streaming":0,"input-available":1,"approval-requested":2,"approval-responded":3,"output-available":4,"output-denied":4,"output-error":4};function ef(e){return e.awaitingContinuation===!0||e.continuationStreaming===!0||e.retryAction?.kind===`continue-assistant`}function tf(e,t){e.canceled&&(t.canceled=!0),ef(e)&&(t.status===`streaming`||Mi(t))&&(t.awaitingContinuation??(t.awaitingContinuation=e.awaitingContinuation),t.continuationStreaming??(t.continuationStreaming=e.continuationStreaming),t.retryAction===void 0&&(t.retryAction=e.retryAction))}function nf(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)=>af(e,r[t]))}function rf(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)=>af(e,a[t]))}function af(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||!Wi(t.toolName,e.toolName)||$d[t.stateSig.value]<$d[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 of(e,t,n){return sf(e,n)||!cf(e,t)?!0:n.type!==`finish`&&n.type!==`error`&&n.type!==`abort`?!1:Ai(t)||e.awaitingContinuation===!0&&n.type!==`finish`?!0:e.awaitingContinuation===!0&&t.partsSig.value.every(e=>e.kind===`step-start`)}function sf(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&&$d[n.stateSig.value]<4}function cf(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)=>lf(r[t+n],e)))}function lf(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`||Wi(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 uf(e,t){if(ef(e)||!Mi(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 df(e,t,n,r,i){let a=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);if(a)return r&&(a.dynamic=!0),a.toolMetadata??(a.toolMetadata=i),a;let s={kind:`tool`,toolCallId:t,toolName:n??`tool`,dynamic:r?!0:void 0,toolMetadata:i,inputPartialSig:o(``),inputSig:o(void 0),outputSig:o(void 0),errorSig:o(void 0),stateSig:o(`input-streaming`),approvalSig:o(void 0)};return ff(e,s),s}function ff(e,t){e.partsSig.value=[...e.partsSig.value,t]}function pf(e,t){e.partsSig.value.some(e=>e.kind===`source`&&e.sourceId===t.sourceId)||ff(e,t)}function mf(e,t){switch(t.type){case`tool-input-start`:df(e,t.toolCallId,t.toolName,t.dynamic,t.toolMetadata);return;case`tool-input-delta`:{let n=df(e,t.toolCallId);n.inputPartialSig.value+=t.inputTextDelta;return}case`tool-input-available`:{let n=df(e,t.toolCallId,t.toolName,t.dynamic,t.toolMetadata);n.inputSig.value=t.input,n.stateSig.value=`input-available`;return}case`tool-input-error`:{let n=df(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=df(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value=`approval-requested`;return}case`tool-output-available`:{let n=df(e,t.toolCallId,void 0,t.dynamic);n.outputSig.value=t.output,n.stateSig.value=`output-available`;return}case`tool-output-error`:{let n=df(e,t.toolCallId,void 0,t.dynamic);n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-output-denied`:{let n=df(e,t.toolCallId);n.stateSig.value=`output-denied`;return}default:return}}const hf=1e3;async function gf(e){let t=hf,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=hf),await e.sleep(t),t=Math.min(t*2,15e3)}}function _f(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 Qd(i,e=>p(e));o.primeIdentity(s,e);let D=!1,O=!1,ee,k=!1,A,j=0,te=y.current,ne,M,re=Date.now(),ie,N=!1,ae=!1;function oe(t,n,r){if(!Ti(t))return;let o=i.value.findLast(e=>!e.ephemeral),s=t.serverMessageId??t.id;if(!(o&&(o.serverMessageId??o.id)!==s))return wi(i.value,t,e,a.current.strings.newConversation,n,r)}function se(e,t,n,r){let i=oe(e,t,r);if(!i)return;let a=`${e.serverMessageId??e.id}:${n}:${i.preview??``}`;a!==M&&(M=a,o.publishConversation({...i,hasUnread:!0},!0))}let P;function ce(){P&&(clearTimeout(P.timer),P=void 0)}function le(){let e=P;if(!e)return;clearTimeout(e.timer),P=void 0;let t=i.value.find(t=>(t.serverMessageId??t.id)===e.replyId);(t?.role===`assistant`||t?.role===`operator`)&&se(t,e.canContinue,e.generation,e.activityAt)}function ue(e,t,n,r){ce(),P={replyId:e.serverMessageId??e.id,canContinue:t,generation:n,activityAt:r,timer:setTimeout(le,120)}}function F(e,t,n,r=Date.now(),i=!0){ce();let a=oe(e,t,r);if(!a)return;let o=`${e.serverMessageId??e.id}:${n}`;o!==ne&&(ne=o,f(a),i&&ie&&(N=!0))}function de(e,t){(e||!v.localSendRef.current)&&v.settle(t),e&&_()}function fe(e,t=[],n=!1,r,o=te,s=j,c=Date.now(),l=!0){let u=a.current;if(e.canceled){F(e,o,s,c,l),de(n,r);return}let f=!0,p=e.status===`error`;switch(Xi(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`),Ea(S,u,`assistant`,Ci(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`),Ea(S,u,`assistant`,Ci(e))),d(e,t)}f&&F(e,o,s,c,l),de(n,r)}function pe(t){if(u.signal.aborted||r.value!==e)return;if(c(t),l?.(t),t.type===`start`){le();let n=t.messageId===void 0?void 0:i.value.find(e=>e.serverMessageId===t.messageId||e.id===t.messageId);k=n!==void 0&&n.status!==`streaming`;let r=A?.senderRole===`visitor`?A.messageId:void 0;if(A={messageId:t.messageId,senderRole:t.messageMetadata?.senderRole},j+=1,re=Date.now(),M=void 0,D=t.messageMetadata?.senderRole===void 0,O=!1,ee=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?ee:void 0,s=n&&(O||v.ownsLocalRun(o)),d=j,f=k;t.type===`finish`&&t.canContinue!==void 0&&(te=t.canContinue);let p=te;n&&(D=!1,O=!1,ee=void 0);let m=E.applyResume(t),h=A?.messageId,g=h===void 0?void 0:i.value.find(e=>e.serverMessageId===h||e.id===h);k&&A?.senderRole!==`visitor`&&(m!==null||g?.status===`streaming`)&&(k=!1,f=!1);let _=!k&&(g?.role===`assistant`||g?.role===`operator`);t.type===`text-delta`&&_&&ue(g,te,j,re),t.type===`text-end`&&(ce(),_&&se(g,te,j,re)),t.type===`finish`&&t.canContinue===!1&&b(!1),m?m.role===`operator`?(f||(x.play(`messageReceived`),Ea(S,a.current,`operator`,Ci(m))),F(m,p,d,re),k=!1,n&&(s||!v.localSendRef.current)&&v.settle(o)):m.role===`assistant`&&(fe(m,[],s,o,p,d,re),k=!1):n&&(s||!v.localSendRef.current)&&v.settle(o)}async function me(t){let n=j,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===j&&(t===void 0||s!==void 0&&(s.serverMessageId===t||s.id===t));if(a.messages.length===0)return!0;l&&(te=a.canContinue,b(te));let f=i.value,p=t===void 0?f.at(-1):f.find(e=>e.serverMessageId===t||e.id===t),{messages:m,changed:h}=Vi(f,bi(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`?fe(g,g.suggestions??[],v.localSendRef.current,void 0,a.canContinue,n,x,!1):l&&y&&g.role===`operator`?F(g,a.canContinue,n,x,!1):l&&g?.role===`assistant`&&g.status!==`streaming`&&d(g,g.suggestions??[]),!0}let he=/* @__PURE__ */ new Set;p=({messageId:e})=>{if(he.has(e)||!i.value.some(t=>t.serverMessageId===e||t.id===e))return;he.add(e);function t(){return he.delete(e)}me(e).then(t,t)};function ge(t=!1){if(u.signal.aborted||r.value!==e){N=!1;return}if(ie){N=!0;return}let n=t?C(e)??(w()?me():void 0):me();if(!n)return;h(e),ie=n;function i(t=!1){ie===n&&(ie=void 0,N?(N=!1,ge()):t&&g(e))}n.then(i,()=>i(!1))}let I=m.subscribe(e=>{e<=T.current||(T.current=e,ae&&ge())});return gf({signal:u.signal,now:()=>performance.now(),sleep:e=>$i(e,u.signal),connect:e=>o.connectResumeStream({signal:u.signal,onChunk:pe,onConnected:e}),onInitialBoundaryReady:()=>{ae=!0,ge(!0)},backfill:()=>ge()}),()=>{u.abort(),ce(),I(),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 vf(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 yf=L.scope(`send`);function bf(e,t,n,r,i,a=!0){e.publishConversation({...wi(t,n,r,i,a),hasUnread:!1},!0)}function xf(e,t){return e.id===t.id||(e.serverMessageId??e.id)===(t.serverMessageId??t.id)}function Sf(e){return e.findLast(e=>!e.ephemeral&&e.role!==`system`&&(e.role===`user`||e.status!==`streaming`||Ti(e)))}function Cf(e,t,n,r,i){let a=Sf(t);a?.role===`user`&&xf(a,n)&&bf(e,t,a,r,i)}function wf(e){return!(e instanceof ra)||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 Tf(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??ut();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]:xi(n.value,e),y=v[0];y?.role===`user`&&Sl.markSent(y.id);let b=v.map(Si),x=s.loadUserPrefs(),S=Il(i.tools).then(n=>t.sendTurn(li({messages:b,conversationId:g,visitorId:c,userPrefs:x,clientTools:Ll(n)}),{keepalive:e}));m.begin(S);try{let a=await S;if(r.value!==g||!m.acceptAck(S,a))return!1;if(u(a.conversationId),a.runId&&y?.role===`user`&&Cf(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=bi(o.messages),{messages:s,changed:c}=Vi(n.value,r);c&&(n.value=s);let l=r.findLast(e=>!e.ephemeral&&e.role!==`system`),u=Sf(n.value);u&&l&&xf(u,l)&&bf(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&&!Ti(_)&&(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(S))return y?.role===`user`&&Cf(t,n.value,y,g,i.strings.newConversation),!0;let c=ws(s,i.strings),u=wf(s),h=l?.role===`assistant`?l:n.value.at(-1);if(e&&h?.role===`assistant`&&s instanceof ra&&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=bi(i.messages),r=t.find(t=>(t.serverMessageId??t.id)===e);if(r&&Hi(h,r)){let{messages:r,changed:i}=Vi(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=pi();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]),Sl.markSent(e.id);let d=[Si(e)],f=s.loadUserPrefs(),p=Il(i.tools).then(e=>t.sendTurn(li({messages:d,conversationId:l,visitorId:c,userPrefs:f,clientTools:Ll(e)})));m.beginRouted(p,e.id);try{let a=await p;return r.value===l?m.acceptRoutedAck(p,a)?(u(a.conversationId),Cf(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(p),!1)}catch(s){let c=m.rejectRouted(p);if(r.value!==l)return!1;if(!c)return Cf(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 Cf(t,n.value,e,l,i.strings.newConversation),!0;yf.debug(`operator-routed send failed`,{error:s});let u=s instanceof Error?s:Error(String(s));return e.status=`error`,e.errorText=ws(s,i.strings),e.retryAction=wf(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 Ef=L.scope(`unread`);function Df(e){let{transport:t,options:n,conversationIdSig:r,isConversationVisibleRef:i,activated:a,conversationReady:o}=e,s=c(!1),d=c(0),f=c(0),m=p([]),h=p(void 0),g=p(!1),_=l(()=>{let e=r.value,t=i.current()&&h.current===e?e:void 0,n=m.current.filter(e=>e.hasUnread&&e.conversationId!==t).length;d.value=n,s.value=n>0},[r,s,d,i]),v=l(e=>{let t=r.value,n=m.current.find(e=>e.conversationId===t),i=ma(m.current,e),a=i.find(e=>e.conversationId===t),o=e.type===`snapshot`&&t!==void 0&&a?.hasUnread===!0&&h.current===t&&n!==void 0&&n.lastMessageAt!==a.lastMessageAt;o&&(h.current=void 0),m.current=i,_(),o&&(f.value+=1)},[r,_,f]),y=l(()=>{if(_(),!i.current())return;let e=r.value;if(!e||h.current!==e)return;let n=m.current.find(t=>t.conversationId===e);n?.hasUnread&&t.markRead(e,n.lastMessageAt)},[r,i,_,t]),b=l(e=>{r.value===e&&(h.current=void 0,_())},[r,_]),x=l(e=>{r.value===e&&(h.current=e,y())},[r,y]),S=l(e=>h.current===e,[]),C=l((e=!1)=>{n.history.enabled&&n.modules.list.some(e=>e.layout===`chat`)&&(g.current||(g.current=!0,t.listConversations({limit:50},e).then(t=>{e||v({type:`snapshot`,result:t,requestedRevision:0}),y()}).catch(e=>Ef.debug(`refreshUnread failed (non-fatal)`,{err:e})).finally(()=>{g.current=!1})))},[v,y,n.history.enabled,n.modules,t]),w=l(e=>{let n=e.conversationId,a=i.current()&&r.value===n&&h.current===n,o=m.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(v),[v,t]);let T=p(!1);return u(()=>{a&&o&&!T.current&&(T.current=!0,C())},[a,o,C]),u(()=>{if(!a)return;function e(){document.visibilityState===`visible`&&(y(),C(!0))}return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[a,y,C]),{hasUnreadSig:s,unreadCountSig:d,transcriptRecoverySig:f,markVisibleConversationRead:y,beginConversationTranscript:b,commitConversationTranscript:x,isConversationTranscriptCommitted:S,recordConversationReply:w}}const Of=L.scope(`settings`);function kf(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),h=f??t.themeMode,[g,_]=m(()=>s.textSize??t.textSize),v=l(e=>{n.patchUserPrefs(e),r.saveUserPrefs(n.loadUserPrefs()).catch(e=>Of.warn(`saveUserPrefs failed`,{err:e}))},[n,r]);u(()=>{s.soundMuted!==void 0&&i.setMuted(s.soundMuted)},[]),u(()=>{if(h!==`host`)a.dataset.theme=h;else return Dt(e=>{a.dataset.theme=e})},[a,h,t]),u(()=>{a.dataset.textSize=g},[a,g,t]),u(()=>{let e=!0;return i.mutedSig.subscribe(t=>{e?e=!1:v({soundMuted:t})})},[i,v]);let y=je(c,t.availableLocales,t.defaultLocale);return u(()=>{r.setLocale(y)},[r,y]),u(()=>{a.dir=ee(y)?`rtl`:`ltr`},[a,y]),u(()=>{y!==c&&d(y)},[y,c]),{activeLocale:c,activeThemeMode:h,activeTextSize:g,effectiveLocale:y,setActiveLocale:d,setActiveThemeMode:p,setActiveTextSize:_,patchAndSync:v,handleLocaleChange:l(e=>{Of.info(`localeChange`,{locale:e}),d(e),v({locale:e}),o.emit(`localeChange`,e)},[v,o]),handleThemeChange:l(e=>{Of.info(`themeChange`,{mode:e}),p(e),a.dataset.theme=e,v({themeMode:e}),o.emit(`themeChange`,e)},[a,v,o]),handleTextSizeChange:l(e=>{Of.info(`textSizeChange`,{size:e}),_(e),a.dataset.textSize=e,v({textSize:e}),o.emit(`textSizeChange`,e)},[a,v,o]),handleSoundToggle:l(()=>{i.toggleMuted();let e=i.mutedSig.value;Of.info(`soundToggle`,{muted:e}),o.emit(`soundToggle`,{muted:e})},[i,o])}}const $=L.scope(`app`),Af=j.cssPrefix,jf={home:`home`,chats:`chat`,help:`help`,news:`news`};function Mf(e,t){return mi({...e,text:k(t,e.text)})}function Nf({options:e,hostElement:t,bus:n,recentHostEvents:i}){let o=e.aiAgentDeploymentId;if(!o)throw Error(`aiAgentDeploymentId is required`);let[h]=m(()=>pt(e.widgetId,e.storage,e.aiAgentDeploymentId)),[v]=m(()=>h.getVisitorId()),y=h.loadUserPrefs(),b=c(h.loadConversationId()),x=p(b.value!==void 0),S=c(b.value??``),C=c([]),[w,T]=m(!1),E=p(void 0),[D,O]=m([]);function ee(){let t=e.modules.list,n=new Set(t.map(e=>e.id)),r=h.loadActiveModule();return r&&n.has(r)?r:t[0]?.id??``}function A(){return e.modules.list.find(e=>e.layout===`chat`)?.id}function te(){let t=A();return t?e.modules.list.length===1||M.sig.value.activeTab===t:!1}let ne=p(void 0);if(!ne.current){let t=e.modules.list.map(e=>e.id),n=h.loadActiveModule()??t[0]??``;ne.current=Na(n,n?[...t,n]:t,e=>h.saveActiveModule(e))}let M=ne.current,re=s(()=>M.sig.value.activeTab).value,ie=s(()=>b.value).value,[N,ae]=m(!1),[oe,se]=m(null),[P,ce]=m(!1),le=e.mode===`standalone`||e.mode===`inline`,ue=p(za(e,Ba(),h.loadPanelOpen(),h.loadPanelSize())),[F,de]=m(ue.current.panelOpen),[fe,pe]=m(ue.current.panelOpen),me=p(void 0),he=p(void 0),ge=p(!1),I=p(void 0);u(()=>{F&&pe(!0)},[F]);let _e=p(!1),[ve,L]=m(!1),{dismissed:ye,dismissCallout:be}=Gd({callout:e.launcher.callout,persistence:h}),xe=e.launcher.callout?.persistent??!0,Se=l(()=>{$.info(`calloutDismiss`),n.emit(`calloutDismiss`,void 0),be()},[n,be]),[Ce,we]=m(ue.current.panelSize),Te=p(!1),[Ee,De]=m(`chat`),Oe=p(()=>!1);Oe.current=()=>F&&Ee===`chat`&&!document.hidden&&te();let[ke,Ae]=m(!0),je=p(ke);je.current=ke;let[Me,Ne]=m(!1),Pe=p(Me);Pe.current=Me;let Fe=p(null),[Ie,Le]=m(!1),[Re,Be]=m(null),[Ve,Ue]=m([]),We=p(e.strings),Ge=p(e);Ge.current=e;let[Ke,qe]=m(void 0),[Je,Ye]=m(void 0),[Xe,Ze]=m(()=>h.loadSidebarCollapsed()??!1),[Qe,$e]=m({}),[R]=m(()=>new ba({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Ht({publicKey:e.publicKey,aiAgentDeploymentId:o,publicKeyHeader:`x-public-key`}),endpoints:e.endpoints,recentHostEvents:i})),[et]=m(()=>new gn(e.sound,e.haptics)),tt=vf({transport:R,setStreaming:Ne}),{activeLocale:nt,activeThemeMode:rt,activeTextSize:it,effectiveLocale:at,setActiveLocale:ot,setActiveThemeMode:st,setActiveTextSize:ct,patchAndSync:lt,handleLocaleChange:dt,handleThemeChange:ft,handleTextSizeChange:mt,handleSoundToggle:ht}=kf({options:e,persistence:h,transport:R,feedback:et,hostElement:t,bus:n}),{controlModeSig:_t,assignedOperatorInitialsSig:vt,operatorAvailableSig:yt,applyControlState:bt,adoptControlStateChunk:xt,requestOperator:St,cancelOperatorRequest:Ct}=Kd({transport:R,conversationIdSig:b}),wt=c(/* @__PURE__ */ new Map),Tt=l(e=>{if(e.type!==`data-memory-compaction-state`)return;let t=b.value;if(!t)return;let n=si(e.data);if(!n)return;let r=wt.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(wt.value);i.set(t,n),wt.value=i},[b,wt]),{hasUnreadSig:Et,unreadCountSig:Dt,transcriptRecoverySig:Ot,markVisibleConversationRead:kt,beginConversationTranscript:At,commitConversationTranscript:jt,isConversationTranscriptCommitted:Mt,recordConversationReply:Nt}=Df({transport:R,options:e,conversationIdSig:b,isConversationVisibleRef:Oe,activated:fe,conversationReady:N}),Pt=F&&e.modules.byId[re]?.layout===`home`,Ft=Wd({transport:R,options:e,persistence:h,enabled:N&&Pt});u(()=>{kt()},[re,F,Ee,ie,kt]),u(()=>{et.update(e.sound,e.haptics)},[et,e.sound,e.haptics]),u(()=>()=>et.destroy(),[et]),u(()=>{!Te.current&&e.size.initialSize&&(Te.current=!0,!h.loadPanelSize()&&we(Ra(e.mode,e.size,Ba())))},[e.mode,e.size,h]),u(()=>{if(!N||_e.current)return;_e.current=!0;let t=za(e,Ba(),h.loadPanelOpen(),h.loadPanelSize());de(t.panelOpen),we(t.panelSize)},[N,e,h]);let It=p(null);u(()=>{N&&M.reconcile(e.modules.list.map(e=>e.id),ee())},[N,e.modules.list,M]);let Lt=l(e=>{e&&e.length!==0&&(C.value=e.map(e=>Mf(e,We.current)))},[C]),Rt=p(null),zt=l(async e=>{try{let{formSubmissions:t}=await(e?R.bootstrap(e):Rt.current??R.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:ei(e.createdAt),values:e.values}))}catch(e){return $.debug(`bootstrap failed — no form markers (non-fatal)`,{err:e}),[]}},[R]),Bt=p(0),Vt=p(0),Ut=l(e=>{if(e===b.value)return;let t=b.value;Vt.current++,T(!1),t&&(h.saveDraft(e,h.loadDraft(t)),h.saveDraft(t,``),h.saveMessageQueue(e,h.loadMessageQueue(t)),h.saveMessageQueue(t,[])),b.value=e,h.saveConversationId(e),R.primeIdentity(void 0,e),$.info(`conversation rebound`,{previous:t,current:e}),t&&n.emit(`conversationRebound`,{previous:t,current:e})},[n,b,h,R]),Jt=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[...(I.current?.messages??[]).map(e=>{let t=Mf(e,We.current);return t.createdAt=r,t}),...e]},[]),Zt=l(async e=>{let t=Vt.current;function r(){return t!==Vt.current||b.value!==e}he.current===e&&(he.current=void 0),T(!0);try{let[t,n]=await Promise.all([R.loadConversation(e),zt()]);if(r())return!1;let i=bi(t.messages);O(n);let a=Jt(Bi(i,C.value),n);if(C.value=a,he.current=a.some(e=>e.role===`user`)?void 0:e,i.length>0||t.controlState!==void 0){Ae(t.canContinue),t.controlState&&bt(t.controlState);let e=i.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ue(e?.suggestions??[])}return!0}catch(t){return r()||($.warn(`loadThread failed; keeping conversation active`,{err:t,conversationId:e}),n.emit(`error`,t),Ge.current.onError?.(t)),!1}finally{r()||T(!1)}},[R,zt,C,b,Jt,n]),$t=l(e=>{if(me.current===e)return me.current=void 0,Zt(e)},[Zt]),en=l(()=>{if(E.current)return Promise.resolve(void 0);let t=b.value,r=C.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=Vt.current,s={};return E.current=s,(async()=>{try{let e=await R.loadConversation(t,{beforeId:i,beforeCreatedAt:a});if(E.current!==s||Vt.current!==o||b.value!==t)return;if(e.messages.length===0)return!1;let n=e.messages.map(_i),r=C.value,c=Fi(r,n);if(c!==r){let e=Math.min(...n.map(e=>e.createdAt??1/0),...D.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)}C.value=c}return!0}catch(r){if(E.current!==s||Vt.current!==o||b.value!==t)return;$.warn(`load previous messages failed`,{err:r,conversationId:t,beforeId:i}),n.emit(`error`,r),e.onError?.(r);return}finally{E.current===s&&(E.current=void 0)}})()},[n,b,D,C,e,R]),tn=l(async({newConversation:t})=>{let i=++Bt.current;function a(){return i!==Bt.current}let o=b.value,s=t||!o?ut():o;s!==o&&(Vt.current++,T(!1),r(()=>{b.value=s,S.value=s}),h.saveConversationId(s)),R.primeIdentity(v,s);let c;try{c=await R.handshake({visitorId:v,conversationId:s,userPrefs:h.loadUserPrefs(),locale:nt})}catch(r){if(a())return;n.emit(`error`,r),e.onError?.(r),t||ae(!0);return}if(a())return;c.conversationId!==s&&Ut(c.conversationId),Be(c.agent),c.site&&vn(c.site)?qe(c.site):c.site&&$.warn(`invalid site config, using fallback`,{site:c.site}),c.blocks&&yn(c.blocks)?Ye(c.blocks):c.blocks&&$.warn(`invalid blocks config, using fallback`,{blocks:c.blocks});let l=gt(c.userPrefs);if(Object.keys(l).length>0&&!t&&(h.saveUserPrefs(l),l.locale&&ot(l.locale),l.soundMuted!==void 0&&et.setMuted(l.soundMuted),l.themeMode&&st(l.themeMode),l.textSize&&ct(l.textSize)),I.current=c.welcome,t||n.emit(`handshake`,c),c.welcome?.suggestions){let e=We.current;Ue(c.welcome.suggestions.map(t=>({...t,label:k(e,t.label),...t.text===void 0?{}:{text:k(e,t.text)}})))}let u=!t&&o&&c.conversationId===o;x.current=!!u,u?ge.current||(me.current=c.conversationId):(he.current=c.conversationId,Lt(c.welcome?.messages),jt(c.conversationId)),t||ae(!0)},[R,v,h,e,n,b,S,et,Lt,nt,Ut,jt]),z=JSON.stringify(e.userContext??null),rn=JSON.stringify(e.pageContext??null),an=JSON.stringify(Qe);u(()=>{let t=Object.keys(Qe).length?{...Qe,...e.userContext}:e.userContext;R.setContext(t,Pf(e.pageContext))},[R,z,rn,an]),u(()=>R.setUserToken(e.userToken),[R,e.userToken]);let on=l((e,t=[])=>Ue(e.suggestions??t),[]);u(()=>(R.primeIdentity(v,b.value),tn({newConversation:!1}),()=>{Bt.current++,Vt.current++}),[]),u(()=>{fe&&N&&!ge.current&&(ge.current=!0,Rt.current=R.bootstrap(),(async()=>{try{let e=await Rt.current;se(ze((e??{forms:[]}).forms,at))}catch(e){$.debug(`bootstrap failed — treating as no forms`,{err:e})}finally{ce(!0)}})(),me.current===b.value&&T(!0))},[fe,N]);let sn=p(null);u(()=>{if(!fe||!N||(sn.current??(sn.current=at),sn.current===at))return;sn.current=at;let e=!1;return R.bootstrap().then(t=>{e||se(ze((t??{forms:[]}).forms,at))}).catch(e=>$.debug(`forms re-localize failed — keeping current copy`,{err:e})),()=>{e=!0}},[fe,N,at,R]);let cn=p(z);u(()=>{N&&cn.current!==z&&(cn.current=z,tn({newConversation:!1}))},[z,N,tn]),Xd({hostElement:t,mode:e.mode,panelSize:Ce,isOpen:F,surfaceReady:N,setIsOpen:de});let{sendAiTurn:ln,sendRoutedTurn:un}=Tf({transport:R,messagesSig:C,conversationIdSig:b,options:e,bus:n,feedback:et,persistence:h,visitorId:v,adoptConversationId:Ut,applyControlState:bt,setCanSend:Ae,settleSuggestions:on,runCancellation:tt}),{toolInteraction:dn,pageToolsRunning:fn,stopPageTools:pn}=Hd({streaming:Me,controlModeSig:_t,messagesSig:C,sendAiTurn:ln,bus:n,humanInLoop:e.features.humanInLoop,tools:e.tools}),mn=l((e,t)=>{let r=C.value.find(t=>t.serverMessageId===e);r&&(r.feedback=t),$.info(`messageFeedback`,{messageId:e,value:t}),n.emit(`messageFeedback`,{messageId:e,value:t}),R.submitFeedback({messageId:e,value:t})},[n,C,R]);function hn(){return C.value.reduce((e,t)=>e+ +(t.role===`user`),0)}let _n=e.forms.list.length>0?e.forms:oe??e.forms,B=Da({forms:_n,persistence:h,userContext:()=>e.userContext,messageCount:hn,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>b.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}),O(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 a=b.value??ut();b.value||(b.value=a,h.saveConversationId(a),R.primeIdentity(void 0,a)),!i&&e.mirrorToContext&&$e(e=>({...e,...r})),R.submitForm({formId:e.id,conversationId:a,trigger:t,values:r,skipped:i})}}),bn=s(()=>B.activeForm.value),xn=bn.value?.form.blocking??!1;_f({activated:fe,conversationReady:N,conversationIdSig:b,messagesSig:C,optionsRef:Ge,transport:R,visitorId:v,adoptControlStateChunk:xt,adoptMemoryCompactionStateChunk:Tt,settleSuggestions:on,recordConversationReply:Nt,transcriptRecoverySig:Ot,beginConversationTranscript:At,commitConversationTranscript:jt,onReplyLanded:l(()=>B.fire(`after-messages`),[B]),runCancellation:tt,canContinueRef:je,setCanSend:Ae,feedback:et,bus:n,loadInitialThread:$t,shouldReconcileOnConnect:l(()=>x.current||C.value.some(e=>!e.ephemeral&&e.role===`user`),[C])}),u(()=>{B.refresh()},[_n,B]);let Sn=e.pageContext?.area?String(e.pageContext.area):void 0,Cn=s(()=>C.value.length),V=p(null);u(()=>{P&&V.current&&(B.fire(`manual`,V.current),V.current=null)},[P,B]),u(()=>{N&&P&&B.fire(`pre-chat`)},[N,P,B]),u(()=>{P&&!ke&&B.fire(`conversation-closed`)},[P,ke,B]),u(()=>{N&&P&&Sn&&B.fire(`page-area`)},[N,P,Sn,B]);let H=f(()=>{let e=_n.list.flatMap(e=>e.triggers).filter(e=>e.kind===`idle`).map(e=>Number(e.param));return e.length?Math.min(...e)*1e3:0},[_n]);u(()=>{if(!H||!F)return;let e=setTimeout(()=>B.fire(`idle`),H);return()=>clearTimeout(e)},[H,F,B,Cn.value]);let U=l(async(t,r,i)=>{if(Fe.current)return!1;let a=b.value,o=a?wt.value.get(a):void 0,s=_t.value!==`ai-agent`;if(!s&&o?.status===`compacting`||($.info(`send`,{textLen:t.length,attachments:r.length,streaming:Pe.current,routedToOperator:s}),Pe.current&&!s))return!1;let c=new AbortController,l={conversationId:a,controller:c};Fe.current=l,Le(!0);try{et.unlock();let o=await If(R,r,c.signal,t=>{c.signal.aborted||($.warn(`upload failed`,{err:t}),n.emit(`error`,t),e.onError?.(t))});if(c.signal.aborted||b.value!==a||!je.current||B.activeForm.value?.form.blocking)return!1;let s=a?wt.value.get(a):void 0,l=_t.value!==`ai-agent`;if(!l&&s?.status===`compacting`||Pe.current&&!l||!t&&o.length===0)return!1;n.emit(`send`,{text:t,attachmentCount:r.length}),Ve.length>0&&Ue([]),et.play(`messageSent`);let u=fi(t,o,i);return Ea(n,e,`user`,t),l?(C.value=[...C.value,u],i?await un(u):(un(u),!0)):(C.value=[...C.value,u,pi()],i?await ln({continueExisting:!1}):(ln({continueExisting:!1}),!0))}finally{Fe.current===l&&(Fe.current=null,Le(!1))}},[R,n,e,Ve.length,C,b,wt,ln,un,_t]),wn=p(U);wn.current=U;let W=b.value,Tn=(W?wt.value.get(W):void 0)?.status===`compacting`,En=_t.value===`ai-agent`,Dn=s(()=>{let e=C.value.at(-1);return e?.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`&&e.stateSig.value===`approval-requested`)}),On=s(()=>C.value.some(e=>e.retryAction?.kind===`resend-user`||e.retryAction?.kind===`continue-assistant`));d(()=>{let e=b.value;return()=>{let t=Fe.current;t&&t.conversationId===e&&(Fe.current=null,Le(!1),t.controller.abort())}},[b.value]),u(()=>{(!ke||xn)&&Fe.current?.controller.abort()},[xn,ke]);let kn=l(()=>{if(fn){$.info(`stop page tools`),n.emit(`stop`,void 0),pn();return}if(!tt.stop())return;$.info(`stop`),n.emit(`stop`,void 0);let e=C.value.at(-1);e&&e.role!==`user`&&e.status===`streaming`&&(e.canceled=!0,C.value=[...C.value])},[tt,n,C,fn,pn]),An=l(e=>{if(Me)return;let t=C.value,n=Ji(t,e);if(n)switch($.info(`retry`,{kind:n.kind,messageId:n.messageId}),n.kind){case`continue-assistant`:if(_t.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,C.value=[...t],ln({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&&It.current?.acceptQueuedMessage(n.messageId)};if(r.status=`complete`,r.errorText=void 0,r.retryAction=void 0,_t.value!==`ai-agent`){C.value=e.role===`assistant`?t.filter(t=>t!==e):[...t],un(r).then(i);return}let a=pi();C.value=e.role===`assistant`?t.map(t=>t===e?a:t):[...t,a],ln({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=fi(Ci(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]),_t.value!==`ai-agent`){C.value=[...t,r],un(r);return}C.value=[...t,r,pi()],ln({continueExisting:!1,turn:r});return}default:return n}},[Me,C,_t,ln,un]),jn=l(()=>{Ta(e.mode,Ce)===`exit-fullscreen`?($.info(`close → exit-fullscreen`,{mode:e.mode}),we(`normal`),n.emit(`fullscreen`,!1)):($.info(`close → panel closed`,{mode:e.mode}),B.fire(`panel-close`),de(!1),h.savePanelOpen(!1),n.emit(`close`,void 0),e.onClose?.())},[n,e,h,Ce,B]),Mn=l(()=>{$.info(`open`,{mode:e.mode}),et.unlock(),L(!0),de(!0),h.savePanelOpen(!0),!ye&&!xe&&Se(),setTimeout(()=>L(!1),Ff),n.emit(`open`,void 0),e.onOpen?.()},[n,e,et,h,ye,xe,Se]),Nn=l(()=>{let e=C.value.some(e=>e.role===`user`);if(he.current===b.value&&!e&&ke&&b.value)$.info(`clear → reusing empty conversation`,{conversationId:b.value}),C.value.length===0&&Lt(I.current?.messages);else return $.info(`clear → new conversation`,{wasStreaming:Me}),n.emit(`clear`,void 0),tt.settle(),x.current=!1,me.current=void 0,he.current=void 0,r(()=>{C.value=[],b.value=void 0,bt({controlMode:`ai-agent`,controlRevision:0})}),h.clearConversation(),Ae(!0),O([]),Ue([]),tn({newConversation:!0})},[Me,C,b,h,tn,n,ke,Lt,tt,bt]),Pn=l(()=>{let t=Nn();De(`chat`);let n=e.modules.list.find(e=>e.layout===`chat`)?.id;return n&&M.switchTab(n),t},[Nn,M,e]),Fn=l(async e=>{await Pn(),await wn.current(e,[])||It.current?.fill(e)},[Pn]),In=l(()=>{let e=Ce===`expanded`?`normal`:`expanded`;$.info(`expand`,{from:Ce,expanded:e===`expanded`}),we(e),h.savePanelSize(e),n.emit(`expand`,e===`expanded`)},[n,Ce,h]),Ln=l(()=>{let e=Ce===`fullscreen`?`normal`:`fullscreen`;$.info(`fullscreen`,{from:Ce,fullscreen:e===`fullscreen`}),we(e),h.savePanelSize(e),n.emit(`fullscreen`,e===`fullscreen`)},[n,Ce,h]),Rn=l(()=>{De(e=>{let t=e===`history`?`chat`:`history`;return $.info(`toggleHistory`,{view:t}),n.emit(`toggleHistory`,{view:t}),t})},[n]),zn=l(()=>{Ze(e=>{let t=!e;return $.info(`sidebarToggle`,{collapsed:t}),h.saveSidebarCollapsed(t),n.emit(`sidebarToggle`,{collapsed:t}),t})},[h,n]),G=l(e=>{$.info(`resize`,e),lt({widgetSize:e}),n.emit(`resize`,e)},[lt,n]),Bn=l(async t=>{let i=t.conversationId;if(i===b.value&&Mt(i)){$.info(`selectConversation`,{conversationId:i,cached:!0}),n.emit(`selectConversation`,{conversationId:i}),R.publishConversation(t),De(`chat`);let e=A();e&&M.switchTab(e),jt(i);return}let a=++Bt.current;Vt.current++,T(!1);function o(){return a!==Bt.current}$.info(`selectConversation`,{conversationId:i,wasStreaming:Me}),n.emit(`selectConversation`,{conversationId:i}),R.publishConversation(t);try{let[e,t]=await Promise.all([R.loadConversation(i),zt(i)]);if(o())return;tt.settle(),x.current=!0,me.current=void 0;let n=bi(e.messages),a=e.conversationId!==b.value,s=a?n:Bi(n,C.value);he.current=s.some(e=>e.role===`user`)?void 0:e.conversationId,r(()=>{C.value=Jt(s,t),a&&(S.value=e.conversationId),b.value=e.conversationId}),O(t),h.saveConversationId(e.conversationId),R.primeIdentity(v,e.conversationId),Ae(e.canContinue),e.controlState&&bt(e.controlState);let c=s.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ue(c?.suggestions??[]),a?At(e.conversationId):jt(e.conversationId),De(`chat`);let l=A();l&&M.switchTab(l)}catch(t){if(o())return;n.emit(`error`,t),e.onError?.(t)}},[R,C,b,S,n,e,h,zt,Jt,Me,v,tt,At,jt,Mt,M]),Vn=l(e=>{if(typeof e!=`string`)return;F||Mn(),De(`chat`);let t=A();t&&M.switchTab(t),P?B.fire(`manual`,e):V.current=e},[F,Mn,e.modules,M,P,B]),Hn=p(void 0),Un=l(t=>{let n=e.modules.list.find(e=>e.layout===jf[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]),Wn=l(e=>{F||Mn(),e!==void 0&&(Wt(e)?N?Un(e):Hn.current=e:$.warn(`open: unknown target`,{detail:e}))},[F,Mn,N,Un]);u(()=>{N&&Hn.current&&(Un(Hn.current),Hn.current=void 0)},[N,Un]);let Gn=N&&!w&&!xn&&(!En||!Dn.value&&!On.value),[Kn,qn]=m(),Jn=l(e=>{let t=qt(e);t?(F||Mn(),qn(t)):$.warn(`ask: expected { text, send? } with non-empty text`,{detail:e})},[F,Mn]),Yn=F&&P&&ke&&N&&!w&&!xn,Xn=Yn&&Gn&&!Ie&&!(En&&(Me||Tn));u(()=>{if(Kn===void 0||!(Kn.send?Xn:Yn))return;let e=A();e?Ee!==`chat`||!te()?(De(`chat`),M.switchTab(e)):(qn(void 0),Kn.send?U(Kn.text,[]).then(e=>{e||It.current?.fill(Kn.text)}):It.current?.fill(Kn.text)):($.warn(`ask: the widget has no chat`),qn(void 0))},[Kn,Yn,Xn,Ee,re,e.modules,M,U]),u(()=>{if(e.widgetId!=="default")return;let n=`data-${j.cssPrefix}-`,r=[`ask`,`open`,`close`,`form`].map(e=>n+e);function i(e){let i=e.composedPath().find(e=>e instanceof Element&&r.some(t=>e.hasAttribute(t)));if(!(i instanceof Element))return;e.preventDefault();let a=i.getAttribute(`${n}ask`),o=i.getAttribute(`${n}open`),s=i.getAttribute(`${n}form`);a===null?o===null?s===null?Yt(t,`close`):Yt(t,`openForm`,s):Yt(t,`open`,Gt(o)):Yt(t,`ask`,Kt(a||(i.textContent??``),{send:i.hasAttribute(`${n}send`)}))}return document.addEventListener(`click`,i),()=>document.removeEventListener(`click`,i)},[e.widgetId,t]),u(()=>{if(e.widgetId!=="default")return;let n=Qt(location.href);n&&(history.replaceState(history.state,``,n.url),n.ask?Yt(t,`ask`,Kt(n.ask)):Yt(t,`open`,n.target))},[e.widgetId,t]);let Zn=p(nn),Qn=e.mode===`page`||e.mode===`inline`||e.mode===`standalone`;u(()=>a(()=>{let e=b.value,t={open:Qn||F,ready:N,unread:Dt.value,...e?{conversationId:e}:{}},r=Zn.current;(t.open!==r.open||t.ready!==r.ready||t.unread!==r.unread||t.conversationId!==r.conversationId)&&(Zn.current=t,n.emit(`state`,t),t.unread!==r.unread&&n.emit(`unread`,t.unread))}),[n,Qn,F,N,Dt,b]);let $n=p({handleOpenCommand:Wn,handleClose:jn,handleExpand:In,handleFullscreen:Ln,openForm:Vn,handleAskCommand:Jn});$n.current={handleOpenCommand:Wn,handleClose:jn,handleExpand:In,handleFullscreen:Ln,openForm:Vn,handleAskCommand:Jn},d(()=>Xt(t,{open:e=>$n.current.handleOpenCommand(e),close:()=>$n.current.handleClose(),expand:()=>$n.current.handleExpand(),fullscreen:()=>$n.current.handleFullscreen(),openForm:e=>$n.current.openForm(e),ask:e=>$n.current.handleAskCommand(e)}),[t]);let er=f(()=>He(e,nt,rt,it),[e,nt,rt,it]);We.current=er.strings;let tr=f(()=>D.map(e=>{let t=_n.list.find(t=>t.id===e.formId);return{...e,title:t?.title,form:t}}),[D,_n]);function nr(e){Bn(e)}let rr={options:er,transport:R,feedback:et,bus:n,persistence:h,conversationId:b.value??``,composerKey:S.value,composerApiRef:It,view:Ee,canSend:ke,isStreaming:Me,pageToolRunning:fn,isMemoryCompacting:Tn,canReleaseQueuedMessages:Gn,queueManualMessages:En&&(Dn.value||On.value),sendPreparing:Ie,composerActive:er.mode===`page`||er.mode===`inline`||er.mode===`standalone`||F,controlMode:_t.value,assignedOperatorInitials:vt.value,operatorAvailable:yt.value,operatorRequestEnabled:e.features.operatorRequest,onRequestOperator:St,onCancelOperatorRequest:Ct,loadingMessages:w,onLoadPreviousMessages:en,messagesSig:C,agent:Re,suggestions:Ve,initialWidgetSize:y.widgetSize??null,onClose:jn,onClear:Nn,onExpand:In,onFullscreen:Ln,onSoundToggle:ht,onToggleHistory:Rn,onSelectHistoryConversation:nr,onNewConversation:Pn,onLocaleChange:dt,onThemeChange:ft,onTextSizeChange:mt,onWidgetSizeChange:G,onSend:U,onStop:kn,onSuggestion:t=>{if(Fe.current)return;let r=t.text??t.label;$.info(`suggestion`,{text:r,autoSend:e.autoSendSuggestions}),n.emit(`suggestion`,{text:r}),e.autoSendSuggestions?U(r,[]):It.current?.fill(r)},activeForm:bn.value?.form??null,formMarkers:tr,onFormSubmit:B.complete,onFormSkip:B.skip,onFormFill:e=>B.fire(`manual`,e),tool:dn,onRetry:An,onMessageFeedback:mn};if(!N)return null;let ir=er.modules.list;function ar(e){let t=Ca(`close`,er.mode,e);return ir.length===0?/* @__PURE__ */ g(Ad,{strings:er.strings,onClose:t?jn:void 0}):ir.length===1&&ir[0]?.layout===`chat`?/* @__PURE__ */ g(vd,{...rr,panelSize:e}):/* @__PURE__ */ g(Od,{panelProps:{...rr,panelSize:e,onClose:t?jn:void 0},enabledModules:ir,nav:M,bus:n,hasUnread:Et.value,latestNews:Ft,onSelectConversation:nr,onStartNewConversation:Fn,onSetPanelSize:we})}if(e.mode===`page`){let t=e.history.enabled&&ir.some(e=>e.layout===`chat`);return/* @__PURE__ */ g(`div`,{class:`${Af}-anchor`,children:/* @__PURE__ */ g(Ld,{site:Ke,blocks:Je,transport:R,strings:er.strings,locale:er.locale,persistence:h,showConversations:t,onSelectConversation:nr,onNewConversation:Pn,sidebarCollapsed:Xe,onToggleSidebarCollapsed:zn,children:ar(`fullscreen`)})})}if(le){let t=e.mode===`standalone`?`fullscreen`:Ce;return/* @__PURE__ */ g(`div`,{class:`${Af}-anchor`,children:ar(t)})}let or=e.mode===`drawer`,sr=e.mode!==`modal`&&!e.launcher.hidden&&(!F||ve),cr=sr&&!ve&&!ye&&!or?er.launcher.callout:null;return/* @__PURE__ */ _(`div`,{class:`${Af}-anchor`,"data-launcher-size":er.launcher.size,children:[F||fe?/* @__PURE__ */ g(`div`,{class:`${Af}-surface`,hidden:!F,children:ar(Ce)}):null,sr?/* @__PURE__ */ g(Ko,{onToggle:Mn,launcher:er.launcher,strings:er.strings,leaving:ve,edgeTab:or}):null,cr?/* @__PURE__ */ g(Xo,{callout:cr,launcherPosition:er.position,strings:er.strings,closeLabel:er.strings.close,onDismiss:Se}):null]})}function Pf(e){let t=e?.url??(typeof location<`u`?location.href:void 0);if(e||t)return{...e,...t?{url:t}:{}}}const Ff=120;async function If(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 Lf=L.scope(`error-boundary`);var Rf=class extends e{constructor(...e){super(...e),z(this,`state`,{crashed:!1})}componentDidCatch(e,t){Lf.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 zf(e){let{bus:r,host:i,appRoot:a,persistence:o,reportError:s}=e,c=e.initialRaw,l,u=Oe(c),d=!0,f=0,p=lt(r);function m(){u=Oe(l?We(c,l):c)}function h(){jt(i,Mt(u.mode));let e=o.loadUserPrefs().themeMode;Vt(i,e?{...u,themeMode:e}:u),d&&(Bt(i,Bf(u)),d=!1)}function g(){h(),n(t(Rf,{onError:s},t(Nf,{key:f,bus:r,hostElement:i,options:u,recentHostEvents:p})),a)}r.on(`handshake`,e=>{e.config&&(e.config.storageVersion&&o.rememberStorageVersion(e.config.storageVersion),l=e.config,m(),g())});let _=St(r,{getOptions:()=>u,getVisitorId:()=>o.getVisitorId(),getConversationId:()=>o.loadConversationId()});function v(e={}){o.reset(),c={...c,userContext:void 0,userToken:void 0,...e},p.length=0,f+=1,d=!0,m(),g()}return{getOptions:()=>u,getUserOptions:()=>c,render:g,setUserOptions:e=>{c=e,m(),g()},patchUserOptions:e=>{let t=`userToken`in e&&e.userToken!==c.userToken;t&&c.userToken?v(e):(t&&(f+=1),c={...c,...e},m(),g())},reset:()=>v(),destroy:()=>_()}}function Bf(e){if(e.mode===`standalone`)return`standalone`;if(e.mode===`inline`)return`inline`;let t=pt(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:r}=za(e,Ba(),t.loadPanelOpen(),t.loadPanelSize());return La(e.mode,r,n)}const Vf=L.scope(`hooks`),Hf=`*`,Uf=/* @__PURE__ */ new Set;function Wf(e,t,n){let r={widgetId:e,event:t,listener:n};return Uf.add(r),()=>{Uf.delete(r)}}function Gf(e,t,n){let r=[...Uf];for(let i of r)if(qf(i.widgetId,e.widgetId)&&(i.event===`*`||i.event===t))try{i.listener(e,t,n)}catch(e){Vf.warn(`hook listener threw`,{event:t,error:e})}}function Kf(e,t){let n=[];for(let r of Jf)n.push(t.on(r,t=>{Gf(e,r,t)}));return()=>{for(let e of n)e()}}function qf(e,t){return e===`*`||e===t}const Jf=/* @__PURE__ */ `open.close.expand.fullscreen.resize.message.send.stop.clear.selectConversation.suggestion.toggleHistory.formSubmit.toolResult.toolDecision.hostEvent.messageFeedback.contentView.contentOpen.contentSearch.contentRead.contentLinkClick.attach.removeAttachment.voiceStart.voiceStop.voiceCancel.localeChange.themeChange.textSizeChange.soundToggle.sidebarToggle.calloutDismiss.error.handshake.conversationRebound.state.unread`.split(`.`),Yf=L.scope(`iframe`);function Xf(e,t,n=`closed`,r=`floating`,i=null){Yf.debug(`createIframeMount`,{position:t,initialMode:n,layoutMode:r,hasTarget:!!i});let a=document.createElement(`iframe`);a.title=`${j.name} chat`,a.setAttribute(`allow`,`microphone; clipboard-write`),$f(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=Nt({...e,target:o.body}),c=new MutationObserver(()=>{$f(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 Zf=`border:0;background:transparent;z-index:2147483647;pointer-events:auto;`,Qf={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 $f(e,t,n,r){if(n===`fullscreen`||r===`standalone`){e.style.cssText=`${Zf}position:fixed;inset:0;width:100vw;height:100vh;`;return}if(r===`inline`){e.style.cssText=`${Zf}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=`${Zf}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}=Qf[n]??Qf.open;e.style.cssText=`${Zf}position:fixed;${i}:16px;${a}:16px;width:${o};height:${s};`}const ep=/* @__PURE__ */ new Map;function tp(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);e.debug!==void 0&&I(e.debug);let t=L.scope(`mount`);t.info(`mount`,{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let r=Oe(e),i=r.widgetId,a=ep.get(i);a&&(t.debug(`destroy existing instance at slot`,{widgetId:i}),a.destroy());let o=Bf(r),s=r.iframe?Xf({position:Mt(r.mode)},r.position,o,r.mode,e.target??null):Nt({position:Mt(r.mode),target:e.target??null});s.hostElement.dataset.widgetId=i;let c=new rn,l=pt(i,r.storage,r.aiAgentDeploymentId);function u(e){c.emit(`error`,e),d.getOptions().onError?.(e)}let d=zf({bus:c,host:s.hostElement,appRoot:s.appRoot,persistence:l,initialRaw:e,reportError:u}),f=nn,p=()=>{},m=new Promise(e=>{p=e});c.on(`state`,e=>{f=e,e.ready&&p()}),d.render();let h=s.hostElement,g=null;function _(e){e.debug!==void 0&&I(e.debug),d.patchUserOptions(e)}let v={widgetId:i,open:e=>Yt(h,`open`,e),close:()=>Yt(h,`close`),expand:()=>Yt(h,`expand`),openForm:e=>Yt(h,`openForm`,e),ask:(e,t)=>Yt(h,`ask`,Kt(e,t)),on:(e,t)=>c.on(e,t),update:e=>{t.debug(`update`,{patch:e}),_(e)},setUserContext:e=>{t.debug(`setUserContext`,{keys:Object.keys(e)}),_({userContext:{...d.getUserOptions().userContext,...e}})},clearUserContext:()=>{t.debug(`clearUserContext`),_({userContext:void 0})},setPageContext:e=>{t.debug(`setPageContext`,{keys:Object.keys(e)}),_({pageContext:{...d.getUserOptions().pageContext,...e}})},clearPageContext:()=>{t.debug(`clearPageContext`),_({pageContext:void 0})},get state(){return f},ready:m,reset:()=>{t.info(`reset`,{widgetId:i}),d.reset()},login:e=>{t.info(`login`,{widgetId:i}),_({userToken:e})},track:(e,t)=>{let n=ct(e,t);n&&c.emit(`hostEvent`,n)},registerTool:jl,setDebug:e=>{I(e),t.info(`debug level set`,{level:_e()})},debugLevel:()=>_e(),onLog:e=>ye(e),destroy:()=>{t.info(`destroy`,{widgetId:i}),c.emit(`state`,nn),g?.(),d.destroy(),c.clear(),n(null,s.appRoot),s.destroy(),ep.get(i)===v&&ep.delete(i)}};return g=Kf(v,c),ep.set(i,v),v}function np(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);let t=e.widgetId??`default`,n=ep.get(t);return n?(n.update(e),n):tp(e)}function rp(e){if(e!==void 0){ep.get(e)?.destroy();return}let t=[...ep.values()];for(let e of t)e.destroy()}function ip(e=`default`){return ep.get(e)??null}function ap(){return[...ep.values()]}function op(e,t,n){return Wf(e,t,n)}const sp=_t,cp=j;export{Hf as HOOK_WILDCARD,cp as brand,rp as destroy,ap as getAllInstances,ip as getInstance,op as hook,np as init,tp as mount,Bf as resolveInitialHostMode,sp as version};
|
|
34
|
+
`).trim(),ee=!w&&t!==`error`&&!y.value&&M.length>0,te=o?Ju(v,{showReasoning:a,showSources:s}):v.map((e,t)=>({kind:`part`,part:e,index:t})),ne=Zu(v),N=e.canceled===!0||t===`error`,re=e.canceled===!0&&!w&&C.value&&x.value,ie=te.at(-1),P=ie?.kind===`steps`?ie.indices.at(-1):ie?.index;function ae(r,i){return/* @__PURE__ */ g(hd,{part:r,generativeUi:e.role===`assistant`,live:T,current:T&&i===P,reasoningMs:e.stepTimings?.[ne[i]??-1]?.reasoningMs,strings:n,showReasoning:a,showToolCalls:o,showSources:s,interactive:c&&t===`complete`&&(r.kind!==`tool`||Fi(e,i)),superseded:l,continuationStreaming:e.continuationStreaming===!0,stopped:N,tool:u},`${xd(r)}#${i}`)}let oe=j||ee;return/* @__PURE__ */ g(`div`,{class:`${Q}-bubble-row`,"data-role":e.role,"data-testid":Xo(Y.messageBubble,e.serverMessageId??e.id),children:/* @__PURE__ */ _(`div`,{class:`${Q}-bubble-col`,children:[/* @__PURE__ */ _(`div`,{class:`${Q}-bubble`,children:[e.role===`operator`&&e.operatorInitials?/* @__PURE__ */ g(`span`,{class:`${Q}-bubble-author`,children:e.operatorInitials}):null,/* @__PURE__ */ _(`div`,{class:`${Q}-bubble-body`,children:[D?/* @__PURE__ */ g(Cd,{label:n.loading}):te.flatMap((t,r)=>t.kind===`part`?[ae(t.part,t.index)]:t.parts.some(e=>e.kind===`tool`)?[/* @__PURE__ */ g(rd,{parts:t.parts,steps:t.indices.map(e=>ne[e]??-1),stepTimings:e.stepTimings,timed:!N,strings:n,live:T,running:T&&r===te.length-1,stopped:N&&r===te.length-1,runStartedAt:e.runStartedAt},`steps#${t.indices[0]}`)]:t.parts.map((e,n)=>ae(e,t.indices[n]??n))),re?/* @__PURE__ */ _(`div`,{class:`${Q}-steps-row`,"data-status":`stopped`,"data-testid":Y.replyStopped,children:[/* @__PURE__ */ g(`span`,{class:`${Q}-steps-row-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g($a,{})}),/* @__PURE__ */ g(`div`,{class:`${Q}-steps-row-main`,children:/* @__PURE__ */ g(`span`,{class:`${Q}-steps-stopped-label`,children:n.statusStopped})})]}):null,O&&!h&&/* @__PURE__ */ g(Sd,{}),t===`error`||y.value?/* @__PURE__ */ g(bd,{text:yd(e,t,n),retryLabel:n.errorRetry,onRetry:d?()=>d(e):void 0}):null,h&&T?/* @__PURE__ */ g(bd,{text:n.errorReconnecting}):null]})]}),k||oe?/* @__PURE__ */ _(`div`,{class:`${Q}-bubble-meta`,children:[k?/* @__PURE__ */ g(`time`,{class:`${Q}-bubble-time`,dateTime:k.iso,title:k.full,children:k.short}):null,oe?/* @__PURE__ */ _(`div`,{class:`${Q}-bubble-actions`,children:[j&&e.serverMessageId?/* @__PURE__ */ g(dl,{messageId:e.serverMessageId,initial:e.feedback??null,strings:n,onFeedback:m}):null,ee?/* @__PURE__ */ g(pd,{text:M,strings:n}):null]}):null]}):null]})})}function pd({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:`${Q}-msg-action`,"data-active":n?`true`:void 0,"aria-label":a,title:a,onClick:i,"data-testid":Y.messageCopy,children:g(n?mo:Bo,{})})}function md(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 hd({part:e,generativeUi:t,live:n,current:r,reasoningMs:i,strings:a,showReasoning:o,showToolCalls:s,showSources:c,interactive:l,superseded:u,continuationStreaming:d,stopped:f,tool:p}){switch(e.kind){case`step-start`:return null;case`text`:return/* @__PURE__ */ g(cs,{textSig:e.textSig,doneSig:e.doneSig,generativeUi:t,strings:a});case`reasoning`:return o?/* @__PURE__ */ g(ud,{part:e,current:r,reasoningMs:i,strings:a,standalone:!0}):null;case`tool`:return/* @__PURE__ */ g(vd,{part:e,strings:a,showToolCalls:s,interactive:l,superseded:u,continuationStreaming:d,live:n,stopped:f,tool:p});case`file`:return/* @__PURE__ */ g(gd,{part:e,strings:a});case`source`:return c?/* @__PURE__ */ g(Cu,{part:e,strings:a}):null}}function gd({part:e,strings:t}){let n=e.filename??t.file;if(e.mediaType.startsWith(`image/`))return/* @__PURE__ */ g(`a`,{class:`${Q}-file-image`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,title:n,"data-testid":Y.messageFile,children:/* @__PURE__ */ g(`img`,{src:e.url,alt:n,loading:`lazy`})});let r=(n.includes(`.`)?n.split(`.`).pop():e.mediaType.split(`/`).pop())?.toUpperCase(),i=e.fileSize===void 0?void 0:_d(e.fileSize);return/* @__PURE__ */ _(`a`,{class:`${Q}-file-chip`,href:e.url,target:`_blank`,rel:`noreferrer noopener`,title:n,"data-testid":Y.messageFile,children:[/* @__PURE__ */ g(`span`,{class:`${Q}-file-chip-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(bo,{})}),/* @__PURE__ */ _(`span`,{class:`${Q}-file-chip-text`,children:[/* @__PURE__ */ g(`span`,{class:`${Q}-file-chip-name`,children:n}),/* @__PURE__ */ g(`span`,{class:`${Q}-file-chip-meta`,children:[r,i].filter(Boolean).join(` · `)})]})]})}function _d(e){let t=Math.min(Math.floor(Math.log10(Math.max(e,1))/3),2);return new Intl.NumberFormat(void 0,{style:`unit`,unit:[`byte`,`kilobyte`,`megabyte`][t],unitDisplay:`narrow`,maximumFractionDigits:1}).format(e/1e3**t)}function vd({part:e,strings:t,showToolCalls:n,interactive:r,superseded:a,continuationStreaming:o,live:s,stopped:c,tool:l}){let u=f(()=>i(()=>e.approvalSig.value!==void 0),[e]),d=f(()=>i(()=>!qu(e)),[e]);return!n&&!d.value?null:l?.humanInLoop&&u.value?e.toolMetadata?.card===`questions`?/* @__PURE__ */ g(Ru,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,onDecision:l.onDecision,onEdit:l.onEdit}):/* @__PURE__ */ g(Eu,{part:e,strings:t,active:r,superseded:a,continuationStreaming:o,stopped:c,onDecision:l.onDecision,onEdit:l.onEdit}):n?/* @__PURE__ */ g(Ku,{part:e,strings:t,live:s,superseded:a,stopped:c}):null}function yd(e,t,n){return e.errorText?e.errorText:t===`error`&&e.role===`assistant`?n.errorServer:n.errorGeneric}function bd({text:e,retryLabel:t,onRetry:n}){return/* @__PURE__ */ _(`div`,{class:`${Q}-error`,role:`alert`,children:[/* @__PURE__ */ g(`span`,{class:`${Q}-error-icon`,"aria-hidden":`true`,children:/* @__PURE__ */ g(Jo,{})}),/* @__PURE__ */ g(`span`,{class:`${Q}-error-text`,children:e}),n&&t?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Q}-error-retry`,onClick:n,"data-testid":Y.messageRetry,children:t}):null]})}function xd(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 Sd(){return/* @__PURE__ */ _(`span`,{class:`${Q}-typing`,"data-testid":Y.typingDots,"aria-hidden":`true`,children:[/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{}),/* @__PURE__ */ g(`span`,{})]})}function Cd({label:e}){return/* @__PURE__ */ _(`span`,{class:`${Q}-loading`,role:`status`,children:[/* @__PURE__ */ g(`span`,{class:`${Q}-loading-spinner`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${Q}-loading-label`,children:e})]})}const wd=M.cssPrefix;function Td({messagesSig:e,reconnectingSig:t,strings:n,responseMode:r,showReasoning:i,showToolCalls:a,showSources:o,enableMessageFeedback:c,onFeedback:l,loading:f,onLoadPreviousMessages:h,idle:v,controlMode:y=`ai-agent`,tool:b,onRetry:x,form:S,formMarkers:C,onFillForm:w}){let T=p(null),E=s(()=>e.value),[D,O]=m(!1),[k,A]=m(!1),j=p(!1),M=p(!1),[ee,te]=m(),ne=p(!1),N=p(!1),re=p(!1),ie=p(0);function P(){return re.current||performance.now()-ie.current<350}let ae=p(0);function oe(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 se(e){return O(e.scrollHeight-e.scrollTop-e.clientHeight>240)}function F(e){ae.current=performance.now(),e.scrollTop=e.scrollHeight,oe(e)}function ce(e,t){F(e);let n=t,r=0;function i(){N.current||P()||(F(e),--n>0&&(r=requestAnimationFrame(i)))}return t>0&&(r=requestAnimationFrame(i)),()=>cancelAnimationFrame(r)}function le(e,t){let n,r,i,a=-1;function o(){n.disconnect(),r.disconnect(),clearTimeout(i)}function s(){if(N.current||P()||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 ue=E.value[0]?.id;d(()=>{let e=T.current;if(e&&E.value.length!==0&&!M.current&&(ne.current=!0,E.value.some(e=>e.role===`user`)))return le(e,300)},[ue]);let I=p(0);u(()=>{let e=T.current,t=E.value,n=I.current;if(I.current=t.length,e&&ne.current&&!M.current){if(t.slice(n).some(e=>e.role===`user`))return N.current=!1,ce(e,3);t.some(e=>e.role===`user`)&&(N.current||P()||e.scrollHeight-e.scrollTop-e.clientHeight<120&&F(e))}},[E.value.length]);let de=p(null);u(()=>{let e=T.current,t=E.value.at(-1),n=de.current;if(de.current=t?{id:t.id,streaming:t.status===`streaming`}:null,e&&ne.current&&t&&t.id===n?.id&&!n.streaming&&t.status===`streaming`)return N.current=!1,ce(e,3)},[E.value]),u(()=>{let e=T.current;if(!e)return;let t=E.value.at(-1);if(!t||t.status!==`streaming`&&!E.value.some(e=>e.role===`user`))return;let n=()=>{N.current||P()||e.scrollHeight-e.scrollTop-e.clientHeight<240&&F(e)};if(t.status!==`streaming`)return le(e,300);n();let r=new MutationObserver(n);return r.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>r.disconnect()},[E.value]);let fe=S?.form.id,pe=!!S&&(C??[]).some(e=>e.formId===S.form.id);d(()=>{let e=T.current;e&&fe&&!N.current&&E.value.some(e=>e.role===`user`)&&(pe?e.querySelector(`[data-testid="${Y.formGate}"]`)?.scrollIntoView({block:`nearest`}):F(e))},[fe,pe]),u(()=>{let e=T.current;if(!e)return;let t=()=>{se(e),oe(e),performance.now()-ae.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,re.current=!0}function o(e){(e.touches[0]?.clientY??0)>i+4&&n()}function s(){re.current=!1,ie.current=performance.now()}function c(){re.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}),se(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 me(){let e=T.current;e&&(N.current=!1,F(e))}let he=E.value.filter(e=>!e.ephemeral),ge=he[0],L=ge?.serverMessageId??ge?.id,_e=!!(h&&he.length>=50&&L!==ee);async function R(){if(!h||j.current)return;let e=T.current,t=e?.scrollHeight??0,n=e?.scrollTop??0;j.current=!0,M.current=!0,A(!0);try{let r=await h();r===!1&&L&&te(L),r&&e&&(await new Promise(e=>requestAnimationFrame(()=>requestAnimationFrame(()=>e()))),e.scrollTop=n+e.scrollHeight-t,oe(e),se(e))}finally{M.current=!1,j.current=!1,A(!1)}}let ve=[],ye=``,be=E.value.at(-1)?.id,xe=t?.value===!0,Se=[...C??[]].toSorted((e,t)=>(e.createdAt??1/0)-(t.createdAt??1/0));function Ce(e){return S&&e.formId===S.form.id?/* @__PURE__ */ g(cl,{form:S.form,strings:n,onSubmit:S.onSubmit,onSkip:S.onSkip},`gate:${e.formId}`):/* @__PURE__ */ g(ll,{marker:e,strings:n,onFill:!S&&w?()=>w(e.formId):void 0},e.key)}function we(e){for(let t=Se[0];t?.createdAt!==void 0&&!(e!==void 0&&t.createdAt>e);t=Se[0])Se.shift(),ve.push(Ce(t))}for(let e of E.value){if(e.role===`assistant`&&e.id!==be&&Xi(e))continue;we(e.createdAt);let t=Ed(e.createdAt);t&&t!==ye&&(ve.push(/* @__PURE__ */ g(`div`,{class:`${wd}-date-divider`,children:/* @__PURE__ */ g(`span`,{class:`${wd}-date-pill`,title:Dd(e.createdAt),children:Od(e.createdAt,n)})},`day:${t}`)),ye=t);let s=e.retryAction!==void 0||e.role===`assistant`&&e.id===be?Zi(E.value,e):void 0,u=s!==void 0&&(s.kind!==`continue-assistant`||y===`ai-agent`);ve.push(/* @__PURE__ */ g(dd,{message:e,status:e.status,strings:n,responseMode:r,showReasoning:i,showToolCalls:a,showSources:o,interactive:!!v&&y===`ai-agent`&&e.id===be,superseded:e.id!==be,tool:b,onRetry:v&&u&&(e.role===`user`||e.id===be)?x:void 0,enableMessageFeedback:c,onFeedback:l,reconnecting:xe&&e.id===be},e.id))}for(let e of Se)ve.push(Ce(e));return/* @__PURE__ */ _(`div`,{class:`${wd}-list-wrap`,children:[/* @__PURE__ */ _(`div`,{ref:T,class:`${wd}-list ${wd}-list--fade`,part:`messages`,role:`log`,"aria-live":`polite`,"aria-relevant":`additions text`,children:[f&&E.value.length===0?/* @__PURE__ */ g(`div`,{class:`${wd}-list-loading`,role:`status`,children:n.conversationLoading}):null,_e?/* @__PURE__ */ g(`div`,{class:`${wd}-load-previous`,children:/* @__PURE__ */ g(`button`,{type:`button`,onClick:R,disabled:k,"aria-busy":k,"data-testid":Y.loadPreviousMessages,children:n.loadPreviousMessages})}):null,ve,S&&!pe?/* @__PURE__ */ g(cl,{form:S.form,strings:n,onSubmit:S.onSubmit,onSkip:S.onSkip}):null]}),D?/* @__PURE__ */ g(`div`,{class:`${wd}-jump-strip`,children:/* @__PURE__ */ g(`button`,{type:`button`,class:`${wd}-jump`,onClick:me,"aria-label":n.scrollToBottom,title:n.scrollToBottom,"data-testid":Y.scrollToBottom,children:/* @__PURE__ */ g(yo,{})})}):null]})}function Ed(e){if(typeof e!=`number`||!Number.isFinite(e))return``;let t=new Date(e);return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function Dd(e){if(typeof e!=`number`||!Number.isFinite(e))return``;try{return new Date(e).toLocaleDateString(void 0,{dateStyle:`full`})}catch{return``}}function Od(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 kd({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":Y.resizeGrip,children:/* @__PURE__ */ g(so,{})})}const Ad=M.cssPrefix;function jd({suggestions:e,onPick:t,disabled:n=!1}){let r=p(null),[i,a]=m({start:!1,end:!1});return u(()=>{let e=r.current;if(!e)return;function t(){if(!e)return;let t=Math.abs(e.scrollLeft),n=t>1,r=t<e.scrollWidth-e.clientWidth-1;a(e=>e.start===n&&e.end===r?e:{start:n,end:r})}t(),e.addEventListener(`scroll`,t,{passive:!0});let n=typeof ResizeObserver>`u`?void 0:new ResizeObserver(t);return n?.observe(e),()=>{e.removeEventListener(`scroll`,t),n?.disconnect()}},[e]),e.length===0?null:/* @__PURE__ */ g(`div`,{ref:r,class:`${Ad}-suggestions`,role:`group`,"aria-label":`Suggested replies`,"data-cut-start":i.start?`true`:void 0,"data-cut-end":i.end?`true`:void 0,children:e.map((e,r)=>/* @__PURE__ */ g(`button`,{type:`button`,class:`${Ad}-suggestion`,onClick:()=>t(e),disabled:n,"data-testid":Xo(Y.suggestion,r),children:e.label},e.id))})}const Md=M.cssPrefix,Nd=`.${Md}-header, .${Md}-back-header, .${Md}-home-hero`;function Pd(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(Nd)||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(`--${Md}-modal-dx`)),dy:n(e.style.getPropertyValue(`--${Md}-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(`--${Md}-modal-dx`,`${n}px`),e.style.setProperty(`--${Md}-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 Fd({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 Id=M.cssPrefix;function Ld(e){let{options:t,onClose:n}=e,r=t.strings,i=p(null);u(()=>{let e=i.current;if(!e)return;let t=is(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?.blocking&&!e.sendPreparing&&e.options.features.fileUpload,{visible:s}=Fd({containerRef:i,onDrop:l(e=>{o&&a.current?.attachFromDrop(e)},[a,o]),disabled:!o});return Pd(i.current,t.mode===`modal`),/* @__PURE__ */ _(`div`,{ref:i,class:`${Id}-panel`,part:`panel`,role:`dialog`,"aria-modal":`false`,"aria-label":r.panelTitle,style:{position:`relative`},"data-testid":Y.panel,children:[/* @__PURE__ */ g(Rd,{...e,containerEl:i.current,dragOver:s}),/* @__PURE__ */ g(Wd,{poweredBy:e.options.poweredBy})]})}function Rd(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,reconnectingSig:k,agent:A,suggestions:j,initialWidgetSize:M,onClose:ee,onBack:te,onClear:ne,onToggleHistory:N,onSelectHistoryConversation:re,onNewConversation:ie,onWidgetSizeChange:P,onSend:ae,onStop:oe,onSuggestion:se,activeForm:F,formMarkers:ce,onFormSubmit:le,onFormSkip:ue,onFormFill:I,tool:de,onRetry:fe,onMessageFeedback:pe,containerEl:me,dragOver:he,composerApiRef:ge}=e,L=t.strings,_e=s(()=>O.value.some(e=>!e.ephemeral&&e.role!==`system`)).value,R;return R=F?.blocking?null:d?/* @__PURE__ */ _(h,{children:[b&&b!==`ai-agent`?/* @__PURE__ */ g(Vd,{controlMode:b,operatorInitials:x,operatorAvailable:S,onCancelOperatorRequest:T,strings:L}):null,p&&b===`ai-agent`?/* @__PURE__ */ _(`div`,{class:`${Id}-loading ${Id}-compaction-status`,role:`status`,"data-testid":Y.compactionStatus,children:[/* @__PURE__ */ g(`span`,{class:`${Id}-loading-spinner`,"aria-hidden":`true`}),L.compactingContext]}):null,!f&&!p&&b===`ai-agent`&&/* @__PURE__ */ g(jd,{suggestions:j,onPick:se,disabled:y}),/* @__PURE__ */ g(fc,{options:t,transport:n,feedback:r,bus:i,persistence:a,conversationId:o,isStreaming:f,pageToolRunning:e.pageToolRunning,isMemoryCompacting:p,canReleaseQueuedMessages:m,queueManualMessages:v,active:e.composerActive&&u===`chat`,isPreparing:y,operatorRequestEnabled:C,canRequestOperator:_e,controlMode:b,onRequestOperator:w,onSend:ae,onStop:oe,apiRef:ge},c)]}):/* @__PURE__ */ g(Bd,{label:L.conversationClosed,ctaLabel:L.startNewConversation,onNewConversation:ne}),/* @__PURE__ */ _(h,{children:[u===`history`?/* @__PURE__ */ g(zd,{strings:L,onBack:N,onClose:ee,showClose:Oa(t.mode,l,t.actions)}):/* @__PURE__ */ _(`header`,{class:`${Id}-header`,part:`header`,"data-testid":Y.panelHeader,children:[te?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Id}-icon-btn`,onClick:te,"aria-label":L.moduleBack,title:L.moduleBack,children:/* @__PURE__ */ g(_o,{})}):null,A?/* @__PURE__ */ g(Nc,{agent:A,strings:L}):/* @__PURE__ */ g(`h1`,{children:L.panelTitle}),/* @__PURE__ */ g(Os,{panelProps:e,variant:`chat`})]}),u===`history`?/* @__PURE__ */ g(Hc,{transport:n,strings:L,locale:t.locale,persistence:a,onSelect:re,onNewConversation:ie}):/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ g(Wc,{visible:he,strings:L}),/* @__PURE__ */ g(Td,{messagesSig:O,reconnectingSig:k,strings:L,responseMode:t.responseMode,showReasoning:t.showReasoning,showToolCalls:t.showToolCalls,showSources:t.showSources,enableMessageFeedback:t.enableMessageFeedback,onFeedback:pe,loading:E,onLoadPreviousMessages:D,idle:!f&&!y&&d&&!F?.blocking,controlMode:b,tool:de,onRetry:fe,form:F?{form:F,onSubmit:le,onSkip:ue}:null,formMarkers:ce,onFillForm:I}),R,/* @__PURE__ */ g(Ud,{disclaimer:t.composerDisclaimer})]}),t.size.resize?.enabled?/* @__PURE__ */ g(kd,{panelEl:me,resize:t.size.resize,position:t.position,initialSize:M,onSizeChange:P,strings:L}):null]})}function zd({strings:e,onBack:t,onClose:n,showClose:r}){return/* @__PURE__ */ _(`header`,{class:`${Id}-header`,part:`header`,children:[/* @__PURE__ */ g(`button`,{type:`button`,class:`${Id}-icon-btn`,onClick:t,"aria-label":e.historyBack,title:e.historyBack,children:/* @__PURE__ */ g(_o,{})}),/* @__PURE__ */ g(`h1`,{children:e.historyTitle}),r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Id}-icon-btn`,onClick:n,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(qa,{})}):null]})}function Bd({label:e,ctaLabel:t,onNewConversation:n}){return/* @__PURE__ */ _(`div`,{class:`${Id}-readonly-banner`,role:`note`,children:[/* @__PURE__ */ g(`span`,{class:`${Id}-readonly-label`,children:e}),/* @__PURE__ */ g(`button`,{type:`button`,class:`${Id}-readonly-cta`,onClick:n,children:t})]})}function Vd({controlMode:e,operatorInitials:t,operatorAvailable:n,onCancelOperatorRequest:r,strings:i}){let a=Hd(e,t,n,i);return/* @__PURE__ */ _(`div`,{class:`${Id}-operator-banner`,role:`status`,"data-mode":e,"data-testid":Y.operatorBanner,children:[/* @__PURE__ */ g(`span`,{class:`${Id}-operator-pulse`,"aria-hidden":`true`}),/* @__PURE__ */ g(`span`,{class:`${Id}-operator-label`,children:a}),e===`awaiting-operator`&&r?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Id}-cancel-operator-request`,"data-testid":Y.cancelOperatorRequest,onClick:r,children:i.cancelOperatorRequest}):null]})}function Hd(e,t,n,r){return e===`operator`?r.chattingWithOperator.replace(`{operator}`,t??``):n===!1?r.noOperatorAvailable:r.connectingOperator}function Ud({disclaimer:e}){return e?/* @__PURE__ */ g(`div`,{class:`${Id}-composer-footer`,children:/* @__PURE__ */ g(`div`,{class:`${Id}-disclaimer`,children:e})}):null}function Wd({poweredBy:e}){return e?/* @__PURE__ */ g(`div`,{class:`${Id}-poweredby-bar`,children:/* @__PURE__ */ g(Gd,{logoUrl:e.logoUrl,text:e.text,href:e.href})}):null}function Gd({logoUrl:e,text:t,href:n}){let r=/* @__PURE__ */ _(h,{children:[e?/* @__PURE__ */ g(`img`,{class:`${Id}-poweredby-logo`,src:e,alt:``,loading:`lazy`}):null,t?/* @__PURE__ */ g(`span`,{children:t}):null]});return n?/* @__PURE__ */ g(`a`,{class:`${Id}-poweredby`,href:n,target:`_blank`,rel:`noopener noreferrer`,children:r}):/* @__PURE__ */ g(`span`,{class:`${Id}-poweredby`,children:r})}const Kd=M.cssPrefix;function qd({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=is(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=za(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?.blocking&&!e.sendPreparing&&e.options.features.fileUpload,{visible:T}=Fd({containerRef:h,onDrop:l(e=>{w&&C.current?.attachFromDrop(e)},[C,w]),disabled:!w});Pd(h.current,f.mode===`modal`);let E=b?.kind===`iframe`||b?.kind===`content`,D=t.length>1&&(Ba(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(Os,{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(Rd,{...e,composerActive:S,containerEl:h.current,dragOver:T});let n=Dc[t.layout].Root;return n?/* @__PURE__ */ g(n,{...A(t)}):null}function te(){return b?.kind===`iframe`?/* @__PURE__ */ g(jc,{url:b.url,title:b.title,strings:m,onBack:()=>n.pop(),actions:j}):b?.kind===`content`?/* @__PURE__ */ g(ys,{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:`${Kd}-panel ${Kd}-messenger`,part:`panel`,role:`dialog`,"aria-modal":`false`,"aria-label":m.panelTitle,style:{position:`relative`},"data-testid":Y.messengerHome,children:[/* @__PURE__ */ _(`div`,{class:`${Kd}-messenger-body`,children:[M.map(e=>/* @__PURE__ */ g(`div`,{class:`${Kd}-messenger-pane`,hidden:E||e.id!==x?.id,children:ee(e)},e.id)),te()]}),D?/* @__PURE__ */ g(kc,{modules:t,activeTab:y.activeTab,strings:m,hasUnread:i,onSelect:e=>n.switchTab(e)}):null,/* @__PURE__ */ g(Wd,{poweredBy:f.poweredBy}),f.size.resize?.enabled&&(x?.layout!==`chat`||b)?/* @__PURE__ */ g(kd,{panelEl:h.current,resize:f.size.resize,position:f.position,initialSize:e.initialWidgetSize,onSizeChange:e.onWidgetSizeChange,strings:m}):null]})}const Jd=M.cssPrefix;function Yd({strings:e,onClose:t}){return/* @__PURE__ */ _(`div`,{class:`${Jd}-panel ${Jd}-modules-empty`,part:`panel`,role:`dialog`,"aria-label":e.panelTitle,"data-testid":Y.modulesEmpty,children:[t?/* @__PURE__ */ g(`button`,{type:`button`,class:`${Jd}-icon-btn ${Jd}-modules-empty-close`,onClick:t,"aria-label":e.close,title:e.close,children:/* @__PURE__ */ g(qa,{})}):null,/* @__PURE__ */ g(`p`,{class:`${Jd}-modules-empty-text`,children:e.modulesEmpty})]})}function Xd(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":Y.sidebar,children:[/* @__PURE__ */ _(`div`,{class:`${t}-sidebar-header`,children:[/* @__PURE__ */ g(Zd,{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":Y.sidebarToggle,children:/* @__PURE__ */ g(Qd,{collapsed:a})})]}),a?null:/* @__PURE__ */ _(h,{children:[o.length>0?/* @__PURE__ */ g(`nav`,{class:`${t}-sidebar-section`,"data-section":`navigation`,children:/* @__PURE__ */ g($d,{items:o})}):null,s.length>0?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-section`,"data-section":`link-cards`,children:/* @__PURE__ */ g(ef,{items:s})}):null,e.showConversations?/* @__PURE__ */ g(`div`,{class:`${t}-sidebar-conversations`,children:/* @__PURE__ */ g(Hc,{transport:e.transport,strings:e.strings,locale:e.locale,persistence:e.persistence,onSelect:e.onSelectConversation,onNewConversation:e.onNewConversation})}):null]})]})}function Zd({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 Qd({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 $d({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 ef({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 tf=M.cssPrefix;function nf(e){return/* @__PURE__ */ _(`main`,{class:`${tf}-page-shell`,"data-sidebar-collapsed":e.sidebarCollapsed?`true`:`false`,children:[/* @__PURE__ */ g(Xd,{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:`${tf}-page-chat`,"aria-label":e.strings.panelTitle,children:e.children})]})}const rf=R.scope(`hitl`);function af(e){return e.kind===`tool`&&Gl(e.toolMetadata)&&(e.stateSig.value===`input-available`||e.stateSig.value===`approval-responded`&&e.approvalSig.value?.approved===!0)}function of(e,t){t.errorSig.value=Zl(t.toolCallId),t.stateSig.value=`output-error`,e.partsSig.value=[...e.partsSig.value]}function sf(e,t){let n=e.slice(0,e.indexOf(t)).findLast(e=>e.role===`user`);return n!==void 0&&kl.sentHere(n.id)}function cf(e){let{streaming:t,controlModeSig:n,messagesSig:r,sendAiTurn:i,bus:a,humanInLoop:o,tools:s}=e,c=p(t);c.current=t;let d=p(s);d.current=s;let h=p(/* @__PURE__ */ new Map),[g,_]=m(!1),v=l((e,t,a)=>{if(c.current||n.value!==`ai-agent`)return!1;let o=r.value.at(-1),s=o?.partsSig.value.findIndex(t=>t.kind===`tool`&&t.toolCallId===e)??-1,l=o?.partsSig.value[s];if(!o||l?.kind!==`tool`)return rf.warn(`decideTool: tool part not found`,{toolCallId:e}),!1;if(o.status!==`complete`||!Fi(o,s)||!t(l))return!1;if(a(l),o.partsSig.value=[...o.partsSig.value],!Ni(o)||o.partsSig.value.some(af))return!0;o.status=`streaming`,o.retryAction={kind:`continue-assistant`,messageId:o.serverMessageId??o.id},o.awaitingContinuation=!0,r.value=[...r.value];let u=o.partsSig.value.flatMap(e=>e.kind===`tool`?[e.toolCallId]:[]);return i({continueExisting:!0}).then(e=>e&&kl.clear(u)),!0},[n,r,i]),y=l((e,t)=>{let{toolCallId:n,toolName:r}=t;h.current.has(n)||(h.current.set(n,e),_(!0),Yl({toolCallId:n,toolName:r,input:t.inputSig.value,optionTools:d.current??[],onSettled:(e,t)=>{rf.info(`toolResult`,{toolCallId:n,status:e}),a.emit(`toolResult`,{toolCallId:n,name:Kl(r),status:e,durationMs:t})}}).then(e=>{h.current.delete(n)&&(_(h.current.size>0),v(n,af,t=>{e.state===`output-available`?t.outputSig.value=e.output:t.errorSig.value=e.errorText,t.stateSig.value=e.state}))}))},[a,v]),b=l(()=>{let e=r.value;for(let[t,n]of h.current){let r=e.findIndex(e=>e.id===n);r<0||r===e.length-1||(h.current.delete(t),Ql(t),_(h.current.size>0))}let t=e.at(-1);if(c.current||t?.role!==`assistant`||t.status!==`complete`)return;let n=t.partsSig.value.filter(e=>af(e)&&e.stateSig.value===`input-available`);if(n.length!==0&&sf(e,t))for(let e of n)kl.get(e.toolCallId)?.state===`stopped`?of(t,e):y(t.id,e)},[r,y]);u(()=>b(),[t,b]),u(()=>r.subscribe(()=>b()),[r,b]);let x=l((e,t,n)=>{let i=!1,o;if(!v(e,e=>e.stateSig.value===`approval-requested`,r=>{Gl(r.toolMetadata)&&(o=r),i=r.toolMetadata?.card===`questions`;let a=r.approvalSig.value?.id??e;r.approvalSig.value={id:a,approved:t,reason:n},r.stateSig.value=`approval-responded`}))return;let s=r.value.at(-1);o&&t&&s&&y(s.id,o),o&&!t&&a.emit(`toolResult`,{toolCallId:e,name:Kl(o.toolName),status:`declined`,durationMs:0}),i?(rf.info(`toolResult`,{toolCallId:e}),a.emit(`toolResult`,{toolCallId:e})):(rf.info(`toolDecision`,{toolCallId:e,approved:t}),a.emit(`toolDecision`,{toolCallId:e,approved:t}))},[a,v,r,y]),S=l(e=>{v(e,e=>e.stateSig.value===`approval-responded`&&e.approvalSig.value?.approved!==void 0&&!af(e),t=>{let n=t.approvalSig.value?.id??e;t.approvalSig.value={id:n},t.stateSig.value=`approval-requested`})},[v]);return{toolInteraction:f(()=>({humanInLoop:o,onDecision:x,onEdit:S}),[o,x,S]),pageToolsRunning:g,stopPageTools:l(()=>{let e=r.value.at(-1);for(let t of h.current.keys()){let n=e?.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);e&&n?of(e,n):Zl(t),rf.info(`toolResult`,{toolCallId:t,status:`stopped`}),a.emit(`toolResult`,{toolCallId:t,name:n?Kl(n.toolName):void 0,status:`stopped`,durationMs:0})}h.current.clear(),_(!1)},[a,r])}}const lf=R.scope(`latest-news`);function uf({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=>lf.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 df({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 ff(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=oi(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 pf=M.cssPrefix,mf=`--${pf}-visual-viewport-height`,hf=`--${pf}-visual-viewport-top`;function gf(e){let{hostElement:t,mode:n,panelSize:r,isOpen:i,surfaceReady:a,setIsOpen:o}=e;d(()=>{zt(t,Va(n,r,i))},[t,i,r,n]),d(()=>{if(!i||!a)return;let e=t.ownerDocument.defaultView,n=e?.visualViewport,r=t.shadowRoot?.querySelector(`.${pf}-anchor`);if(!e||!n||!r)return;let o=()=>{r.style.setProperty(mf,`${n.height}px`),r.style.setProperty(hf,`${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(mf),r.style.removeProperty(hf)}},[t,i,a]),u(()=>{if(n!==`modal`||!i)return;function e(e){e.composedPath().some(e=>e instanceof HTMLElement&&e.classList.contains(`${pf}-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 _f=R.scope(`reducer`);var vf=class{constructor(e,t){this.messagesSig=e,this.onReconcileNeeded=t,B(this,`active`,null),B(this,`openTextParts`,/* @__PURE__ */ new Map),B(this,`partSeq`,0),B(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=pi();n.id=e.id;let r=bf(e)||Pi(e)&&(e.status!==`streaming`||Ni(e)),i=e.status===`streaming`&&Ni(e)&&Mi(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,xf(a,i),e.liveCatchUp&&bf(e.shadow)&&(i.status===`streaming`||Pi(i))?(e.probeContinuation=!1,e.continuationTailReplay=!1,e):(e.probeContinuation=bf(i)||Pi(i)&&(i.status!==`streaming`||Ni(i)),e.continuationTailReplay=i.status===`streaming`&&Ni(i)&&Mi(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;xf(e,i);let a=bf(e)&&Pi(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.runStartedAt=t.runStartedAt??e.runStartedAt,e.stepTimings=t.stepTimings??e.stepTimings,e.partsSig.value=t.partsSig.value,this.messagesSig.value=[...this.messagesSig.value]}),this.replay=null,this.active=e,e}promoteContinuation(){let{baseline:e,chunks:t}=this.replay,n=Ii(e);return this.replay=null,r(()=>{e.partsSig.value=e.partsSig.value.slice(0,Sf(e,t)+1),e.awaitingContinuation=!1,e.status=`streaming`,e.finishReason=void 0,e.errorText=void 0,e.suggestions=void 0,this.attach(e);for(let e of t)this.apply(e);e.continuationStreaming=n||void 0,this.messagesSig.value=[...this.messagesSig.value]}),e}settleOwnedContinuation(e){let{baseline:t}=this.replay,n=Ii(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&&!Di(a))return this.attach(a),this.apply(e),null;let o=pi();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(!Ef(n,r,e)){if(s){if(n.status===`streaming`&&n.awaitingContinuation!==!0){let t=this.settleOwnedContinuation(e);return this.detach(),t}Af(n,r)&&(n.continuationStreaming=!0,this.messagesSig.value=[...this.messagesSig.value],this.onReconcileNeeded?.({messageId:n.serverMessageId??n.id})),this.detach()}return null}let t=bf(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&&wf(n,r)){let e=this.promoteContinuation();return s?(this.detach(),e):null}if(!o)return s&&this.detach(),null;if(s&&!Di(n)&&Di(r)){let e=this.promoteReplay();return this.detach(),e}if(!Cf(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),Mf(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?.runStartedAt&&(t.runStartedAt=n.runStartedAt),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`:Mf(t,{kind:`step-start`,id:`ss-${this.partSeq++}`});return;case`message-metadata`:t.stepTimings=vi(e.messageMetadata?.steps)??t.stepTimings;return;case`finish`:_f.debug(`finish`,{reason:e.finishReason,canContinue:e.canContinue}),t.stepTimings=vi(e.messageMetadata?.steps)??t.stepTimings,t.status=`complete`,t.retryAction=void 0,e.finishReason&&(t.finishReason=e.finishReason),this.bumpDone(t);return;case`error`:_f.warn(`stream error chunk`,{errorText:e.errorText}),t.status=`error`,t.errorText=void 0,this.bumpDone(t);return;case`abort`:_f.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`:Pf(t,e);return;case`file`:Mf(t,{kind:`file`,url:e.url,mediaType:e.mediaType});return;case`source-url`:Nf(t,{kind:`source`,sourceId:e.sourceId,url:e.url,title:e.title});return;case`source-document`:Nf(t,{kind:`source`,sourceId:e.sourceId,title:e.title,filename:e.filename,mediaType:e.mediaType});return;case`data-suggestions`:t.suggestions=ci(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 yf={"input-streaming":0,"input-available":1,"approval-requested":2,"approval-responded":3,"output-available":4,"output-denied":4,"output-error":4};function bf(e){return e.awaitingContinuation===!0||e.continuationStreaming===!0||e.retryAction?.kind===`continue-assistant`}function xf(e,t){e.canceled&&(t.canceled=!0),bf(e)&&(t.status===`streaming`||Pi(t))&&(t.awaitingContinuation??(t.awaitingContinuation=e.awaitingContinuation),t.continuationStreaming??(t.continuationStreaming=e.continuationStreaming),t.retryAction===void 0&&(t.retryAction=e.retryAction))}function Sf(e,t){let n=e.partsSig.value,r=t.findIndex(e=>e.type===`start-step`),i=new Set(t.slice(0,r<0?t.length:r).flatMap(e=>`toolCallId`in e&&e.type.startsWith(`tool-output`)?[e.toolCallId]:[])),a=n.findLastIndex(e=>e.kind===`tool`&&(e.stateSig.value===`approval-requested`||e.stateSig.value===`approval-responded`||i.has(e.toolCallId)));if(a>=0)return a;let o=new Set(t.flatMap(e=>e.type===`tool-input-start`||e.type===`tool-input-available`?[e.toolCallId]:[]));return n.some(e=>e.kind===`tool`&&o.has(e.toolCallId))?-1:n.findLastIndex(e=>e.kind===`tool`)}function Cf(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)=>Tf(e,r[t]))}function wf(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)=>Tf(e,a[t]))}function Tf(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||!qi(t.toolName,e.toolName)||yf[t.stateSig.value]<yf[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 Ef(e,t,n){return Df(e,n)||!Of(e,t)?!0:n.type!==`finish`&&n.type!==`error`&&n.type!==`abort`?!1:Mi(t)||e.awaitingContinuation===!0&&n.type!==`finish`?!0:e.awaitingContinuation===!0&&t.partsSig.value.every(e=>e.kind===`step-start`)}function Df(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&&yf[n.stateSig.value]<4}function Of(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)=>kf(r[t+n],e)))}function kf(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`||qi(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 Af(e,t){if(bf(e)||!Pi(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 jf(e,t,n,r,i){let a=e.partsSig.value.find(e=>e.kind===`tool`&&e.toolCallId===t);if(a)return r&&(a.dynamic=!0),a.toolMetadata??(a.toolMetadata=i),a;let s={kind:`tool`,toolCallId:t,toolName:n??`tool`,dynamic:r?!0:void 0,toolMetadata:i,inputPartialSig:o(``),inputSig:o(void 0),outputSig:o(void 0),errorSig:o(void 0),stateSig:o(`input-streaming`),approvalSig:o(void 0)};return Mf(e,s),s}function Mf(e,t){e.partsSig.value=[...e.partsSig.value,t]}function Nf(e,t){e.partsSig.value.some(e=>e.kind===`source`&&e.sourceId===t.sourceId)||Mf(e,t)}function Pf(e,t){switch(t.type){case`tool-input-start`:jf(e,t.toolCallId,t.toolName,t.dynamic,t.toolMetadata);return;case`tool-input-delta`:{let n=jf(e,t.toolCallId);n.inputPartialSig.value+=t.inputTextDelta;return}case`tool-input-available`:{let n=jf(e,t.toolCallId,t.toolName,t.dynamic,t.toolMetadata);n.inputSig.value=t.input,n.stateSig.value=`input-available`;return}case`tool-input-error`:{let n=jf(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=jf(e,t.toolCallId,t.toolName);n.approvalSig.value={id:t.approvalId},n.stateSig.value=`approval-requested`;return}case`tool-output-available`:{let n=jf(e,t.toolCallId,void 0,t.dynamic);n.outputSig.value=t.output,n.stateSig.value=`output-available`;return}case`tool-output-error`:{let n=jf(e,t.toolCallId,void 0,t.dynamic);n.errorSig.value=t.errorText,n.stateSig.value=`output-error`;return}case`tool-output-denied`:{let n=jf(e,t.toolCallId);n.stateSig.value=`output-denied`;return}default:return}}const Ff=1e3;async function If(e){let t=Ff,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;e.onDropped?.(),o!==void 0&&e.now()-o>=1e3&&(t=Ff),await e.sleep(t),t=Math.min(t*2,15e3)}}function Lf(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,reconnectingSig:T}=e,E=p(0);u(()=>{if(!t||!n||!r.value)return;let e=r.value,u=new AbortController,p=e=>{},D=new vf(i,e=>p(e));o.primeIdentity(s,e);let O=!1,k=!1,A,j=!1,M,ee=0,te=y.current,ne,N,re=Date.now(),ie,P=!1,ae=!1;function oe(t,n,r){if(!Di(t))return;let o=i.value.findLast(e=>!e.ephemeral),s=t.serverMessageId??t.id;if(!(o&&(o.serverMessageId??o.id)!==s))return Ei(i.value,t,e,a.current.strings.newConversation,n,r)}function se(e,t,n,r){let i=oe(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 ce(){F&&(clearTimeout(F.timer),F=void 0)}function le(){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`)&&se(t,e.canContinue,e.generation,e.activityAt)}function ue(e,t,n,r){ce(),F={replyId:e.serverMessageId??e.id,canContinue:t,generation:n,activityAt:r,timer:setTimeout(le,120)}}function I(e,t,n,r=Date.now(),i=!0){ce();let a=oe(e,t,r);if(!a)return;let o=`${e.serverMessageId??e.id}:${n}`;o!==ne&&(ne=o,f(a),i&&ie&&(P=!0))}function de(e,t){(e||!v.localSendRef.current)&&v.settle(t),e&&_()}function fe(e,t=[],n=!1,r,o=te,s=ee,c=Date.now(),l=!0){let u=a.current;if(e.canceled){I(e,o,s,c,l),de(n,r);return}let f=!0,p=e.status===`error`;switch($i(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`),Aa(S,u,`assistant`,Ti(e)));break;case`error`:if(e.status=`error`,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`),Aa(S,u,`assistant`,Ti(e))),d(e,t)}f&&I(e,o,s,c,l),de(n,r)}function pe(t){if(u.signal.aborted||r.value!==e)return;if(c(t),l?.(t),t.type===`start`){le();let n=t.messageId===void 0?void 0:i.value.find(e=>e.serverMessageId===t.messageId||e.id===t.messageId);j=n!==void 0&&n.status!==`streaming`;let r=M?.senderRole===`visitor`?M.messageId:void 0;if(M={messageId:t.messageId,senderRole:t.messageMetadata?.senderRole},ee+=1,re=Date.now(),N=void 0,O=t.messageMetadata?.senderRole===void 0,k=!1,A=O?t.messageMetadata?.runId:void 0,O){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);k=v.captureStart(e,t,s,r)}}let n=O&&(t.type===`finish`||t.type===`error`||t.type===`abort`),o=n?A:void 0,s=n&&(k||v.ownsLocalRun(o)),d=ee,f=j;t.type===`finish`&&t.canContinue!==void 0&&(te=t.canContinue);let p=te;n&&(O=!1,k=!1,A=void 0);let m=D.applyResume(t),h=M?.messageId,g=h===void 0?void 0:i.value.find(e=>e.serverMessageId===h||e.id===h);j&&M?.senderRole!==`visitor`&&(m!==null||g?.status===`streaming`)&&(j=!1,f=!1);let _=!j&&(g?.role===`assistant`||g?.role===`operator`);t.type===`text-delta`&&_&&ue(g,te,ee,re),t.type===`text-end`&&(ce(),_&&se(g,te,ee,re)),t.type===`finish`&&t.canContinue===!1&&b(!1),m?m.role===`operator`?(f||(x.play(`messageReceived`),Aa(S,a.current,`operator`,Ti(m))),I(m,p,d,re),j=!1,n&&(s||!v.localSendRef.current)&&v.settle(o)):m.role===`assistant`&&(fe(m,[],s,o,p,d,re),j=!1):n&&(s||!v.localSendRef.current)&&v.settle(o)}async function me(t){let n=ee,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===ee&&(t===void 0||s!==void 0&&(s.serverMessageId===t||s.id===t));if(a.messages.length===0)return!0;l&&(te=a.canContinue,b(te));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,Si(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`?fe(g,g.suggestions??[],v.localSendRef.current,void 0,a.canContinue,n,x,!1):l&&y&&g.role===`operator`?I(g,a.canContinue,n,x,!1):l&&g?.role===`assistant`&&g.status!==`streaming`&&d(g,g.suggestions??[]),!0}let he=/* @__PURE__ */ new Set;p=({messageId:e})=>{if(he.has(e)||!i.value.some(t=>t.serverMessageId===e||t.id===e))return;he.add(e);function t(){return he.delete(e)}me(e).then(t,t)};function ge(t=!1){if(u.signal.aborted||r.value!==e){P=!1;return}if(ie){P=!0;return}let n=t?C(e)??(w()?me():void 0):me();if(!n)return;h(e),ie=n;function i(t=!1){ie===n&&(ie=void 0,P?(P=!1,ge()):t&&g(e))}n.then(i,()=>i(!1))}let L=m.subscribe(e=>{e<=E.current||(E.current=e,ae&&ge())});return If({signal:u.signal,now:()=>performance.now(),sleep:e=>na(e,u.signal),connect:e=>o.connectResumeStream({signal:u.signal,onChunk:pe,onConnected:()=>{T.value=!1,e()}}),onDropped:()=>{T.value=!0},onInitialBoundaryReady:()=>{ae=!0,ge(!0)},backfill:()=>ge()}),()=>{u.abort(),T.value=!1,ce(),L(),D.detach()}},[t,n,r,r.value,s,o,c,l,d,f,m,h,g,_,v,y,b,i,S,x,C,w,T])}function Rf(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 zf=R.scope(`send`);function Bf(e,t,n,r,i,a=!0){e.publishConversation({...Ei(t,n,r,i,a),hasUnread:!1},!0)}function Vf(e,t){return e.id===t.id||(e.serverMessageId??e.id)===(t.serverMessageId??t.id)}function Hf(e){return e.findLast(e=>!e.ephemeral&&e.role!==`system`&&(e.role===`user`||e.status!==`streaming`||Di(e)))}function Uf(e,t,n,r,i){let a=Hf(t);a?.role===`user`&&Vf(a,n)&&Bf(e,t,a,r,i)}function Wf(e){return!(e instanceof oa)||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 Gf(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??lt();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]:Ci(n.value,e),y=v[0];y?.role===`user`&&kl.markSent(y.id);let b=v.map(wi),x=s.loadUserPrefs(),S=Ul(i.tools).then(n=>t.sendTurn(li({messages:b,conversationId:g,visitorId:c,userPrefs:x,clientTools:Wl(n)}),{keepalive:e}));m.begin(S);try{let a=await S;if(r.value!==g||!m.acceptAck(S,a))return!1;if(u(a.conversationId),a.runId&&y?.role===`user`&&Uf(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=Si(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=Hf(n.value);u&&l&&Vf(u,l)&&Bf(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&&!Di(_)&&(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(S))return y?.role===`user`&&Uf(t,n.value,y,g,i.strings.newConversation),!0;let c=As(s,i.strings),u=Wf(s),h=l?.role===`assistant`?l:n.value.at(-1);if(e&&h?.role===`assistant`&&s instanceof oa&&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=Si(i.messages),r=t.find(t=>(t.serverMessageId??t.id)===e);if(r&&Gi(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=pi();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]),kl.markSent(e.id);let d=[wi(e)],f=s.loadUserPrefs(),p=Ul(i.tools).then(e=>t.sendTurn(li({messages:d,conversationId:l,visitorId:c,userPrefs:f,clientTools:Wl(e)})));m.beginRouted(p,e.id);try{let a=await p;return r.value===l?m.acceptRoutedAck(p,a)?(u(a.conversationId),Uf(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(p),!1)}catch(s){let c=m.rejectRouted(p);if(r.value!==l)return!1;if(!c)return Uf(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 Uf(t,n.value,e,l,i.strings.newConversation),!0;zf.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=Wf(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 Kf=R.scope(`unread`);function qf(e){let{transport:t,options:n,conversationIdSig:r,isConversationVisibleRef:i,activated:a,conversationReady:o}=e,s=c(!1),d=c(0),f=c(0),m=p([]),h=p(void 0),g=p(!1),_=l(()=>{let e=r.value,t=i.current()&&h.current===e?e:void 0,n=m.current.filter(e=>e.hasUnread&&e.conversationId!==t).length;d.value=n,s.value=n>0},[r,s,d,i]),v=l(e=>{let t=r.value,n=m.current.find(e=>e.conversationId===t),i=_a(m.current,e),a=i.find(e=>e.conversationId===t),o=e.type===`snapshot`&&t!==void 0&&a?.hasUnread===!0&&h.current===t&&n!==void 0&&n.lastMessageAt!==a.lastMessageAt;o&&(h.current=void 0),m.current=i,_(),o&&(f.value+=1)},[r,_,f]),y=l(()=>{if(_(),!i.current())return;let e=r.value;if(!e||h.current!==e)return;let n=m.current.find(t=>t.conversationId===e);n?.hasUnread&&t.markRead(e,n.lastMessageAt)},[r,i,_,t]),b=l(e=>{r.value===e&&(h.current=void 0,_())},[r,_]),x=l(e=>{r.value===e&&(h.current=e,y())},[r,y]),S=l(e=>h.current===e,[]),C=l((e=!1)=>{n.history.enabled&&n.modules.list.some(e=>e.layout===`chat`)&&(g.current||(g.current=!0,t.listConversations({limit:50},e).then(t=>{e||v({type:`snapshot`,result:t,requestedRevision:0}),y()}).catch(e=>Kf.debug(`refreshUnread failed (non-fatal)`,{err:e})).finally(()=>{g.current=!1})))},[v,y,n.history.enabled,n.modules,t]),w=l(e=>{let n=e.conversationId,a=i.current()&&r.value===n&&h.current===n,o=m.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(v),[v,t]);let T=p(!1);return u(()=>{a&&o&&!T.current&&(T.current=!0,C())},[a,o,C]),u(()=>{if(!a)return;function e(){document.visibilityState===`visible`&&(y(),C(!0))}return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[a,y,C]),{hasUnreadSig:s,unreadCountSig:d,transcriptRecoverySig:f,markVisibleConversationRead:y,beginConversationTranscript:b,commitConversationTranscript:x,isConversationTranscriptCommitted:S,recordConversationReply:w}}const Jf=R.scope(`settings`);function Yf(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),h=f??t.themeMode,[g,_]=m(()=>s.textSize??t.textSize),v=l(e=>{n.patchUserPrefs(e),r.saveUserPrefs(n.loadUserPrefs()).catch(e=>Jf.warn(`saveUserPrefs failed`,{err:e}))},[n,r]);u(()=>{s.soundMuted!==void 0&&i.setMuted(s.soundMuted)},[]),u(()=>{if(h!==`host`)a.dataset.theme=h;else return Et(e=>{a.dataset.theme=e})},[a,h,t]),u(()=>{a.dataset.textSize=g},[a,g,t]),u(()=>{let e=!0;return i.mutedSig.subscribe(t=>{e?e=!1:v({soundMuted:t})})},[i,v]);let y=Ae(c,t.availableLocales,t.defaultLocale);return u(()=>{r.setLocale(y)},[r,y]),u(()=>{a.dir=k(y)?`rtl`:`ltr`},[a,y]),u(()=>{y!==c&&d(y)},[y,c]),{activeLocale:c,activeThemeMode:h,activeTextSize:g,effectiveLocale:y,setActiveLocale:d,setActiveThemeMode:p,setActiveTextSize:_,patchAndSync:v,handleLocaleChange:l(e=>{Jf.info(`localeChange`,{locale:e}),d(e),v({locale:e}),o.emit(`localeChange`,e)},[v,o]),handleThemeChange:l(e=>{Jf.info(`themeChange`,{mode:e}),p(e),a.dataset.theme=e,v({themeMode:e}),o.emit(`themeChange`,e)},[a,v,o]),handleTextSizeChange:l(e=>{Jf.info(`textSizeChange`,{size:e}),_(e),a.dataset.textSize=e,v({textSize:e}),o.emit(`textSizeChange`,e)},[a,v,o]),handleSoundToggle:l(()=>{i.toggleMuted();let e=i.mutedSig.value;Jf.info(`soundToggle`,{muted:e}),o.emit(`soundToggle`,{muted:e})},[i,o])}}const $=R.scope(`app`),Xf=M.cssPrefix,Zf={home:`home`,chats:`chat`,help:`help`,news:`news`};function Qf(e,t){return mi({...e,text:A(t,e.text)})}function $f({options:e,hostElement:t,bus:n,recentHostEvents:i}){let o=e.aiAgentDeploymentId;if(!o)throw Error(`aiAgentDeploymentId is required`);let[h]=m(()=>ft(e.widgetId,e.storage,e.aiAgentDeploymentId)),[v]=m(()=>h.getVisitorId()),y=h.loadUserPrefs(),b=c(h.loadConversationId()),x=p(b.value!==void 0),S=c(b.value??``),C=c([]),w=c(!1),[T,E]=m(!1),D=p(void 0),[O,k]=m([]);function j(){let t=e.modules.list,n=new Set(t.map(e=>e.id)),r=h.loadActiveModule();return r&&n.has(r)?r:t[0]?.id??``}function ee(){return e.modules.list.find(e=>e.layout===`chat`)?.id}function te(){let t=ee();return t?e.modules.list.length===1||N.sig.value.activeTab===t:!1}let ne=p(void 0);if(!ne.current){let t=e.modules.list.map(e=>e.id),n=h.loadActiveModule()??t[0]??``;ne.current=La(n,n?[...t,n]:t,e=>h.saveActiveModule(e))}let N=ne.current,re=s(()=>N.sig.value.activeTab).value,ie=s(()=>b.value).value,[P,ae]=m(!1),[oe,se]=m(null),[F,ce]=m(!1),le=e.mode===`standalone`||e.mode===`inline`,ue=p(Ua(e,Wa(),h.loadPanelOpen(),h.loadPanelSize())),[I,de]=m(ue.current.panelOpen),[fe,pe]=m(ue.current.panelOpen),me=p(void 0),he=p(void 0),ge=p(!1),L=p(void 0);u(()=>{I&&pe(!0)},[I]);let _e=p(!1),[R,ve]=m(!1),{dismissed:ye,dismissCallout:be}=df({callout:e.launcher.callout,persistence:h}),xe=e.launcher.callout?.persistent??!0,Se=l(()=>{$.info(`calloutDismiss`),n.emit(`calloutDismiss`,void 0),be()},[n,be]),[Ce,we]=m(ue.current.panelSize),Te=p(!1),[Ee,De]=m(`chat`),Oe=p(()=>!1);Oe.current=()=>I&&Ee===`chat`&&!document.hidden&&te();let[ke,Ae]=m(!0),je=p(ke);je.current=ke;let[Me,Ne]=m(!1),Pe=p(Me);Pe.current=Me;let Fe=p(null),[Ie,Le]=m(!1),[ze,Be]=m(null),[He,Ue]=m([]),We=p(e.strings),Ge=p(e);Ge.current=e;let[Ke,qe]=m(void 0),[Je,Ye]=m(void 0),[Xe,Ze]=m(()=>h.loadSidebarCollapsed()??!1),[Qe,$e]=m({}),[z]=m(()=>new Ca({agentApiBaseUrl:e.agentApiBaseUrl,dataApiBaseUrl:e.dataApiBaseUrl,auth:Vt({publicKey:e.publicKey,aiAgentDeploymentId:o,publicKeyHeader:`x-public-key`}),endpoints:e.endpoints,recentHostEvents:i})),[et]=m(()=>new hn(e.sound,e.haptics)),tt=Rf({transport:z,setStreaming:Ne}),{activeLocale:nt,activeThemeMode:rt,activeTextSize:it,effectiveLocale:at,setActiveLocale:ot,setActiveThemeMode:st,setActiveTextSize:ct,patchAndSync:ut,handleLocaleChange:dt,handleThemeChange:pt,handleTextSizeChange:mt,handleSoundToggle:gt}=Yf({options:e,persistence:h,transport:z,feedback:et,hostElement:t,bus:n}),{controlModeSig:_t,assignedOperatorInitialsSig:vt,operatorAvailableSig:yt,applyControlState:bt,adoptControlStateChunk:xt,requestOperator:St,cancelOperatorRequest:Ct}=ff({transport:z,conversationIdSig:b}),wt=c(/* @__PURE__ */ new Map),Tt=l(e=>{if(e.type!==`data-memory-compaction-state`)return;let t=b.value;if(!t)return;let n=si(e.data);if(!n)return;let r=wt.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(wt.value);i.set(t,n),wt.value=i},[b,wt]),{hasUnreadSig:Et,unreadCountSig:Dt,transcriptRecoverySig:Ot,markVisibleConversationRead:kt,beginConversationTranscript:At,commitConversationTranscript:jt,isConversationTranscriptCommitted:Mt,recordConversationReply:Nt}=qf({transport:z,options:e,conversationIdSig:b,isConversationVisibleRef:Oe,activated:fe,conversationReady:P}),Pt=I&&e.modules.byId[re]?.layout===`home`,Ft=uf({transport:z,options:e,persistence:h,enabled:P&&Pt});u(()=>{kt()},[re,I,Ee,ie,kt]),u(()=>{et.update(e.sound,e.haptics)},[et,e.sound,e.haptics]),u(()=>()=>et.destroy(),[et]),u(()=>{!Te.current&&e.size.initialSize&&(Te.current=!0,!h.loadPanelSize()&&we(Ha(e.mode,e.size,Wa())))},[e.mode,e.size,h]),u(()=>{if(!P||_e.current)return;_e.current=!0;let t=Ua(e,Wa(),h.loadPanelOpen(),h.loadPanelSize());de(t.panelOpen),we(t.panelSize)},[P,e,h]);let It=p(null);u(()=>{P&&N.reconcile(e.modules.list.map(e=>e.id),j())},[P,e.modules.list,N]);let Lt=l(e=>{e&&e.length!==0&&(C.value=e.map(e=>Qf(e,We.current)))},[C]),Rt=p(null),zt=l(async e=>{try{let{formSubmissions:t}=await(e?z.bootstrap(e):Rt.current??z.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:ei(e.createdAt),values:e.values}))}catch(e){return $.debug(`bootstrap failed — no form markers (non-fatal)`,{err:e}),[]}},[z]),Bt=p(0),Ht=p(0),qt=l(e=>{if(e===b.value)return;let t=b.value;Ht.current++,E(!1),t&&(h.saveDraft(e,h.loadDraft(t)),h.saveDraft(t,``),h.saveMessageQueue(e,h.loadMessageQueue(t)),h.saveMessageQueue(t,[])),b.value=e,h.saveConversationId(e),z.primeIdentity(void 0,e),$.info(`conversation rebound`,{previous:t,current:e}),t&&n.emit(`conversationRebound`,{previous:t,current:e})},[n,b,h,z]),Xt=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[...(L.current?.messages??[]).map(e=>{let t=Qf(e,We.current);return t.createdAt=r,t}),...e]},[]),Qt=l(async e=>{let t=Ht.current;function r(){return t!==Ht.current||b.value!==e}he.current===e&&(he.current=void 0),E(!0);try{let[t,n]=await Promise.all([z.loadConversation(e),zt()]);if(r())return!1;let i=Si(t.messages);k(n);let a=Xt(Ui(i,C.value),n);if(C.value=a,he.current=a.some(e=>e.role===`user`)?void 0:e,i.length>0||t.controlState!==void 0){Ae(t.canContinue),t.controlState&&bt(t.controlState);let e=i.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ue(e?.suggestions??[])}return!0}catch(t){return r()||($.warn(`loadThread failed; keeping conversation active`,{err:t,conversationId:e}),n.emit(`error`,t),Ge.current.onError?.(t)),!1}finally{r()||E(!1)}},[z,zt,C,b,Xt,n]),$t=l(e=>{if(me.current===e)return me.current=void 0,Qt(e)},[Qt]),en=l(()=>{if(D.current)return Promise.resolve(void 0);let t=b.value,r=C.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=Ht.current,s={};return D.current=s,(async()=>{try{let e=await z.loadConversation(t,{beforeId:i,beforeCreatedAt:a});if(D.current!==s||Ht.current!==o||b.value!==t)return;if(e.messages.length===0)return!1;let n=e.messages.map(_i),r=C.value,c=Li(r,n);if(c!==r){let e=Math.min(...n.map(e=>e.createdAt??1/0),...O.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)}C.value=c}return!0}catch(r){if(D.current!==s||Ht.current!==o||b.value!==t)return;$.warn(`load previous messages failed`,{err:r,conversationId:t,beforeId:i}),n.emit(`error`,r),e.onError?.(r);return}finally{D.current===s&&(D.current=void 0)}})()},[n,b,O,C,e,z]),B=l(async({newConversation:t})=>{let i=++Bt.current;function a(){return i!==Bt.current}let o=b.value,s=t||!o?lt():o;s!==o&&(Ht.current++,E(!1),r(()=>{b.value=s,S.value=s}),h.saveConversationId(s)),z.primeIdentity(v,s);let c;try{c=await z.handshake({visitorId:v,conversationId:s,userPrefs:h.loadUserPrefs(),locale:nt})}catch(r){if(a())return;n.emit(`error`,r),e.onError?.(r),t||ae(!0);return}if(a())return;c.conversationId!==s&&qt(c.conversationId),Be(c.agent),c.site&&_n(c.site)?qe(c.site):c.site&&$.warn(`invalid site config, using fallback`,{site:c.site}),c.blocks&&vn(c.blocks)?Ye(c.blocks):c.blocks&&$.warn(`invalid blocks config, using fallback`,{blocks:c.blocks});let l=ht(c.userPrefs);if(Object.keys(l).length>0&&!t&&(h.saveUserPrefs(l),l.locale&&ot(l.locale),l.soundMuted!==void 0&&et.setMuted(l.soundMuted),l.themeMode&&st(l.themeMode),l.textSize&&ct(l.textSize)),L.current=c.welcome,t||n.emit(`handshake`,c),c.welcome?.suggestions){let e=We.current;Ue(c.welcome.suggestions.map(t=>({...t,label:A(e,t.label),...t.text===void 0?{}:{text:A(e,t.text)}})))}let u=!t&&o&&c.conversationId===o;x.current=!!u,u?ge.current||(me.current=c.conversationId):(he.current=c.conversationId,Lt(c.welcome?.messages),jt(c.conversationId)),t||ae(!0)},[z,v,h,e,n,b,S,et,Lt,nt,qt,jt]),nn=JSON.stringify(e.userContext??null),rn=JSON.stringify(e.pageContext??null),an=JSON.stringify(Qe);u(()=>{let t=Object.keys(Qe).length?{...Qe,...e.userContext}:e.userContext;z.setContext(t,ep(e.pageContext))},[z,nn,rn,an]),u(()=>z.setUserToken(e.userToken),[z,e.userToken]);let on=l((e,t=[])=>Ue(e.suggestions??t),[]);u(()=>(z.primeIdentity(v,b.value),B({newConversation:!1}),()=>{Bt.current++,Ht.current++}),[]),u(()=>{fe&&P&&!ge.current&&(ge.current=!0,Rt.current=z.bootstrap(),(async()=>{try{let e=await Rt.current;se(Re((e??{forms:[]}).forms,at))}catch(e){$.debug(`bootstrap failed — treating as no forms`,{err:e})}finally{ce(!0)}})(),me.current===b.value&&E(!0))},[fe,P]);let sn=p(null);u(()=>{if(!fe||!P||(sn.current??(sn.current=at),sn.current===at))return;sn.current=at;let e=!1;return z.bootstrap().then(t=>{e||se(Re((t??{forms:[]}).forms,at))}).catch(e=>$.debug(`forms re-localize failed — keeping current copy`,{err:e})),()=>{e=!0}},[fe,P,at,z]);let cn=p(nn);u(()=>{P&&cn.current!==nn&&(cn.current=nn,B({newConversation:!1}))},[nn,P,B]),gf({hostElement:t,mode:e.mode,panelSize:Ce,isOpen:I,surfaceReady:P,setIsOpen:de});let{sendAiTurn:ln,sendRoutedTurn:un}=Gf({transport:z,messagesSig:C,conversationIdSig:b,options:e,bus:n,feedback:et,persistence:h,visitorId:v,adoptConversationId:qt,applyControlState:bt,setCanSend:Ae,settleSuggestions:on,runCancellation:tt}),{toolInteraction:dn,pageToolsRunning:fn,stopPageTools:pn}=cf({streaming:Me,controlModeSig:_t,messagesSig:C,sendAiTurn:ln,bus:n,humanInLoop:e.features.humanInLoop,tools:e.tools}),mn=l((e,t)=>{let r=C.value.find(t=>t.serverMessageId===e);r&&(r.feedback=t),$.info(`messageFeedback`,{messageId:e,value:t}),n.emit(`messageFeedback`,{messageId:e,value:t}),z.submitFeedback({messageId:e,value:t})},[n,C,z]);function gn(){return C.value.reduce((e,t)=>e+ +(t.role===`user`),0)}let yn=e.forms.list.length>0?e.forms:oe??e.forms,bn=ja({forms:yn,persistence:h,userContext:()=>e.userContext,messageCount:gn,pageArea:()=>e.pageContext?.area?String(e.pageContext.area):void 0,conversationId:()=>b.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}),k(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 a=b.value??lt();b.value||(b.value=a,h.saveConversationId(a),z.primeIdentity(void 0,a)),!i&&e.mirrorToContext&&$e(e=>({...e,...r})),z.submitForm({formId:e.id,conversationId:a,trigger:t,values:r,skipped:i})}}),xn=s(()=>bn.activeForm.value),Sn=xn.value?.form.blocking??!1;Lf({activated:fe,conversationReady:P,conversationIdSig:b,messagesSig:C,optionsRef:Ge,transport:z,visitorId:v,adoptControlStateChunk:xt,adoptMemoryCompactionStateChunk:Tt,settleSuggestions:on,recordConversationReply:Nt,transcriptRecoverySig:Ot,beginConversationTranscript:At,commitConversationTranscript:jt,onReplyLanded:l(()=>bn.fire(`after-messages`),[bn]),runCancellation:tt,canContinueRef:je,setCanSend:Ae,feedback:et,bus:n,loadInitialThread:$t,shouldReconcileOnConnect:l(()=>x.current||C.value.some(e=>!e.ephemeral&&e.role===`user`),[C]),reconnectingSig:w}),u(()=>{bn.refresh()},[yn,bn]);let Cn=e.pageContext?.area?String(e.pageContext.area):void 0,wn=s(()=>C.value.length),V=p(null);u(()=>{F&&V.current&&(bn.fire(`manual`,V.current),V.current=null)},[F,bn]),u(()=>{P&&F&&bn.fire(`pre-chat`)},[P,F,bn]),u(()=>{F&&!ke&&bn.fire(`conversation-closed`)},[F,ke,bn]),u(()=>{P&&F&&Cn&&bn.fire(`page-area`)},[P,F,Cn,bn]);let H=f(()=>{let e=yn.list.flatMap(e=>e.triggers).filter(e=>e.kind===`idle`).map(e=>Number(e.param));return e.length?Math.min(...e)*1e3:0},[yn]);u(()=>{if(!H||!I)return;let e=setTimeout(()=>bn.fire(`idle`),H);return()=>clearTimeout(e)},[H,I,bn,wn.value]);let Tn=l(async(t,r,i)=>{if(Fe.current)return!1;let a=b.value,o=a?wt.value.get(a):void 0,s=_t.value!==`ai-agent`;if(!s&&o?.status===`compacting`||($.info(`send`,{textLen:t.length,attachments:r.length,streaming:Pe.current,routedToOperator:s}),Pe.current&&!s))return!1;let c=new AbortController,l={conversationId:a,controller:c};Fe.current=l,Le(!0);try{et.unlock();let o=await np(z,r,c.signal,t=>{c.signal.aborted||($.warn(`upload failed`,{err:t}),n.emit(`error`,t),e.onError?.(t))});if(c.signal.aborted||b.value!==a||!je.current||bn.activeForm.value?.form.blocking)return!1;let s=a?wt.value.get(a):void 0,l=_t.value!==`ai-agent`;if(!l&&s?.status===`compacting`||Pe.current&&!l||!t&&o.length===0)return!1;n.emit(`send`,{text:t,attachmentCount:r.length}),He.length>0&&Ue([]),et.play(`messageSent`);let u=fi(t,o,i);return Aa(n,e,`user`,t),l?(C.value=[...C.value,u],i?await un(u):(un(u),!0)):(C.value=[...C.value,u,pi()],i?await ln({continueExisting:!1}):(ln({continueExisting:!1}),!0))}finally{Fe.current===l&&(Fe.current=null,Le(!1))}},[z,n,e,He.length,C,b,wt,ln,un,_t]),U=p(Tn);U.current=Tn;let En=b.value,Dn=(En?wt.value.get(En):void 0)?.status===`compacting`,On=_t.value===`ai-agent`,kn=s(()=>{let e=C.value.at(-1);return e?.role===`assistant`&&e.partsSig.value.some(e=>e.kind===`tool`&&e.stateSig.value===`approval-requested`)}),An=s(()=>C.value.some(e=>e.retryAction?.kind===`resend-user`||e.retryAction?.kind===`continue-assistant`));d(()=>{let e=b.value;return()=>{let t=Fe.current;t&&t.conversationId===e&&(Fe.current=null,Le(!1),t.controller.abort())}},[b.value]),u(()=>{(!ke||Sn)&&Fe.current?.controller.abort()},[Sn,ke]);let jn=l(()=>{if(fn){$.info(`stop page tools`),n.emit(`stop`,void 0),pn();return}if(!tt.stop())return;$.info(`stop`),n.emit(`stop`,void 0);let e=C.value.at(-1);e&&e.role!==`user`&&e.status===`streaming`&&(e.canceled=!0,C.value=[...C.value])},[tt,n,C,fn,pn]),Mn=l(e=>{if(Me)return;let t=C.value,n=Zi(t,e);if(n)switch($.info(`retry`,{kind:n.kind,messageId:n.messageId}),n.kind){case`continue-assistant`:if(_t.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,C.value=[...t],ln({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&&It.current?.acceptQueuedMessage(n.messageId)};if(r.status=`complete`,r.errorText=void 0,r.retryAction=void 0,_t.value!==`ai-agent`){C.value=e.role===`assistant`?t.filter(t=>t!==e):[...t],un(r).then(i);return}let a=pi();C.value=e.role===`assistant`?t.map(t=>t===e?a:t):[...t,a],ln({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=fi(Ti(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]),_t.value!==`ai-agent`){C.value=[...t,r],un(r);return}C.value=[...t,r,pi()],ln({continueExisting:!1,turn:r});return}default:return n}},[Me,C,_t,ln,un]),Nn=l(()=>{ka(e.mode,Ce)===`exit-fullscreen`?($.info(`close → exit-fullscreen`,{mode:e.mode}),we(`normal`),n.emit(`fullscreen`,!1)):($.info(`close → panel closed`,{mode:e.mode}),bn.fire(`panel-close`),de(!1),h.savePanelOpen(!1),n.emit(`close`,void 0),e.onClose?.())},[n,e,h,Ce,bn]),Pn=l(()=>{$.info(`open`,{mode:e.mode}),et.unlock(),ve(!0),de(!0),h.savePanelOpen(!0),!ye&&!xe&&Se(),setTimeout(()=>ve(!1),tp),n.emit(`open`,void 0),e.onOpen?.()},[n,e,et,h,ye,xe,Se]),Fn=l(()=>{let e=C.value.some(e=>e.role===`user`);if(he.current===b.value&&!e&&ke&&b.value)$.info(`clear → reusing empty conversation`,{conversationId:b.value}),C.value.length===0&&Lt(L.current?.messages);else return $.info(`clear → new conversation`,{wasStreaming:Me}),n.emit(`clear`,void 0),tt.settle(),x.current=!1,me.current=void 0,he.current=void 0,r(()=>{C.value=[],b.value=void 0,bt({controlMode:`ai-agent`,controlRevision:0})}),h.clearConversation(),Ae(!0),k([]),Ue([]),B({newConversation:!0})},[Me,C,b,h,B,n,ke,Lt,tt,bt]),In=l(()=>{let t=Fn();De(`chat`);let n=e.modules.list.find(e=>e.layout===`chat`)?.id;return n&&N.switchTab(n),t},[Fn,N,e]),Ln=l(async e=>{await In(),await U.current(e,[])||It.current?.fill(e)},[In]),Rn=l(()=>{let e=Ce===`expanded`?`normal`:`expanded`;$.info(`expand`,{from:Ce,expanded:e===`expanded`}),we(e),h.savePanelSize(e),n.emit(`expand`,e===`expanded`)},[n,Ce,h]),zn=l(()=>{let e=Ce===`fullscreen`?`normal`:`fullscreen`;$.info(`fullscreen`,{from:Ce,fullscreen:e===`fullscreen`}),we(e),h.savePanelSize(e),n.emit(`fullscreen`,e===`fullscreen`)},[n,Ce,h]),Bn=l(()=>{De(e=>{let t=e===`history`?`chat`:`history`;return $.info(`toggleHistory`,{view:t}),n.emit(`toggleHistory`,{view:t}),t})},[n]),W=l(()=>{Ze(e=>{let t=!e;return $.info(`sidebarToggle`,{collapsed:t}),h.saveSidebarCollapsed(t),n.emit(`sidebarToggle`,{collapsed:t}),t})},[h,n]),Vn=l(e=>{$.info(`resize`,e),ut({widgetSize:e}),n.emit(`resize`,e)},[ut,n]),Hn=l(async t=>{let i=t.conversationId;if(i===b.value&&Mt(i)){$.info(`selectConversation`,{conversationId:i,cached:!0}),n.emit(`selectConversation`,{conversationId:i}),z.publishConversation(t),De(`chat`);let e=ee();e&&N.switchTab(e),jt(i);return}let a=++Bt.current;Ht.current++,E(!1);function o(){return a!==Bt.current}$.info(`selectConversation`,{conversationId:i,wasStreaming:Me}),n.emit(`selectConversation`,{conversationId:i}),z.publishConversation(t);try{let[e,t]=await Promise.all([z.loadConversation(i),zt(i)]);if(o())return;tt.settle(),x.current=!0,me.current=void 0;let n=Si(e.messages),a=e.conversationId!==b.value,s=a?n:Ui(n,C.value);he.current=s.some(e=>e.role===`user`)?void 0:e.conversationId,r(()=>{C.value=Xt(s,t),a&&(S.value=e.conversationId),b.value=e.conversationId}),k(t),h.saveConversationId(e.conversationId),z.primeIdentity(v,e.conversationId),Ae(e.canContinue),e.controlState&&bt(e.controlState);let c=s.findLast(e=>e.role===`assistant`&&!e.ephemeral);Ue(c?.suggestions??[]),a?At(e.conversationId):jt(e.conversationId),De(`chat`);let l=ee();l&&N.switchTab(l)}catch(t){if(o())return;n.emit(`error`,t),e.onError?.(t)}},[z,C,b,S,n,e,h,zt,Xt,Me,v,tt,At,jt,Mt,N]),Un=l(e=>{if(typeof e!=`string`)return;I||Pn(),De(`chat`);let t=ee();t&&N.switchTab(t),F?bn.fire(`manual`,e):V.current=e},[I,Pn,e.modules,N,F,bn]),Wn=p(void 0),Gn=l(t=>{let n=e.modules.list.find(e=>e.layout===Zf[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;N.open(n.id,r)},[e.modules,N]),Kn=l(e=>{I||Pn(),e!==void 0&&(Ut(e)?P?Gn(e):Wn.current=e:$.warn(`open: unknown target`,{detail:e}))},[I,Pn,P,Gn]);u(()=>{P&&Wn.current&&(Gn(Wn.current),Wn.current=void 0)},[P,Gn]);let qn=P&&!T&&!Sn&&(!On||!kn.value&&!An.value),[Jn,Yn]=m(),Xn=l(e=>{let t=Kt(e);t?(I||Pn(),Yn(t)):$.warn(`ask: expected { text, send? } with non-empty text`,{detail:e})},[I,Pn]),Zn=I&&F&&ke&&P&&!T&&!Sn,Qn=Zn&&qn&&!Ie&&!(On&&(Me||Dn));u(()=>{if(Jn===void 0||!(Jn.send?Qn:Zn))return;let e=ee();e?Ee!==`chat`||!te()?(De(`chat`),N.switchTab(e)):(Yn(void 0),Jn.send?Tn(Jn.text,[]).then(e=>{e||It.current?.fill(Jn.text)}):It.current?.fill(Jn.text)):($.warn(`ask: the widget has no chat`),Yn(void 0))},[Jn,Zn,Qn,Ee,re,e.modules,N,Tn]),u(()=>{if(e.widgetId!=="default")return;let n=`data-${M.cssPrefix}-`,r=[`ask`,`open`,`close`,`form`].map(e=>n+e);function i(e){let i=e.composedPath().find(e=>e instanceof Element&&r.some(t=>e.hasAttribute(t)));if(!(i instanceof Element))return;e.preventDefault();let a=i.getAttribute(`${n}ask`),o=i.getAttribute(`${n}open`),s=i.getAttribute(`${n}form`);a===null?o===null?s===null?Jt(t,`close`):Jt(t,`openForm`,s):Jt(t,`open`,Wt(o)):Jt(t,`ask`,Gt(a||(i.textContent??``),{send:i.hasAttribute(`${n}send`)}))}return document.addEventListener(`click`,i),()=>document.removeEventListener(`click`,i)},[e.widgetId,t]),u(()=>{if(e.widgetId!=="default")return;let n=Zt(location.href);n&&(history.replaceState(history.state,``,n.url),n.ask?Jt(t,`ask`,Gt(n.ask)):Jt(t,`open`,n.target))},[e.widgetId,t]);let $n=p(tn),er=e.mode===`page`||e.mode===`inline`||e.mode===`standalone`;u(()=>a(()=>{let e=b.value,t={open:er||I,ready:P,unread:Dt.value,...e?{conversationId:e}:{}},r=$n.current;(t.open!==r.open||t.ready!==r.ready||t.unread!==r.unread||t.conversationId!==r.conversationId)&&($n.current=t,n.emit(`state`,t),t.unread!==r.unread&&n.emit(`unread`,t.unread))}),[n,er,I,P,Dt,b]);let tr=p({handleOpenCommand:Kn,handleClose:Nn,handleExpand:Rn,handleFullscreen:zn,openForm:Un,handleAskCommand:Xn});tr.current={handleOpenCommand:Kn,handleClose:Nn,handleExpand:Rn,handleFullscreen:zn,openForm:Un,handleAskCommand:Xn},d(()=>Yt(t,{open:e=>tr.current.handleOpenCommand(e),close:()=>tr.current.handleClose(),expand:()=>tr.current.handleExpand(),fullscreen:()=>tr.current.handleFullscreen(),openForm:e=>tr.current.openForm(e),ask:e=>tr.current.handleAskCommand(e)}),[t]);let G=f(()=>Ve(e,nt,rt,it),[e,nt,rt,it]);We.current=G.strings;let nr=f(()=>O.map(e=>{let t=yn.list.find(t=>t.id===e.formId);return{...e,title:t?.title,form:t}}),[O,yn]);function rr(e){Hn(e)}let ir={options:G,transport:z,feedback:et,bus:n,persistence:h,conversationId:b.value??``,composerKey:S.value,composerApiRef:It,view:Ee,canSend:ke,isStreaming:Me,pageToolRunning:fn,isMemoryCompacting:Dn,canReleaseQueuedMessages:qn,queueManualMessages:On&&(kn.value||An.value),sendPreparing:Ie,composerActive:G.mode===`page`||G.mode===`inline`||G.mode===`standalone`||I,controlMode:_t.value,assignedOperatorInitials:vt.value,operatorAvailable:yt.value,operatorRequestEnabled:e.features.operatorRequest,onRequestOperator:St,onCancelOperatorRequest:Ct,loadingMessages:T,onLoadPreviousMessages:en,messagesSig:C,reconnectingSig:w,agent:ze,suggestions:He,initialWidgetSize:y.widgetSize??null,onClose:Nn,onClear:Fn,onExpand:Rn,onFullscreen:zn,onSoundToggle:gt,onToggleHistory:Bn,onSelectHistoryConversation:rr,onNewConversation:In,onLocaleChange:dt,onThemeChange:pt,onTextSizeChange:mt,onWidgetSizeChange:Vn,onSend:Tn,onStop:jn,onSuggestion:t=>{if(Fe.current)return;let r=t.text??t.label;$.info(`suggestion`,{text:r,autoSend:e.autoSendSuggestions}),n.emit(`suggestion`,{text:r}),e.autoSendSuggestions?Tn(r,[]):It.current?.fill(r)},activeForm:xn.value?.form??null,formMarkers:nr,onFormSubmit:bn.complete,onFormSkip:bn.skip,onFormFill:e=>bn.fire(`manual`,e),tool:dn,onRetry:Mn,onMessageFeedback:mn};if(!P)return null;let ar=G.modules.list;function or(e){let t=Da(`close`,G.mode,e);return ar.length===0?/* @__PURE__ */ g(Yd,{strings:G.strings,onClose:t?Nn:void 0}):ar.length===1&&ar[0]?.layout===`chat`?/* @__PURE__ */ g(Ld,{...ir,panelSize:e}):/* @__PURE__ */ g(qd,{panelProps:{...ir,panelSize:e,onClose:t?Nn:void 0},enabledModules:ar,nav:N,bus:n,hasUnread:Et.value,latestNews:Ft,onSelectConversation:rr,onStartNewConversation:Ln,onSetPanelSize:we})}if(e.mode===`page`){let t=e.history.enabled&&ar.some(e=>e.layout===`chat`);return/* @__PURE__ */ g(`div`,{class:`${Xf}-anchor`,children:/* @__PURE__ */ g(nf,{site:Ke,blocks:Je,transport:z,strings:G.strings,locale:G.locale,persistence:h,showConversations:t,onSelectConversation:rr,onNewConversation:In,sidebarCollapsed:Xe,onToggleSidebarCollapsed:W,children:or(`fullscreen`)})})}if(le){let t=e.mode===`standalone`?`fullscreen`:Ce;return/* @__PURE__ */ g(`div`,{class:`${Xf}-anchor`,children:or(t)})}let sr=e.mode===`drawer`,cr=e.mode!==`modal`&&!e.launcher.hidden&&(!I||R),lr=cr&&!R&&!ye&&!sr?G.launcher.callout:null;return/* @__PURE__ */ _(`div`,{class:`${Xf}-anchor`,"data-launcher-size":G.launcher.size,children:[I||fe?/* @__PURE__ */ g(`div`,{class:`${Xf}-surface`,hidden:!I,children:or(Ce)}):null,cr?/* @__PURE__ */ g(Qo,{onToggle:Pn,launcher:G.launcher,strings:G.strings,leaving:R,edgeTab:sr}):null,lr?/* @__PURE__ */ g(ns,{callout:lr,launcherPosition:G.position,strings:G.strings,closeLabel:G.strings.close,onDismiss:Se}):null]})}function ep(e){let t=e?.url??(typeof location<`u`?location.href:void 0);if(e||t)return{...e,...t?{url:t}:{}}}const tp=120;async function np(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 rp=R.scope(`error-boundary`);var ip=class extends e{constructor(...e){super(...e),B(this,`state`,{crashed:!1})}componentDidCatch(e,t){rp.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 ap(e){let{bus:r,host:i,appRoot:a,persistence:o,reportError:s}=e,c=e.initialRaw,l,u=De(c),d=!0,f=0,p=ct(r);function m(){u=De(l?Ue(c,l):c)}function h(){At(i,jt(u.mode));let e=o.loadUserPrefs().themeMode;Bt(i,e?{...u,themeMode:e}:u),d&&(zt(i,op(u)),d=!1)}function g(){h(),n(t(ip,{onError:s},t($f,{key:f,bus:r,hostElement:i,options:u,recentHostEvents:p})),a)}r.on(`handshake`,e=>{e.config&&(e.config.storageVersion&&o.rememberStorageVersion(e.config.storageVersion),l=e.config,m(),g())});let _=xt(r,{getOptions:()=>u,getVisitorId:()=>o.getVisitorId(),getConversationId:()=>o.loadConversationId()});function v(e={}){o.reset(),c={...c,userContext:void 0,userToken:void 0,...e},p.length=0,f+=1,d=!0,m(),g()}return{getOptions:()=>u,getUserOptions:()=>c,render:g,setUserOptions:e=>{c=e,m(),g()},patchUserOptions:e=>{let t=`userToken`in e&&e.userToken!==c.userToken;t&&c.userToken?v(e):(t&&(f+=1),c={...c,...e},m(),g())},reset:()=>v(),destroy:()=>_()}}function op(e){if(e.mode===`standalone`)return`standalone`;if(e.mode===`inline`)return`inline`;let t=ft(e.widgetId,e.storage,e.aiAgentDeploymentId),{panelOpen:n,panelSize:r}=Ua(e,Wa(),t.loadPanelOpen(),t.loadPanelSize());return Va(e.mode,r,n)}const sp=R.scope(`hooks`),cp=`*`,lp=/* @__PURE__ */ new Set;function up(e,t,n){let r={widgetId:e,event:t,listener:n};return lp.add(r),()=>{lp.delete(r)}}function dp(e,t,n){let r=[...lp];for(let i of r)if(pp(i.widgetId,e.widgetId)&&(i.event===`*`||i.event===t))try{i.listener(e,t,n)}catch(e){sp.warn(`hook listener threw`,{event:t,error:e})}}function fp(e,t){let n=[];for(let r of mp)n.push(t.on(r,t=>{dp(e,r,t)}));return()=>{for(let e of n)e()}}function pp(e,t){return e===`*`||e===t}const mp=/* @__PURE__ */ `open.close.expand.fullscreen.resize.message.send.stop.clear.selectConversation.suggestion.toggleHistory.formSubmit.toolResult.toolDecision.hostEvent.messageFeedback.contentView.contentOpen.contentSearch.contentRead.contentLinkClick.attach.removeAttachment.voiceStart.voiceStop.voiceCancel.localeChange.themeChange.textSizeChange.soundToggle.sidebarToggle.calloutDismiss.error.handshake.conversationRebound.state.unread`.split(`.`),hp=R.scope(`iframe`);function gp(e,t,n=`closed`,r=`floating`,i=null){hp.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`),yp(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=Mt({...e,target:o.body}),c=new MutationObserver(()=>{yp(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 _p=`border:0;background:transparent;z-index:2147483647;pointer-events:auto;`,vp={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 yp(e,t,n,r){if(n===`fullscreen`||r===`standalone`){e.style.cssText=`${_p}position:fixed;inset:0;width:100vw;height:100vh;`;return}if(r===`inline`){e.style.cssText=`${_p}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=`${_p}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}=vp[n]??vp.open;e.style.cssText=`${_p}position:fixed;${i}:16px;${a}:16px;width:${o};height:${s};`}const bp=/* @__PURE__ */ new Map;function xp(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);e.debug!==void 0&&ge(e.debug);let t=R.scope(`mount`);t.info(`mount`,{widgetId:e.widgetId,publicKey:e.publicKey,mode:e.presentation?.mode});let r=De(e),i=r.widgetId,a=bp.get(i);a&&(t.debug(`destroy existing instance at slot`,{widgetId:i}),a.destroy());let o=op(r),s=r.iframe?gp({position:jt(r.mode)},r.position,o,r.mode,e.target??null):Mt({position:jt(r.mode),target:e.target??null});s.hostElement.dataset.widgetId=i;let c=new nn,l=ft(i,r.storage,r.aiAgentDeploymentId);function u(e){c.emit(`error`,e),d.getOptions().onError?.(e)}let d=ap({bus:c,host:s.hostElement,appRoot:s.appRoot,persistence:l,initialRaw:e,reportError:u}),f=tn,p=()=>{},m=new Promise(e=>{p=e});c.on(`state`,e=>{f=e,e.ready&&p()}),d.render();let h=s.hostElement,g=null;function _(e){e.debug!==void 0&&ge(e.debug),d.patchUserOptions(e)}let v={widgetId:i,open:e=>Jt(h,`open`,e),close:()=>Jt(h,`close`),expand:()=>Jt(h,`expand`),openForm:e=>Jt(h,`openForm`,e),ask:(e,t)=>Jt(h,`ask`,Gt(e,t)),on:(e,t)=>c.on(e,t),update:e=>{t.debug(`update`,{patch:e}),_(e)},setUserContext:e=>{t.debug(`setUserContext`,{keys:Object.keys(e)}),_({userContext:{...d.getUserOptions().userContext,...e}})},clearUserContext:()=>{t.debug(`clearUserContext`),_({userContext:void 0})},setPageContext:e=>{t.debug(`setPageContext`,{keys:Object.keys(e)}),_({pageContext:{...d.getUserOptions().pageContext,...e}})},clearPageContext:()=>{t.debug(`clearPageContext`),_({pageContext:void 0})},get state(){return f},ready:m,reset:()=>{t.info(`reset`,{widgetId:i}),d.reset()},login:e=>{t.info(`login`,{widgetId:i}),_({userToken:e})},track:(e,t)=>{let n=st(e,t);n&&c.emit(`hostEvent`,n)},registerTool:Rl,setDebug:e=>{ge(e),t.info(`debug level set`,{level:L()})},debugLevel:()=>L(),onLog:e=>ve(e),destroy:()=>{t.info(`destroy`,{widgetId:i}),c.emit(`state`,tn),g?.(),d.destroy(),c.clear(),n(null,s.appRoot),s.destroy(),bp.get(i)===v&&bp.delete(i)}};return g=fp(v,c),bp.set(i,v),v}function Sp(e){if(!e.aiAgentDeploymentId)throw Error(`aiAgentDeploymentId is required`);let t=e.widgetId??`default`,n=bp.get(t);return n?(n.update(e),n):xp(e)}function Cp(e){if(e!==void 0){bp.get(e)?.destroy();return}let t=[...bp.values()];for(let e of t)e.destroy()}function wp(e=`default`){return bp.get(e)??null}function Tp(){return[...bp.values()]}function Ep(e,t,n){return up(e,t,n)}const Dp=gt,Op=M;export{cp as HOOK_WILDCARD,Op as brand,Cp as destroy,Tp as getAllInstances,wp as getInstance,Ep as hook,Sp as init,xp as mount,op as resolveInitialHostMode,Dp as version};
|
|
34
35
|
//# sourceMappingURL=index.mjs.map
|