@waniwani/sdk 0.19.3 → 0.19.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chat/embed.js +59 -59
- package/dist/chat/embed.js.map +1 -1
- package/dist/chat/index.d.ts +36 -36
- package/dist/chat/index.js +7 -7
- package/dist/chat/index.js.map +1 -1
- package/dist/legacy/index.d.ts +33 -27
- package/dist/legacy/index.js +13 -13
- package/dist/legacy/index.js.map +1 -1
- package/package.json +1 -1
package/dist/chat/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{a as In,b as Ln,c as Cn,d as Sn,e as yn,f as xa,g as bn,h as kn,i as Tn,j as vn,k as Br,l as Pn,m as xt,n as It,o as Ia,p as Lt,u as Bt}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Ph,useCallback as Zo,useEffect as Ah,useImperativeHandle as Rh,useRef as jl,useState as $l}from"react";import{forwardRef as Au,createElement as Ru}from"react";var La=(...e)=>e.filter((t,a,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===a).join(" ").trim();var An=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var Rn=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,r)=>r?r.toUpperCase():a.toLowerCase());var Er=e=>{let t=Rn(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Pu,createElement as Bn}from"react";var Mn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var Fn=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var En=Pu(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:r,className:o="",children:n,iconNode:s,...i},l)=>Bn("svg",{ref:l,...Mn,width:t,height:t,stroke:e,strokeWidth:r?Number(a)*24/Number(t):a,className:La("lucide",o),...!n&&!Fn(i)&&{"aria-hidden":"true"},...i},[...s.map(([u,c])=>Bn(u,c)),...Array.isArray(n)?n:[n]]));var j=(e,t)=>{let a=Au(({className:r,...o},n)=>Ru(En,{ref:n,iconNode:t,className:La(`lucide-${An(Er(e))}`,`lucide-${e}`,r),...o}));return a.displayName=Er(e),a};var Mu=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],ot=j("arrow-down",Mu);var Fu=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Et=j("arrow-up",Fu);var Bu=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Dt=j("check",Bu);var Eu=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],$e=j("chevron-down",Eu);var Du=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],_t=j("chevron-right",Du);var _u=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]],Ot=j("clipboard-copy",_u);var Ou=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],We=j("clock",Ou);var Nu=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],Nt=j("file",Nu);var Uu=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Ut=j("globe",Uu);var Hu=[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]],Ht=j("loader",Hu);var qu=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],qt=j("paperclip",qu);var Gu=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Gt=j("square",Gu);var Wu=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],nt=j("wrench",Wu);var Vu=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],st=j("x",Vu);var zu=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Wt=j("zap",zu);import{useCallback as ld}from"react";import{useCallback as Xe,useMemo as ju,useRef as $u,useState as Dr}from"react";var Xu={damping:.7,stiffness:.05,mass:1.25},Ku=70,Qu=1e3/60,Ju=350,Ca=!1;globalThis.document?.addEventListener("mousedown",()=>{Ca=!0});globalThis.document?.addEventListener("mouseup",()=>{Ca=!1});globalThis.document?.addEventListener("click",()=>{Ca=!1});var _n=(e={})=>{let[t,a]=Dr(!1),[r,o]=Dr(e.initial!==!1),[n,s]=Dr(!1),i=$u(null);i.current=e;let l=Xe(()=>{if(!Ca)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(I.current)||I.current?.contains(h.commonAncestorContainer)},[]),u=Xe(g=>{d.isAtBottom=g,o(g)},[]),c=Xe(g=>{d.escapedFromLock=g,a(g)},[]),d=ju(()=>{let g;return{escapedFromLock:t,isAtBottom:r,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return I.current?.scrollTop??0},set scrollTop(h){I.current&&(I.current.scrollTop=h,d.ignoreScrollToTop=I.current.scrollTop)},get targetScrollTop(){return!I.current||!w.current?0:I.current.scrollHeight-1-I.current.clientHeight},get calculatedTargetScrollTop(){if(!I.current||!w.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let x=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:I.current,contentElement:w.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:x},requestAnimationFrame(()=>{g=void 0}),x},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Ku}}},[]),f=Xe((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),x=Or(i.current,g.animation),{ignoreEscapes:y=!1}=g,T,v=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{T=Date.now()}):T=h+(g.duration??0);let A=async()=>{let M=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:F}=d,P=performance.now(),b=(P-(d.lastTick??P))/Qu;if(d.animation||(d.animation={behavior:x,promise:M,ignoreEscapes:y}),d.animation.behavior===x&&(d.lastTick=P),l()||h>Date.now())return A();if(F<Math.min(v,d.calculatedTargetScrollTop)){if(d.animation?.behavior===x){if(x==="instant")return d.scrollTop=d.calculatedTargetScrollTop,A();d.velocity=(x.damping*d.velocity+x.stiffness*d.scrollDifference)/x.mass,d.accumulated+=d.velocity*b,d.scrollTop+=d.accumulated,d.scrollTop!==F&&(d.accumulated=0)}return A()}return T>Date.now()?(v=d.calculatedTargetScrollTop,A()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?f({animation:Or(i.current,i.current.resize),ignoreEscapes:y,duration:Math.max(0,T-Date.now())||void 0}):d.isAtBottom)});return M.then(F=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),F))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===x?d.animation.promise:A()},[u,l,d]),p=Xe(()=>{c(!0),u(!1)},[c,u]),m=Xe(({target:g})=>{if(g!==I.current)return;let{scrollTop:h,ignoreScrollToTop:x}=d,{lastScrollTop:y=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,x&&x>h&&(y=x),s(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===x)return;if(l()){c(!0),u(!1);return}let T=h>y,v=h<y;if(d.animation?.ignoreEscapes){d.scrollTop=y;return}v&&(c(!0),u(!1)),T&&c(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[c,u,l,d]),L=Xe(({target:g,deltaY:h})=>{let x=g;for(;!["scroll","auto"].includes(getComputedStyle(x).overflow);){if(!x.parentElement)return;x=x.parentElement}x===I.current&&h<0&&I.current.scrollHeight>I.current.clientHeight&&!d.animation?.ignoreEscapes&&(c(!0),u(!1))},[c,u,d]),I=Dn(g=>{I.current?.removeEventListener("scroll",m),I.current?.removeEventListener("wheel",L),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",L,{passive:!0})},[]),w=Dn(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([x])=>{let{height:y}=x.contentRect,T=y-(h??y);if(d.resizeDifference=T,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),s(d.isNearBottom),T>=0){let v=Or(i.current,h?i.current.resize:i.current.initial);f({animation:v,wait:!0,preserveScrollPosition:!0,duration:v==="instant"?void 0:Ju})}else d.isNearBottom&&(c(!1),u(!0));h=y,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===T&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:w,scrollRef:I,scrollToBottom:f,stopScroll:p,isAtBottom:r||n,isNearBottom:n,escapedFromLock:t,state:d}};function Dn(e,t){let a=Xe(r=>(a.current=r,e(r)),t);return a}var _r=new Map;function Or(...e){let t={...Xu},a=!1;for(let o of e){if(o==="instant"){a=!0;continue}typeof o=="object"&&(a=!1,t.damping=o.damping??t.damping,t.stiffness=o.stiffness??t.stiffness,t.mass=o.mass??t.mass)}let r=JSON.stringify(t);return _r.has(r)||_r.set(r,Object.freeze(t)),a?"instant":_r.get(r)}import*as it from"react";import{createContext as Yu,useContext as Zu,useEffect as ed,useImperativeHandle as td,useLayoutEffect as ad,useMemo as rd,useRef as od}from"react";var On=Yu(null),nd=typeof window<"u"?ad:ed;function Vt({instance:e,children:t,resize:a,initial:r,mass:o,damping:n,stiffness:s,targetScrollTop:i,contextRef:l,...u}){let c=od(null),d=it.useCallback((y,T)=>(x?.targetScrollTop??i)?.(y,T)??y,[i]),f=_n({mass:o,damping:n,stiffness:s,resize:a,initial:r,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:L,stopScroll:I,isAtBottom:w,escapedFromLock:g,state:h}=e??f,x=rd(()=>({scrollToBottom:L,stopScroll:I,scrollRef:p,isAtBottom:w,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return c.current},set targetScrollTop(y){c.current=y}}),[L,w,m,p,I,g,h]);return td(l,()=>x,[x]),nd(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),it.createElement(On.Provider,{value:x},it.createElement("div",{...u},typeof t=="function"?t(x):t))}(function(e){function t({children:a,scrollClassName:r,...o}){let n=Nr();return it.createElement("div",{ref:n.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:r},it.createElement("div",{...o,ref:n.contentRef},typeof a=="function"?a(n):a))}e.Content=t})(Vt||(Vt={}));function Nr(){let e=Zu(On);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var sd=Ln({prefix:"ww"});function k(...e){return sd(In(e))}import{jsx as id}from"react/jsx-runtime";var Ee=({className:e,variant:t="default",size:a="default",type:r="button",...o})=>id("button",{type:r,className:k("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...o});import{jsx as Sa}from"react/jsx-runtime";var Nn=({className:e,...t})=>Sa(Vt,{className:k("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),Un=({className:e,...t})=>Sa(Vt.Content,{className:k("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),Hn=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:r}=Nr(),o=ld(()=>{r()},[r]);return!a&&Sa(Ee,{className:k("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:o,size:"icon",variant:"outline",...t,children:Sa(ot,{className:"ww:size-4"})})};import Gn from"crypto";var qn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var ud=128,lt,Ct,dd=e=>{!lt||lt.length<e?(lt=Buffer.allocUnsafe(e*ud),Gn.randomFillSync(lt),Ct=0):Ct+e>lt.length&&(Gn.randomFillSync(lt),Ct=0),Ct+=e};var zt=(e=21)=>{dd(e|=0);let t="";for(let a=Ct-e;a<Ct;a++)t+=qn[lt[a]&63];return t};import{createContext as xd,useCallback as Ve,useContext as Id,useEffect as Wr,useMemo as Ld,useRef as Vr,useState as Xn}from"react";import{createContext as cd,useContext as fd,useEffect as pd,useMemo as md,useState as jn}from"react";var Wn=["en","fr","es"];function St(e){return Wn.includes(e)}function Ur(e){if(e&&St(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&St(a))return a}let t=[];if(typeof navigator<"u"&&(navigator.language&&t.push(navigator.language),navigator.languages&&t.push(...navigator.languages)),typeof document<"u"){let a=document.documentElement.getAttribute("lang");a&&t.push(a)}for(let a of t){let r=a.toLowerCase();if(St(r))return r;let o=r.split("-")[0];if(o&&St(o))return o}return"en"}var ya={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},chainOfThought:{working:"Working on it\u2026",done:"Thought process"},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to Waniwani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};var Vn={promptInput:{placeholder:"\xBFQu\xE9 te gustar\xEDa saber?",uploadFiles:"Subir archivos",stop:"Detener",submit:"Enviar",removeAttachments:"Eliminar todos los archivos adjuntos"},workingIndicator:{default:"Un momento\u2026"},reasoning:{thinking:"Pensando\u2026",thoughtBrief:"Pensado durante unos segundos",thoughtForSeconds:e=>`Pensado durante ${e} segundo${e===1?"":"s"}`},chainOfThought:{working:"Estoy en ello\u2026",done:"Razonamiento"},tool:{copy:"Copiar",copied:"Copiado",request:"Solicitud",response:"Respuesta",error:"Error"},attachments:{attachmentFallback:"adjunto",fileFallback:"archivo"},threadMenu:{newChat:"Nueva conversaci\xF3n",threadHistory:"Historial",deleteThread:"Eliminar conversaci\xF3n",noPreviousChats:"A\xFAn no hay conversaciones anteriores.",hiddenThreads:e=>`${e} conversaci\xF3n${e===1?"":"es"} anterior${e===1?"":"es"} oculta${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(adjunto)",removeFromQueue:"Quitar de la cola",queued:e=>`${e} en cola`},poweredBy:{label:"Agente IA con tecnolog\xEDa de"},aiDisclaimer:{default:"puede cometer errores"},exportSession:{saving:"guardando...",saved:"guardado",error:"error",export:"exportar",tooltip:"Guardar escenario en Waniwani"},widgetErrorBoundary:{failedToLoad:"No se pudo cargar el widget",retry:"Reintentar"},launcher:{prompt:"Pregunta lo que quieras\u2026",open:"Abrir chat",close:"Cerrar chat",minimize:"Minimizar"}};var zn={promptInput:{placeholder:"Que souhaitez-vous savoir ?",uploadFiles:"Importer des fichiers",stop:"Arr\xEAter",submit:"Envoyer",removeAttachments:"Supprimer toutes les pi\xE8ces jointes"},workingIndicator:{default:"Un instant\u2026"},reasoning:{thinking:"R\xE9flexion\u2026",thoughtBrief:"R\xE9flexion pendant quelques secondes",thoughtForSeconds:e=>`R\xE9flexion pendant ${e} seconde${e===1?"":"s"}`},chainOfThought:{working:"Je m'en occupe\u2026",done:"Raisonnement"},tool:{copy:"Copier",copied:"Copi\xE9",request:"Requ\xEAte",response:"R\xE9ponse",error:"Erreur"},attachments:{attachmentFallback:"pi\xE8ce jointe",fileFallback:"fichier"},threadMenu:{newChat:"Nouvelle conversation",threadHistory:"Historique",deleteThread:"Supprimer la conversation",noPreviousChats:"Aucune conversation pr\xE9c\xE9dente.",hiddenThreads:e=>`${e} conversation${e===1?"":"s"} plus ancienne${e===1?"":"s"} masqu\xE9e${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(pi\xE8ce jointe)",removeFromQueue:"Retirer de la file",queued:e=>`${e} en attente`},poweredBy:{label:"Agent IA propuls\xE9 par"},aiDisclaimer:{default:"peut faire des erreurs"},exportSession:{saving:"enregistrement...",saved:"enregistr\xE9",error:"erreur",export:"exporter",tooltip:"Enregistrer le sc\xE9nario dans Waniwani"},widgetErrorBoundary:{failedToLoad:"\xC9chec du chargement du widget",retry:"R\xE9essayer"},launcher:{prompt:"Posez votre question\u2026",open:"Ouvrir le chat",close:"Fermer le chat",minimize:"R\xE9duire"}};var Hr={en:ya,fr:zn,es:Vn};import{jsx as wd}from"react/jsx-runtime";var $n=cd(null);function hd(e,t){if(!t)return e;let a={...e};for(let r of Object.keys(e)){let o=e[r],n=t[r];n&&typeof o=="object"&&(a[r]={...o,...n})}return a}function qr({children:e,locale:t,messages:a}){let r=!!(t&&gd(t)),o=r?t:"en",[n,s]=jn(o),[i,l]=jn(r);pd(()=>{s(Ur(t)),l(!0)},[t]);let u=md(()=>{let c=Hr[n]??Hr["en"];return{locale:n,t:hd(c,a),ready:i}},[n,a,i]);return wd($n.Provider,{value:u,children:e})}function gd(e){return e==="en"||e==="fr"||e==="es"}function z(){let e=fd($n);return e||{locale:"en",t:ya,ready:!0}}function Gr(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let r,o;a<60*6e4?(r=-Math.floor(a/6e4),o="minute"):a<1440*6e4?(r=-Math.floor(a/(60*6e4)),o="hour"):(r=-Math.floor(a/(1440*6e4)),o="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(r,o)}catch{return`${Math.abs(r)}${o==="minute"?"m":o==="hour"?"h":"d"} ago`}}import{jsx as _e,jsxs as Jn}from"react/jsx-runtime";var Cd=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(r=>{let o=new FileReader;o.onloadend=()=>r(o.result),o.onerror=()=>r(null),o.readAsDataURL(a)})}catch{return null}},Kn=xd(null),Qn=()=>{let e=Id(Kn);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ba=({className:e,accept:t,multiple:a,globalDrop:r,maxFiles:o,maxFileSize:n,onSubmit:s,children:i,...l})=>{let{t:u}=z(),c=Vr(null),d=Vr(null),[f,p]=Xn([]),m=Vr(f);Wr(()=>{m.current=f},[f]);let L=Ve(()=>{c.current?.click()},[]),I=Ve(T=>{let v=[...T];if(v.length===0)return;let A=F=>n?F.size<=n:!0,M=v.filter(A);p(F=>{let P=typeof o=="number"?Math.max(0,o-F.length):void 0,b=typeof P=="number"?M.slice(0,P):M;return[...F,...b.map(q=>({filename:q.name,id:zt(),mediaType:q.type,type:"file",url:URL.createObjectURL(q)}))]})},[o,n]),w=Ve(T=>{p(v=>{let A=v.find(M=>M.id===T);return A?.url&&URL.revokeObjectURL(A.url),v.filter(M=>M.id!==T)})},[]),g=Ve(()=>{p(T=>{for(let v of T)v.url&&URL.revokeObjectURL(v.url);return[]})},[]);Wr(()=>()=>{for(let T of m.current)T.url&&URL.revokeObjectURL(T.url)},[]);let h=Ve(T=>{T.currentTarget.files&&I(T.currentTarget.files),T.currentTarget.value=""},[I]);Wr(()=>{if(!r)return;let T=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault()},v=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault(),A.dataTransfer?.files&&A.dataTransfer.files.length>0&&I(A.dataTransfer.files)};return document.addEventListener("dragover",T),document.addEventListener("drop",v),()=>{document.removeEventListener("dragover",T),document.removeEventListener("drop",v)}},[I,r]);let x=Ve(async T=>{T.preventDefault();let v=T.currentTarget,M=new FormData(v).get("message")||"";v.reset();let F=await Promise.all(f.map(async({id:P,...b})=>{if(b.url?.startsWith("blob:")){let q=await Cd(b.url);return{...b,url:q??b.url}}return b}));try{let P=s({files:F,text:M},T);P instanceof Promise&&await P,g()}catch{}},[f,s,g]),y=Ld(()=>({add:I,clear:g,files:f,openFileDialog:L,remove:w}),[f,I,w,g,L]);return Jn(Kn.Provider,{value:y,children:[_e("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:c,title:u.promptInput.uploadFiles,type:"file"}),_e("form",{className:k("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:x,ref:d,...l,children:i})]})};var ka=({onChange:e,onKeyDown:t,className:a,placeholder:r,...o})=>{let{t:n}=z(),s=Qn(),[i,l]=Xn(!1),u=r??n.promptInput.placeholder,c=Ve(f=>{if(t?.(f),!f.defaultPrevented){if(f.key==="Enter"){if(i||f.nativeEvent.isComposing||f.shiftKey)return;f.preventDefault();let{form:p}=f.currentTarget;if(p?.querySelector('button[type="submit"]')?.disabled)return;p?.requestSubmit()}if(f.key==="Backspace"&&f.currentTarget.value===""&&s.files.length>0){f.preventDefault();let p=s.files.at(-1);p&&s.remove(p.id)}}},[t,i,s]),d=Ve(f=>{let p=f.clipboardData?.items;if(!p)return;let m=[];for(let L of p)if(L.kind==="file"){let I=L.getAsFile();I&&m.push(I)}m.length>0&&(f.preventDefault(),s.add(m))},[s]);return _e("textarea",{className:k("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:c,onPaste:d,placeholder:u,onChange:e,...o})},Ta=({className:e,status:t,onStop:a,onClick:r,children:o,...n})=>{let{t:s}=z(),i=t==="submitted"||t==="streaming",l=_e(Et,{className:"ww:size-4"});t==="submitted"?l=_e(Ht,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=_e(Gt,{className:"ww:size-4"}));let u=Ve(c=>{if(i&&a){c.preventDefault(),a();return}r?.(c)},[i,a,r]);return _e(Ee,{"aria-label":i?s.promptInput.stop:s.promptInput.submit,className:k("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...n,children:o??l})},va=({className:e,children:t,...a})=>{let{t:r}=z(),o=Qn();return o.files.length>0?Jn(Ee,{className:k("ww:group ww:relative",e),onClick:()=>o.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":r.promptInput.removeAttachments,...a,children:[_e("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:o.files.length}),_e(st,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):_e(Ee,{className:k(e),onClick:()=>o.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??_e(qt,{className:"ww:size-4"})})};import{memo as Sd,useCallback as yd}from"react";import{jsx as bt}from"react/jsx-runtime";var Yn=({className:e,...t})=>bt("div",{className:k("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Zn=({className:e,...t})=>bt("li",{className:k("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),es=({className:e,...t})=>bt("span",{className:k("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),ts=({className:e,...t})=>bt("span",{className:k("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),as=({className:e,...t})=>bt("div",{className:k("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),rs=({className:e,...t})=>bt(Ee,{className:k("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Ke,jsxs as ns}from"react/jsx-runtime";var os=Sd(({message:e,onRemove:t})=>{let{t:a}=z(),r=yd(()=>t(e.id),[t,e.id]);return ns(Zn,{children:[Ke(es,{}),Ke(ts,{children:e.text||a.chatQueue.attachmentFallback}),Ke(as,{children:Ke(rs,{"aria-label":a.chatQueue.removeFromQueue,onClick:r,children:Ke(st,{className:"ww:size-3"})})})]})});os.displayName="ChatQueueItem";function Pa({queuedMessages:e,onRemove:t,className:a}){let{t:r}=z();return e.length===0?null:ns(Yn,{className:k("ww:border-t ww:border-border",a),children:[Ke("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:r.chatQueue.queued(e.length)}),Ke("ul",{children:e.map(o=>Ke(os,{message:o,onRemove:t},o.id))})]})}import{useState as ss}from"react";import{jsx as bd}from"react/jsx-runtime";function is({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:r}=z(),[o,n]=ss(!1),[s,i]=ss(null),l=async()=>{let c={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};n(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{n(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=o?r.exportSession.saving:s==="saved"?r.exportSession.saved:s==="error"?r.exportSession.error:r.exportSession.export;return bd("button",{type:"button",onClick:l,disabled:o,title:r.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}import{jsx as jt,jsxs as Td}from"react/jsx-runtime";var ls=({files:e,className:t,...a})=>e.length===0?null:jt("div",{className:k("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((r,o)=>jt(kd,{file:r},o))});function kd({file:e}){let{t}=z();return e.mediaType?.startsWith("image/")&&e.url?jt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Td("span",{className:"ww:inline-flex ww:items-center ww:gap-1.5 ww:rounded ww:bg-background/20 ww:px-2 ww:py-1 ww:text-xs",children:[jt(Nt,{className:"ww:size-3 ww:shrink-0"}),jt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as Nd,useCallback as Ud,useContext as Hd,useEffect as qd,useMemo as Gd,useState as Xr}from"react";import{createContext as Rd,memo as $r,useCallback as Md,useContext as Fd,useEffect as zr,useMemo as Bd,useRef as us,useState as jr}from"react";import{memo as vd}from"react";import{jsx as Ad}from"react/jsx-runtime";var Pd=({as:e="span",className:t,duration:a=2,style:r,children:o,...n})=>{let s={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...r};return Ad(e,{"data-waniwani-shimmer":"",className:k("ww:inline-block",t),style:s,...n,children:o})},Oe=vd(Pd);Oe.displayName="Shimmer";import{Fragment as _d,jsx as Ne,jsxs as Od}from"react/jsx-runtime";var ds=Rd(null);function cs(){let e=Fd(ds);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Ed=1e3,Dd=1e3,$t=$r(({className:e,isStreaming:t=!1,open:a,defaultOpen:r,onOpenChange:o,duration:n,children:s,...i})=>{let l=r??t,u=r===!1,c=a!==void 0,[d,f]=jr(l),p=c?a:d,m=Md(v=>{c||f(v),o?.(v)},[c,o]),[L,I]=jr(void 0),w=n??L,g=us(t),[h,x]=jr(!1),y=us(null);zr(()=>{t?(g.current=!0,y.current===null&&(y.current=Date.now())):y.current!==null&&(I(Math.ceil((Date.now()-y.current)/Dd)),y.current=null)},[t]),zr(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),zr(()=>{if(g.current&&!t&&p&&!h){let v=setTimeout(()=>{m(!1),x(!0)},Ed);return()=>clearTimeout(v)}},[t,p,h,m]);let T=Bd(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:w}),[t,p,m,w]);return Ne(ds.Provider,{value:T,children:Ne("div",{className:k("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":p?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})});$t.displayName="Reasoning";var Xt=$r(({className:e,children:t,getThinkingMessage:a,hideIcon:r=!1,onClick:o,...n})=>{let{t:s}=z(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:c}=cs(),f=a??((p,m)=>p||m===0?Ne(Oe,{duration:1.6,children:s.reasoning.thinking}):m===void 0?Ne("span",{children:s.reasoning.thoughtBrief}):Ne("span",{children:s.reasoning.thoughtForSeconds(m)}));return Ne("button",{type:"button","aria-expanded":l,onClick:p=>{c(!l),o?.(p)},className:k("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...n,children:t??Od(_d,{children:[!r&&Ne(We,{className:"ww:size-4 ww:shrink-0"}),f(i,u)]})})});Xt.displayName="ReasoningTrigger";var Kt=$r(({className:e,children:t,...a})=>{let{isOpen:r}=cs();return Ne("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Ne("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Ne("div",{className:k("ww:text-sm ww:text-muted-foreground",e),...a,children:Ne(Bt,{children:t})})})})});Kt.displayName="ReasoningContent";import{jsx as J,jsxs as Qe}from"react/jsx-runtime";var Wd=500,fs=Nd(null);function ps(){let e=Hd(fs);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function ms({className:e,isWorking:t=!1,activeStep:a,open:r,defaultOpen:o=!1,onOpenChange:n,children:s,...i}){let l=r!==void 0,[u,c]=Xr(o),d=l?r:u,f=Ud(I=>{l||c(I),n?.(I)},[l,n]),[p,m]=Xr(!t);qd(()=>{if(t){m(!1);return}let I=setTimeout(()=>m(!0),Wd);return()=>clearTimeout(I)},[t]);let L=Gd(()=>({open:d,setOpen:f,isWorking:t,settled:p,activeStep:a}),[d,f,t,p,a]);return J(fs.Provider,{value:L,children:J("div",{className:k("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":d?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})}function hs({className:e,label:t,workingLabel:a,children:r,...o}){let{open:n,setOpen:s,isWorking:i,settled:l,activeStep:u}=ps();if(!l){let c=u?.icon,d=u?.label??a??t??"";return J("div",{className:k("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:Qe("span",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-1.5",style:{animation:"ww-fade-in 0.25s ease-out"},children:[c&&J(c,{className:k("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),J("span",{className:"ww:truncate",children:i?J(Oe,{duration:2.6,children:d}):d})]},d)})}return Qe("button",{type:"button",onClick:()=>s(!n),"aria-expanded":n,className:k("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...o,children:[J("span",{className:"ww:truncate",children:r??t}),J($e,{className:k("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",n&&"ww:rotate-180")})]})}function gs({className:e,children:t,...a}){let{open:r}=ps();return J("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:J("div",{className:"ww:min-h-0 ww:overflow-hidden",children:J("div",{className:k("ww:flex ww:flex-col",e),...a,children:t})})})}function ws({icon:e,isLast:t,running:a,error:r}){return Qe("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[J("span",{className:"ww:flex ww:h-5 ww:items-center",children:J(e,{className:k("ww:size-4 ww:shrink-0",r?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&J("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Kr({className:e,icon:t,title:a,state:r,isLast:o=!1,children:n,...s}){let i=r==="input-available"||r==="input-streaming",l=r==="output-error",u=n!=null,[c,d]=Xr(!1),f=a??"",p=i?J(Oe,{duration:1.6,children:f}):J("span",{className:"ww:truncate",children:f});return Qe("div",{className:k("ww:flex ww:gap-2",e),...s,children:[J(ws,{icon:t,isLast:o,running:i,error:l}),Qe("div",{className:k("ww:min-w-0 ww:flex-1",!o&&"ww:pb-3"),children:[u?Qe("button",{type:"button",onClick:()=>d(m=>!m),"aria-expanded":c,className:"ww:flex ww:w-full ww:items-center ww:gap-1.5 ww:text-left ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",children:[p,J($e,{className:k("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",c&&"ww:rotate-180")})]}):J("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&J("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",c?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:J("div",{className:"ww:min-h-0 ww:overflow-hidden",children:J("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:n})})})]})]})}function xs({isStreaming:e=!1,isLast:t=!1,children:a}){return Qe("div",{className:"ww:flex ww:gap-2",children:[J(ws,{icon:We,isLast:t,running:e}),J("div",{className:k("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:Qe($t,{isStreaming:e,className:"ww:mb-0",children:[J(Xt,{hideIcon:!0}),J(Kt,{children:a})]})})]})}var Ie={carriageReturn:-5,lineFeed:-4,carriageReturnLineFeed:-3,horizontalTab:-2,virtualSpace:-1,eof:null,nul:0,soh:1,stx:2,etx:3,eot:4,enq:5,ack:6,bel:7,bs:8,ht:9,lf:10,vt:11,ff:12,cr:13,so:14,si:15,dle:16,dc1:17,dc2:18,dc3:19,dc4:20,nak:21,syn:22,etb:23,can:24,em:25,sub:26,esc:27,fs:28,gs:29,rs:30,us:31,space:32,exclamationMark:33,quotationMark:34,numberSign:35,dollarSign:36,percentSign:37,ampersand:38,apostrophe:39,leftParenthesis:40,rightParenthesis:41,asterisk:42,plusSign:43,comma:44,dash:45,dot:46,slash:47,digit0:48,digit1:49,digit2:50,digit3:51,digit4:52,digit5:53,digit6:54,digit7:55,digit8:56,digit9:57,colon:58,semicolon:59,lessThan:60,equalsTo:61,greaterThan:62,questionMark:63,atSign:64,uppercaseA:65,uppercaseB:66,uppercaseC:67,uppercaseD:68,uppercaseE:69,uppercaseF:70,uppercaseG:71,uppercaseH:72,uppercaseI:73,uppercaseJ:74,uppercaseK:75,uppercaseL:76,uppercaseM:77,uppercaseN:78,uppercaseO:79,uppercaseP:80,uppercaseQ:81,uppercaseR:82,uppercaseS:83,uppercaseT:84,uppercaseU:85,uppercaseV:86,uppercaseW:87,uppercaseX:88,uppercaseY:89,uppercaseZ:90,leftSquareBracket:91,backslash:92,rightSquareBracket:93,caret:94,underscore:95,graveAccent:96,lowercaseA:97,lowercaseB:98,lowercaseC:99,lowercaseD:100,lowercaseE:101,lowercaseF:102,lowercaseG:103,lowercaseH:104,lowercaseI:105,lowercaseJ:106,lowercaseK:107,lowercaseL:108,lowercaseM:109,lowercaseN:110,lowercaseO:111,lowercaseP:112,lowercaseQ:113,lowercaseR:114,lowercaseS:115,lowercaseT:116,lowercaseU:117,lowercaseV:118,lowercaseW:119,lowercaseX:120,lowercaseY:121,lowercaseZ:122,leftCurlyBrace:123,verticalBar:124,rightCurlyBrace:125,tilde:126,del:127,byteOrderMarker:65279,replacementCharacter:65533};var He={attentionSideAfter:2,attentionSideBefore:1,atxHeadingOpeningFenceSizeMax:6,autolinkDomainSizeMax:63,autolinkSchemeSizeMax:32,cdataOpeningString:"CDATA[",characterGroupPunctuation:2,characterGroupWhitespace:1,characterReferenceDecimalSizeMax:7,characterReferenceHexadecimalSizeMax:6,characterReferenceNamedSizeMax:31,codeFencedSequenceSizeMin:3,contentTypeContent:"content",contentTypeDocument:"document",contentTypeFlow:"flow",contentTypeString:"string",contentTypeText:"text",hardBreakPrefixSizeMin:2,htmlBasic:6,htmlCdata:5,htmlComment:2,htmlComplete:7,htmlDeclaration:4,htmlInstruction:3,htmlRawSizeMax:8,htmlRaw:1,linkResourceDestinationBalanceMax:32,linkReferenceSizeMax:999,listItemValueSizeMax:10,numericBaseDecimal:10,numericBaseHexadecimal:16,tabSize:4,thematicBreakMarkerCountMin:3,v8MaxSafeChunkSize:1e4};var Ae={data:"data",whitespace:"whitespace",lineEnding:"lineEnding",lineEndingBlank:"lineEndingBlank",linePrefix:"linePrefix",lineSuffix:"lineSuffix",atxHeading:"atxHeading",atxHeadingSequence:"atxHeadingSequence",atxHeadingText:"atxHeadingText",autolink:"autolink",autolinkEmail:"autolinkEmail",autolinkMarker:"autolinkMarker",autolinkProtocol:"autolinkProtocol",characterEscape:"characterEscape",characterEscapeValue:"characterEscapeValue",characterReference:"characterReference",characterReferenceMarker:"characterReferenceMarker",characterReferenceMarkerNumeric:"characterReferenceMarkerNumeric",characterReferenceMarkerHexadecimal:"characterReferenceMarkerHexadecimal",characterReferenceValue:"characterReferenceValue",codeFenced:"codeFenced",codeFencedFence:"codeFencedFence",codeFencedFenceSequence:"codeFencedFenceSequence",codeFencedFenceInfo:"codeFencedFenceInfo",codeFencedFenceMeta:"codeFencedFenceMeta",codeFlowValue:"codeFlowValue",codeIndented:"codeIndented",codeText:"codeText",codeTextData:"codeTextData",codeTextPadding:"codeTextPadding",codeTextSequence:"codeTextSequence",content:"content",definition:"definition",definitionDestination:"definitionDestination",definitionDestinationLiteral:"definitionDestinationLiteral",definitionDestinationLiteralMarker:"definitionDestinationLiteralMarker",definitionDestinationRaw:"definitionDestinationRaw",definitionDestinationString:"definitionDestinationString",definitionLabel:"definitionLabel",definitionLabelMarker:"definitionLabelMarker",definitionLabelString:"definitionLabelString",definitionMarker:"definitionMarker",definitionTitle:"definitionTitle",definitionTitleMarker:"definitionTitleMarker",definitionTitleString:"definitionTitleString",emphasis:"emphasis",emphasisSequence:"emphasisSequence",emphasisText:"emphasisText",escapeMarker:"escapeMarker",hardBreakEscape:"hardBreakEscape",hardBreakTrailing:"hardBreakTrailing",htmlFlow:"htmlFlow",htmlFlowData:"htmlFlowData",htmlText:"htmlText",htmlTextData:"htmlTextData",image:"image",label:"label",labelText:"labelText",labelLink:"labelLink",labelImage:"labelImage",labelMarker:"labelMarker",labelImageMarker:"labelImageMarker",labelEnd:"labelEnd",link:"link",paragraph:"paragraph",reference:"reference",referenceMarker:"referenceMarker",referenceString:"referenceString",resource:"resource",resourceDestination:"resourceDestination",resourceDestinationLiteral:"resourceDestinationLiteral",resourceDestinationLiteralMarker:"resourceDestinationLiteralMarker",resourceDestinationRaw:"resourceDestinationRaw",resourceDestinationString:"resourceDestinationString",resourceMarker:"resourceMarker",resourceTitle:"resourceTitle",resourceTitleMarker:"resourceTitleMarker",resourceTitleString:"resourceTitleString",setextHeading:"setextHeading",setextHeadingText:"setextHeadingText",setextHeadingLine:"setextHeadingLine",setextHeadingLineSequence:"setextHeadingLineSequence",strong:"strong",strongSequence:"strongSequence",strongText:"strongText",thematicBreak:"thematicBreak",thematicBreakSequence:"thematicBreakSequence",blockQuote:"blockQuote",blockQuotePrefix:"blockQuotePrefix",blockQuoteMarker:"blockQuoteMarker",blockQuotePrefixWhitespace:"blockQuotePrefixWhitespace",listOrdered:"listOrdered",listUnordered:"listUnordered",listItemIndent:"listItemIndent",listItemMarker:"listItemMarker",listItemPrefix:"listItemPrefix",listItemPrefixWhitespace:"listItemPrefixWhitespace",listItemValue:"listItemValue",chunkDocument:"chunkDocument",chunkContent:"chunkContent",chunkFlow:"chunkFlow",chunkText:"chunkText",chunkString:"chunkString"};function Is(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function Ls(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Cs(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e>=94192&&e<=94198||e>=94208&&e<=101589||e>=101631&&e<=101662||e>=101760&&e<=101874||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128728||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129674||e>=129678&&e<=129734||e===129736||e>=129741&&e<=129756||e>=129759&&e<=129770||e>=129775&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function Ss(e){return Is(e)?"ambiguous":Ls(e)?"fullwidth":e===8361||e>=65377&&e<=65470||e>=65474&&e<=65479||e>=65482&&e<=65487||e>=65490&&e<=65495||e>=65498&&e<=65500||e>=65512&&e<=65518?"halfwidth":e>=32&&e<=126||e===162||e===163||e===165||e===166||e===172||e===175||e>=10214&&e<=10221||e===10629||e===10630?"narrow":Cs(e)?"wide":"neutral"}function Vd(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function ys(e){return Vd(e),Ss(e)}var zd=Object.defineProperty,jd=(e,t,a)=>t in e?zd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,$d=(e,t,a)=>jd(e,typeof t!="symbol"?t+"":t,a);function Xd(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Kd(e){if(!e||e<4352)return!1;switch(ys(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!Xd(e);case"narrow":return!1;case"ambiguous":return 917760<=e&&e<=917999?null:!1;case"neutral":return/^\p{sc=Hangul}/u.test(String.fromCodePoint(e))}}function Qd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Jd(e){return e!==null&&e>=65024&&e<=65038}var Yd=bs(/\p{P}|\p{S}/u),Zd=bs(/\s/);function bs(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Re;(e=>{e.spaceOrPunctuation=3,e.cjk=4096,e.cjkPunctuation=4098,e.ivs=8192,e.cjkOrIvs=12288,e.nonEmojiGeneralUseVS=16384,e.variationSelector=24576,e.ivsToCjkRightShift=1})(Re||(Re={}));function Je(e){if(e===Ie.eof||Pn(e)||Zd(e))return He.characterGroupWhitespace;let t=0;if(e>=4352){if(Jd(e))return Re.nonEmojiGeneralUseVS;switch(Kd(e)){case null:return Re.ivs;case!0:t|=Re.cjk;break}}return Yd(e)&&(t|=He.characterGroupPunctuation),t}function Aa(e,t,a){if(!tc(e))return e;let r=t(),o=Je(r);return!r||ut(o)?e:Qd(r,a)?Re.cjkPunctuation:ec(o)}function ec(e){return e&~Re.ivs}function ut(e){return!!(e&He.characterGroupWhitespace)}function kt(e){return(e&Re.cjkPunctuation)===He.characterGroupPunctuation}function Qt(e){return!!(e&Re.cjk)}function ks(e){return e===Re.ivs}function Ts(e){return!!(e&Re.cjkOrIvs)}function tc(e){return e===Re.nonEmojiGeneralUseVS}function Qr(e){return!!(e&Re.spaceOrPunctuation)}function Ra(e){return!!(e&&e>=55296&&e<=56319)}function Ma(e){return!!(e&&e>=56320&&e<=57343)}function Fa(e,t,a){if(t._bufferIndex<2)return e;let o=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return o&&o>=65536?o:e}function ac(e,t,a){let r=e>=65536?2:1;if(t._bufferIndex<1+r)return null;let o=t._bufferIndex-r-2,n=a({start:{...t,_bufferIndex:o>=0?o:0},end:{...t,_bufferIndex:t._bufferIndex-r}}),s=n.charCodeAt(n.length-1);if(Number.isNaN(s))return null;if(n.length<2||s<56320||57343<s)return s;let i=n.codePointAt(0);return i&&i>=65536?i:s}var Ba=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,$d(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=ac(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Ea(e,t,a){let r=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return r&&r>=65536?r:e}var Jr={name:"attention",resolveAll:rc,tokenize:oc};function rc(e,t){let a=-1,r,o,n,s,i,l,u,c;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(r=a;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[r][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[r][1].end},f={...e[a][1].start};vs(d,-l),vs(f,l),s={type:l>1?Ae.strongSequence:Ae.emphasisSequence,start:d,end:{...e[r][1].end}},i={type:l>1?Ae.strongSequence:Ae.emphasisSequence,start:{...e[a][1].start},end:f},n={type:l>1?Ae.strongText:Ae.emphasisText,start:{...e[r][1].end},end:{...e[a][1].start}},o={type:l>1?Ae.strong:Ae.emphasis,start:{...s.start},end:{...i.end}},e[r][1].end={...s.start},e[a][1].start={...i.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=It(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=It(u,[["enter",o,t],["enter",s,t],["exit",s,t],["enter",n,t]]),t.parser.constructs.insideSpan.null,u=It(u,Ia(t.parser.constructs.insideSpan.null,e.slice(r+1,a),t)),u=It(u,[["exit",n,t],["enter",i,t],["exit",i,t],["exit",o,t]]),e[a][1].end.offset-e[a][1].start.offset?(c=2,u=It(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):c=0,xt(e,r-1,a-r+3,u),a=r+u.length-c-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function oc(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:r,sliceSerialize:o,previous:n}=this,s=Ma(n)?Fa(n,r(),o):n,i=Je(s),l=new Ba(s,r(),o),u=Aa(i,l.value.bind(l),s),c;return d;function d(p){return p===Ie.asterisk||Ie.underscore,c=p,e.enter("attentionSequence"),f(p)}function f(p){if(p===c)return e.consume(p),f;let m=e.exit("attentionSequence"),L=Ra(p)?Ea(p,r(),o):p,I=Je(L);let w=kt(u),g=w||ut(u),h=kt(I),x=h||ut(I),y=Ts(u),T=!x||h&&(g||y)||a.includes(p),v=!g||w&&(x||Qt(I))||a.includes(s);return m._open=!!(c===Ie.asterisk?T:T&&(Qr(u)||!v)),m._close=!!(c===Ie.asterisk?v:v&&(Qr(I)||!T)),t(p)}}function vs(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Ps(){return{text:{[Ie.asterisk]:Jr,[Ie.underscore]:Jr},insideSpan:{null:[Jr]}}}function As(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Ps())}function Rs(e){let a=(e||{}).singleTilde,r={name:"strikethrough",tokenize:n,resolveAll:o};return a==null&&(a=!0),{text:{[Ie.tilde]:r},insideSpan:{null:[r]},attentionMarkers:{null:[Ie.tilde]}};function o(s,i){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";let c={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",c,i],["enter",s[u][1],i],["exit",s[u][1],i],["enter",d,i]],p=i.parser.constructs.insideSpan.null;p&&xt(f,f.length,0,Ia(p,s.slice(u+1,l),i)),xt(f,f.length,0,[["exit",d,i],["enter",s[l][1],i],["exit",s[l][1],i],["exit",c,i]]),xt(s,u-1,l-u+3,f),l=u+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type=Ae.data);return s}function n(s,i,l){let{now:u,sliceSerialize:c,previous:d}=this,f=Ma(d)?Fa(d,u(),c):d,p=Je(f),m=new Ba(f,u(),c),L=Aa(p,m.value.bind(m),f),I=this.events,w=0;return g;function g(x){return Ie.tilde,f===Ie.tilde&&I[I.length-1][1].type!==Ae.characterEscape?l(x):(s.enter("strikethroughSequenceTemporary"),h(x))}function h(x){let y=Je(f);if(x===Ie.tilde)return w>1?l(x):(s.consume(x),w++,h);if(w<2&&!a)return l(x);let T=s.exit("strikethroughSequenceTemporary"),v=Ra(x)?Ea(x,u(),c):x,A=Je(v),F=kt(L)||ut(L),b=kt(A)||ut(A),q=Qt(L)||ks(y);return T._open=!b||A===He.attentionSideAfter&&(F||q),T._close=!F||y===He.attentionSideAfter&&(b||Qt(A)),i(x)}}}function Ms(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(Rs(e))}var nc=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),sc=/^(https?:\/\/|mailto:|www\.)/i,ic=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},lc=e=>{let t=0;for(let a of e){if(nc.has(a))return t;t+=a.length}return null},uc=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),dc=e=>({type:"text",value:e}),cc=()=>e=>{Cn(e,"link",(t,a,r)=>{if(!r||typeof a!="number"||!ic(t)||!sc.test(t.url))return;let o=lc(t.url);if(o===null||o===0)return;let n=t.url.slice(0,o),s=t.url.slice(o),i=uc(n,t),l=dc(s);return r.children.splice(a,1,i,l),a+1})};function fc(){let e=[As],t=[cc,Ms],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Yr=fc();var te=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function pc(e){return lo(e)}function lo(e){return Array.isArray(e)?mc(e):e instanceof RegExp?e:typeof e=="object"?hc(e):e}function mc(e){let t=[];for(let a=0,r=e.length;a<r;a++)t[a]=lo(e[a]);return t}function hc(e){let t={};for(let a in e)t[a]=lo(e[a]);return t}function Hs(e,...t){return t.forEach(a=>{for(let r in a)e[r]=a[r]}),e}function qs(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?qs(e.substring(0,e.length-1)):e.substr(~t+1)}var Zr=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Da=class{static hasCaptures(e){return e===null?!1:(Zr.lastIndex=0,Zr.test(e))}static replaceCaptures(e,t,a){return e.replace(Zr,(r,o,n,s)=>{let i=a[parseInt(o||n,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return r})}};function Gs(e,t){return e<t?-1:e>t?1:0}function Ws(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,r=t.length;if(a===r){for(let o=0;o<a;o++){let n=Gs(e[o],t[o]);if(n!==0)return n}return 0}return a-r}function Fs(e){return!!(/^#[0-9a-f]{6}$/i.test(e)||/^#[0-9a-f]{8}$/i.test(e)||/^#[0-9a-f]{3}$/i.test(e)||/^#[0-9a-f]{4}$/i.test(e))}function Vs(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var zs=class{constructor(e){this.fn=e}cache=new Map;get(e){if(this.cache.has(e))return this.cache.get(e);let t=this.fn(e);return this.cache.set(e,t),t}},Zt=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(xc(e),t)}static createFromParsedTheme(e,t){return Lc(e,t)}_cachedMatchRoot=new zs(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,r=this._cachedMatchRoot.get(t).find(o=>gc(e.parent,o.parentScopes));return r?new js(r.fontStyle,r.foreground,r.background):null}},eo=class _a{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let r of a)t=new _a(t,r);return t}static from(...t){let a=null;for(let r=0;r<t.length;r++)a=new _a(a,t[r]);return a}push(t){return new _a(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push(r.scopeName),r=r.parent;return r===t?a.reverse():void 0}};function gc(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let r=t[a],o=!1;if(r===">"){if(a===t.length-1)return!1;r=t[++a],o=!0}for(;e&&!wc(e.scopeName,r);){if(o)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function wc(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var js=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function xc(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],r=0;for(let o=0,n=t.length;o<n;o++){let s=t[o];if(!s.settings)continue;let i;if(typeof s.scope=="string"){let d=s.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(s.scope)?i=s.scope:i=[""];let l=-1;if(typeof s.settings.fontStyle=="string"){l=0;let d=s.settings.fontStyle.split(" ");for(let f=0,p=d.length;f<p;f++)switch(d[f]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof s.settings.foreground=="string"&&Fs(s.settings.foreground)&&(u=s.settings.foreground);let c=null;typeof s.settings.background=="string"&&Fs(s.settings.background)&&(c=s.settings.background);for(let d=0,f=i.length;d<f;d++){let m=i[d].trim().split(" "),L=m[m.length-1],I=null;m.length>1&&(I=m.slice(0,m.length-1),I.reverse()),a[r++]=new Ic(L,I,o,l,u,c)}}return a}var Ic=class{constructor(e,t,a,r,o,n){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=r,this.foreground=o,this.background=n}},Le=(e=>(e[e.NotSet=-1]="NotSet",e[e.None=0]="None",e[e.Italic=1]="Italic",e[e.Bold=2]="Bold",e[e.Underline=4]="Underline",e[e.Strikethrough=8]="Strikethrough",e))(Le||{});function Lc(e,t){e.sort((l,u)=>{let c=Gs(l.scope,u.scope);return c!==0||(c=Ws(l.parentScopes,u.parentScopes),c!==0)?c:l.index-u.index});let a=0,r="#000000",o="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(r=l.foreground),l.background!==null&&(o=l.background)}let n=new Cc(t),s=new js(a,n.getId(r),n.getId(o)),i=new yc(new ao(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let c=e[l];i.insert(0,c.scope,c.parentScopes,c.fontStyle,n.getId(c.foreground),n.getId(c.background))}return new Zt(n,s,i)}var Cc=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(e){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(e)){this._isFrozen=!0;for(let t=0,a=e.length;t<a;t++)this._color2id[e[t]]=t,this._id2color[t]=e[t]}else this._isFrozen=!1}getId(e){if(e===null)return 0;e=e.toUpperCase();let t=this._color2id[e];if(t)return t;if(this._isFrozen)throw new Error(`Missing color in color map - ${e}`);return t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t}getColorMap(){return this._id2color.slice(0)}},Sc=Object.freeze([]),ao=class $s{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,r,o,n){this.scopeDepth=t,this.parentScopes=a||Sc,this.fontStyle=r,this.foreground=o,this.background=n}clone(){return new $s(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let r=0,o=t.length;r<o;r++)a[r]=t[r].clone();return a}acceptOverwrite(t,a,r,o){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),r!==0&&(this.foreground=r),o!==0&&(this.background=o)}},yc=class ro{constructor(t,a=[],r={}){this._mainRule=t,this._children=r,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let r=0,o=0;for(;t.parentScopes[r]===">"&&r++,a.parentScopes[o]===">"&&o++,!(r>=t.parentScopes.length||o>=a.parentScopes.length);){let n=a.parentScopes[o].length-t.parentScopes[r].length;if(n!==0)return n;r++,o++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let r=t.indexOf("."),o,n;if(r===-1?(o=t,n=""):(o=t.substring(0,r),n=t.substring(r+1)),this._children.hasOwnProperty(o))return this._children[o].match(n)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(ro._cmpBySpecificity),a}insert(t,a,r,o,n,s){if(a===""){this._doInsertHere(t,r,o,n,s);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let c;this._children.hasOwnProperty(l)?c=this._children[l]:(c=new ro(this._mainRule.clone(),ao.cloneArr(this._rulesWithParentScopes)),this._children[l]=c),c.insert(t+1,u,r,o,n,s)}_doInsertHere(t,a,r,o,n){if(a===null){this._mainRule.acceptOverwrite(t,r,o,n);return}for(let s=0,i=this._rulesWithParentScopes.length;s<i;s++){let l=this._rulesWithParentScopes[s];if(Ws(l.parentScopes,a)===0){l.acceptOverwrite(t,r,o,n);return}}r===-1&&(r=this._mainRule.fontStyle),o===0&&(o=this._mainRule.foreground),n===0&&(n=this._mainRule.background),this._rulesWithParentScopes.push(new ao(t,a,r,o,n))}},ct=class De{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=De.getLanguageId(t),r=De.getTokenType(t),o=De.getFontStyle(t),n=De.getForeground(t),s=De.getBackground(t);console.log({languageId:a,tokenType:r,fontStyle:o,foreground:n,background:s})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,r,o,n,s,i){let l=De.getLanguageId(t),u=De.getTokenType(t),c=De.containsBalancedBrackets(t)?1:0,d=De.getFontStyle(t),f=De.getForeground(t),p=De.getBackground(t);return a!==0&&(l=a),r!==8&&(u=r),o!==null&&(c=o?1:0),n!==-1&&(d=n),s!==0&&(f=s),i!==0&&(p=i),(l<<0|u<<8|c<<10|d<<11|f<<15|p<<24)>>>0}};function Na(e,t){let a=[],r=bc(e),o=r.next();for(;o!==null;){let l=0;if(o.length===2&&o.charAt(1)===":"){switch(o.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${o} in scope selector`)}o=r.next()}let u=s();if(a.push({matcher:u,priority:l}),o!==",")break;o=r.next()}return a;function n(){if(o==="-"){o=r.next();let l=n();return u=>!!l&&!l(u)}if(o==="("){o=r.next();let l=i();return o===")"&&(o=r.next()),l}if(Bs(o)){let l=[];do l.push(o),o=r.next();while(Bs(o));return u=>t(l,u)}return null}function s(){let l=[],u=n();for(;u;)l.push(u),u=n();return c=>l.every(d=>d(c))}function i(){let l=[],u=s();for(;u&&(l.push(u),o==="|"||o===",");){do o=r.next();while(o==="|"||o===",");u=s()}return c=>l.some(d=>d(c))}}function Bs(e){return!!e&&!!e.match(/[\w\.:]+/)}function bc(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let r=a[0];return a=t.exec(e),r}}}function Xs(e){typeof e.dispose=="function"&&e.dispose()}var ea=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},kc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Tc=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){let t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},vc=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new ea(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Tc;for(let a of e)Pc(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof ea){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function Pc(e,t,a,r){let o=a.lookup(e.scopeName);if(!o){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let n=a.lookup(t);e instanceof ea?Oa({baseGrammar:n,selfGrammar:o},r):oo(e.ruleName,{baseGrammar:n,selfGrammar:o,repository:o.repository},r);let s=a.injections(e.scopeName);if(s)for(let i of s)r.add(new ea(i))}function oo(e,t,a){if(t.repository&&t.repository[e]){let r=t.repository[e];Ua([r],t,a)}}function Oa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ua(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ua(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ua(e,t,a){for(let r of e){if(a.visitedRule.has(r))continue;a.visitedRule.add(r);let o=r.repository?Hs({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&Ua(r.patterns,{...t,repository:o},a);let n=r.include;if(!n)continue;let s=Ks(n);switch(s.kind){case 0:Oa({...t,selfGrammar:t.baseGrammar},a);break;case 1:Oa(t,a);break;case 2:oo(s.ruleName,{...t,repository:o},a);break;case 3:case 4:let i=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:o};s.kind===4?oo(s.ruleName,l,a):Oa(l,a)}else s.kind===4?a.add(new kc(s.scopeName,s.ruleName)):a.add(new ea(s.scopeName));break}}}var Ac=class{kind=0},Rc=class{kind=1},Mc=class{constructor(e){this.ruleName=e}kind=2},Fc=class{constructor(e){this.scopeName=e}kind=3},Bc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Ks(e){if(e==="$base")return new Ac;if(e==="$self")return new Rc;let t=e.indexOf("#");if(t===-1)return new Fc(e);if(t===0)return new Mc(e.substring(1));{let a=e.substring(0,t),r=e.substring(t+1);return new Bc(a,r)}}var Ec=/\\(\d+)/,Es=/\\(\d+)/g;var Dc=-1,Qs=-2;var ra=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,r){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=Da.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=Da.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${qs(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:Da.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Da.replaceCaptures(this._contentName,e,t)}},_c=class extends ra{retokenizeCapturedWithRuleId;constructor(e,t,a,r,o){super(e,t,a,r),this.retokenizeCapturedWithRuleId=o}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,r){throw new Error("Not supported!")}},Oc=class extends ra{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,null),this._match=new ta(r,this.id),this.captures=o,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new aa,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Ds=class extends ra{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,r),this.patterns=o.patterns,this.hasMissingPatterns=o.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(let a of this.patterns)e.getRule(a).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new aa,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},no=class extends ra{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o,n,s,i,l,u){super(e,t,a,r),this._begin=new ta(o,this.id),this.beginCaptures=n,this._end=new ta(s||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new aa;for(let a of this.patterns)e.getRule(a).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},Ha=class extends ra{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,r,o,n,s,i,l){super(e,t,a,r),this._begin=new ta(o,this.id),this.beginCaptures=n,this.whileCaptures=i,this._while=new ta(s,Qs),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new aa;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,a,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new aa,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Js=class ke{static createCaptureRule(t,a,r,o,n){return t.registerRule(s=>new _c(a,s,r,o,n))}static getCompiledRuleId(t,a,r){return t.id||a.registerRule(o=>{if(t.id=o,t.match)return new Oc(t.$vscodeTextmateLocation,t.id,t.name,t.match,ke._compileCaptures(t.captures,a,r));if(typeof t.begin>"u"){t.repository&&(r=Hs({},r,t.repository));let n=t.patterns;return typeof n>"u"&&t.include&&(n=[{include:t.include}]),new Ds(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,ke._compilePatterns(n,a,r))}return t.while?new Ha(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,ke._compileCaptures(t.beginCaptures||t.captures,a,r),t.while,ke._compileCaptures(t.whileCaptures||t.captures,a,r),ke._compilePatterns(t.patterns,a,r)):new no(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,ke._compileCaptures(t.beginCaptures||t.captures,a,r),t.end,ke._compileCaptures(t.endCaptures||t.captures,a,r),t.applyEndPatternLast,ke._compilePatterns(t.patterns,a,r))}),t.id}static _compileCaptures(t,a,r){let o=[];if(t){let n=0;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10);i>n&&(n=i)}for(let s=0;s<=n;s++)o[s]=null;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10),l=0;t[s].patterns&&(l=ke.getCompiledRuleId(t[s],a,r)),o[i]=ke.createCaptureRule(a,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return o}static _compilePatterns(t,a,r){let o=[];if(t)for(let n=0,s=t.length;n<s;n++){let i=t[n],l=-1;if(i.include){let u=Ks(i.include);switch(u.kind){case 0:case 1:l=ke.getCompiledRuleId(r[i.include],a,r);break;case 2:let c=r[u.ruleName];c&&(l=ke.getCompiledRuleId(c,a,r));break;case 3:case 4:let d=u.scopeName,f=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(d,r);if(p)if(f){let m=p.repository[f];m&&(l=ke.getCompiledRuleId(m,a,p.repository))}else l=ke.getCompiledRuleId(p.repository.$self,a,p.repository);break}}else l=ke.getCompiledRuleId(i,a,r);if(l!==-1){let u=a.getRule(l),c=!1;if((u instanceof Ds||u instanceof no||u instanceof Ha)&&u.hasMissingPatterns&&u.patterns.length===0&&(c=!0),c)continue;o.push(l)}}return{patterns:o,hasMissingPatterns:(t?t.length:0)!==o.length}}},ta=class Ys{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let r=t.length,o=0,n=[],s=!1;for(let i=0;i<r;i++)if(t.charAt(i)==="\\"&&i+1<r){let u=t.charAt(i+1);u==="z"?(n.push(t.substring(o,i)),n.push("$(?!\\n)(?<!\\n)"),o=i+2):(u==="A"||u==="G")&&(s=!0),i++}this.hasAnchor=s,o===0?this.source=t:(n.push(t.substring(o,r)),this.source=n.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Ec.test(this.source):this.hasBackReferences=!1}clone(){return new Ys(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,a){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let r=a.map(o=>t.substring(o.start,o.end));return Es.lastIndex=0,this.source.replace(Es,(o,n)=>Vs(r[parseInt(n,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],r=[],o=[],n,s,i,l;for(n=0,s=this.source.length;n<s;n++)i=this.source.charAt(n),t[n]=i,a[n]=i,r[n]=i,o[n]=i,i==="\\"&&n+1<s&&(l=this.source.charAt(n+1),l==="A"?(t[n+1]="\uFFFF",a[n+1]="\uFFFF",r[n+1]="A",o[n+1]="A"):l==="G"?(t[n+1]="\uFFFF",a[n+1]="G",r[n+1]="\uFFFF",o[n+1]="G"):(t[n+1]=l,a[n+1]=l,r[n+1]=l,o[n+1]=l),n++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:r.join(""),A1_G1:o.join("")}}resolveAnchors(t,a){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?a?this._anchorCache.A1_G1:this._anchorCache.A1_G0:a?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},aa=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){if(!this._cached){let t=this._items.map(a=>a.source);this._cached=new _s(e,t,this._items.map(a=>a.ruleId))}return this._cached}compileAG(e,t,a){return this._hasAnchors?t?a?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G0):a?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,a){let r=this._items.map(o=>o.resolveAnchors(t,a));return new _s(e,r,this._items.map(o=>o.ruleId))}},_s=class{constructor(e,t,a){this.regExps=t,this.rules=a,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){let e=[];for(let t=0,a=this.rules.length;t<a;t++)e.push(" - "+this.rules[t]+": "+this.regExps[t]);return e.join(`
|
|
3
|
-
`)}findNextMatchSync(e,t,a){let r=this.scanner.findNextMatchSync(e,t,a);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},to=class{constructor(e,t){this.languageId=e,this.tokenType=t}},
|
|
4
|
-
`;let n=this.createOnigString(e),s=n.content.length,i=new Qc(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=ei(this,n,o,0,t,i,!0,r);return Xs(n),{lineLength:s,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Us(e,t){return e=pc(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var Yt=class qe{constructor(t,a,r){this.parent=t,this.scopePath=a,this.tokenAttributes=r}static fromExtension(t,a){let r=t,o=t?.scopePath??null;for(let n of a)o=eo.push(o,n.scopeNames),r=new qe(r,o,n.encodedTokenAttributes);return r}static createRoot(t,a){return new qe(null,new eo(null,t),a)}static createRootAndLookUpScopeName(t,a,r){let o=r.getMetadataForScope(t),n=new eo(null,t),s=r.themeProvider.themeMatch(n),i=qe.mergeAttributes(a,o,s);return new qe(null,n,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return qe.equals(this,t)}static equals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.scopeName!==a.scopeName||t.tokenAttributes!==a.tokenAttributes)return!1;t=t.parent,a=a.parent}while(!0)}static mergeAttributes(t,a,r){let o=-1,n=0,s=0;return r!==null&&(o=r.fontStyle,n=r.foregroundId,s=r.backgroundId),ct.set(t,a.languageId,a.tokenType,null,o,n,s)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return qe._pushAttributed(this,t,a);let r=t.split(/ /g),o=this;for(let n of r)o=qe._pushAttributed(o,n,a);return o}static _pushAttributed(t,a,r){let o=r.getMetadataForScope(a),n=t.scopePath.push(a),s=r.themeProvider.themeMatch(n),i=qe.mergeAttributes(t.tokenAttributes,o,s);return new qe(t,n,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push({encodedTokenAttributes:r.tokenAttributes,scopeNames:r.scopePath.getExtensionIfDefined(r.parent?.scopePath??null)}),r=r.parent;return r===t?a.reverse():void 0}},io=class dt{constructor(t,a,r,o,n,s,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=n,this.endRule=s,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=r,this._anchorPos=o}_stackElementBrand=void 0;static NULL=new dt(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:dt._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Yt.equals(t.contentNameScopesList,a.contentNameScopesList):!1}static _structuralEquals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.depth!==a.depth||t.ruleId!==a.ruleId||t.endRule!==a.endRule)return!1;t=t.parent,a=a.parent}while(!0)}clone(){return this}static _reset(t){for(;t;)t._enterPos=-1,t._anchorPos=-1,t=t.parent}reset(){dt._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,r,o,n,s,i){return new dt(this,t,a,r,o,n,s,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new dt(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let a=this;for(;a&&a._enterPos===t._enterPos;){if(a.ruleId===t.ruleId)return!0;a=a.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,a){let r=Yt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new dt(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,r,Yt.fromExtension(r,a.contentNameScopesList))}},Kc=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Na(a,qa).map(r=>r.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Na(a,qa).map(r=>r.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},Qc=class{constructor(e,t,a,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let r=e?.tokenAttributes??0,o=!1;if(this.balancedBracketSelectors?.matchesAlways&&(o=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let n=e?.getScopeNames()??[];for(let s of this._tokenTypeOverrides)s.matcher(n)&&(r=ct.set(r,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(o=this.balancedBracketSelectors.match(n))}if(o&&(r=ct.set(r,0,8,o,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let r=0,o=this._binaryTokens.length;r<o;r++)a[r]=this._binaryTokens[r];return a}},Jc=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,r,o){if(!this._grammars.has(e)){let n=this._rawGrammars.get(e);if(!n)return null;this._grammars.set(e,jc(e,n,t,a,r,o,this,this._onigLib))}return this._grammars.get(e)}},ri=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Jc(Zt.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(Zt.createFromRawTheme(e,t))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(e,t,a){return this.loadGrammarWithConfiguration(e,t,{embeddedLanguages:a})}loadGrammarWithConfiguration(e,t,a){return this._loadGrammar(e,t,a.embeddedLanguages,a.tokenTypes,new Kc(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,r,o){let n=new vc(this._syncRegistry,e);for(;n.Q.length>0;)n.Q.map(s=>this._loadSingleGrammar(s.scopeName)),n.processQueue();return this._grammarForScopeName(e,t,a,r,o)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,r)}_grammarForScopeName(e,t=0,a=null,r=null,o=null){return this._syncRegistry.grammarForScopeName(e,t,a,r,o)}},Ga=io.NULL;var Yc=/["&'<>`]/g,Zc=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ef=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,tf=/[|\\{}()[\]^$+*?.]/g,oi=new WeakMap;function ni(e,t){if(e=e.replace(t.subset?af(t.subset):Yc,r),t.subset||t.escapeOnly)return e;return e.replace(Zc,a).replace(ef,r);function a(o,n,s){return t.format((o.charCodeAt(0)-55296)*1024+o.charCodeAt(1)-56320+65536,s.charCodeAt(n+2),t)}function r(o,n,s){return t.format(o.charCodeAt(0),s.charCodeAt(n+1),t)}}function af(e){let t=oi.get(e);return t||(t=rf(e),oi.set(e,t)),t}function rf(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(tf,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var of=/[\dA-Fa-f]/;function si(e,t,a){let r="&#x"+e.toString(16).toUpperCase();return a&&t&&!of.test(String.fromCharCode(t))?r:r+";"}var nf=/\d/;function ii(e,t,a){let r="&#"+String(e);return a&&t&&!nf.test(String.fromCharCode(t))?r:r+";"}var li=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"];var Wa={nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",fnof:"\u0192",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",bull:"\u2022",hellip:"\u2026",prime:"\u2032",Prime:"\u2033",oline:"\u203E",frasl:"\u2044",weierp:"\u2118",image:"\u2111",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",quot:'"',amp:"&",lt:"<",gt:">",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",circ:"\u02C6",tilde:"\u02DC",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",permil:"\u2030",lsaquo:"\u2039",rsaquo:"\u203A",euro:"\u20AC"};var ui=["cent","copy","divide","gt","lt","not","para","times"];var di={}.hasOwnProperty,uo={},Va;for(Va in Wa)di.call(Wa,Va)&&(uo[Wa[Va]]=Va);var sf=/[^\dA-Za-z]/;function ci(e,t,a,r){let o=String.fromCharCode(e);if(di.call(uo,o)){let n=uo[o],s="&"+n;return a&&li.includes(n)&&!ui.includes(n)&&(!r||t&&t!==61&&sf.test(String.fromCharCode(t)))?s:s+";"}return""}function fi(e,t,a){let r=si(e,t,a.omitOptionalSemicolons),o;if((a.useNamedReferences||a.useShortestReferences)&&(o=ci(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!o)&&a.useShortestReferences){let n=ii(e,t,a.omitOptionalSemicolons);n.length<r.length&&(r=n)}return o&&(!a.useShortestReferences||o.length<r.length)?o:r}function ze(e,t){return ni(e,Object.assign({format:fi},t))}var lf=/^>|^->|<!--|-->|--!>|<!-$/g,uf=[">"],df=["<",">"];function pi(e,t,a,r){return r.settings.bogusComments?"<?"+ze(e.value,Object.assign({},r.settings.characterReferences,{subset:uf}))+">":"<!--"+e.value.replace(lf,o)+"-->";function o(n){return ze(n,Object.assign({},r.settings.characterReferences,{subset:df}))}}function mi(e,t,a,r){return"<!"+(r.settings.upperDoctype?"DOCTYPE":"doctype")+(r.settings.tightDoctype?"":" ")+"html>"}var ie=hi(1),co=hi(-1),cf=[];function hi(e){return t;function t(a,r,o){let n=a?a.children:cf,s=(r||0)+e,i=n[s];if(!o)for(;i&&Lt(i);)s+=e,i=n[s];return i}}var ff={}.hasOwnProperty;function za(e){return t;function t(a,r,o){return ff.call(e,a.tagName)&&e[a.tagName](a,r,o)}}var oa=za({body:mf,caption:fo,colgroup:fo,dd:xf,dt:wf,head:fo,html:pf,li:gf,optgroup:If,option:Lf,p:hf,rp:gi,rt:gi,tbody:Sf,td:wi,tfoot:yf,th:wi,thead:Cf,tr:bf});function fo(e,t,a){let r=ie(a,t,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&Lt(r.value.charAt(0)))}function pf(e,t,a){let r=ie(a,t);return!r||r.type!=="comment"}function mf(e,t,a){let r=ie(a,t);return!r||r.type!=="comment"}function hf(e,t,a){let r=ie(a,t);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function gf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&r.tagName==="li"}function wf(e,t,a){let r=ie(a,t);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function xf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function gi(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function If(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&r.tagName==="optgroup"}function Lf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function Cf(e,t,a){let r=ie(a,t);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function Sf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function yf(e,t,a){return!ie(a,t)}function bf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&r.tagName==="tr"}function wi(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}var xi=za({body:vf,colgroup:Pf,head:Tf,html:kf,tbody:Af});function kf(e){let t=ie(e,-1);return!t||t.type!=="comment"}function Tf(e){let t=new Set;for(let r of e.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(t.has(r.tagName))return!1;t.add(r.tagName)}let a=e.children[0];return!a||a.type==="element"}function vf(e){let t=ie(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&Lt(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function Pf(e,t,a){let r=co(a,t),o=ie(e,-1,!0);return a&&r&&r.type==="element"&&r.tagName==="colgroup"&&oa(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="col")}function Af(e,t,a){let r=co(a,t),o=ie(e,-1);return a&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&oa(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="tr")}var ja={name:[[`
|
|
2
|
+
import{a as yn,b as bn,c as kn,d as Tn,e as vn,f as La,g as Pn,h as An,i as Rn,j as Mn,k as Br,l as Fn,m as xt,n as Lt,o as Ia,p as It,u as Et}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Rh,useCallback as tn,useEffect as Mh,useImperativeHandle as Fh,useRef as Xl,useState as Kl}from"react";import{forwardRef as Fu,createElement as Bu}from"react";var Ca=(...e)=>e.filter((t,a,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===a).join(" ").trim();var Bn=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var En=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,r)=>r?r.toUpperCase():a.toLowerCase());var Er=e=>{let t=En(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Mu,createElement as Nn}from"react";var Dn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var _n=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var On=Mu(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:r,className:o="",children:n,iconNode:s,...i},l)=>Nn("svg",{ref:l,...Dn,width:t,height:t,stroke:e,strokeWidth:r?Number(a)*24/Number(t):a,className:Ca("lucide",o),...!n&&!_n(i)&&{"aria-hidden":"true"},...i},[...s.map(([u,c])=>Nn(u,c)),...Array.isArray(n)?n:[n]]));var j=(e,t)=>{let a=Fu(({className:r,...o},n)=>Bu(On,{ref:n,iconNode:t,className:Ca(`lucide-${Bn(Er(e))}`,`lucide-${e}`,r),...o}));return a.displayName=Er(e),a};var Eu=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],ot=j("arrow-down",Eu);var Du=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Dt=j("arrow-up",Du);var _u=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],_t=j("check",_u);var Nu=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],$e=j("chevron-down",Nu);var Ou=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Nt=j("chevron-right",Ou);var Uu=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]],Ot=j("clipboard-copy",Uu);var Hu=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ge=j("clock",Hu);var qu=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],Ut=j("file",qu);var Wu=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Ht=j("globe",Wu);var Gu=[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]],qt=j("loader",Gu);var Vu=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],Wt=j("paperclip",Vu);var zu=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Gt=j("square",zu);var ju=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],nt=j("wrench",ju);var $u=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],st=j("x",$u);var Xu=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Vt=j("zap",Xu);import{useCallback as cd}from"react";import{useCallback as Xe,useMemo as Ku,useRef as Qu,useState as Dr}from"react";var Ju={damping:.7,stiffness:.05,mass:1.25},Yu=70,Zu=1e3/60,ed=350,Sa=!1;globalThis.document?.addEventListener("mousedown",()=>{Sa=!0});globalThis.document?.addEventListener("mouseup",()=>{Sa=!1});globalThis.document?.addEventListener("click",()=>{Sa=!1});var Hn=(e={})=>{let[t,a]=Dr(!1),[r,o]=Dr(e.initial!==!1),[n,s]=Dr(!1),i=Qu(null);i.current=e;let l=Xe(()=>{if(!Sa)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(L.current)||L.current?.contains(h.commonAncestorContainer)},[]),u=Xe(g=>{d.isAtBottom=g,o(g)},[]),c=Xe(g=>{d.escapedFromLock=g,a(g)},[]),d=Ku(()=>{let g;return{escapedFromLock:t,isAtBottom:r,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return L.current?.scrollTop??0},set scrollTop(h){L.current&&(L.current.scrollTop=h,d.ignoreScrollToTop=L.current.scrollTop)},get targetScrollTop(){return!L.current||!w.current?0:L.current.scrollHeight-1-L.current.clientHeight},get calculatedTargetScrollTop(){if(!L.current||!w.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let x=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:L.current,contentElement:w.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:x},requestAnimationFrame(()=>{g=void 0}),x},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Yu}}},[]),f=Xe((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),x=Nr(i.current,g.animation),{ignoreEscapes:S=!1}=g,v,A=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{v=Date.now()}):v=h+(g.duration??0);let P=async()=>{let D=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:k}=d,M=performance.now(),b=(M-(d.lastTick??M))/Zu;if(d.animation||(d.animation={behavior:x,promise:D,ignoreEscapes:S}),d.animation.behavior===x&&(d.lastTick=M),l()||h>Date.now())return P();if(k<Math.min(A,d.calculatedTargetScrollTop)){if(d.animation?.behavior===x){if(x==="instant")return d.scrollTop=d.calculatedTargetScrollTop,P();d.velocity=(x.damping*d.velocity+x.stiffness*d.scrollDifference)/x.mass,d.accumulated+=d.velocity*b,d.scrollTop+=d.accumulated,d.scrollTop!==k&&(d.accumulated=0)}return P()}return v>Date.now()?(A=d.calculatedTargetScrollTop,P()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?f({animation:Nr(i.current,i.current.resize),ignoreEscapes:S,duration:Math.max(0,v-Date.now())||void 0}):d.isAtBottom)});return D.then(k=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),k))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===x?d.animation.promise:P()},[u,l,d]),p=Xe(()=>{c(!0),u(!1)},[c,u]),m=Xe(({target:g})=>{if(g!==L.current)return;let{scrollTop:h,ignoreScrollToTop:x}=d,{lastScrollTop:S=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,x&&x>h&&(S=x),s(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===x)return;if(l()){c(!0),u(!1);return}let v=h>S,A=h<S;if(d.animation?.ignoreEscapes){d.scrollTop=S;return}A&&(c(!0),u(!1)),v&&c(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[c,u,l,d]),I=Xe(({target:g,deltaY:h})=>{let x=g;for(;!["scroll","auto"].includes(getComputedStyle(x).overflow);){if(!x.parentElement)return;x=x.parentElement}x===L.current&&h<0&&L.current.scrollHeight>L.current.clientHeight&&!d.animation?.ignoreEscapes&&(c(!0),u(!1))},[c,u,d]),L=Un(g=>{L.current?.removeEventListener("scroll",m),L.current?.removeEventListener("wheel",I),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",I,{passive:!0})},[]),w=Un(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([x])=>{let{height:S}=x.contentRect,v=S-(h??S);if(d.resizeDifference=v,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),s(d.isNearBottom),v>=0){let A=Nr(i.current,h?i.current.resize:i.current.initial);f({animation:A,wait:!0,preserveScrollPosition:!0,duration:A==="instant"?void 0:ed})}else d.isNearBottom&&(c(!1),u(!0));h=S,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===v&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:w,scrollRef:L,scrollToBottom:f,stopScroll:p,isAtBottom:r||n,isNearBottom:n,escapedFromLock:t,state:d}};function Un(e,t){let a=Xe(r=>(a.current=r,e(r)),t);return a}var _r=new Map;function Nr(...e){let t={...Ju},a=!1;for(let o of e){if(o==="instant"){a=!0;continue}typeof o=="object"&&(a=!1,t.damping=o.damping??t.damping,t.stiffness=o.stiffness??t.stiffness,t.mass=o.mass??t.mass)}let r=JSON.stringify(t);return _r.has(r)||_r.set(r,Object.freeze(t)),a?"instant":_r.get(r)}import*as it from"react";import{createContext as td,useContext as ad,useEffect as rd,useImperativeHandle as od,useLayoutEffect as nd,useMemo as sd,useRef as id}from"react";var qn=td(null),ld=typeof window<"u"?nd:rd;function zt({instance:e,children:t,resize:a,initial:r,mass:o,damping:n,stiffness:s,targetScrollTop:i,contextRef:l,...u}){let c=id(null),d=it.useCallback((S,v)=>(x?.targetScrollTop??i)?.(S,v)??S,[i]),f=Hn({mass:o,damping:n,stiffness:s,resize:a,initial:r,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:I,stopScroll:L,isAtBottom:w,escapedFromLock:g,state:h}=e??f,x=sd(()=>({scrollToBottom:I,stopScroll:L,scrollRef:p,isAtBottom:w,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return c.current},set targetScrollTop(S){c.current=S}}),[I,w,m,p,L,g,h]);return od(l,()=>x,[x]),ld(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),it.createElement(qn.Provider,{value:x},it.createElement("div",{...u},typeof t=="function"?t(x):t))}(function(e){function t({children:a,scrollClassName:r,...o}){let n=Or();return it.createElement("div",{ref:n.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:r},it.createElement("div",{...o,ref:n.contentRef},typeof a=="function"?a(n):a))}e.Content=t})(zt||(zt={}));function Or(){let e=ad(qn);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var ud=bn({prefix:"ww"});function T(...e){return ud(yn(e))}import{jsx as dd}from"react/jsx-runtime";var Ee=({className:e,variant:t="default",size:a="default",type:r="button",...o})=>dd("button",{type:r,className:T("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...o});import{jsx as ya}from"react/jsx-runtime";var Wn=({className:e,...t})=>ya(zt,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),Gn=({className:e,...t})=>ya(zt.Content,{className:T("ww:flex ww:flex-col ww:gap-6 ww:px-4 ww:py-6 ww:mx-auto ww:w-full ww:max-w-3xl",e),...t}),Vn=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:r}=Or(),o=cd(()=>{r()},[r]);return!a&&ya(Ee,{className:T("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:o,size:"icon",variant:"outline",...t,children:ya(ot,{className:"ww:size-4"})})};import jn from"crypto";var zn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var fd=128,lt,Ct,pd=e=>{!lt||lt.length<e?(lt=Buffer.allocUnsafe(e*fd),jn.randomFillSync(lt),Ct=0):Ct+e>lt.length&&(jn.randomFillSync(lt),Ct=0),Ct+=e};var jt=(e=21)=>{pd(e|=0);let t="";for(let a=Ct-e;a<Ct;a++)t+=zn[lt[a]&63];return t};import{createContext as Cd,useCallback as Ve,useContext as Sd,useEffect as Gr,useMemo as yd,useRef as Vr,useState as Yn}from"react";import{createContext as md,useContext as hd,useEffect as gd,useMemo as wd,useState as Qn}from"react";var $n=["en","fr","es"];function St(e){return $n.includes(e)}function Ur(e){if(e&&St(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&St(a))return a}let t=[];if(typeof navigator<"u"&&(navigator.language&&t.push(navigator.language),navigator.languages&&t.push(...navigator.languages)),typeof document<"u"){let a=document.documentElement.getAttribute("lang");a&&t.push(a)}for(let a of t){let r=a.toLowerCase();if(St(r))return r;let o=r.split("-")[0];if(o&&St(o))return o}return"en"}var ba={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},chainOfThought:{working:"Working on it\u2026",done:"Thought process"},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to Waniwani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};var Xn={promptInput:{placeholder:"\xBFQu\xE9 te gustar\xEDa saber?",uploadFiles:"Subir archivos",stop:"Detener",submit:"Enviar",removeAttachments:"Eliminar todos los archivos adjuntos"},workingIndicator:{default:"Un momento\u2026"},reasoning:{thinking:"Pensando\u2026",thoughtBrief:"Pensado durante unos segundos",thoughtForSeconds:e=>`Pensado durante ${e} segundo${e===1?"":"s"}`},chainOfThought:{working:"Estoy en ello\u2026",done:"Razonamiento"},tool:{copy:"Copiar",copied:"Copiado",request:"Solicitud",response:"Respuesta",error:"Error"},attachments:{attachmentFallback:"adjunto",fileFallback:"archivo"},threadMenu:{newChat:"Nueva conversaci\xF3n",threadHistory:"Historial",deleteThread:"Eliminar conversaci\xF3n",noPreviousChats:"A\xFAn no hay conversaciones anteriores.",hiddenThreads:e=>`${e} conversaci\xF3n${e===1?"":"es"} anterior${e===1?"":"es"} oculta${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(adjunto)",removeFromQueue:"Quitar de la cola",queued:e=>`${e} en cola`},poweredBy:{label:"Agente IA con tecnolog\xEDa de"},aiDisclaimer:{default:"puede cometer errores"},exportSession:{saving:"guardando...",saved:"guardado",error:"error",export:"exportar",tooltip:"Guardar escenario en Waniwani"},widgetErrorBoundary:{failedToLoad:"No se pudo cargar el widget",retry:"Reintentar"},launcher:{prompt:"Pregunta lo que quieras\u2026",open:"Abrir chat",close:"Cerrar chat",minimize:"Minimizar"}};var Kn={promptInput:{placeholder:"Que souhaitez-vous savoir ?",uploadFiles:"Importer des fichiers",stop:"Arr\xEAter",submit:"Envoyer",removeAttachments:"Supprimer toutes les pi\xE8ces jointes"},workingIndicator:{default:"Un instant\u2026"},reasoning:{thinking:"R\xE9flexion\u2026",thoughtBrief:"R\xE9flexion pendant quelques secondes",thoughtForSeconds:e=>`R\xE9flexion pendant ${e} seconde${e===1?"":"s"}`},chainOfThought:{working:"Je m'en occupe\u2026",done:"Raisonnement"},tool:{copy:"Copier",copied:"Copi\xE9",request:"Requ\xEAte",response:"R\xE9ponse",error:"Erreur"},attachments:{attachmentFallback:"pi\xE8ce jointe",fileFallback:"fichier"},threadMenu:{newChat:"Nouvelle conversation",threadHistory:"Historique",deleteThread:"Supprimer la conversation",noPreviousChats:"Aucune conversation pr\xE9c\xE9dente.",hiddenThreads:e=>`${e} conversation${e===1?"":"s"} plus ancienne${e===1?"":"s"} masqu\xE9e${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(pi\xE8ce jointe)",removeFromQueue:"Retirer de la file",queued:e=>`${e} en attente`},poweredBy:{label:"Agent IA propuls\xE9 par"},aiDisclaimer:{default:"peut faire des erreurs"},exportSession:{saving:"enregistrement...",saved:"enregistr\xE9",error:"erreur",export:"exporter",tooltip:"Enregistrer le sc\xE9nario dans Waniwani"},widgetErrorBoundary:{failedToLoad:"\xC9chec du chargement du widget",retry:"R\xE9essayer"},launcher:{prompt:"Posez votre question\u2026",open:"Ouvrir le chat",close:"Fermer le chat",minimize:"R\xE9duire"}};var Hr={en:ba,fr:Kn,es:Xn};import{jsx as Id}from"react/jsx-runtime";var Jn=md(null);function xd(e,t){if(!t)return e;let a={...e};for(let r of Object.keys(e)){let o=e[r],n=t[r];n&&typeof o=="object"&&(a[r]={...o,...n})}return a}function qr({children:e,locale:t,messages:a}){let r=!!(t&&Ld(t)),o=r?t:"en",[n,s]=Qn(o),[i,l]=Qn(r);gd(()=>{s(Ur(t)),l(!0)},[t]);let u=wd(()=>{let c=Hr[n]??Hr["en"];return{locale:n,t:xd(c,a),ready:i}},[n,a,i]);return Id(Jn.Provider,{value:u,children:e})}function Ld(e){return e==="en"||e==="fr"||e==="es"}function V(){let e=hd(Jn);return e||{locale:"en",t:ba,ready:!0}}function Wr(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let r,o;a<60*6e4?(r=-Math.floor(a/6e4),o="minute"):a<1440*6e4?(r=-Math.floor(a/(60*6e4)),o="hour"):(r=-Math.floor(a/(1440*6e4)),o="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(r,o)}catch{return`${Math.abs(r)}${o==="minute"?"m":o==="hour"?"h":"d"} ago`}}import{jsx as _e,jsxs as ts}from"react/jsx-runtime";var bd=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(r=>{let o=new FileReader;o.onloadend=()=>r(o.result),o.onerror=()=>r(null),o.readAsDataURL(a)})}catch{return null}},Zn=Cd(null),es=()=>{let e=Sd(Zn);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ka=({className:e,accept:t,multiple:a,globalDrop:r,maxFiles:o,maxFileSize:n,onSubmit:s,children:i,...l})=>{let{t:u}=V(),c=Vr(null),d=Vr(null),[f,p]=Yn([]),m=Vr(f);Gr(()=>{m.current=f},[f]);let I=Ve(()=>{c.current?.click()},[]),L=Ve(v=>{let A=[...v];if(A.length===0)return;let P=k=>n?k.size<=n:!0,D=A.filter(P);p(k=>{let M=typeof o=="number"?Math.max(0,o-k.length):void 0,b=typeof M=="number"?D.slice(0,M):D;return[...k,...b.map(z=>({filename:z.name,id:jt(),mediaType:z.type,type:"file",url:URL.createObjectURL(z)}))]})},[o,n]),w=Ve(v=>{p(A=>{let P=A.find(D=>D.id===v);return P?.url&&URL.revokeObjectURL(P.url),A.filter(D=>D.id!==v)})},[]),g=Ve(()=>{p(v=>{for(let A of v)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);Gr(()=>()=>{for(let v of m.current)v.url&&URL.revokeObjectURL(v.url)},[]);let h=Ve(v=>{v.currentTarget.files&&L(v.currentTarget.files),v.currentTarget.value=""},[L]);Gr(()=>{if(!r)return;let v=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault()},A=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault(),P.dataTransfer?.files&&P.dataTransfer.files.length>0&&L(P.dataTransfer.files)};return document.addEventListener("dragover",v),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",v),document.removeEventListener("drop",A)}},[L,r]);let x=Ve(async v=>{v.preventDefault();let A=v.currentTarget,D=new FormData(A).get("message")||"";A.reset();let k=await Promise.all(f.map(async({id:M,...b})=>{if(b.url?.startsWith("blob:")){let z=await bd(b.url);return{...b,url:z??b.url}}return b}));try{let M=s({files:k,text:D},v);M instanceof Promise&&await M,g()}catch{}},[f,s,g]),S=yd(()=>({add:L,clear:g,files:f,openFileDialog:I,remove:w}),[f,L,w,g,I]);return ts(Zn.Provider,{value:S,children:[_e("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:c,title:u.promptInput.uploadFiles,type:"file"}),_e("form",{className:T("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:x,ref:d,...l,children:i})]})};var Ta=({onChange:e,onKeyDown:t,className:a,placeholder:r,...o})=>{let{t:n}=V(),s=es(),[i,l]=Yn(!1),u=r??n.promptInput.placeholder,c=Ve(f=>{if(t?.(f),!f.defaultPrevented){if(f.key==="Enter"){if(i||f.nativeEvent.isComposing||f.shiftKey)return;f.preventDefault();let{form:p}=f.currentTarget;if(p?.querySelector('button[type="submit"]')?.disabled)return;p?.requestSubmit()}if(f.key==="Backspace"&&f.currentTarget.value===""&&s.files.length>0){f.preventDefault();let p=s.files.at(-1);p&&s.remove(p.id)}}},[t,i,s]),d=Ve(f=>{let p=f.clipboardData?.items;if(!p)return;let m=[];for(let I of p)if(I.kind==="file"){let L=I.getAsFile();L&&m.push(L)}m.length>0&&(f.preventDefault(),s.add(m))},[s]);return _e("textarea",{className:T("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:c,onPaste:d,placeholder:u,onChange:e,...o})},va=({className:e,status:t,onStop:a,onClick:r,children:o,...n})=>{let{t:s}=V(),i=t==="submitted"||t==="streaming",l=_e(Dt,{className:"ww:size-4"});t==="submitted"?l=_e(qt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=_e(Gt,{className:"ww:size-4"}));let u=Ve(c=>{if(i&&a){c.preventDefault(),a();return}r?.(c)},[i,a,r]);return _e(Ee,{"aria-label":i?s.promptInput.stop:s.promptInput.submit,className:T("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...n,children:o??l})},Pa=({className:e,children:t,...a})=>{let{t:r}=V(),o=es();return o.files.length>0?ts(Ee,{className:T("ww:group ww:relative",e),onClick:()=>o.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":r.promptInput.removeAttachments,...a,children:[_e("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:o.files.length}),_e(st,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):_e(Ee,{className:T(e),onClick:()=>o.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??_e(Wt,{className:"ww:size-4"})})};import{memo as kd,useCallback as Td}from"react";import{jsx as bt}from"react/jsx-runtime";var as=({className:e,...t})=>bt("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),rs=({className:e,...t})=>bt("li",{className:T("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),os=({className:e,...t})=>bt("span",{className:T("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),ns=({className:e,...t})=>bt("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),ss=({className:e,...t})=>bt("div",{className:T("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),is=({className:e,...t})=>bt(Ee,{className:T("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Ke,jsxs as us}from"react/jsx-runtime";var ls=kd(({message:e,onRemove:t})=>{let{t:a}=V(),r=Td(()=>t(e.id),[t,e.id]);return us(rs,{children:[Ke(os,{}),Ke(ns,{children:e.text||a.chatQueue.attachmentFallback}),Ke(ss,{children:Ke(is,{"aria-label":a.chatQueue.removeFromQueue,onClick:r,children:Ke(st,{className:"ww:size-3"})})})]})});ls.displayName="ChatQueueItem";function Aa({queuedMessages:e,onRemove:t,className:a}){let{t:r}=V();return e.length===0?null:us(as,{className:T("ww:border-t ww:border-border",a),children:[Ke("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:r.chatQueue.queued(e.length)}),Ke("ul",{children:e.map(o=>Ke(ls,{message:o,onRemove:t},o.id))})]})}import{useState as ds}from"react";import{jsx as vd}from"react/jsx-runtime";function cs({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:r}=V(),[o,n]=ds(!1),[s,i]=ds(null),l=async()=>{let c={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};n(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{n(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=o?r.exportSession.saving:s==="saved"?r.exportSession.saved:s==="error"?r.exportSession.error:r.exportSession.export;return vd("button",{type:"button",onClick:l,disabled:o,title:r.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}import{jsx as $t,jsxs as Ad}from"react/jsx-runtime";var fs=({files:e,className:t,...a})=>e.length===0?null:$t("div",{className:T("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((r,o)=>$t(Pd,{file:r},o))});function Pd({file:e}){let{t}=V();return e.mediaType?.startsWith("image/")&&e.url?$t("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Ad("span",{className:"ww:inline-flex ww:items-center ww:gap-1.5 ww:rounded ww:bg-background/20 ww:px-2 ww:py-1 ww:text-xs",children:[$t(Ut,{className:"ww:size-3 ww:shrink-0"}),$t("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as qd,useCallback as Wd,useContext as Gd,useEffect as Vd,useMemo as zd,useState as Xr}from"react";import{createContext as Bd,memo as $r,useCallback as Ed,useContext as Dd,useEffect as zr,useMemo as _d,useRef as ps,useState as jr}from"react";import{memo as Rd}from"react";import{jsx as Fd}from"react/jsx-runtime";var Md=({as:e="span",className:t,duration:a=2,style:r,children:o,...n})=>{let s={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...r};return Fd(e,{"data-waniwani-shimmer":"",className:T("ww:inline-block",t),style:s,...n,children:o})},Ne=Rd(Md);Ne.displayName="Shimmer";import{Fragment as Ud,jsx as Oe,jsxs as Hd}from"react/jsx-runtime";var ms=Bd(null);function hs(){let e=Dd(ms);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Nd=1e3,Od=1e3,Xt=$r(({className:e,isStreaming:t=!1,open:a,defaultOpen:r,onOpenChange:o,duration:n,children:s,...i})=>{let l=r??t,u=r===!1,c=a!==void 0,[d,f]=jr(l),p=c?a:d,m=Ed(A=>{c||f(A),o?.(A)},[c,o]),[I,L]=jr(void 0),w=n??I,g=ps(t),[h,x]=jr(!1),S=ps(null);zr(()=>{t?(g.current=!0,S.current===null&&(S.current=Date.now())):S.current!==null&&(L(Math.ceil((Date.now()-S.current)/Od)),S.current=null)},[t]),zr(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),zr(()=>{if(g.current&&!t&&p&&!h){let A=setTimeout(()=>{m(!1),x(!0)},Nd);return()=>clearTimeout(A)}},[t,p,h,m]);let v=_d(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:w}),[t,p,m,w]);return Oe(ms.Provider,{value:v,children:Oe("div",{className:T("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":p?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})});Xt.displayName="Reasoning";var Kt=$r(({className:e,children:t,getThinkingMessage:a,hideIcon:r=!1,onClick:o,...n})=>{let{t:s}=V(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:c}=hs(),f=a??((p,m)=>p||m===0?Oe(Ne,{duration:1.6,children:s.reasoning.thinking}):m===void 0?Oe("span",{children:s.reasoning.thoughtBrief}):Oe("span",{children:s.reasoning.thoughtForSeconds(m)}));return Oe("button",{type:"button","aria-expanded":l,onClick:p=>{c(!l),o?.(p)},className:T("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...n,children:t??Hd(Ud,{children:[!r&&Oe(Ge,{className:"ww:size-4 ww:shrink-0"}),f(i,u)]})})});Kt.displayName="ReasoningTrigger";var Qt=$r(({className:e,children:t,...a})=>{let{isOpen:r}=hs();return Oe("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Oe("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Oe("div",{className:T("ww:text-sm ww:text-muted-foreground",e),...a,children:Oe(Et,{children:t})})})})});Qt.displayName="ReasoningContent";import{jsx as J,jsxs as Qe}from"react/jsx-runtime";var jd=500,gs=qd(null);function ws(){let e=Gd(gs);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function xs({className:e,isWorking:t=!1,activeStep:a,open:r,defaultOpen:o=!1,onOpenChange:n,children:s,...i}){let l=r!==void 0,[u,c]=Xr(o),d=l?r:u,f=Wd(L=>{l||c(L),n?.(L)},[l,n]),[p,m]=Xr(!t);Vd(()=>{if(t){m(!1);return}let L=setTimeout(()=>m(!0),jd);return()=>clearTimeout(L)},[t]);let I=zd(()=>({open:d,setOpen:f,isWorking:t,settled:p,activeStep:a}),[d,f,t,p,a]);return J(gs.Provider,{value:I,children:J("div",{className:T("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":d?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})}function Ls({className:e,label:t,workingLabel:a,children:r,...o}){let{open:n,setOpen:s,isWorking:i,settled:l,activeStep:u}=ws();if(!l){let c=u?.icon,d=u?.label??a??t??"";return J("div",{className:T("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:Qe("span",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-1.5",style:{animation:"ww-fade-in 0.25s ease-out"},children:[c&&J(c,{className:T("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),J("span",{className:"ww:truncate",children:i?J(Ne,{duration:2.6,children:d}):d})]},d)})}return Qe("button",{type:"button",onClick:()=>s(!n),"aria-expanded":n,className:T("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...o,children:[J("span",{className:"ww:truncate",children:r??t}),J($e,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",n&&"ww:rotate-180")})]})}function Is({className:e,children:t,...a}){let{open:r}=ws();return J("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:J("div",{className:"ww:min-h-0 ww:overflow-hidden",children:J("div",{className:T("ww:flex ww:flex-col",e),...a,children:t})})})}function Cs({icon:e,isLast:t,running:a,error:r}){return Qe("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[J("span",{className:"ww:flex ww:h-5 ww:items-center",children:J(e,{className:T("ww:size-4 ww:shrink-0",r?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&J("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Kr({className:e,icon:t,title:a,state:r,isLast:o=!1,children:n,...s}){let i=r==="input-available"||r==="input-streaming",l=r==="output-error",u=n!=null,[c,d]=Xr(!1),f=a??"",p=i?J(Ne,{duration:1.6,children:f}):J("span",{className:"ww:truncate",children:f});return Qe("div",{className:T("ww:flex ww:gap-2",e),...s,children:[J(Cs,{icon:t,isLast:o,running:i,error:l}),Qe("div",{className:T("ww:min-w-0 ww:flex-1",!o&&"ww:pb-3"),children:[u?Qe("button",{type:"button",onClick:()=>d(m=>!m),"aria-expanded":c,className:"ww:flex ww:w-full ww:items-center ww:gap-1.5 ww:text-left ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",children:[p,J($e,{className:T("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",c&&"ww:rotate-180")})]}):J("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&J("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",c?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:J("div",{className:"ww:min-h-0 ww:overflow-hidden",children:J("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:n})})})]})]})}function Ss({isStreaming:e=!1,isLast:t=!1,children:a}){return Qe("div",{className:"ww:flex ww:gap-2",children:[J(Cs,{icon:Ge,isLast:t,running:e}),J("div",{className:T("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:Qe(Xt,{isStreaming:e,className:"ww:mb-0",children:[J(Kt,{hideIcon:!0}),J(Qt,{children:a})]})})]})}var Le={carriageReturn:-5,lineFeed:-4,carriageReturnLineFeed:-3,horizontalTab:-2,virtualSpace:-1,eof:null,nul:0,soh:1,stx:2,etx:3,eot:4,enq:5,ack:6,bel:7,bs:8,ht:9,lf:10,vt:11,ff:12,cr:13,so:14,si:15,dle:16,dc1:17,dc2:18,dc3:19,dc4:20,nak:21,syn:22,etb:23,can:24,em:25,sub:26,esc:27,fs:28,gs:29,rs:30,us:31,space:32,exclamationMark:33,quotationMark:34,numberSign:35,dollarSign:36,percentSign:37,ampersand:38,apostrophe:39,leftParenthesis:40,rightParenthesis:41,asterisk:42,plusSign:43,comma:44,dash:45,dot:46,slash:47,digit0:48,digit1:49,digit2:50,digit3:51,digit4:52,digit5:53,digit6:54,digit7:55,digit8:56,digit9:57,colon:58,semicolon:59,lessThan:60,equalsTo:61,greaterThan:62,questionMark:63,atSign:64,uppercaseA:65,uppercaseB:66,uppercaseC:67,uppercaseD:68,uppercaseE:69,uppercaseF:70,uppercaseG:71,uppercaseH:72,uppercaseI:73,uppercaseJ:74,uppercaseK:75,uppercaseL:76,uppercaseM:77,uppercaseN:78,uppercaseO:79,uppercaseP:80,uppercaseQ:81,uppercaseR:82,uppercaseS:83,uppercaseT:84,uppercaseU:85,uppercaseV:86,uppercaseW:87,uppercaseX:88,uppercaseY:89,uppercaseZ:90,leftSquareBracket:91,backslash:92,rightSquareBracket:93,caret:94,underscore:95,graveAccent:96,lowercaseA:97,lowercaseB:98,lowercaseC:99,lowercaseD:100,lowercaseE:101,lowercaseF:102,lowercaseG:103,lowercaseH:104,lowercaseI:105,lowercaseJ:106,lowercaseK:107,lowercaseL:108,lowercaseM:109,lowercaseN:110,lowercaseO:111,lowercaseP:112,lowercaseQ:113,lowercaseR:114,lowercaseS:115,lowercaseT:116,lowercaseU:117,lowercaseV:118,lowercaseW:119,lowercaseX:120,lowercaseY:121,lowercaseZ:122,leftCurlyBrace:123,verticalBar:124,rightCurlyBrace:125,tilde:126,del:127,byteOrderMarker:65279,replacementCharacter:65533};var He={attentionSideAfter:2,attentionSideBefore:1,atxHeadingOpeningFenceSizeMax:6,autolinkDomainSizeMax:63,autolinkSchemeSizeMax:32,cdataOpeningString:"CDATA[",characterGroupPunctuation:2,characterGroupWhitespace:1,characterReferenceDecimalSizeMax:7,characterReferenceHexadecimalSizeMax:6,characterReferenceNamedSizeMax:31,codeFencedSequenceSizeMin:3,contentTypeContent:"content",contentTypeDocument:"document",contentTypeFlow:"flow",contentTypeString:"string",contentTypeText:"text",hardBreakPrefixSizeMin:2,htmlBasic:6,htmlCdata:5,htmlComment:2,htmlComplete:7,htmlDeclaration:4,htmlInstruction:3,htmlRawSizeMax:8,htmlRaw:1,linkResourceDestinationBalanceMax:32,linkReferenceSizeMax:999,listItemValueSizeMax:10,numericBaseDecimal:10,numericBaseHexadecimal:16,tabSize:4,thematicBreakMarkerCountMin:3,v8MaxSafeChunkSize:1e4};var Ae={data:"data",whitespace:"whitespace",lineEnding:"lineEnding",lineEndingBlank:"lineEndingBlank",linePrefix:"linePrefix",lineSuffix:"lineSuffix",atxHeading:"atxHeading",atxHeadingSequence:"atxHeadingSequence",atxHeadingText:"atxHeadingText",autolink:"autolink",autolinkEmail:"autolinkEmail",autolinkMarker:"autolinkMarker",autolinkProtocol:"autolinkProtocol",characterEscape:"characterEscape",characterEscapeValue:"characterEscapeValue",characterReference:"characterReference",characterReferenceMarker:"characterReferenceMarker",characterReferenceMarkerNumeric:"characterReferenceMarkerNumeric",characterReferenceMarkerHexadecimal:"characterReferenceMarkerHexadecimal",characterReferenceValue:"characterReferenceValue",codeFenced:"codeFenced",codeFencedFence:"codeFencedFence",codeFencedFenceSequence:"codeFencedFenceSequence",codeFencedFenceInfo:"codeFencedFenceInfo",codeFencedFenceMeta:"codeFencedFenceMeta",codeFlowValue:"codeFlowValue",codeIndented:"codeIndented",codeText:"codeText",codeTextData:"codeTextData",codeTextPadding:"codeTextPadding",codeTextSequence:"codeTextSequence",content:"content",definition:"definition",definitionDestination:"definitionDestination",definitionDestinationLiteral:"definitionDestinationLiteral",definitionDestinationLiteralMarker:"definitionDestinationLiteralMarker",definitionDestinationRaw:"definitionDestinationRaw",definitionDestinationString:"definitionDestinationString",definitionLabel:"definitionLabel",definitionLabelMarker:"definitionLabelMarker",definitionLabelString:"definitionLabelString",definitionMarker:"definitionMarker",definitionTitle:"definitionTitle",definitionTitleMarker:"definitionTitleMarker",definitionTitleString:"definitionTitleString",emphasis:"emphasis",emphasisSequence:"emphasisSequence",emphasisText:"emphasisText",escapeMarker:"escapeMarker",hardBreakEscape:"hardBreakEscape",hardBreakTrailing:"hardBreakTrailing",htmlFlow:"htmlFlow",htmlFlowData:"htmlFlowData",htmlText:"htmlText",htmlTextData:"htmlTextData",image:"image",label:"label",labelText:"labelText",labelLink:"labelLink",labelImage:"labelImage",labelMarker:"labelMarker",labelImageMarker:"labelImageMarker",labelEnd:"labelEnd",link:"link",paragraph:"paragraph",reference:"reference",referenceMarker:"referenceMarker",referenceString:"referenceString",resource:"resource",resourceDestination:"resourceDestination",resourceDestinationLiteral:"resourceDestinationLiteral",resourceDestinationLiteralMarker:"resourceDestinationLiteralMarker",resourceDestinationRaw:"resourceDestinationRaw",resourceDestinationString:"resourceDestinationString",resourceMarker:"resourceMarker",resourceTitle:"resourceTitle",resourceTitleMarker:"resourceTitleMarker",resourceTitleString:"resourceTitleString",setextHeading:"setextHeading",setextHeadingText:"setextHeadingText",setextHeadingLine:"setextHeadingLine",setextHeadingLineSequence:"setextHeadingLineSequence",strong:"strong",strongSequence:"strongSequence",strongText:"strongText",thematicBreak:"thematicBreak",thematicBreakSequence:"thematicBreakSequence",blockQuote:"blockQuote",blockQuotePrefix:"blockQuotePrefix",blockQuoteMarker:"blockQuoteMarker",blockQuotePrefixWhitespace:"blockQuotePrefixWhitespace",listOrdered:"listOrdered",listUnordered:"listUnordered",listItemIndent:"listItemIndent",listItemMarker:"listItemMarker",listItemPrefix:"listItemPrefix",listItemPrefixWhitespace:"listItemPrefixWhitespace",listItemValue:"listItemValue",chunkDocument:"chunkDocument",chunkContent:"chunkContent",chunkFlow:"chunkFlow",chunkText:"chunkText",chunkString:"chunkString"};function ys(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function bs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function ks(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e>=94192&&e<=94198||e>=94208&&e<=101589||e>=101631&&e<=101662||e>=101760&&e<=101874||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128728||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129674||e>=129678&&e<=129734||e===129736||e>=129741&&e<=129756||e>=129759&&e<=129770||e>=129775&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function Ts(e){return ys(e)?"ambiguous":bs(e)?"fullwidth":e===8361||e>=65377&&e<=65470||e>=65474&&e<=65479||e>=65482&&e<=65487||e>=65490&&e<=65495||e>=65498&&e<=65500||e>=65512&&e<=65518?"halfwidth":e>=32&&e<=126||e===162||e===163||e===165||e===166||e===172||e===175||e>=10214&&e<=10221||e===10629||e===10630?"narrow":ks(e)?"wide":"neutral"}function $d(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function vs(e){return $d(e),Ts(e)}var Xd=Object.defineProperty,Kd=(e,t,a)=>t in e?Xd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Qd=(e,t,a)=>Kd(e,typeof t!="symbol"?t+"":t,a);function Jd(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Yd(e){if(!e||e<4352)return!1;switch(vs(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!Jd(e);case"narrow":return!1;case"ambiguous":return 917760<=e&&e<=917999?null:!1;case"neutral":return/^\p{sc=Hangul}/u.test(String.fromCodePoint(e))}}function Zd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function ec(e){return e!==null&&e>=65024&&e<=65038}var tc=Ps(/\p{P}|\p{S}/u),ac=Ps(/\s/);function Ps(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Re;(e=>{e.spaceOrPunctuation=3,e.cjk=4096,e.cjkPunctuation=4098,e.ivs=8192,e.cjkOrIvs=12288,e.nonEmojiGeneralUseVS=16384,e.variationSelector=24576,e.ivsToCjkRightShift=1})(Re||(Re={}));function Je(e){if(e===Le.eof||Fn(e)||ac(e))return He.characterGroupWhitespace;let t=0;if(e>=4352){if(ec(e))return Re.nonEmojiGeneralUseVS;switch(Yd(e)){case null:return Re.ivs;case!0:t|=Re.cjk;break}}return tc(e)&&(t|=He.characterGroupPunctuation),t}function Ra(e,t,a){if(!oc(e))return e;let r=t(),o=Je(r);return!r||ut(o)?e:Zd(r,a)?Re.cjkPunctuation:rc(o)}function rc(e){return e&~Re.ivs}function ut(e){return!!(e&He.characterGroupWhitespace)}function kt(e){return(e&Re.cjkPunctuation)===He.characterGroupPunctuation}function Jt(e){return!!(e&Re.cjk)}function As(e){return e===Re.ivs}function Rs(e){return!!(e&Re.cjkOrIvs)}function oc(e){return e===Re.nonEmojiGeneralUseVS}function Qr(e){return!!(e&Re.spaceOrPunctuation)}function Ma(e){return!!(e&&e>=55296&&e<=56319)}function Fa(e){return!!(e&&e>=56320&&e<=57343)}function Ba(e,t,a){if(t._bufferIndex<2)return e;let o=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return o&&o>=65536?o:e}function nc(e,t,a){let r=e>=65536?2:1;if(t._bufferIndex<1+r)return null;let o=t._bufferIndex-r-2,n=a({start:{...t,_bufferIndex:o>=0?o:0},end:{...t,_bufferIndex:t._bufferIndex-r}}),s=n.charCodeAt(n.length-1);if(Number.isNaN(s))return null;if(n.length<2||s<56320||57343<s)return s;let i=n.codePointAt(0);return i&&i>=65536?i:s}var Ea=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,Qd(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=nc(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Da(e,t,a){let r=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return r&&r>=65536?r:e}var Jr={name:"attention",resolveAll:sc,tokenize:ic};function sc(e,t){let a=-1,r,o,n,s,i,l,u,c;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(r=a;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[r][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[r][1].end},f={...e[a][1].start};Ms(d,-l),Ms(f,l),s={type:l>1?Ae.strongSequence:Ae.emphasisSequence,start:d,end:{...e[r][1].end}},i={type:l>1?Ae.strongSequence:Ae.emphasisSequence,start:{...e[a][1].start},end:f},n={type:l>1?Ae.strongText:Ae.emphasisText,start:{...e[r][1].end},end:{...e[a][1].start}},o={type:l>1?Ae.strong:Ae.emphasis,start:{...s.start},end:{...i.end}},e[r][1].end={...s.start},e[a][1].start={...i.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=Lt(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=Lt(u,[["enter",o,t],["enter",s,t],["exit",s,t],["enter",n,t]]),t.parser.constructs.insideSpan.null,u=Lt(u,Ia(t.parser.constructs.insideSpan.null,e.slice(r+1,a),t)),u=Lt(u,[["exit",n,t],["enter",i,t],["exit",i,t],["exit",o,t]]),e[a][1].end.offset-e[a][1].start.offset?(c=2,u=Lt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):c=0,xt(e,r-1,a-r+3,u),a=r+u.length-c-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function ic(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:r,sliceSerialize:o,previous:n}=this,s=Fa(n)?Ba(n,r(),o):n,i=Je(s),l=new Ea(s,r(),o),u=Ra(i,l.value.bind(l),s),c;return d;function d(p){return p===Le.asterisk||Le.underscore,c=p,e.enter("attentionSequence"),f(p)}function f(p){if(p===c)return e.consume(p),f;let m=e.exit("attentionSequence"),I=Ma(p)?Da(p,r(),o):p,L=Je(I);let w=kt(u),g=w||ut(u),h=kt(L),x=h||ut(L),S=Rs(u),v=!x||h&&(g||S)||a.includes(p),A=!g||w&&(x||Jt(L))||a.includes(s);return m._open=!!(c===Le.asterisk?v:v&&(Qr(u)||!A)),m._close=!!(c===Le.asterisk?A:A&&(Qr(L)||!v)),t(p)}}function Ms(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Fs(){return{text:{[Le.asterisk]:Jr,[Le.underscore]:Jr},insideSpan:{null:[Jr]}}}function Bs(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Fs())}function Es(e){let a=(e||{}).singleTilde,r={name:"strikethrough",tokenize:n,resolveAll:o};return a==null&&(a=!0),{text:{[Le.tilde]:r},insideSpan:{null:[r]},attentionMarkers:{null:[Le.tilde]}};function o(s,i){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";let c={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",c,i],["enter",s[u][1],i],["exit",s[u][1],i],["enter",d,i]],p=i.parser.constructs.insideSpan.null;p&&xt(f,f.length,0,Ia(p,s.slice(u+1,l),i)),xt(f,f.length,0,[["exit",d,i],["enter",s[l][1],i],["exit",s[l][1],i],["exit",c,i]]),xt(s,u-1,l-u+3,f),l=u+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type=Ae.data);return s}function n(s,i,l){let{now:u,sliceSerialize:c,previous:d}=this,f=Fa(d)?Ba(d,u(),c):d,p=Je(f),m=new Ea(f,u(),c),I=Ra(p,m.value.bind(m),f),L=this.events,w=0;return g;function g(x){return Le.tilde,f===Le.tilde&&L[L.length-1][1].type!==Ae.characterEscape?l(x):(s.enter("strikethroughSequenceTemporary"),h(x))}function h(x){let S=Je(f);if(x===Le.tilde)return w>1?l(x):(s.consume(x),w++,h);if(w<2&&!a)return l(x);let v=s.exit("strikethroughSequenceTemporary"),A=Ma(x)?Da(x,u(),c):x,P=Je(A),k=kt(I)||ut(I),b=kt(P)||ut(P),z=Jt(I)||As(S);return v._open=!b||P===He.attentionSideAfter&&(k||z),v._close=!k||S===He.attentionSideAfter&&(b||Jt(P)),i(x)}}}function Ds(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(Es(e))}var lc=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),uc=/^(https?:\/\/|mailto:|www\.)/i,dc=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},cc=e=>{let t=0;for(let a of e){if(lc.has(a))return t;t+=a.length}return null},fc=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),pc=e=>({type:"text",value:e}),mc=()=>e=>{kn(e,"link",(t,a,r)=>{if(!r||typeof a!="number"||!dc(t)||!uc.test(t.url))return;let o=cc(t.url);if(o===null||o===0)return;let n=t.url.slice(0,o),s=t.url.slice(o),i=fc(n,t),l=pc(s);return r.children.splice(a,1,i,l),a+1})};function hc(){let e=[Bs],t=[mc,Ds],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Yr=hc();var te=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function gc(e){return lo(e)}function lo(e){return Array.isArray(e)?wc(e):e instanceof RegExp?e:typeof e=="object"?xc(e):e}function wc(e){let t=[];for(let a=0,r=e.length;a<r;a++)t[a]=lo(e[a]);return t}function xc(e){let t={};for(let a in e)t[a]=lo(e[a]);return t}function Vs(e,...t){return t.forEach(a=>{for(let r in a)e[r]=a[r]}),e}function zs(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?zs(e.substring(0,e.length-1)):e.substr(~t+1)}var Zr=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,_a=class{static hasCaptures(e){return e===null?!1:(Zr.lastIndex=0,Zr.test(e))}static replaceCaptures(e,t,a){return e.replace(Zr,(r,o,n,s)=>{let i=a[parseInt(o||n,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return r})}};function js(e,t){return e<t?-1:e>t?1:0}function $s(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,r=t.length;if(a===r){for(let o=0;o<a;o++){let n=js(e[o],t[o]);if(n!==0)return n}return 0}return a-r}function _s(e){return!!(/^#[0-9a-f]{6}$/i.test(e)||/^#[0-9a-f]{8}$/i.test(e)||/^#[0-9a-f]{3}$/i.test(e)||/^#[0-9a-f]{4}$/i.test(e))}function Xs(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Ks=class{constructor(e){this.fn=e}cache=new Map;get(e){if(this.cache.has(e))return this.cache.get(e);let t=this.fn(e);return this.cache.set(e,t),t}},ea=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Cc(e),t)}static createFromParsedTheme(e,t){return yc(e,t)}_cachedMatchRoot=new Ks(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,r=this._cachedMatchRoot.get(t).find(o=>Lc(e.parent,o.parentScopes));return r?new Qs(r.fontStyle,r.foreground,r.background):null}},eo=class Na{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let r of a)t=new Na(t,r);return t}static from(...t){let a=null;for(let r=0;r<t.length;r++)a=new Na(a,t[r]);return a}push(t){return new Na(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push(r.scopeName),r=r.parent;return r===t?a.reverse():void 0}};function Lc(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let r=t[a],o=!1;if(r===">"){if(a===t.length-1)return!1;r=t[++a],o=!0}for(;e&&!Ic(e.scopeName,r);){if(o)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Ic(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Qs=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Cc(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],r=0;for(let o=0,n=t.length;o<n;o++){let s=t[o];if(!s.settings)continue;let i;if(typeof s.scope=="string"){let d=s.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(s.scope)?i=s.scope:i=[""];let l=-1;if(typeof s.settings.fontStyle=="string"){l=0;let d=s.settings.fontStyle.split(" ");for(let f=0,p=d.length;f<p;f++)switch(d[f]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof s.settings.foreground=="string"&&_s(s.settings.foreground)&&(u=s.settings.foreground);let c=null;typeof s.settings.background=="string"&&_s(s.settings.background)&&(c=s.settings.background);for(let d=0,f=i.length;d<f;d++){let m=i[d].trim().split(" "),I=m[m.length-1],L=null;m.length>1&&(L=m.slice(0,m.length-1),L.reverse()),a[r++]=new Sc(I,L,o,l,u,c)}}return a}var Sc=class{constructor(e,t,a,r,o,n){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=r,this.foreground=o,this.background=n}},Ie=(e=>(e[e.NotSet=-1]="NotSet",e[e.None=0]="None",e[e.Italic=1]="Italic",e[e.Bold=2]="Bold",e[e.Underline=4]="Underline",e[e.Strikethrough=8]="Strikethrough",e))(Ie||{});function yc(e,t){e.sort((l,u)=>{let c=js(l.scope,u.scope);return c!==0||(c=$s(l.parentScopes,u.parentScopes),c!==0)?c:l.index-u.index});let a=0,r="#000000",o="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(r=l.foreground),l.background!==null&&(o=l.background)}let n=new bc(t),s=new Qs(a,n.getId(r),n.getId(o)),i=new Tc(new ao(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let c=e[l];i.insert(0,c.scope,c.parentScopes,c.fontStyle,n.getId(c.foreground),n.getId(c.background))}return new ea(n,s,i)}var bc=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(e){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(e)){this._isFrozen=!0;for(let t=0,a=e.length;t<a;t++)this._color2id[e[t]]=t,this._id2color[t]=e[t]}else this._isFrozen=!1}getId(e){if(e===null)return 0;e=e.toUpperCase();let t=this._color2id[e];if(t)return t;if(this._isFrozen)throw new Error(`Missing color in color map - ${e}`);return t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t}getColorMap(){return this._id2color.slice(0)}},kc=Object.freeze([]),ao=class Js{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,r,o,n){this.scopeDepth=t,this.parentScopes=a||kc,this.fontStyle=r,this.foreground=o,this.background=n}clone(){return new Js(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let r=0,o=t.length;r<o;r++)a[r]=t[r].clone();return a}acceptOverwrite(t,a,r,o){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),r!==0&&(this.foreground=r),o!==0&&(this.background=o)}},Tc=class ro{constructor(t,a=[],r={}){this._mainRule=t,this._children=r,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let r=0,o=0;for(;t.parentScopes[r]===">"&&r++,a.parentScopes[o]===">"&&o++,!(r>=t.parentScopes.length||o>=a.parentScopes.length);){let n=a.parentScopes[o].length-t.parentScopes[r].length;if(n!==0)return n;r++,o++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let r=t.indexOf("."),o,n;if(r===-1?(o=t,n=""):(o=t.substring(0,r),n=t.substring(r+1)),this._children.hasOwnProperty(o))return this._children[o].match(n)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(ro._cmpBySpecificity),a}insert(t,a,r,o,n,s){if(a===""){this._doInsertHere(t,r,o,n,s);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let c;this._children.hasOwnProperty(l)?c=this._children[l]:(c=new ro(this._mainRule.clone(),ao.cloneArr(this._rulesWithParentScopes)),this._children[l]=c),c.insert(t+1,u,r,o,n,s)}_doInsertHere(t,a,r,o,n){if(a===null){this._mainRule.acceptOverwrite(t,r,o,n);return}for(let s=0,i=this._rulesWithParentScopes.length;s<i;s++){let l=this._rulesWithParentScopes[s];if($s(l.parentScopes,a)===0){l.acceptOverwrite(t,r,o,n);return}}r===-1&&(r=this._mainRule.fontStyle),o===0&&(o=this._mainRule.foreground),n===0&&(n=this._mainRule.background),this._rulesWithParentScopes.push(new ao(t,a,r,o,n))}},ct=class De{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=De.getLanguageId(t),r=De.getTokenType(t),o=De.getFontStyle(t),n=De.getForeground(t),s=De.getBackground(t);console.log({languageId:a,tokenType:r,fontStyle:o,foreground:n,background:s})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,r,o,n,s,i){let l=De.getLanguageId(t),u=De.getTokenType(t),c=De.containsBalancedBrackets(t)?1:0,d=De.getFontStyle(t),f=De.getForeground(t),p=De.getBackground(t);return a!==0&&(l=a),r!==8&&(u=r),o!==null&&(c=o?1:0),n!==-1&&(d=n),s!==0&&(f=s),i!==0&&(p=i),(l<<0|u<<8|c<<10|d<<11|f<<15|p<<24)>>>0}};function Ua(e,t){let a=[],r=vc(e),o=r.next();for(;o!==null;){let l=0;if(o.length===2&&o.charAt(1)===":"){switch(o.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${o} in scope selector`)}o=r.next()}let u=s();if(a.push({matcher:u,priority:l}),o!==",")break;o=r.next()}return a;function n(){if(o==="-"){o=r.next();let l=n();return u=>!!l&&!l(u)}if(o==="("){o=r.next();let l=i();return o===")"&&(o=r.next()),l}if(Ns(o)){let l=[];do l.push(o),o=r.next();while(Ns(o));return u=>t(l,u)}return null}function s(){let l=[],u=n();for(;u;)l.push(u),u=n();return c=>l.every(d=>d(c))}function i(){let l=[],u=s();for(;u&&(l.push(u),o==="|"||o===",");){do o=r.next();while(o==="|"||o===",");u=s()}return c=>l.some(d=>d(c))}}function Ns(e){return!!e&&!!e.match(/[\w\.:]+/)}function vc(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let r=a[0];return a=t.exec(e),r}}}function Ys(e){typeof e.dispose=="function"&&e.dispose()}var ta=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Pc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Ac=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){let t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},Rc=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new ta(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Ac;for(let a of e)Mc(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof ta){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function Mc(e,t,a,r){let o=a.lookup(e.scopeName);if(!o){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let n=a.lookup(t);e instanceof ta?Oa({baseGrammar:n,selfGrammar:o},r):oo(e.ruleName,{baseGrammar:n,selfGrammar:o,repository:o.repository},r);let s=a.injections(e.scopeName);if(s)for(let i of s)r.add(new ta(i))}function oo(e,t,a){if(t.repository&&t.repository[e]){let r=t.repository[e];Ha([r],t,a)}}function Oa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ha(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ha(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ha(e,t,a){for(let r of e){if(a.visitedRule.has(r))continue;a.visitedRule.add(r);let o=r.repository?Vs({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&Ha(r.patterns,{...t,repository:o},a);let n=r.include;if(!n)continue;let s=Zs(n);switch(s.kind){case 0:Oa({...t,selfGrammar:t.baseGrammar},a);break;case 1:Oa(t,a);break;case 2:oo(s.ruleName,{...t,repository:o},a);break;case 3:case 4:let i=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:o};s.kind===4?oo(s.ruleName,l,a):Oa(l,a)}else s.kind===4?a.add(new Pc(s.scopeName,s.ruleName)):a.add(new ta(s.scopeName));break}}}var Fc=class{kind=0},Bc=class{kind=1},Ec=class{constructor(e){this.ruleName=e}kind=2},Dc=class{constructor(e){this.scopeName=e}kind=3},_c=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Zs(e){if(e==="$base")return new Fc;if(e==="$self")return new Bc;let t=e.indexOf("#");if(t===-1)return new Dc(e);if(t===0)return new Ec(e.substring(1));{let a=e.substring(0,t),r=e.substring(t+1);return new _c(a,r)}}var Nc=/\\(\d+)/,Os=/\\(\d+)/g;var Oc=-1,ei=-2;var oa=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,r){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=_a.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=_a.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${zs(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:_a.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:_a.replaceCaptures(this._contentName,e,t)}},Uc=class extends oa{retokenizeCapturedWithRuleId;constructor(e,t,a,r,o){super(e,t,a,r),this.retokenizeCapturedWithRuleId=o}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,r){throw new Error("Not supported!")}},Hc=class extends oa{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,null),this._match=new aa(r,this.id),this.captures=o,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new ra,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Us=class extends oa{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,r),this.patterns=o.patterns,this.hasMissingPatterns=o.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(let a of this.patterns)e.getRule(a).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new ra,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},no=class extends oa{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o,n,s,i,l,u){super(e,t,a,r),this._begin=new aa(o,this.id),this.beginCaptures=n,this._end=new aa(s||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new ra;for(let a of this.patterns)e.getRule(a).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},qa=class extends oa{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,r,o,n,s,i,l){super(e,t,a,r),this._begin=new aa(o,this.id),this.beginCaptures=n,this.whileCaptures=i,this._while=new aa(s,ei),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new ra;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,a,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new ra,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},ti=class ke{static createCaptureRule(t,a,r,o,n){return t.registerRule(s=>new Uc(a,s,r,o,n))}static getCompiledRuleId(t,a,r){return t.id||a.registerRule(o=>{if(t.id=o,t.match)return new Hc(t.$vscodeTextmateLocation,t.id,t.name,t.match,ke._compileCaptures(t.captures,a,r));if(typeof t.begin>"u"){t.repository&&(r=Vs({},r,t.repository));let n=t.patterns;return typeof n>"u"&&t.include&&(n=[{include:t.include}]),new Us(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,ke._compilePatterns(n,a,r))}return t.while?new qa(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,ke._compileCaptures(t.beginCaptures||t.captures,a,r),t.while,ke._compileCaptures(t.whileCaptures||t.captures,a,r),ke._compilePatterns(t.patterns,a,r)):new no(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,ke._compileCaptures(t.beginCaptures||t.captures,a,r),t.end,ke._compileCaptures(t.endCaptures||t.captures,a,r),t.applyEndPatternLast,ke._compilePatterns(t.patterns,a,r))}),t.id}static _compileCaptures(t,a,r){let o=[];if(t){let n=0;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10);i>n&&(n=i)}for(let s=0;s<=n;s++)o[s]=null;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10),l=0;t[s].patterns&&(l=ke.getCompiledRuleId(t[s],a,r)),o[i]=ke.createCaptureRule(a,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return o}static _compilePatterns(t,a,r){let o=[];if(t)for(let n=0,s=t.length;n<s;n++){let i=t[n],l=-1;if(i.include){let u=Zs(i.include);switch(u.kind){case 0:case 1:l=ke.getCompiledRuleId(r[i.include],a,r);break;case 2:let c=r[u.ruleName];c&&(l=ke.getCompiledRuleId(c,a,r));break;case 3:case 4:let d=u.scopeName,f=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(d,r);if(p)if(f){let m=p.repository[f];m&&(l=ke.getCompiledRuleId(m,a,p.repository))}else l=ke.getCompiledRuleId(p.repository.$self,a,p.repository);break}}else l=ke.getCompiledRuleId(i,a,r);if(l!==-1){let u=a.getRule(l),c=!1;if((u instanceof Us||u instanceof no||u instanceof qa)&&u.hasMissingPatterns&&u.patterns.length===0&&(c=!0),c)continue;o.push(l)}}return{patterns:o,hasMissingPatterns:(t?t.length:0)!==o.length}}},aa=class ai{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let r=t.length,o=0,n=[],s=!1;for(let i=0;i<r;i++)if(t.charAt(i)==="\\"&&i+1<r){let u=t.charAt(i+1);u==="z"?(n.push(t.substring(o,i)),n.push("$(?!\\n)(?<!\\n)"),o=i+2):(u==="A"||u==="G")&&(s=!0),i++}this.hasAnchor=s,o===0?this.source=t:(n.push(t.substring(o,r)),this.source=n.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Nc.test(this.source):this.hasBackReferences=!1}clone(){return new ai(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,a){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let r=a.map(o=>t.substring(o.start,o.end));return Os.lastIndex=0,this.source.replace(Os,(o,n)=>Xs(r[parseInt(n,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],r=[],o=[],n,s,i,l;for(n=0,s=this.source.length;n<s;n++)i=this.source.charAt(n),t[n]=i,a[n]=i,r[n]=i,o[n]=i,i==="\\"&&n+1<s&&(l=this.source.charAt(n+1),l==="A"?(t[n+1]="\uFFFF",a[n+1]="\uFFFF",r[n+1]="A",o[n+1]="A"):l==="G"?(t[n+1]="\uFFFF",a[n+1]="G",r[n+1]="\uFFFF",o[n+1]="G"):(t[n+1]=l,a[n+1]=l,r[n+1]=l,o[n+1]=l),n++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:r.join(""),A1_G1:o.join("")}}resolveAnchors(t,a){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?a?this._anchorCache.A1_G1:this._anchorCache.A1_G0:a?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},ra=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){if(!this._cached){let t=this._items.map(a=>a.source);this._cached=new Hs(e,t,this._items.map(a=>a.ruleId))}return this._cached}compileAG(e,t,a){return this._hasAnchors?t?a?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G0):a?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,a){let r=this._items.map(o=>o.resolveAnchors(t,a));return new Hs(e,r,this._items.map(o=>o.ruleId))}},Hs=class{constructor(e,t,a){this.regExps=t,this.rules=a,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){let e=[];for(let t=0,a=this.rules.length;t<a;t++)e.push(" - "+this.rules[t]+": "+this.regExps[t]);return e.join(`
|
|
3
|
+
`)}findNextMatchSync(e,t,a){let r=this.scanner.findNextMatchSync(e,t,a);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},to=class{constructor(e,t){this.languageId=e,this.tokenType=t}},qc=class so{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new to(t,8),this._embeddedLanguagesMatcher=new Wc(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?so._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new to(0,0);_getBasicScopeAttributes=new Ks(t=>{let a=this._scopeToLanguage(t),r=this._toStandardTokenType(t);return new to(a,r)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(so.STANDARD_TOKEN_TYPE_REGEXP);if(!a)return 8;switch(a[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},Wc=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([a,r])=>Xs(a));t.sort(),t.reverse(),this.scopesRegExp=new RegExp(`^((${t.join(")|(")}))($|\\.)`,"")}}match(e){if(!this.scopesRegExp)return;let t=e.match(this.scopesRegExp);if(t)return this.values.get(t[1])}},hI={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},ri=!1,qs=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function oi(e,t,a,r,o,n,s,i){let l=t.content.length,u=!1,c=-1;if(s){let p=Gc(e,t,a,r,o,n);o=p.stack,r=p.linePos,a=p.isFirstLine,c=p.anchorPosition}let d=Date.now();for(;!u;){if(i!==0&&Date.now()-d>i)return new qs(o,!0);f()}return new qs(o,!1);function f(){let p=Vc(e,t,a,r,o,c);if(!p){n.produce(o,l),u=!0;return}let m=p.captureIndices,I=p.matchedRuleId,L=m&&m.length>0?m[0].end>r:!1;if(I===Oc){let w=o.getRule(e);n.produce(o,m[0].start),o=o.withContentNameScopesList(o.nameScopesList),Yt(e,t,a,o,n,w.endCaptures,m),n.produce(o,m[0].end);let g=o;if(o=o.parent,c=g.getAnchorPos(),!L&&g.getEnterPos()===r){o=g,n.produce(o,l),u=!0;return}}else{let w=e.getRule(I);n.produce(o,m[0].start);let g=o,h=w.getName(t.content,m),x=o.contentNameScopesList.pushAttributed(h,e);if(o=o.push(I,r,c,m[0].end===l,null,x,x),w instanceof no){let S=w;Yt(e,t,a,o,n,S.beginCaptures,m),n.produce(o,m[0].end),c=m[0].end;let v=S.getContentName(t.content,m),A=x.pushAttributed(v,e);if(o=o.withContentNameScopesList(A),S.endHasBackReferences&&(o=o.withEndRule(S.getEndWithResolvedBackReferences(t.content,m))),!L&&g.hasSameRuleAs(o)){o=o.pop(),n.produce(o,l),u=!0;return}}else if(w instanceof qa){let S=w;Yt(e,t,a,o,n,S.beginCaptures,m),n.produce(o,m[0].end),c=m[0].end;let v=S.getContentName(t.content,m),A=x.pushAttributed(v,e);if(o=o.withContentNameScopesList(A),S.whileHasBackReferences&&(o=o.withEndRule(S.getWhileWithResolvedBackReferences(t.content,m))),!L&&g.hasSameRuleAs(o)){o=o.pop(),n.produce(o,l),u=!0;return}}else if(Yt(e,t,a,o,n,w.captures,m),n.produce(o,m[0].end),o=o.pop(),!L){o=o.safePop(),n.produce(o,l),u=!0;return}}m[0].end>r&&(r=m[0].end,a=!1)}}function Gc(e,t,a,r,o,n){let s=o.beginRuleCapturedEOL?0:-1,i=[];for(let l=o;l;l=l.pop()){let u=l.getRule(e);u instanceof qa&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:c}=$c(l.rule,e,l.stack.endRule,a,r===s),d=u.findNextMatchSync(t,r,c);if(d){if(d.ruleId!==ei){o=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(n.produce(l.stack,d.captureIndices[0].start),Yt(e,t,a,l.stack,n,l.rule.whileCaptures,d.captureIndices),n.produce(l.stack,d.captureIndices[0].end),s=d.captureIndices[0].end,d.captureIndices[0].end>r&&(r=d.captureIndices[0].end,a=!1))}else{o=l.stack.pop();break}}return{stack:o,linePos:r,anchorPosition:s,isFirstLine:a}}function Vc(e,t,a,r,o,n){let s=zc(e,t,a,r,o,n),i=e.getInjections();if(i.length===0)return s;let l=jc(i,e,t,a,r,o,n);if(!l)return s;if(!s)return l;let u=s.captureIndices[0].start,c=l.captureIndices[0].start;return c<u||l.priorityMatch&&c===u?l:s}function zc(e,t,a,r,o,n){let s=o.getRule(e),{ruleScanner:i,findOptions:l}=ni(s,e,o.endRule,a,r===n),u=i.findNextMatchSync(t,r,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function jc(e,t,a,r,o,n,s){let i=Number.MAX_VALUE,l=null,u,c=0,d=n.contentNameScopesList.getScopeNames();for(let f=0,p=e.length;f<p;f++){let m=e[f];if(!m.matcher(d))continue;let I=t.getRule(m.ruleId),{ruleScanner:L,findOptions:w}=ni(I,t,null,r,o===s),g=L.findNextMatchSync(a,o,w);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,c=m.priority,i===o))break}return l?{priorityMatch:c===-1,captureIndices:l,matchedRuleId:u}:null}function ni(e,t,a,r,o){if(ri){let s=e.compile(t,a),i=si(r,o);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileAG(t,a,r,o),findOptions:0}}function $c(e,t,a,r,o){if(ri){let s=e.compileWhile(t,a),i=si(r,o);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,r,o),findOptions:0}}function si(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Yt(e,t,a,r,o,n,s){if(n.length===0)return;let i=t.content,l=Math.min(n.length,s.length),u=[],c=s[0].end;for(let d=0;d<l;d++){let f=n[d];if(f===null)continue;let p=s[d];if(p.length===0)continue;if(p.start>c)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)o.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?o.produceFromScopes(u[u.length-1].scopes,p.start):o.produce(r,p.start),f.retokenizeCapturedWithRuleId){let I=f.getName(i,s),L=r.contentNameScopesList.pushAttributed(I,e),w=f.getContentName(i,s),g=L.pushAttributed(w,e),h=r.push(f.retokenizeCapturedWithRuleId,p.start,-1,!1,null,L,g),x=e.createOnigString(i.substring(0,p.end));oi(e,x,a&&p.start===0,p.start,h,o,!1,0),Ys(x);continue}let m=f.getName(i,s);if(m!==null){let L=(u.length>0?u[u.length-1].scopes:r.contentNameScopesList).pushAttributed(m,e);u.push(new Xc(L,p.end))}}for(;u.length>0;)o.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Xc=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function Kc(e,t,a,r,o,n,s,i){return new Jc(e,t,a,r,o,n,s,i)}function Ws(e,t,a,r,o){let n=Ua(t,Wa),s=ti.getCompiledRuleId(a,r,o.repository);for(let i of n)e.push({debugSelector:t,matcher:i.matcher,ruleId:s,grammar:o,priority:i.priority})}function Wa(e,t){if(t.length<e.length)return!1;let a=0;return e.every(r=>{for(let o=a;o<t.length;o++)if(Qc(t[o],r))return a=o+1,!0;return!1})}function Qc(e,t){if(!e)return!1;if(e===t)return!0;let a=t.length;return e.length>a&&e.substr(0,a)===t&&e[a]==="."}var Jc=class{constructor(e,t,a,r,o,n,s,i){if(this._rootScopeName=e,this.balancedBracketSelectors=n,this._onigLib=i,this._basicScopeAttributesProvider=new qc(a,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=s,this._grammar=Gs(t,null),this._injections=null,this._tokenTypeMatchers=[],o)for(let l of Object.keys(o)){let u=Ua(l,Wa);for(let c of u)this._tokenTypeMatchers.push({matcher:c.matcher,type:o[l]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(let e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){let e={lookup:o=>o===this._rootScopeName?this._grammar:this.getExternalGrammar(o),injections:o=>this._grammarRepository.injections(o)},t=[],a=this._rootScopeName,r=e.lookup(a);if(r){let o=r.injections;if(o)for(let s in o)Ws(t,s,o[s],this,r);let n=this._grammarRepository.injections(a);n&&n.forEach(s=>{let i=this.getExternalGrammar(s);if(i){let l=i.injectionSelector;l&&Ws(t,l,i,this,i)}})}return t.sort((o,n)=>o.priority-n.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){let t=++this._lastRuleId,a=e(t);return this._ruleId2desc[t]=a,a}getRule(e){return this._ruleId2desc[e]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){let a=this._grammarRepository.lookup(e);if(a)return this._includedGrammars[e]=Gs(a,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,a=0){let r=this._tokenize(e,t,!1,a);return{tokens:r.lineTokens.getResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}tokenizeLine2(e,t,a=0){let r=this._tokenize(e,t,!0,a);return{tokens:r.lineTokens.getBinaryResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}_tokenize(e,t,a,r){this._rootId===-1&&(this._rootId=ti.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let o;if(!t||t===io.NULL){o=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),c=this.themeProvider.getDefaults(),d=ct.set(0,u.languageId,u.tokenType,null,c.fontStyle,c.foregroundId,c.backgroundId),f=this.getRule(this._rootId).getName(null,null),p;f?p=Zt.createRootAndLookUpScopeName(f,d,this):p=Zt.createRoot("unknown",d),t=new io(null,this._rootId,-1,-1,!1,null,p,p)}else o=!1,t.reset();e=e+`
|
|
4
|
+
`;let n=this.createOnigString(e),s=n.content.length,i=new Zc(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=oi(this,n,o,0,t,i,!0,r);return Ys(n),{lineLength:s,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Gs(e,t){return e=gc(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var Zt=class qe{constructor(t,a,r){this.parent=t,this.scopePath=a,this.tokenAttributes=r}static fromExtension(t,a){let r=t,o=t?.scopePath??null;for(let n of a)o=eo.push(o,n.scopeNames),r=new qe(r,o,n.encodedTokenAttributes);return r}static createRoot(t,a){return new qe(null,new eo(null,t),a)}static createRootAndLookUpScopeName(t,a,r){let o=r.getMetadataForScope(t),n=new eo(null,t),s=r.themeProvider.themeMatch(n),i=qe.mergeAttributes(a,o,s);return new qe(null,n,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return qe.equals(this,t)}static equals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.scopeName!==a.scopeName||t.tokenAttributes!==a.tokenAttributes)return!1;t=t.parent,a=a.parent}while(!0)}static mergeAttributes(t,a,r){let o=-1,n=0,s=0;return r!==null&&(o=r.fontStyle,n=r.foregroundId,s=r.backgroundId),ct.set(t,a.languageId,a.tokenType,null,o,n,s)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return qe._pushAttributed(this,t,a);let r=t.split(/ /g),o=this;for(let n of r)o=qe._pushAttributed(o,n,a);return o}static _pushAttributed(t,a,r){let o=r.getMetadataForScope(a),n=t.scopePath.push(a),s=r.themeProvider.themeMatch(n),i=qe.mergeAttributes(t.tokenAttributes,o,s);return new qe(t,n,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push({encodedTokenAttributes:r.tokenAttributes,scopeNames:r.scopePath.getExtensionIfDefined(r.parent?.scopePath??null)}),r=r.parent;return r===t?a.reverse():void 0}},io=class dt{constructor(t,a,r,o,n,s,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=n,this.endRule=s,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=r,this._anchorPos=o}_stackElementBrand=void 0;static NULL=new dt(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:dt._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Zt.equals(t.contentNameScopesList,a.contentNameScopesList):!1}static _structuralEquals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.depth!==a.depth||t.ruleId!==a.ruleId||t.endRule!==a.endRule)return!1;t=t.parent,a=a.parent}while(!0)}clone(){return this}static _reset(t){for(;t;)t._enterPos=-1,t._anchorPos=-1,t=t.parent}reset(){dt._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,r,o,n,s,i){return new dt(this,t,a,r,o,n,s,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new dt(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let a=this;for(;a&&a._enterPos===t._enterPos;){if(a.ruleId===t.ruleId)return!0;a=a.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,a){let r=Zt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new dt(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,r,Zt.fromExtension(r,a.contentNameScopesList))}},Yc=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Ua(a,Wa).map(r=>r.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Ua(a,Wa).map(r=>r.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},Zc=class{constructor(e,t,a,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let r=e?.tokenAttributes??0,o=!1;if(this.balancedBracketSelectors?.matchesAlways&&(o=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let n=e?.getScopeNames()??[];for(let s of this._tokenTypeOverrides)s.matcher(n)&&(r=ct.set(r,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(o=this.balancedBracketSelectors.match(n))}if(o&&(r=ct.set(r,0,8,o,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let r=0,o=this._binaryTokens.length;r<o;r++)a[r]=this._binaryTokens[r];return a}},ef=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,r,o){if(!this._grammars.has(e)){let n=this._rawGrammars.get(e);if(!n)return null;this._grammars.set(e,Kc(e,n,t,a,r,o,this,this._onigLib))}return this._grammars.get(e)}},ii=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new ef(ea.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(ea.createFromRawTheme(e,t))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(e,t,a){return this.loadGrammarWithConfiguration(e,t,{embeddedLanguages:a})}loadGrammarWithConfiguration(e,t,a){return this._loadGrammar(e,t,a.embeddedLanguages,a.tokenTypes,new Yc(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,r,o){let n=new Rc(this._syncRegistry,e);for(;n.Q.length>0;)n.Q.map(s=>this._loadSingleGrammar(s.scopeName)),n.processQueue();return this._grammarForScopeName(e,t,a,r,o)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,r)}_grammarForScopeName(e,t=0,a=null,r=null,o=null){return this._syncRegistry.grammarForScopeName(e,t,a,r,o)}},Ga=io.NULL;var tf=/["&'<>`]/g,af=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,rf=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,of=/[|\\{}()[\]^$+*?.]/g,li=new WeakMap;function ui(e,t){if(e=e.replace(t.subset?nf(t.subset):tf,r),t.subset||t.escapeOnly)return e;return e.replace(af,a).replace(rf,r);function a(o,n,s){return t.format((o.charCodeAt(0)-55296)*1024+o.charCodeAt(1)-56320+65536,s.charCodeAt(n+2),t)}function r(o,n,s){return t.format(o.charCodeAt(0),s.charCodeAt(n+1),t)}}function nf(e){let t=li.get(e);return t||(t=sf(e),li.set(e,t)),t}function sf(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(of,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var lf=/[\dA-Fa-f]/;function di(e,t,a){let r="&#x"+e.toString(16).toUpperCase();return a&&t&&!lf.test(String.fromCharCode(t))?r:r+";"}var uf=/\d/;function ci(e,t,a){let r="&#"+String(e);return a&&t&&!uf.test(String.fromCharCode(t))?r:r+";"}var fi=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"];var Va={nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",fnof:"\u0192",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",bull:"\u2022",hellip:"\u2026",prime:"\u2032",Prime:"\u2033",oline:"\u203E",frasl:"\u2044",weierp:"\u2118",image:"\u2111",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",quot:'"',amp:"&",lt:"<",gt:">",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",circ:"\u02C6",tilde:"\u02DC",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",permil:"\u2030",lsaquo:"\u2039",rsaquo:"\u203A",euro:"\u20AC"};var pi=["cent","copy","divide","gt","lt","not","para","times"];var mi={}.hasOwnProperty,uo={},za;for(za in Va)mi.call(Va,za)&&(uo[Va[za]]=za);var df=/[^\dA-Za-z]/;function hi(e,t,a,r){let o=String.fromCharCode(e);if(mi.call(uo,o)){let n=uo[o],s="&"+n;return a&&fi.includes(n)&&!pi.includes(n)&&(!r||t&&t!==61&&df.test(String.fromCharCode(t)))?s:s+";"}return""}function gi(e,t,a){let r=di(e,t,a.omitOptionalSemicolons),o;if((a.useNamedReferences||a.useShortestReferences)&&(o=hi(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!o)&&a.useShortestReferences){let n=ci(e,t,a.omitOptionalSemicolons);n.length<r.length&&(r=n)}return o&&(!a.useShortestReferences||o.length<r.length)?o:r}function ze(e,t){return ui(e,Object.assign({format:gi},t))}var cf=/^>|^->|<!--|-->|--!>|<!-$/g,ff=[">"],pf=["<",">"];function wi(e,t,a,r){return r.settings.bogusComments?"<?"+ze(e.value,Object.assign({},r.settings.characterReferences,{subset:ff}))+">":"<!--"+e.value.replace(cf,o)+"-->";function o(n){return ze(n,Object.assign({},r.settings.characterReferences,{subset:pf}))}}function xi(e,t,a,r){return"<!"+(r.settings.upperDoctype?"DOCTYPE":"doctype")+(r.settings.tightDoctype?"":" ")+"html>"}var ie=Li(1),co=Li(-1),mf=[];function Li(e){return t;function t(a,r,o){let n=a?a.children:mf,s=(r||0)+e,i=n[s];if(!o)for(;i&&It(i);)s+=e,i=n[s];return i}}var hf={}.hasOwnProperty;function ja(e){return t;function t(a,r,o){return hf.call(e,a.tagName)&&e[a.tagName](a,r,o)}}var na=ja({body:wf,caption:fo,colgroup:fo,dd:Cf,dt:If,head:fo,html:gf,li:Lf,optgroup:Sf,option:yf,p:xf,rp:Ii,rt:Ii,tbody:kf,td:Ci,tfoot:Tf,th:Ci,thead:bf,tr:vf});function fo(e,t,a){let r=ie(a,t,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&It(r.value.charAt(0)))}function gf(e,t,a){let r=ie(a,t);return!r||r.type!=="comment"}function wf(e,t,a){let r=ie(a,t);return!r||r.type!=="comment"}function xf(e,t,a){let r=ie(a,t);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function Lf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&r.tagName==="li"}function If(e,t,a){let r=ie(a,t);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function Cf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function Ii(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function Sf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&r.tagName==="optgroup"}function yf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function bf(e,t,a){let r=ie(a,t);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function kf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function Tf(e,t,a){return!ie(a,t)}function vf(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&r.tagName==="tr"}function Ci(e,t,a){let r=ie(a,t);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}var Si=ja({body:Rf,colgroup:Mf,head:Af,html:Pf,tbody:Ff});function Pf(e){let t=ie(e,-1);return!t||t.type!=="comment"}function Af(e){let t=new Set;for(let r of e.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(t.has(r.tagName))return!1;t.add(r.tagName)}let a=e.children[0];return!a||a.type==="element"}function Rf(e){let t=ie(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&It(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function Mf(e,t,a){let r=co(a,t),o=ie(e,-1,!0);return a&&r&&r.type==="element"&&r.tagName==="colgroup"&&na(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="col")}function Ff(e,t,a){let r=co(a,t),o=ie(e,-1);return a&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&na(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="tr")}var $a={name:[[`
|
|
5
5
|
\f\r &/=>`.split(""),`
|
|
6
6
|
\f\r "&'/=>\``.split("")],[`\0
|
|
7
7
|
\f\r "&'/<=>`.split(""),`\0
|
|
@@ -9,11 +9,11 @@ import{a as In,b as Ln,c as Cn,d as Sn,e as yn,f as xa,g as bn,h as kn,i as Tn,j
|
|
|
9
9
|
\f\r &>`.split(""),`\0
|
|
10
10
|
\f\r "&'<=>\``.split("")],[`\0
|
|
11
11
|
\f\r "&'<=>\``.split(""),`\0
|
|
12
|
-
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Ii(e,t,a,r){let o=r.schema,n=o.space==="svg"?!1:r.settings.omitOptionalTags,s=o.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;o.space==="html"&&e.tagName==="svg"&&(r.schema=xa);let u=Rf(r,e.properties),c=r.all(o.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=o,c&&(s=!1),(u||!n||!xi(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),s&&(o.space==="svg"||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(c),!s&&(!n||!oa(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Rf(e,t){let a=[],r=-1,o;if(t){for(o in t)if(t[o]!==null&&t[o]!==void 0){let n=Mf(e,o,t[o]);n&&a.push(n)}}for(;++r<a.length;){let n=e.settings.tightAttributes?a[r].charAt(a[r].length-1):void 0;r!==a.length-1&&n!=='"'&&n!=="'"&&(a[r]+=" ")}return a.join("")}function Mf(e,t,a){let r=Sn(e.schema,t),o=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,n=e.settings.allowDangerousCharacters?0:1,s=e.quote,i;if(r.overloadedBoolean&&(a===r.attribute||a==="")?a=!0:(r.boolean||r.overloadedBoolean)&&(typeof a!="string"||a===r.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=ze(r.attribute,Object.assign({},e.settings.characterReferences,{subset:ja.name[o][n]}));return a===!0||(a=Array.isArray(a)?(r.commaSeparated?bn:kn)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=ze(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:ja.unquoted[o][n]}))),i!==a&&(e.settings.quoteSmart&&Br(a,s)>Br(a,e.alternative)&&(s=e.alternative),i=s+ze(a,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?ja.single:ja.double)[o][n],attribute:!0}))+s),l+(i&&"="+i))}var Ff=["<","&"];function $a(e,t,a,r){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:ze(e.value,Object.assign({},r.settings.characterReferences,{subset:Ff}))}function Li(e,t,a,r){return r.settings.allowDangerousHtml?e.value:$a(e,t,a,r)}function Ci(e,t,a,r){return r.all(e)}var Si=Tn("type",{invalid:Bf,unknown:Ef,handlers:{comment:pi,doctype:mi,element:Ii,raw:Li,root:Ci,text:$a}});function Bf(e){throw new Error("Expected node, not `"+e+"`")}function Ef(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Df={},_f={},Of=[];function po(e,t){let a=t||Df,r=a.quote||'"',o=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:Nf,all:Uf,settings:{omitOptionalTags:a.omitOptionalTags||!1,allowParseErrors:a.allowParseErrors||!1,allowDangerousCharacters:a.allowDangerousCharacters||!1,quoteSmart:a.quoteSmart||!1,preferUnquoted:a.preferUnquoted||!1,tightAttributes:a.tightAttributes||!1,upperDoctype:a.upperDoctype||!1,tightDoctype:a.tightDoctype||!1,bogusComments:a.bogusComments||!1,tightCommaSeparatedLists:a.tightCommaSeparatedLists||!1,tightSelfClosing:a.tightSelfClosing||!1,collapseEmptyAttributes:a.collapseEmptyAttributes||!1,allowDangerousHtml:a.allowDangerousHtml||!1,voids:a.voids||vn,characterReferences:a.characterReferences||_f,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?xa:yn,quote:r,alternative:o}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Nf(e,t,a){return Si(e,t,a,this)}function Uf(e){let t=[],a=e&&e.children||Of,r=-1;for(;++r<a.length;)t[r]=this.one(a[r],r,e);return t.join("")}function Xa(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(let[o,n]of Object.entries(t?.colorReplacements||{}))typeof n=="string"?a[o]=n:o===r&&Object.assign(a,n);return a}function Ze(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Hf(e){return Array.isArray(e)?e:[e]}async function Ai(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function Io(e){return!e||["plaintext","txt","text","plain"].includes(e)}function Ri(e){return e==="ansi"||Io(e)}function Lo(e){return e==="none"}function Mi(e){return Lo(e)}function Fi(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let r of a)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}function Za(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),r=0,o=[];for(let n=0;n<a.length;n+=2){let s=t?a[n]+(a[n+1]||""):a[n];o.push([s,r]),r+=a[n].length,r+=a[n+1]?.length||0}return o}function qf(e){let t=Za(e,!0).map(([o])=>o);function a(o){if(o===e.length)return{line:t.length-1,character:t[t.length-1].length};let n=o,s=0;for(let i of t){if(n<i.length)break;n-=i.length,s++}return{line:s,character:n}}function r(o,n){let s=0;for(let i=0;i<o;i++)s+=t[i].length;return s+=n,s}return{lines:t,indexToPos:a,posToIndex:r}}function Bi(e,t,a){let r=new Set;for(let n of e.matchAll(/:?lang=["']([^"']+)["']/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/\\begin\{([\w-]+)\}/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let s=n[1].toLowerCase().trim(),i=s.includes("/")?s.split("/").pop():s;i&&r.add(i)}if(!a)return Array.from(r);let o=a.getBundledLanguages();return Array.from(r).filter(n=>n&&o[n])}var Co="light-dark()",Gf=["color","background-color"];function Wf(e,t){let a=0,r=[];for(let o of t)o>a&&r.push({...e,content:e.content.slice(a,o),offset:e.offset+a}),a=o;return a<e.content.length&&r.push({...e,content:e.content.slice(a),offset:e.offset+a}),r}function Vf(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((r,o)=>r-o);return a.length?e.map(r=>r.flatMap(o=>{let n=a.filter(s=>o.offset<s&&s<o.offset+o.content.length).map(s=>s-o.offset).sort((s,i)=>s-i);return n.length?Wf(o,n):o})):e}function zf(e,t,a,r,o="css-vars"){let n={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(c=>Ka(e.variants[c])),i=new Set(s.flatMap(c=>Object.keys(c))),l={},u=(c,d)=>{let f=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[c]+(d==="color"?"":f)};return s.forEach((c,d)=>{for(let f of i){let p=c[f]||"inherit";if(d===0&&r&&Gf.includes(f))if(r===Co&&s.length>1){let m=t.findIndex(g=>g==="light"),L=t.findIndex(g=>g==="dark");if(m===-1||L===-1)throw new te('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let I=s[m][f]||"inherit",w=s[L][f]||"inherit";l[f]=`light-dark(${I}, ${w})`,o==="css-vars"&&(l[u(d,f)]=p)}else l[f]=p;else o==="css-vars"&&(l[u(d,f)]=p)}}),n.htmlStyle=l,n}function Ka(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&Le.Italic&&(t["font-style"]="italic"),e.fontStyle&Le.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&Le.Underline&&a.push("underline"),e.fontStyle&Le.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function go(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var Ei=new WeakMap;function er(e,t){Ei.set(e,t)}function sa(e){return Ei.get(e)}var Tt=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,a){return new e(Object.fromEntries(Hf(a).map(r=>[r,Ga])),t)}constructor(...t){if(t.length===2){let[a,r]=t;this.lang=r,this._stacks=a}else{let[a,r,o]=t;this.lang=r,this._stacks={[o]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return jf(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function jf(e){let t=[],a=new Set;function r(o){if(a.has(o))return;a.add(o);let n=o?.nameScopesList?.scopeName;n&&t.push(n),o.parent&&r(o.parent)}return r(e),t}function $f(e,t){if(!(e instanceof Tt))throw new te("Invalid grammar state");return e.getInternalStack(t)}function Xf(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let r=function(s){if(typeof s=="number"){if(s<0||s>a.source.length)throw new te(`Invalid decoration offset: ${s}. Code length: ${a.source.length}`);return{...o.indexToPos(s),offset:s}}else{let i=o.lines[s.line];if(i===void 0)throw new te(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${o.lines.length}`);let l=s.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new te(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,character:l,offset:o.posToIndex(s.line,l)}}},o=qf(a.source),n=(a.options.decorations||[]).map(s=>({...s,start:r(s.start),end:r(s.end)}));Kf(n),e.set(a.meta,{decorations:n,converter:o,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let o=t(this).decorations.flatMap(s=>[s.start.offset,s.end.offset]);return Vf(a,o)},code(a){if(!this.options.decorations?.length)return;let r=t(this),o=Array.from(a.children).filter(c=>c.type==="element"&&c.tagName==="span");if(o.length!==r.converter.lines.length)throw new te(`Number of lines in code element (${o.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function n(c,d,f,p){let m=o[c],L="",I=-1,w=-1;if(d===0&&(I=0),f===0&&(w=0),f===Number.POSITIVE_INFINITY&&(w=m.children.length),I===-1||w===-1)for(let h=0;h<m.children.length;h++)L+=Di(m.children[h]),I===-1&&L.length===d&&(I=h+1),w===-1&&L.length===f&&(w=h+1);if(I===-1)throw new te(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(w===-1)throw new te(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(I,w);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(I,g.length,h)}}function s(c,d){o[c]=i(o[c],d,"line")}function i(c,d,f){let p=d.properties||{},m=d.transform||(L=>L);return c.tagName=d.tagName||"span",c.properties={...c.properties,...p,class:c.properties.class},d.properties?.class&&Fi(c,d.properties.class),c=m(c,f)||c,c}let l=[],u=r.decorations.sort((c,d)=>d.start.offset-c.start.offset||c.end.offset-d.end.offset);for(let c of u){let{start:d,end:f}=c;if(d.line===f.line)n(d.line,d.character,f.character,c);else if(d.line<f.line){n(d.line,d.character,Number.POSITIVE_INFINITY,c);for(let p=d.line+1;p<f.line;p++)l.unshift(()=>s(p,c));n(f.line,0,f.character,c)}}l.forEach(c=>c())}}}function Kf(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new te(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let r=t+1;r<e.length;r++){let o=e[r],n=a.start.offset<=o.start.offset&&o.start.offset<a.end.offset,s=a.start.offset<o.end.offset&&o.end.offset<=a.end.offset,i=o.start.offset<=a.start.offset&&a.start.offset<o.end.offset,l=o.start.offset<a.end.offset&&a.end.offset<=o.end.offset;if(n||s||i||l){if(n&&s||i&&l||i&&a.start.offset===a.end.offset||s&&o.start.offset===o.end.offset)continue;throw new te(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(o.start)} intersect.`)}}}}function Di(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Di).join(""):""}var Qf=[Xf()];function Qa(e){let t=Jf(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Qf]}function Jf(e){let t=[],a=[],r=[];for(let o of e)switch(o.enforce){case"pre":t.push(o);break;case"post":a.push(o);break;default:r.push(o)}return{pre:t,post:a,normal:r}}var ft=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],mo={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Yf(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let r=e.indexOf("m",a);if(r!==-1)return{sequence:e.substring(a+2,r).split(";"),startPosition:a,position:r+1}}return{position:e.length}}function yi(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(r=>Number.parseInt(r));return a.length!==3||a.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function Zf(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let r=Number.parseInt(a);if(!Number.isNaN(r))if(r===0)t.push({type:"resetAll"});else if(r<=9)mo[r]&&t.push({type:"setDecoration",value:mo[r]});else if(r<=29){let o=mo[r-20];o&&(t.push({type:"resetDecoration",value:o}),o==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-30]}});else if(r===38){let o=yi(e);o&&t.push({type:"setForegroundColor",value:o})}else if(r===39)t.push({type:"resetForegroundColor"});else if(r<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-40]}});else if(r===48){let o=yi(e);o&&t.push({type:"setBackgroundColor",value:o})}else r===49?t.push({type:"resetBackgroundColor"}):r===53?t.push({type:"setDecoration",value:"overline"}):r===55?t.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-90+8]}}):r>=100&&r<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-100+8]}})}return t}function ep(){let e=null,t=null,a=new Set;return{parse(r){let o=[],n=0;do{let s=Yf(r,n),i=s.sequence?r.substring(n,s.startPosition):r.substring(n);if(i.length>0&&o.push({value:i,foreground:e,background:t,decorations:new Set(a)}),s.sequence){let l=Zf(s.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}n=s.position}while(n<r.length);return o}}}var tp={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function ap(e=tp){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function o(){if(r)return r;r=[];for(let u=0;u<ft.length;u++)r.push(t(ft[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let c=0;c<6;c++)for(let d=0;d<6;d++)r.push(a([i[u],i[c],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)r.push(a([l,l,l]));return r}function n(i){return o()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return n(i.index)}}return{value:s}}var rp={black:"#000000",red:"#cd3131",green:"#0DBC79",yellow:"#E5E510",blue:"#2472C8",magenta:"#BC3FBC",cyan:"#11A8CD",white:"#E5E5E5",brightBlack:"#666666",brightRed:"#F14C4C",brightGreen:"#23D18B",brightYellow:"#F5F543",brightBlue:"#3B8EEA",brightMagenta:"#D670D6",brightCyan:"#29B8DB",brightWhite:"#FFFFFF"};function op(e,t,a){let r=Xa(e,a),o=Za(t),n=Object.fromEntries(ft.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,c=e.colors?.[u];return[l,c||rp[l]]})),s=ap(n),i=ep();return o.map(l=>i.parse(l[0]).map(u=>{let c,d;u.decorations.has("reverse")?(c=u.background?s.value(u.background):e.bg,d=u.foreground?s.value(u.foreground):e.fg):(c=u.foreground?s.value(u.foreground):e.fg,d=u.background?s.value(u.background):void 0),c=Ze(c,r),d=Ze(d,r),u.decorations.has("dim")&&(c=np(c));let f=Le.None;return u.decorations.has("bold")&&(f|=Le.Bold),u.decorations.has("italic")&&(f|=Le.Italic),u.decorations.has("underline")&&(f|=Le.Underline),u.decorations.has("strikethrough")&&(f|=Le.Strikethrough),{content:u.value,offset:l[1],color:c,bgColor:d,fontStyle:f}}))}function np(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let r=t[1];if(r.length===8){let o=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${o}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){let o=r[0],n=r[1],s=r[2],i=r[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${o}${o}${n}${n}${s}${s}${l}`}else if(r.length===3){let o=r[0],n=r[1],s=r[2];return`#${o}${o}${n}${n}${s}${s}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function So(e,t,a={}){let{theme:r=e.getLoadedThemes()[0]}=a,o=e.resolveLangAlias(a.lang||"text");if(Io(o)||Lo(r))return Za(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:n,colorMap:s}=e.setTheme(r);if(o==="ansi")return op(n,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new te(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(n.name))throw new te(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${n.name}"`)}return ip(t,i,n,s,a)}function sp(...e){if(e.length===2)return sa(e[1]);let[t,a,r={}]=e,{lang:o="text",theme:n=t.getLoadedThemes()[0]}=r;if(Io(o)||Lo(n))throw new te("Plain language does not have grammar state");if(o==="ansi")throw new te("ANSI language does not have grammar state");let{theme:s,colorMap:i}=t.setTheme(n),l=t.getLanguage(o);return new Tt(yo(a,l,s,i,r).stateStack,l.name,s.name)}function ip(e,t,a,r,o){let n=yo(e,t,a,r,o),s=new Tt(n.stateStack,t.name,a.name);return er(n.tokens,s),n.tokens}function yo(e,t,a,r,o){let n=Xa(a,o),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=o,l=Za(e),u=o.grammarState?$f(o.grammarState,a.name)??Ga:o.grammarContextCode!=null?yo(o.grammarContextCode,t,a,r,{...o,grammarState:void 0,grammarContextCode:void 0}).stateStack:Ga,c=[],d=[];for(let f=0,p=l.length;f<p;f++){let[m,L]=l[f];if(m===""){c=[],d.push([]);continue}if(s>0&&m.length>=s){c=[],d.push([{content:m,offset:L,color:"",fontStyle:0}]);continue}let I,w,g;o.includeExplanation&&(I=t.tokenizeLine(m,u,i),w=I.tokens,g=0);let h=t.tokenizeLine2(m,u,i),x=h.tokens.length/2;for(let y=0;y<x;y++){let T=h.tokens[2*y],v=y+1<x?h.tokens[2*y+2]:m.length;if(T===v)continue;let A=h.tokens[2*y+1],M=Ze(r[ct.getForeground(A)],n),F=ct.getFontStyle(A),P={content:m.substring(T,v),offset:L+T,color:M,fontStyle:F};if(o.includeExplanation){let b=[];if(o.includeExplanation!=="scopeName")for(let G of a.settings){let S;switch(typeof G.scope){case"string":S=G.scope.split(/,/).map(B=>B.trim());break;case"object":S=G.scope;break;default:continue}b.push({settings:G,selectors:S.map(B=>B.split(/ /))})}P.explanation=[];let q=0;for(;T+q<v;){let G=w[g],S=m.substring(G.startIndex,G.endIndex);q+=S.length,P.explanation.push({content:S,scopes:o.includeExplanation==="scopeName"?lp(G.scopes):up(b,G.scopes)}),g+=1}}c.push(P)}d.push(c),c=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function lp(e){return e.map(t=>({scopeName:t}))}function up(e,t){let a=[];for(let r=0,o=t.length;r<o;r++){let n=t[r];a[r]={scopeName:n,themeMatches:cp(e,n,t.slice(0,r))}}return a}function bi(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function dp(e,t,a){if(!bi(e[e.length-1],t))return!1;let r=e.length-2,o=a.length-1;for(;r>=0&&o>=0;)bi(e[r],a[o])&&(r-=1),o-=1;return r===-1}function cp(e,t,a){let r=[];for(let{selectors:o,settings:n}of e)for(let s of o)if(dp(s,t,a)){r.push(n);break}return r}function _i(e,t,a){let r=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),o=r.map(l=>{let u=So(e,t,{...a,theme:l.theme}),c=sa(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:c,theme:d}}),n=fp(...o.map(l=>l.tokens)),s=n[0].map((l,u)=>l.map((c,d)=>{let f={content:c.content,variants:{},offset:c.offset};return"includeExplanation"in a&&a.includeExplanation&&(f.explanation=c.explanation),n.forEach((p,m)=>{let{content:L,explanation:I,offset:w,...g}=p[u][d];f.variants[r[m].color]=g}),f})),i=o[0].state?new Tt(Object.fromEntries(o.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),o[0].state.lang):void 0;return i&&er(s,i),s}function fp(...e){let t=e.map(()=>[]),a=e.length;for(let r=0;r<e[0].length;r++){let o=e.map(l=>l[r]),n=t.map(()=>[]);t.forEach((l,u)=>l.push(n[u]));let s=o.map(()=>0),i=o.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let c=i[u];c.content.length===l?(n[u].push(c),s[u]+=1,i[u]=o[u][s[u]]):(n[u].push({...c,content:c.content.slice(0,l)}),i[u]={...c,content:c.content.slice(l),offset:c.offset+l})}}}return t}function Ja(e,t,a){let r,o,n,s,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:c="--shiki-",colorsRendering:d="css-vars"}=a,f=Object.entries(a.themes).filter(w=>w[1]).map(w=>({color:w[0],theme:w[1]})).sort((w,g)=>w.color===u?-1:g.color===u?1:0);if(f.length===0)throw new te("`themes` option must not be empty");let p=_i(e,t,a);if(l=sa(p),u&&Co!==u&&!f.find(w=>w.color===u))throw new te(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=f.map(w=>e.getTheme(w.theme)),L=f.map(w=>w.color);n=p.map(w=>w.map(g=>zf(g,L,c,u,d))),l&&er(n,l);let I=f.map(w=>Xa(w.theme,a));o=ki(f,m,I,c,u,"fg",d),r=ki(f,m,I,c,u,"bg",d),s=`shiki-themes ${m.map(w=>w.name).join(" ")}`,i=u?void 0:[o,r].join(";")}else if("theme"in a){let u=Xa(a.theme,a);n=So(e,t,a);let c=e.getTheme(a.theme);r=Ze(c.bg,u),o=Ze(c.fg,u),s=c.name,l=sa(n)}else throw new te("Invalid options, either `theme` or `themes` must be provided");return{tokens:n,fg:o,bg:r,themeName:s,rootStyle:i,grammarState:l}}function ki(e,t,a,r,o,n,s){return e.map((i,l)=>{let u=Ze(t[l][n],a[l])||"inherit",c=`${r+i.color}${n==="bg"?"-bg":""}:${u}`;if(l===0&&o){if(o===Co&&e.length>1){let d=e.findIndex(L=>L.color==="light"),f=e.findIndex(L=>L.color==="dark");if(d===-1||f===-1)throw new te('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Ze(t[d][n],a[d])||"inherit",m=Ze(t[f][n],a[f])||"inherit";return`light-dark(${p}, ${m});${c}`}return u}return s==="css-vars"?c:null}).filter(i=>!!i).join(";")}function Ya(e,t,a,r={meta:{},options:a,codeToHast:(o,n)=>Ya(e,o,n),codeToTokens:(o,n)=>Ja(e,o,n)}){let o=t;for(let m of Qa(a))o=m.preprocess?.call(r,o,a)||o;let{tokens:n,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:c}=Ja(e,o,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=a;d===!0?n=mp(n):d==="never"&&(n=hp(n)),f&&(n=gp(n));let p={...r,get source(){return o}};for(let m of Qa(a))n=m.tokens?.call(p,n)||n;return pp(n,{...a,fg:s,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,c)}function pp(e,t,a,r=sa(e)){let o=Qa(t),n=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[L,I]of Object.entries(t.meta||{}))L.startsWith("_")||(u[L]=I);let c={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:n},f=[],p={...a,structure:i,addClassToHast:Fi,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return c},get code(){return d},get lines(){return f}};if(e.forEach((L,I)=>{I&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&n.push({type:"text",value:`
|
|
13
|
-
`}));let w={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of L){let x={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},y=go(h.htmlStyle||Ka(h));y&&(x.properties.style=y);for(let T of o)x=T?.span?.call(p,x,I+1,g,w,h)||x;i==="inline"?s.children.push(x):i==="classic"&&w.children.push(x),g+=h.content.length}if(i==="classic"){for(let h of o)w=h?.line?.call(p,w,I+1)||w;f.push(w),n.push(w)}else i==="inline"&&f.push(w)}),i==="classic"){for(let L of o)d=L?.code?.call(p,d)||d;c.children.push(d);for(let L of o)c=L?.pre?.call(p,c)||c;s.children.push(c)}else if(i==="inline"){let L=[],I={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of s.children)h.type==="element"&&h.tagName==="br"?(L.push(I),I={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&I.children.push(h);L.push(I);let g={type:"element",tagName:"code",properties:{},children:L};for(let h of o)g=h?.code?.call(p,g)||g;s.children=[];for(let h=0;h<g.children.length;h++){h>0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});let x=g.children[h];x.type==="element"&&s.children.push(...x.children)}}let m=s;for(let L of o)m=L?.root?.call(p,m)||m;return r&&er(m,r),m}function mp(e){return e.map(t=>{let a=[],r="",o;return t.forEach((n,s)=>{let l=!(n.fontStyle&&(n.fontStyle&Le.Underline||n.fontStyle&Le.Strikethrough));l&&n.content.match(/^\s+$/)&&t[s+1]?(o===void 0&&(o=n.offset),r+=n.content):r?(l?a.push({...n,offset:o,content:r+n.content}):a.push({content:r,offset:o},n),o=void 0,r=""):a.push(n)}),a})}function hp(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let r=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return a;let[,o,n,s]=r;if(!o&&!s)return a;let i=[{...a,offset:a.offset+o.length,content:n}];return o&&i.unshift({content:o,offset:a.offset}),s&&i.push({content:s,offset:a.offset+o.length+n.length}),i}))}function gp(e){return e.map(t=>{let a=[];for(let r of t){if(a.length===0){a.push({...r});continue}let o=a[a.length-1],n=go(o.htmlStyle||Ka(o)),s=go(r.htmlStyle||Ka(r)),i=o.fontStyle&&(o.fontStyle&Le.Underline||o.fontStyle&Le.Strikethrough),l=r.fontStyle&&(r.fontStyle&Le.Underline||r.fontStyle&Le.Strikethrough);!i&&!l&&n===s?o.content+=r.content:a.push({...r})}return a})}var wp=po;function xp(e,t,a){let r={meta:{},options:a,codeToHast:(n,s)=>Ya(e,n,s),codeToTokens:(n,s)=>Ja(e,n,s)},o=wp(Ya(e,t,a,r));for(let n of Qa(a))o=n.postprocess?.call(r,o,a)||o;return o}var Ti={light:"#333333",dark:"#bbbbbb"},vi={light:"#fffffe",dark:"#1e1e1e"},Pi="__shiki_resolved";function bo(e){if(e?.[Pi])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:a,fg:r}=t;if(!a||!r){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),r||(r=t.type==="light"?Ti.light:Ti.dark),a||(a=t.type==="light"?vi.light:vi.dark),t.fg=r,t.bg=a}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let o=0,n=new Map;function s(i){if(n.has(i))return n.get(i);o+=1;let l=`#${o.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(n.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let c={...i,settings:{...i.settings}};if(l){let d=s(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,c.settings.foreground=d}if(u){let d=s(i.settings.background);t.colorReplacements[d]=i.settings.background,c.settings.background=d}return c});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Pi,{enumerable:!1,writable:!1,value:!0}),t}async function Oi(e){return Array.from(new Set((await Promise.all(e.filter(t=>!Ri(t)).map(async t=>await Ai(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Ni(e){return(await Promise.all(e.map(async a=>Mi(a)?null:bo(await Ai(a))))).filter(a=>!!a)}var ho=3,Ip=!1;function Lp(e,t=3){if(ho&&!(typeof ho=="number"&&t>ho)){if(Ip)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var Ye=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ui(e,t){if(!t)return e;if(t[e]){let a=new Set([e]);for(;t[e];){if(e=t[e],a.has(e))throw new Ye(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var wo=class extends ri{constructor(t,a,r,o={}){super(t),this._resolver=t,this._themes=a,this._langs=r,this._alias=o,this._themes.map(n=>this.loadTheme(n)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=bo(t);return a.name&&(this._resolvedThemes.set(a.name,a),this._loadedThemesCache=null),a}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let a=this._textmateThemeCache.get(t);a||(a=Zt.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=Ui(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(n=>n.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let o=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(o.name=t.name,this._resolvedGrammars.set(t.name,o),t.aliases&&t.aliases.forEach(n=>{this._alias[n]=t.name}),this._loadedLanguagesCache=null,a.size)for(let n of a)this._resolvedGrammars.delete(n.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(n.scopeName),this._syncRegistry?._grammars?.delete(n.scopeName),this.loadLanguage(this._langMap.get(n.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let o of t)this.resolveEmbeddedLanguages(o);let a=Array.from(this._langGraph.entries()),r=a.filter(([o,n])=>!n);if(r.length){let o=a.filter(([n,s])=>s?(s.embeddedLanguages||s.embeddedLangs)?.some(l=>r.map(([u])=>u).includes(l)):!1).filter(n=>!r.includes(n));throw new Ye(`Missing languages ${r.map(([n])=>`\`${n}\``).join(", ")}, required by ${o.map(([n])=>`\`${n}\``).join(", ")}`)}for(let[o,n]of a)this._resolver.addLanguage(n);for(let[o,n]of a)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let r of a)this._langGraph.set(r,this._langMap.get(r))}},xo=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},a.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(a=>{this._langs.set(a,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(a=>{this._injections.get(a)||this._injections.set(a,[]),this._injections.get(a).push(t.scopeName)})}getInjections(t){let a=t.split("."),r=[];for(let o=1;o<=a.length;o++){let n=a.slice(0,o).join(".");r=[...r,...this._injections.get(n)||[]]}return r}},na=0;function Cp(e){na+=1,e.warnings!==!1&&na>=10&&na%10===0&&console.warn(`[Shiki] ${na} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new Ye("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(bo),o=new xo(e.engine,a),n=new wo(o,r,a,e.langAlias),s;function i(h){return Ui(h,e.langAlias)}function l(h){w();let x=n.getGrammar(typeof h=="string"?h:h.name);if(!x)throw new Ye(`Language \`${h}\` not found, you may need to load it first`);return x}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};w();let x=n.getTheme(h);if(!x)throw new Ye(`Theme \`${h}\` not found, you may need to load it first`);return x}function c(h){w();let x=u(h);s!==h&&(n.setTheme(x),s=h);let y=n.getColorMap();return{theme:x,colorMap:y}}function d(){return w(),n.getLoadedThemes()}function f(){return w(),n.getLoadedLanguages()}function p(...h){w(),n.loadLanguages(h.flat(1))}async function m(...h){return p(await Oi(h))}function L(...h){w();for(let x of h.flat(1))n.loadTheme(x)}async function I(...h){return w(),L(await Ni(h))}function w(){if(t)throw new Ye("Shiki instance has been disposed")}function g(){t||(t=!0,n.dispose(),na-=1)}return{setTheme:c,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:f,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:I,loadThemeSync:L,dispose:g,[Symbol.dispose]:g}}async function Sp(e){e.engine||Lp("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,r]=await Promise.all([Ni(e.themes||[]),Oi(e.langs||[]),e.engine]);return Cp({...e,themes:t,langs:a,engine:r})}async function yp(e){let t=await Sp(e);return{getLastGrammarState:(...a)=>sp(t,...a),codeToTokensBase:(a,r)=>So(t,a,r),codeToTokensWithThemes:(a,r)=>_i(t,a,r),codeToTokens:(a,r)=>Ja(t,a,r),codeToHast:(a,r)=>Ya(t,a,r),codeToHtml:(a,r)=>xp(t,a,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function Hi(e){let t=e.langs,a=e.themes,r=e.engine;async function o(n){function s(d){if(typeof d=="string"){if(d=n.langAlias?.[d]||d,Ri(d))return[];let f=t[d];if(!f)throw new te(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return f}return d}function i(d){if(Mi(d))return"none";if(typeof d=="string"){let f=a[d];if(!f)throw new te(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return f}return d}let l=(n.themes??[]).map(d=>i(d)),u=(n.langs??[]).map(d=>s(d)),c=await yp({engine:n.engine??r(),...n,themes:l,langs:u});return{...c,loadLanguage(...d){return c.loadLanguage(...d.map(s))},loadTheme(...d){return c.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return o}function bp(e){let t;async function a(r={}){if(t){let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}else{t=e({...r,themes:[],langs:[]});let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}}return a}function qi(e,t){let a=bp(e);async function r(o,n){let s=await a({langs:[n.lang],themes:"theme"in n?[n.theme]:Object.values(n.themes)}),i=await t?.guessEmbeddedLanguages?.(o,n.lang,s);return i&&await s.loadLanguage(...i),s}return{getSingletonHighlighter(o){return a(o)},async codeToHtml(o,n){return(await r(o,n)).codeToHtml(o,n)},async codeToHast(o,n){return(await r(o,n)).codeToHast(o,n)},async codeToTokens(o,n){return(await r(o,n)).codeToTokens(o,n)},async codeToTokensBase(o,n){return(await r(o,n)).codeToTokensBase(o,n)},async codeToTokensWithThemes(o,n){return(await r(o,n)).codeToTokensWithThemes(o,n)},async getLastGrammarState(o,n){return(await a({langs:[n.lang],themes:[n.theme]})).getLastGrammarState(o,n)}}}var ko=[{id:"abap",name:"ABAP",import:(()=>import("../abap-KGVIZMDC.js"))},{id:"actionscript-3",name:"ActionScript",import:(()=>import("../actionscript-3-2UHK5QYP.js"))},{id:"ada",name:"Ada",import:(()=>import("../ada-JKTWR5BV.js"))},{id:"angular-html",name:"Angular HTML",import:(()=>import("../angular-html-EOIKHM3D.js"))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>import("../angular-ts-DFS2FCNO.js"))},{id:"apache",name:"Apache Conf",import:(()=>import("../apache-MPGFGQFB.js"))},{id:"apex",name:"Apex",import:(()=>import("../apex-BOAZL66Z.js"))},{id:"apl",name:"APL",import:(()=>import("../apl-FBR445XW.js"))},{id:"applescript",name:"AppleScript",import:(()=>import("../applescript-C4CJ3STL.js"))},{id:"ara",name:"Ara",import:(()=>import("../ara-FSFFBRSD.js"))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>import("../asciidoc-QQK2LANG.js"))},{id:"asm",name:"Assembly",import:(()=>import("../asm-X43A2VYW.js"))},{id:"astro",name:"Astro",import:(()=>import("../astro-BMSTTQT4.js"))},{id:"awk",name:"AWK",import:(()=>import("../awk-4Z3PRTF7.js"))},{id:"ballerina",name:"Ballerina",import:(()=>import("../ballerina-JCXSJ2QD.js"))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>import("../bat-XFWR7RMZ.js"))},{id:"beancount",name:"Beancount",import:(()=>import("../beancount-7BBDB4BH.js"))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>import("../berry-PQ2BEJIZ.js"))},{id:"bibtex",name:"BibTeX",import:(()=>import("../bibtex-J2PAB23I.js"))},{id:"bicep",name:"Bicep",import:(()=>import("../bicep-TNKT6R3W.js"))},{id:"blade",name:"Blade",import:(()=>import("../blade-OHP5YUT7.js"))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>import("../bsl-PQW6E45S.js"))},{id:"c",name:"C",import:(()=>import("../c-PZBJFNXE.js"))},{id:"c3",name:"C3",import:(()=>import("../c3-GP7XYHE6.js"))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>import("../cadence-NABGDHKY.js"))},{id:"cairo",name:"Cairo",import:(()=>import("../cairo-WQSC2GLN.js"))},{id:"clarity",name:"Clarity",import:(()=>import("../clarity-NXNSINKX.js"))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>import("../clojure-Y57BKRMA.js"))},{id:"cmake",name:"CMake",import:(()=>import("../cmake-LVMEA3JZ.js"))},{id:"cobol",name:"COBOL",import:(()=>import("../cobol-LJNKRWP5.js"))},{id:"codeowners",name:"CODEOWNERS",import:(()=>import("../codeowners-JYHOTXQS.js"))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>import("../codeql-IWWSYR3L.js"))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>import("../coffee-NNDQ5QXC.js"))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>import("../common-lisp-JKXCDYH3.js"))},{id:"coq",name:"Coq",import:(()=>import("../coq-BEHPNP64.js"))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>import("../cpp-IALOHSZA.js"))},{id:"crystal",name:"Crystal",import:(()=>import("../crystal-ZDP3FIUI.js"))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>import("../csharp-ODFBXRGA.js"))},{id:"css",name:"CSS",import:(()=>import("../css-CJGL5AVH.js"))},{id:"csv",name:"CSV",import:(()=>import("../csv-LIK4TU3Z.js"))},{id:"cue",name:"CUE",import:(()=>import("../cue-UAAEAKHI.js"))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>import("../cypher-SZPVUQZJ.js"))},{id:"d",name:"D",import:(()=>import("../d-VSCA3XHG.js"))},{id:"dart",name:"Dart",import:(()=>import("../dart-A4PE6FIS.js"))},{id:"dax",name:"DAX",import:(()=>import("../dax-TILIKSFB.js"))},{id:"desktop",name:"Desktop",import:(()=>import("../desktop-75KK3D55.js"))},{id:"diff",name:"Diff",import:(()=>import("../diff-HOT6P45M.js"))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>import("../docker-FF35TY6T.js"))},{id:"dotenv",name:"dotEnv",import:(()=>import("../dotenv-FVPPHJI3.js"))},{id:"dream-maker",name:"Dream Maker",import:(()=>import("../dream-maker-SYE3ZPSJ.js"))},{id:"edge",name:"Edge",import:(()=>import("../edge-CCLQ2CKA.js"))},{id:"elixir",name:"Elixir",import:(()=>import("../elixir-F6DQGRKA.js"))},{id:"elm",name:"Elm",import:(()=>import("../elm-5QRQXDZ6.js"))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>import("../emacs-lisp-NJ4S4OHV.js"))},{id:"erb",name:"ERB",import:(()=>import("../erb-KUYJX32Q.js"))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>import("../erlang-APEONNZ6.js"))},{id:"fennel",name:"Fennel",import:(()=>import("../fennel-7OCMFVPS.js"))},{id:"fish",name:"Fish",import:(()=>import("../fish-BC46ME2N.js"))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>import("../fluent-MXZS6EX3.js"))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>import("../fortran-fixed-form-35BC2KX6.js"))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>import("../fortran-free-form-AXRAI2HH.js"))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>import("../fsharp-JKNSQXHD.js"))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>import("../gdresource-ZMKZGPZV.js"))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>import("../gdscript-HNCVXEYB.js"))},{id:"gdshader",name:"GDShader",import:(()=>import("../gdshader-XAJ4QRYP.js"))},{id:"genie",name:"Genie",import:(()=>import("../genie-HEFVQZAP.js"))},{id:"gherkin",name:"Gherkin",import:(()=>import("../gherkin-OFBRDPXX.js"))},{id:"git-commit",name:"Git Commit Message",import:(()=>import("../git-commit-ZE2M3Q5H.js"))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>import("../git-rebase-3N3INGLU.js"))},{id:"gleam",name:"Gleam",import:(()=>import("../gleam-NFFQFQLP.js"))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>import("../glimmer-js-RSUW6JYN.js"))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>import("../glimmer-ts-EZGWLX5T.js"))},{id:"glsl",name:"GLSL",import:(()=>import("../glsl-VJLRYEVJ.js"))},{id:"gn",name:"GN",import:(()=>import("../gn-UH2XQWLG.js"))},{id:"gnuplot",name:"Gnuplot",import:(()=>import("../gnuplot-K6IV6NNR.js"))},{id:"go",name:"Go",import:(()=>import("../go-BDV7RR5G.js"))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>import("../graphql-NLMAEKLI.js"))},{id:"groovy",name:"Groovy",import:(()=>import("../groovy-SX7K3XGL.js"))},{id:"hack",name:"Hack",import:(()=>import("../hack-3TGPQNR2.js"))},{id:"haml",name:"Ruby Haml",import:(()=>import("../haml-335RVEQR.js"))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>import("../handlebars-73IS6B2J.js"))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>import("../haskell-P5PTJARU.js"))},{id:"haxe",name:"Haxe",import:(()=>import("../haxe-RCPSSA3N.js"))},{id:"hcl",name:"HashiCorp HCL",import:(()=>import("../hcl-AKKZAVC2.js"))},{id:"hjson",name:"Hjson",import:(()=>import("../hjson-REXV6F6N.js"))},{id:"hlsl",name:"HLSL",import:(()=>import("../hlsl-AJ7VWOVL.js"))},{id:"html",name:"HTML",import:(()=>import("../html-654LNGWF.js"))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>import("../html-derivative-CMQ7BFDQ.js"))},{id:"http",name:"HTTP",import:(()=>import("../http-7ZVVH3VM.js"))},{id:"hurl",name:"Hurl",import:(()=>import("../hurl-B6WXEN45.js"))},{id:"hxml",name:"HXML",import:(()=>import("../hxml-5BXJCAAU.js"))},{id:"hy",name:"Hy",import:(()=>import("../hy-SB4TMFE7.js"))},{id:"imba",name:"Imba",import:(()=>import("../imba-Y64MHYWP.js"))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>import("../ini-J2OP4CNW.js"))},{id:"java",name:"Java",import:(()=>import("../java-MJKJ5GPP.js"))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>import("../javascript-IYAGHPR6.js"))},{id:"jinja",name:"Jinja",import:(()=>import("../jinja-WPD26JJ6.js"))},{id:"jison",name:"Jison",import:(()=>import("../jison-UYDZQBN5.js"))},{id:"json",name:"JSON",import:(()=>import("../json-5V4JESJO.js"))},{id:"json5",name:"JSON5",import:(()=>import("../json5-7SHUZD3R.js"))},{id:"jsonc",name:"JSON with Comments",import:(()=>import("../jsonc-X3Z34FN3.js"))},{id:"jsonl",name:"JSON Lines",import:(()=>import("../jsonl-6I3D2HM6.js"))},{id:"jsonnet",name:"Jsonnet",import:(()=>import("../jsonnet-PZEQIBYV.js"))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>import("../jssm-GJJ25IKR.js"))},{id:"jsx",name:"JSX",import:(()=>import("../jsx-NI2J427C.js"))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>import("../julia-CPV3A4MM.js"))},{id:"kdl",name:"KDL",import:(()=>import("../kdl-IA7HA2TL.js"))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>import("../kotlin-CCRMGYMI.js"))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>import("../kusto-7DW25GYH.js"))},{id:"latex",name:"LaTeX",import:(()=>import("../latex-F2CTDTFG.js"))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>import("../lean-MGJJWBTR.js"))},{id:"less",name:"Less",import:(()=>import("../less-WFSIMX5G.js"))},{id:"liquid",name:"Liquid",import:(()=>import("../liquid-7CFNUD3V.js"))},{id:"llvm",name:"LLVM IR",import:(()=>import("../llvm-CFQSEDXB.js"))},{id:"log",name:"Log file",import:(()=>import("../log-YQNML6LA.js"))},{id:"logo",name:"Logo",import:(()=>import("../logo-2PPKBL2M.js"))},{id:"lua",name:"Lua",import:(()=>import("../lua-RPAMRKNG.js"))},{id:"luau",name:"Luau",import:(()=>import("../luau-GR2DOH6N.js"))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>import("../make-DQQEEPI4.js"))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>import("../markdown-OC5ILZSY.js"))},{id:"marko",name:"Marko",import:(()=>import("../marko-XSB3CTWQ.js"))},{id:"matlab",name:"MATLAB",import:(()=>import("../matlab-YQY6FS4U.js"))},{id:"mdc",name:"MDC",import:(()=>import("../mdc-XWCHWP6B.js"))},{id:"mdx",name:"MDX",import:(()=>import("../mdx-ZIH2JLVR.js"))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>import("../mermaid-WPX56SBB.js"))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>import("../mipsasm-IDXQRZ2B.js"))},{id:"mojo",name:"Mojo",import:(()=>import("../mojo-MH7EQVOK.js"))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>import("../moonbit-5JDFTWKE.js"))},{id:"move",name:"Move",import:(()=>import("../move-RWSXKYDY.js"))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>import("../narrat-QJUEXMVV.js"))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>import("../nextflow-2EICNZA3.js"))},{id:"nginx",name:"Nginx",import:(()=>import("../nginx-RIWAEC5Z.js"))},{id:"nim",name:"Nim",import:(()=>import("../nim-U57UBFBS.js"))},{id:"nix",name:"Nix",import:(()=>import("../nix-XCKQVWCN.js"))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>import("../nushell-QGW7HANA.js"))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>import("../objective-c-V7KYXFHL.js"))},{id:"objective-cpp",name:"Objective-C++",import:(()=>import("../objective-cpp-NKUEWVGU.js"))},{id:"ocaml",name:"OCaml",import:(()=>import("../ocaml-QT2CZJZN.js"))},{id:"odin",name:"Odin",import:(()=>import("../odin-MVMIXBHP.js"))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>import("../openscad-BJDUXUUZ.js"))},{id:"pascal",name:"Pascal",import:(()=>import("../pascal-HGWEFD6L.js"))},{id:"perl",name:"Perl",import:(()=>import("../perl-IZHDGBO6.js"))},{id:"php",name:"PHP",import:(()=>import("../php-MNP62HWP.js"))},{id:"pkl",name:"Pkl",import:(()=>import("../pkl-VA5ZK5DW.js"))},{id:"plsql",name:"PL/SQL",import:(()=>import("../plsql-J7A7YWFH.js"))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>import("../po-5RDI65JX.js"))},{id:"polar",name:"Polar",import:(()=>import("../polar-VUJL2E7F.js"))},{id:"postcss",name:"PostCSS",import:(()=>import("../postcss-ESTB5G7N.js"))},{id:"powerquery",name:"PowerQuery",import:(()=>import("../powerquery-ODTEKQCW.js"))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>import("../powershell-ZOYRAWBJ.js"))},{id:"prisma",name:"Prisma",import:(()=>import("../prisma-QHG2W5GE.js"))},{id:"prolog",name:"Prolog",import:(()=>import("../prolog-CSAPG5PH.js"))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>import("../proto-WDNJBTSW.js"))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>import("../pug-P7LS6DER.js"))},{id:"puppet",name:"Puppet",import:(()=>import("../puppet-LHFWHTY3.js"))},{id:"purescript",name:"PureScript",import:(()=>import("../purescript-DUFJP4FY.js"))},{id:"python",name:"Python",aliases:["py"],import:(()=>import("../python-5ZNZSNQ2.js"))},{id:"qml",name:"QML",import:(()=>import("../qml-LTAXB6W5.js"))},{id:"qmldir",name:"QML Directory",import:(()=>import("../qmldir-7Z2ODQLM.js"))},{id:"qss",name:"Qt Style Sheets",import:(()=>import("../qss-FDFD3HQD.js"))},{id:"r",name:"R",import:(()=>import("../r-6ZOS53WN.js"))},{id:"racket",name:"Racket",import:(()=>import("../racket-7AYZPEUI.js"))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>import("../raku-A4F6VHVG.js"))},{id:"razor",name:"ASP.NET Razor",import:(()=>import("../razor-4QOCK4UD.js"))},{id:"reg",name:"Windows Registry Script",import:(()=>import("../reg-FAPHGG66.js"))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>import("../regexp-5BYLYA2R.js"))},{id:"rel",name:"Rel",import:(()=>import("../rel-7DJ7HHU4.js"))},{id:"riscv",name:"RISC-V",import:(()=>import("../riscv-YIYJATFG.js"))},{id:"ron",name:"RON",import:(()=>import("../ron-HYYMCHTX.js"))},{id:"rosmsg",name:"ROS Interface",import:(()=>import("../rosmsg-FDNH6QF7.js"))},{id:"rst",name:"reStructuredText",import:(()=>import("../rst-6KQSGP2V.js"))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>import("../ruby-OWE2HOOR.js"))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>import("../rust-V3GMJA2K.js"))},{id:"sas",name:"SAS",import:(()=>import("../sas-D3G4GB3X.js"))},{id:"sass",name:"Sass",import:(()=>import("../sass-JTO65AGR.js"))},{id:"scala",name:"Scala",import:(()=>import("../scala-4XQGFSVM.js"))},{id:"scheme",name:"Scheme",import:(()=>import("../scheme-CB7AC7IL.js"))},{id:"scss",name:"SCSS",import:(()=>import("../scss-6SKV4OGI.js"))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>import("../sdbl-LKGZFJ46.js"))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>import("../shaderlab-K536DHEB.js"))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>import("../shellscript-LRNUKUSZ.js"))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>import("../shellsession-IBQK7VWQ.js"))},{id:"smalltalk",name:"Smalltalk",import:(()=>import("../smalltalk-DQOSWAW7.js"))},{id:"solidity",name:"Solidity",import:(()=>import("../solidity-V2FMZEG4.js"))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>import("../soy-VW3CKXWF.js"))},{id:"sparql",name:"SPARQL",import:(()=>import("../sparql-L2VKP7YP.js"))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>import("../splunk-KDKHP7GC.js"))},{id:"sql",name:"SQL",import:(()=>import("../sql-UF27CALT.js"))},{id:"ssh-config",name:"SSH Config",import:(()=>import("../ssh-config-JC2DQ6ED.js"))},{id:"stata",name:"Stata",import:(()=>import("../stata-7PXCUY24.js"))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>import("../stylus-2L7N3EZD.js"))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>import("../surrealql-ZY3E6XEL.js"))},{id:"svelte",name:"Svelte",import:(()=>import("../svelte-Q45XIK2A.js"))},{id:"swift",name:"Swift",import:(()=>import("../swift-XBH5HZSC.js"))},{id:"system-verilog",name:"SystemVerilog",import:(()=>import("../system-verilog-VRAUSZY3.js"))},{id:"systemd",name:"Systemd Units",import:(()=>import("../systemd-JOTSGJD4.js"))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>import("../talonscript-NNZRZKOU.js"))},{id:"tasl",name:"Tasl",import:(()=>import("../tasl-MBFZ4QNC.js"))},{id:"tcl",name:"Tcl",import:(()=>import("../tcl-4GEDCBVE.js"))},{id:"templ",name:"Templ",import:(()=>import("../templ-3XM7DLQ3.js"))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>import("../terraform-XTHOS4UK.js"))},{id:"tex",name:"TeX",import:(()=>import("../tex-UXMN2CV7.js"))},{id:"toml",name:"TOML",import:(()=>import("../toml-J6K55ZSV.js"))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>import("../ts-tags-XNK5N5RZ.js"))},{id:"tsv",name:"TSV",import:(()=>import("../tsv-DOUJHQDQ.js"))},{id:"tsx",name:"TSX",import:(()=>import("../tsx-G5BMVRHK.js"))},{id:"turtle",name:"Turtle",import:(()=>import("../turtle-JHJ7W6U5.js"))},{id:"twig",name:"Twig",import:(()=>import("../twig-OEIJ72KK.js"))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>import("../typescript-LMKEAHFC.js"))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>import("../typespec-5CLTIJYY.js"))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>import("../typst-4W4Z436Z.js"))},{id:"v",name:"V",import:(()=>import("../v-Y4SBDBN7.js"))},{id:"vala",name:"Vala",import:(()=>import("../vala-UMKT2MFA.js"))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>import("../vb-DQ7A5WJU.js"))},{id:"verilog",name:"Verilog",import:(()=>import("../verilog-N6ZF7GQD.js"))},{id:"vhdl",name:"VHDL",import:(()=>import("../vhdl-BNYDT37G.js"))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>import("../viml-37RMDCBC.js"))},{id:"vue",name:"Vue",import:(()=>import("../vue-FIH2DYBE.js"))},{id:"vue-html",name:"Vue HTML",import:(()=>import("../vue-html-ZLTZN573.js"))},{id:"vue-vine",name:"Vue Vine",import:(()=>import("../vue-vine-6JKAZ54I.js"))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>import("../vyper-GVXF46KD.js"))},{id:"wasm",name:"WebAssembly",import:(()=>import("../wasm-NTB4O7GL.js"))},{id:"wenyan",name:"Wenyan",aliases:["\u6587\u8A00"],import:(()=>import("../wenyan-W7WB3BC7.js"))},{id:"wgsl",name:"WGSL",import:(()=>import("../wgsl-7GTDVXHG.js"))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>import("../wikitext-ASAFPAIL.js"))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>import("../wit-ZBCR6544.js"))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>import("../wolfram-SZRZOETJ.js"))},{id:"xml",name:"XML",import:(()=>import("../xml-EBTJCOTU.js"))},{id:"xsl",name:"XSL",import:(()=>import("../xsl-IBYEXWDX.js"))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>import("../yaml-GMVQNECR.js"))},{id:"zenscript",name:"ZenScript",import:(()=>import("../zenscript-O2TZFP4A.js"))},{id:"zig",name:"Zig",import:(()=>import("../zig-ZLGM7IMN.js"))}],Gi=Object.fromEntries(ko.map(e=>[e.id,e.import])),Wi=Object.fromEntries(ko.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),ia={...Gi,...Wi};var kp=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-HAPOYWX3.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-R6WAWEBC.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-KMD4YO7F.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-2ATPDILG.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-LJ7PG5AM.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-Z4Y2POK6.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-4TQUIKX4.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-B7YYPERT.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-KX33VXKA.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-LNHXUR7U.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-T2CMBBQ5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-SMFRNKX2.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-DBZHIUAO.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-TDAGYJUK.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-3E25TTAN.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-KCBFVSS5.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-WRCBXEVS.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-ET7SAHAV.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-6FNTZH5H.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-GGTAKNM7.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-LHYKPR5E.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-IQWZCHF7.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-ARPWF4FS.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-ODS6FPID.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-KFA5YFDW.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-MMET4L3Y.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-DBZDERMK.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-FSOMPXNP.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-FAQBCORN.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-JNDVF5RJ.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-S7JK6TQ6.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-QJJIMVEV.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-YFP3EJVX.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-NGDHCPUZ.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-H2BHKUKX.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-VENCGWTB.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-SDMLS22W.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-UHDBRLVF.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-3TB2BEET.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-CQ5WKNT7.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-LZRD4NPR.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-WHRY6275.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-7PNEW2JB.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-GJUYOOJR.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-EVGUMUX2.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-PMTR3SA7.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-O7WH4N5X.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-FBVUW6NJ.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-WBB7GZAD.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-7KAMONOP.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-F2G5IHZD.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-ALZ7XGH2.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-D3K4SWUL.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-YFPJODWS.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-H67AWZOI.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-OUVS63VK.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-2RCAVEXJ.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-XFSENHTC.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-5XXB3K6S.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-CHJCCBJH.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-Y5GIEAN4.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-7TI33KHX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-FOB25MRB.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-4WCNCTCO.js"))}],Vi=Object.fromEntries(kp.map(e=>[e.id,e.import]));var la=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Tp(){return 2147483648}function vp(){return typeof performance<"u"?performance.now():Date.now()}var Pp=(e,t)=>e+(t-e%t)%t;async function Ap(e){let t,a,r={};function o(p){a=p,r.HEAPU8=new Uint8Array(p),r.HEAPU32=new Uint32Array(p)}function n(p,m,L){r.HEAPU8.copyWithin(p,m,m+L)}function s(p){try{return t.grow(p-a.byteLength+65535>>>16),o(t.buffer),1}catch{}}function i(p){let m=r.HEAPU8.length;p=p>>>0;let L=Tp();if(p>L)return!1;for(let I=1;I<=4;I*=2){let w=m*(1+.2/I);w=Math.min(w,p+100663296);let g=Math.min(L,Pp(Math.max(p,w),65536));if(s(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,L=1024){let I=m+L,w=m;for(;p[w]&&!(w>=I);)++w;if(w-m>16&&p.buffer&&l)return l.decode(p.subarray(m,w));let g="";for(;m<w;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let x=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|x);continue}let y=p[m++]&63;if((h&240)===224?h=(h&15)<<12|x<<6|y:h=(h&7)<<18|x<<12|y<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let T=h-65536;g+=String.fromCharCode(55296|T>>10,56320|T&1023)}}return g}function c(p,m){return p?u(r.HEAPU8,p,m):""}let d={emscripten_get_now:vp,emscripten_memcpy_big:n,emscripten_resize_heap:i,fd_write:()=>0};async function f(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,o(t.buffer),Object.assign(r,m),r.UTF8ToString=c}return await f(),r}var Rp=Object.defineProperty,Mp=(e,t,a)=>t in e?Rp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ce=(e,t,a)=>Mp(e,typeof t!="symbol"?t+"":t,a),ge=null;function Fp(e){throw new la(e.UTF8ToString(e.getLastOnigError()))}var ar=class e{constructor(t){ce(this,"utf16Length"),ce(this,"utf8Length"),ce(this,"utf16Value"),ce(this,"utf8Value"),ce(this,"utf16OffsetToUtf8"),ce(this,"utf8OffsetToUtf16");let a=t.length,r=e._utf8ByteLength(t),o=r!==a,n=o?new Uint32Array(a+1):null;o&&(n[a]=r);let s=o?new Uint32Array(r+1):null;o&&(s[r]=a);let i=new Uint8Array(r),l=0;for(let u=0;u<a;u++){let c=t.charCodeAt(u),d=c,f=!1;if(c>=55296&&c<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(d=(c-55296<<10)+65536|p-56320,f=!0)}o&&(n[u]=l,f&&(n[u+1]=l),d<=127?s[l+0]=u:d<=2047?(s[l+0]=u,s[l+1]=u):d<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),f&&u++}this.utf16Length=a,this.utf8Length=r,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=n,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let a=0;for(let r=0,o=t.length;r<o;r++){let n=t.charCodeAt(r),s=n,i=!1;if(n>=55296&&n<=56319&&r+1<o){let l=t.charCodeAt(r+1);l>=56320&&l<=57343&&(s=(n-55296<<10)+65536|l-56320,i=!0)}s<=127?a+=1:s<=2047?a+=2:s<=65535?a+=3:a+=4,i&&r++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},rr=class Ge{constructor(t){if(ce(this,"id",++Ge.LAST_ID),ce(this,"_onigBinding"),ce(this,"content"),ce(this,"utf16Length"),ce(this,"utf8Length"),ce(this,"utf16OffsetToUtf8"),ce(this,"utf8OffsetToUtf16"),ce(this,"ptr"),!ge)throw new la("Must invoke loadWasm first.");this._onigBinding=ge,this.content=t;let a=new ar(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Ge._sharedPtrInUse?(Ge._sharedPtr||(Ge._sharedPtr=ge.omalloc(1e4)),Ge._sharedPtrInUse=!0,ge.HEAPU8.set(a.utf8Value,Ge._sharedPtr),this.ptr=Ge._sharedPtr):this.ptr=a.createString(ge)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===Ge._sharedPtr?Ge._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};ce(rr,"LAST_ID",0);ce(rr,"_sharedPtr",0);ce(rr,"_sharedPtrInUse",!1);var zi=rr,vo=class{constructor(t){if(ce(this,"_onigBinding"),ce(this,"_ptr"),!ge)throw new la("Must invoke loadWasm first.");let a=[],r=[];for(let i=0,l=t.length;i<l;i++){let u=new ar(t[i]);a[i]=u.createString(ge),r[i]=u.utf8Length}let o=ge.omalloc(4*t.length);ge.HEAPU32.set(a,o/4);let n=ge.omalloc(4*t.length);ge.HEAPU32.set(r,n/4);let s=ge.createOnigScanner(o,n,t.length);for(let i=0,l=t.length;i<l;i++)ge.ofree(a[i]);ge.ofree(n),ge.ofree(o),s===0&&Fp(ge),this._onigBinding=ge,this._ptr=s}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,r){let o=0;if(typeof r=="number"&&(o=r),typeof t=="string"){t=new zi(t);let n=this._findNextMatchSync(t,a,!1,o);return t.dispose(),n}return this._findNextMatchSync(t,a,!1,o)}_findNextMatchSync(t,a,r,o){let n=this._onigBinding,s=n.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),o);if(s===0)return null;let i=n.HEAPU32,l=s/4,u=i[l++],c=i[l++],d=[];for(let f=0;f<c;f++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[f]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function Bp(e){return typeof e.instantiator=="function"}function Ep(e){return typeof e.default=="function"}function Dp(e){return typeof e.data<"u"}function _p(e){return typeof Response<"u"&&e instanceof Response}function Op(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}var tr;function Np(e){if(tr)return tr;async function t(){ge=await Ap(async a=>{let r=e;return r=await r,typeof r=="function"&&(r=await r(a)),typeof r=="function"&&(r=await r(a)),Bp(r)?r=await r.instantiator(a):Ep(r)?r=await r.default(a):(Dp(r)&&(r=r.data),_p(r)?typeof WebAssembly.instantiateStreaming=="function"?r=await Up(r)(a):r=await Hp(r)(a):Op(r)?r=await To(r)(a):r instanceof WebAssembly.Module?r=await To(r)(a):"default"in r&&r.default instanceof WebAssembly.Module&&(r=await To(r.default)(a))),"instance"in r&&(r=r.instance),"exports"in r&&(r=r.exports),r})}return tr=t(),tr}function To(e){return t=>WebAssembly.instantiate(e,t)}function Up(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Hp(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function ji(e){return e&&await Np(e),{createScanner(t){return new vo(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new zi(t)}}}var or=Hi({langs:ia,themes:Vi,engine:()=>ji(import("../wasm-EOPKAILK.js"))}),{codeToHtml:qp,codeToHast:Gp,codeToTokens:Wp,codeToTokensBase:Vp,codeToTokensWithThemes:zp,getSingletonHighlighter:jp,getLastGrammarState:$p}=qi(or,{guessEmbeddedLanguages:Bi});var $i=new Set(Object.keys(ia)),Po=new Map,Ao=new Map,vt=new Map,Xp=(e,t)=>`${e}-${t[0]}-${t[1]}`,Kp=(e,t,a)=>{let r=e.slice(0,100),o=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${r}:${o}`},Qp=(e,t)=>{let a=Xp(e,t);if(Po.has(a))return Po.get(a);let r=or({themes:t,langs:[e]});return Po.set(a,r),r};function Jp(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(r){return $i.has(r)},getSupportedLanguages(){return Array.from($i)},getThemes(){return a},highlight({code:r,language:o,themes:n},s){let i=Kp(r,o,n);return Ao.has(i)?Ao.get(i):(s&&(vt.has(i)||vt.set(i,new Set),vt.get(i).add(s)),Qp(o,n).then(l=>{let u=l.getLoadedLanguages().includes(o)?o:"text",c=l.codeToTokens(r,{lang:u,themes:{light:n[0],dark:n[1]}});Ao.set(i,c);let d=vt.get(i);if(d){for(let f of d)f(c);vt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),vt.delete(i)}),null)}}}var Xi=Jp();import{memo as tm}from"react";import{useEffect as Yp,useRef as nr,useState as Zp}from"react";var em=5,Ki=400;function Qi(e,t,a={}){let{msPerChar:r=em}=a,[o,n]=Zp(t?"":e),s=nr(e),i=nr(t?0:e.length),l=nr(0),u=nr(null);return(e.length<i.current||!e.startsWith(o.slice(0,i.current)))&&(i.current=t?0:e.length),s.current=e,Yp(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,n(e);return}if(s.current.length-i.current>Ki&&(i.current=s.current.length-Ki),u.current!==null)return;let d=f=>{let p=s.current;if(i.current>=p.length){u.current=null;return}l.current===0&&(l.current=f);let m=f-l.current;if(m>=r){let L=Math.min(Math.floor(m/r),p.length-i.current);i.current+=L,n(p.slice(0,i.current)),l.current=f}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,r]),o}import{jsx as sr}from"react/jsx-runtime";var Ro=({className:e,from:t,children:a,...r})=>sr("div",{className:k("ww-message ww:group ww:flex ww:w-full",t==="user"?"ww-message-user is-user ww:ml-auto ww:flex-col ww:items-end ww:[max-width:var(--ww-msg-max-width,80%)]":"ww-message-assistant is-assistant ww:flex-col",e),...r,children:sr("div",{className:k("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),Mo=({children:e,className:t,...a})=>sr("div",{className:k("ww-bubble ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden","ww:[font-size:var(--ww-font-size,1rem)] ww:[line-height:var(--ww-line-height,1.5)]","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:[color:var(--ww-color-user-bubble-text)] ww:group-[.is-user]:[border-radius:var(--ww-msg-radius,8px)] ww:group-[.is-user]:[padding:var(--ww-msg-pad-y,12px)_var(--ww-msg-pad-x,16px)]","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),am={cjk:Yr,code:Xi},rm={cjk:Yr},om={enabled:!1};function nm({className:e,linkSafety:t,isStreaming:a,children:r,...o}){let s=Qi(typeof r=="string"?r:"",!!a),i=typeof r=="string"?s:r;return sr(Bt,{className:k("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??om,plugins:a?rm:am,...o,children:i})}var ir=tm(nm,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);ir.displayName="MessageResponse";import{createContext as sm,useCallback as im,useContext as el,useEffect as lm,useMemo as Bo,useRef as um,useState as Eo}from"react";import{Fragment as Zi,jsx as K,jsxs as pt}from"react/jsx-runtime";function dm(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let r=Object.entries(e),o=[],n=t-2;for(let[s,i]of r){if(n<=8)break;let l=s.length>4?`${s.slice(0,4)}\u2026`:s,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let c=`${l}\u2009${u}`;o.push(c),n-=c.length+3}return`{${o.join(", ")}}`}function cm({text:e,className:t}){let{t:a}=z(),[r,o]=Eo(!1),n=um(null);lm(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=im(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),o(!0),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>o(!1),2e3)}catch{}},[e]);return K(Ee,{variant:"ghost",size:"sm",onClick:s,className:k("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:r?pt(Zi,{children:[K(Dt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):pt(Zi,{children:[K(Ot,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function tl({data:e,label:t,className:a,...r}){let[o,n]=Eo(!1),s=Bo(()=>JSON.stringify(e,null,2),[e]),i=dm(e);return pt("div",{className:k("ww:rounded-lg ww:bg-tool-card",a),...r,children:[pt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K(cm,{text:s})]}),pt("button",{type:"button",onClick:()=>n(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[K(_t,{className:k("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",o&&"ww:rotate-90")}),o?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:s})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Do=sm({open:!1,toggle:()=>{}});function al({className:e,defaultOpen:t=!1,children:a,...r}){let[o,n]=Eo(t);return K(Do.Provider,{value:{open:o,toggle:()=>n(s=>!s)},children:K("div",{className:k("ww:mb-4 ww:w-full",e),"data-state":o?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:a})})}function rl({className:e,title:t,state:a,...r}){let{open:o,toggle:n}=el(Do),s=a==="input-available"||a==="input-streaming",i=t??"";return pt("button",{type:"button",onClick:n,className:k("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":o,...r,children:[K(nt,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:s?K(Oe,{duration:1.6,children:i}):i}),K($e,{className:k("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",o&&"ww:rotate-180")})]})}function ol({className:e,title:t,state:a,...r}){let o=a==="input-available"||a==="input-streaming",n=t??"";return K("div",{className:k("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:K("span",{className:"ww:truncate",children:o?K(Oe,{duration:1.6,children:n}):n})})}function nl({className:e,children:t,...a}){let{open:r}=el(Do);return K("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:k("ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",e),...a,children:t})})})}function _o({className:e,input:t,debug:a,...r}){let{t:o}=z(),n=Bo(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...i}=t;return i}return t},[t,a]);return K(tl,{data:n,label:o.tool.request,className:e,...r})}function Fo(e){if(!(typeof e!="object"||e===null))return e}function sl(e){return Fo(e?.ui)}function il(e){return Fo(Fo(e)?._meta)}function Ji(e){if(!e)return;let t=sl(e)?.resourceUri;if(typeof t=="string"&&t.length>0)return t;let a=e["ui/resourceUri"];if(typeof a=="string"&&a.length>0)return a;let r=e["openai/outputTemplate"];if(typeof r=="string"&&r.length>0)return r}function Yi(e){return sl(e)?.autoHeight===!0}function ua(e,t,a){if(e){let r=Ji(a?.[e]?._meta);if(r)return r}return Ji(il(t))}function ll(e,t,a){return e&&Yi(a?.[e]?._meta)?!0:Yi(il(t))}function Oo({className:e,output:t,errorText:a,debug:r,...o}){let{t:n}=z(),s=Bo(()=>{if(!r&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,r]);return t||a?a?pt("div",{className:k("ww:space-y-2",e),...o,children:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:n.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(tl,{data:s,label:n.tool.response,className:e,...o}):null}import{jsx as ul,jsxs as fm}from"react/jsx-runtime";function dl(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function cl(e){return e.parts.some(dl)}function fl(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let r=e[e.length-1];return!r||r.role!=="assistant"?!0:!r.parts.some(n=>!(!dl(n)||a?.ignoreToolParts&&"toolCallId"in n||a?.ignoreReasoningParts&&n.type==="reasoning"))}function pl({className:e,...t}){let{t:a}=z();return fm("div",{"aria-live":"polite",className:k("ww:mb-4 ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...t,children:[ul(Wt,{className:"ww:size-4 ww:shrink-0"}),ul(Oe,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as pm,useEffect as No,useMemo as mm,useRef as Te,useState as hl}from"react";function Pt(e){if(!e)return!1;let t=Array.isArray(e.content)&&e.content.length>0,a=typeof e.structuredContent=="object"&&e.structuredContent!==null&&Object.keys(e.structuredContent).length>0;return t||a}function ml(e,t){return!Pt(e)&&!Pt(t)?null:Pt(e)?Pt(t)?{...e.content||t.content?{content:[...e.content??[],...t.content??[]]}:{},...e.structuredContent||t.structuredContent?{structuredContent:{...e.structuredContent??{},...t.structuredContent??{}}}:{}}:{...e.content?{content:[...e.content]}:{},...e.structuredContent?{structuredContent:{...e.structuredContent}}:{}}:{...t?.content?{content:[...t.content]}:{},...t?.structuredContent?{structuredContent:{...t.structuredContent}}:{}}}import{jsx as km}from"react/jsx-runtime";var hm="/api/mcp/resource",gm=500,wm=0,xm=16,Im="2026-01-26",Lm=300,Cm=3e3,Sm=3;function ym(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function bm(e,t,a){return ua(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Uo({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:r=hm,chatSessionId:o,isDark:n=!1,className:s,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:c,onDisplayModeChange:d,isFullscreen:f=!1,toolDefinitions:p}){let m=Te(null),L=Te(t),I=Te(a),w=Te({width:0,height:0}),g=Te(null),h=Te(!1),x=Te(0),y=Te("inline"),[T,v]=hl(wm),[A,M]=hl(void 0),F=Te(l),P=Te(u),b=Te(c),q=Te(d),G=Te(o),S=Te(p);L.current=t,I.current=a,F.current=l,P.current=u,b.current=c,q.current=d,G.current=o,S.current=p;let B=pm(_=>i?Math.max(_+xm,0):Math.min(Math.max(_,50),gm),[i]),E=mm(()=>{let _=r.includes("?")?"&":"?";return`${r}${_}uri=${encodeURIComponent(e)}`},[r,e]),ve=Te(n);ve.current=n;let we=Te(f);return No(()=>{we.current=f,w.current.height=-1,g.current&&(g.current.cancel(),g.current=null)},[f]),No(()=>{if(!h.current)return;let _=m.current;_?.contentWindow&&_.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:n?"dark":"light"}},"*")},[n]),No(()=>{let _=m.current;if(!_)return;let me=!1,re=!1,ye=null,oe=null,V=setTimeout(()=>{if(me||re||x.current>=Sm)return;x.current+=1;let le=new URL(_.src);le.searchParams.set("_retry",String(x.current)),_.src=le.toString()},Cm),$=le=>{_.contentWindow?.postMessage(le,"*")},Pe=le=>{if(me||le.source!==_.contentWindow)return;let Q=le.data;if(!Q||typeof Q!="object"||Q.jsonrpc!=="2.0")return;let ne=Q.method,W=Q.id;if(ne==="ui/initialize"&&W!=null){re=!0,clearTimeout(V),$({jsonrpc:"2.0",id:W,result:{protocolVersion:Q.params?.protocolVersion??Im,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:ve.current?"dark":"light",displayMode:y.current}}});return}if(ne==="ui/notifications/initialized"){h.current=!0;let O=L.current,U=I.current,X=U._meta&&typeof U._meta=="object"?U._meta:null,ue=ym(G.current),Z=X&&typeof X.waniwani=="object"&&X.waniwani!==null?X.waniwani:null,be=Z||ue?{...Z??{},...ue?{sessionId:ue}:{}}:void 0,xe=X||be?{...X??{},...be?{waniwani:be}:{}}:void 0;$({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:O}});let R=U.content??[{type:"text",text:JSON.stringify(U)}];$({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:R,structuredContent:U.structuredContent,_meta:xe,meta:xe}});return}if(ne==="ui/notifications/size-changed"){let O=Q.params,U=typeof O?.height=="number"?O.height:void 0,X=typeof O?.width=="number"?O.width:void 0,ue=w.current,Z=U!==void 0&&U!==ue.height,be=X!==void 0&&X!==ue.width;if(!Z&&!be)return;if(Z&&U!==void 0){if(ue.height=U,we.current)return;let xe=B(U),R=_.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),v(xe),_.animate&&Math.abs(R-xe)>2){let H=_.animate([{height:`${R}px`},{height:`${xe}px`}],{duration:Lm,easing:"ease-out",fill:"forwards"});g.current=H,H.onfinish=()=>{g.current===H&&(H.cancel(),g.current=null)}}}be&&i&&X!==void 0&&(ue.width=X,M(X));return}if(ne==="ui/open-link"&&W!=null){let O=Q.params?.url;typeof O=="string"&&(F.current?F.current(O):window.open(O,"_blank","noopener,noreferrer")),$({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="ui/message"&&W!=null){if(P.current&&Q.params){let O=Q.params,U=ye;if(ye=null,oe){clearTimeout(oe.timer);let X=oe.text;oe=null;let ue=(O.content??[]).map(Z=>Z.text??"").join("").trim();O={...O,content:[{type:"text",text:`${ue}
|
|
12
|
+
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function yi(e,t,a,r){let o=r.schema,n=o.space==="svg"?!1:r.settings.omitOptionalTags,s=o.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;o.space==="html"&&e.tagName==="svg"&&(r.schema=La);let u=Bf(r,e.properties),c=r.all(o.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=o,c&&(s=!1),(u||!n||!Si(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),s&&(o.space==="svg"||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(c),!s&&(!n||!na(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Bf(e,t){let a=[],r=-1,o;if(t){for(o in t)if(t[o]!==null&&t[o]!==void 0){let n=Ef(e,o,t[o]);n&&a.push(n)}}for(;++r<a.length;){let n=e.settings.tightAttributes?a[r].charAt(a[r].length-1):void 0;r!==a.length-1&&n!=='"'&&n!=="'"&&(a[r]+=" ")}return a.join("")}function Ef(e,t,a){let r=Tn(e.schema,t),o=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,n=e.settings.allowDangerousCharacters?0:1,s=e.quote,i;if(r.overloadedBoolean&&(a===r.attribute||a==="")?a=!0:(r.boolean||r.overloadedBoolean)&&(typeof a!="string"||a===r.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=ze(r.attribute,Object.assign({},e.settings.characterReferences,{subset:$a.name[o][n]}));return a===!0||(a=Array.isArray(a)?(r.commaSeparated?Pn:An)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=ze(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:$a.unquoted[o][n]}))),i!==a&&(e.settings.quoteSmart&&Br(a,s)>Br(a,e.alternative)&&(s=e.alternative),i=s+ze(a,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?$a.single:$a.double)[o][n],attribute:!0}))+s),l+(i&&"="+i))}var Df=["<","&"];function Xa(e,t,a,r){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:ze(e.value,Object.assign({},r.settings.characterReferences,{subset:Df}))}function bi(e,t,a,r){return r.settings.allowDangerousHtml?e.value:Xa(e,t,a,r)}function ki(e,t,a,r){return r.all(e)}var Ti=Rn("type",{invalid:_f,unknown:Nf,handlers:{comment:wi,doctype:xi,element:yi,raw:bi,root:ki,text:Xa}});function _f(e){throw new Error("Expected node, not `"+e+"`")}function Nf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Of={},Uf={},Hf=[];function po(e,t){let a=t||Of,r=a.quote||'"',o=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:qf,all:Wf,settings:{omitOptionalTags:a.omitOptionalTags||!1,allowParseErrors:a.allowParseErrors||!1,allowDangerousCharacters:a.allowDangerousCharacters||!1,quoteSmart:a.quoteSmart||!1,preferUnquoted:a.preferUnquoted||!1,tightAttributes:a.tightAttributes||!1,upperDoctype:a.upperDoctype||!1,tightDoctype:a.tightDoctype||!1,bogusComments:a.bogusComments||!1,tightCommaSeparatedLists:a.tightCommaSeparatedLists||!1,tightSelfClosing:a.tightSelfClosing||!1,collapseEmptyAttributes:a.collapseEmptyAttributes||!1,allowDangerousHtml:a.allowDangerousHtml||!1,voids:a.voids||Mn,characterReferences:a.characterReferences||Uf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?La:vn,quote:r,alternative:o}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function qf(e,t,a){return Ti(e,t,a,this)}function Wf(e){let t=[],a=e&&e.children||Hf,r=-1;for(;++r<a.length;)t[r]=this.one(a[r],r,e);return t.join("")}function Ka(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(let[o,n]of Object.entries(t?.colorReplacements||{}))typeof n=="string"?a[o]=n:o===r&&Object.assign(a,n);return a}function Ze(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Gf(e){return Array.isArray(e)?e:[e]}async function Bi(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function Lo(e){return!e||["plaintext","txt","text","plain"].includes(e)}function Ei(e){return e==="ansi"||Lo(e)}function Io(e){return e==="none"}function Di(e){return Io(e)}function _i(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let r of a)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}function er(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),r=0,o=[];for(let n=0;n<a.length;n+=2){let s=t?a[n]+(a[n+1]||""):a[n];o.push([s,r]),r+=a[n].length,r+=a[n+1]?.length||0}return o}function Vf(e){let t=er(e,!0).map(([o])=>o);function a(o){if(o===e.length)return{line:t.length-1,character:t[t.length-1].length};let n=o,s=0;for(let i of t){if(n<i.length)break;n-=i.length,s++}return{line:s,character:n}}function r(o,n){let s=0;for(let i=0;i<o;i++)s+=t[i].length;return s+=n,s}return{lines:t,indexToPos:a,posToIndex:r}}function Ni(e,t,a){let r=new Set;for(let n of e.matchAll(/:?lang=["']([^"']+)["']/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/\\begin\{([\w-]+)\}/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let s=n[1].toLowerCase().trim(),i=s.includes("/")?s.split("/").pop():s;i&&r.add(i)}if(!a)return Array.from(r);let o=a.getBundledLanguages();return Array.from(r).filter(n=>n&&o[n])}var Co="light-dark()",zf=["color","background-color"];function jf(e,t){let a=0,r=[];for(let o of t)o>a&&r.push({...e,content:e.content.slice(a,o),offset:e.offset+a}),a=o;return a<e.content.length&&r.push({...e,content:e.content.slice(a),offset:e.offset+a}),r}function $f(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((r,o)=>r-o);return a.length?e.map(r=>r.flatMap(o=>{let n=a.filter(s=>o.offset<s&&s<o.offset+o.content.length).map(s=>s-o.offset).sort((s,i)=>s-i);return n.length?jf(o,n):o})):e}function Xf(e,t,a,r,o="css-vars"){let n={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(c=>Qa(e.variants[c])),i=new Set(s.flatMap(c=>Object.keys(c))),l={},u=(c,d)=>{let f=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[c]+(d==="color"?"":f)};return s.forEach((c,d)=>{for(let f of i){let p=c[f]||"inherit";if(d===0&&r&&zf.includes(f))if(r===Co&&s.length>1){let m=t.findIndex(g=>g==="light"),I=t.findIndex(g=>g==="dark");if(m===-1||I===-1)throw new te('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let L=s[m][f]||"inherit",w=s[I][f]||"inherit";l[f]=`light-dark(${L}, ${w})`,o==="css-vars"&&(l[u(d,f)]=p)}else l[f]=p;else o==="css-vars"&&(l[u(d,f)]=p)}}),n.htmlStyle=l,n}function Qa(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&Ie.Italic&&(t["font-style"]="italic"),e.fontStyle&Ie.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&Ie.Underline&&a.push("underline"),e.fontStyle&Ie.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function go(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var Oi=new WeakMap;function tr(e,t){Oi.set(e,t)}function ia(e){return Oi.get(e)}var Tt=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,a){return new e(Object.fromEntries(Gf(a).map(r=>[r,Ga])),t)}constructor(...t){if(t.length===2){let[a,r]=t;this.lang=r,this._stacks=a}else{let[a,r,o]=t;this.lang=r,this._stacks={[o]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return Kf(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Kf(e){let t=[],a=new Set;function r(o){if(a.has(o))return;a.add(o);let n=o?.nameScopesList?.scopeName;n&&t.push(n),o.parent&&r(o.parent)}return r(e),t}function Qf(e,t){if(!(e instanceof Tt))throw new te("Invalid grammar state");return e.getInternalStack(t)}function Jf(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let r=function(s){if(typeof s=="number"){if(s<0||s>a.source.length)throw new te(`Invalid decoration offset: ${s}. Code length: ${a.source.length}`);return{...o.indexToPos(s),offset:s}}else{let i=o.lines[s.line];if(i===void 0)throw new te(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${o.lines.length}`);let l=s.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new te(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,character:l,offset:o.posToIndex(s.line,l)}}},o=Vf(a.source),n=(a.options.decorations||[]).map(s=>({...s,start:r(s.start),end:r(s.end)}));Yf(n),e.set(a.meta,{decorations:n,converter:o,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let o=t(this).decorations.flatMap(s=>[s.start.offset,s.end.offset]);return $f(a,o)},code(a){if(!this.options.decorations?.length)return;let r=t(this),o=Array.from(a.children).filter(c=>c.type==="element"&&c.tagName==="span");if(o.length!==r.converter.lines.length)throw new te(`Number of lines in code element (${o.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function n(c,d,f,p){let m=o[c],I="",L=-1,w=-1;if(d===0&&(L=0),f===0&&(w=0),f===Number.POSITIVE_INFINITY&&(w=m.children.length),L===-1||w===-1)for(let h=0;h<m.children.length;h++)I+=Ui(m.children[h]),L===-1&&I.length===d&&(L=h+1),w===-1&&I.length===f&&(w=h+1);if(L===-1)throw new te(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(w===-1)throw new te(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(L,w);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(L,g.length,h)}}function s(c,d){o[c]=i(o[c],d,"line")}function i(c,d,f){let p=d.properties||{},m=d.transform||(I=>I);return c.tagName=d.tagName||"span",c.properties={...c.properties,...p,class:c.properties.class},d.properties?.class&&_i(c,d.properties.class),c=m(c,f)||c,c}let l=[],u=r.decorations.sort((c,d)=>d.start.offset-c.start.offset||c.end.offset-d.end.offset);for(let c of u){let{start:d,end:f}=c;if(d.line===f.line)n(d.line,d.character,f.character,c);else if(d.line<f.line){n(d.line,d.character,Number.POSITIVE_INFINITY,c);for(let p=d.line+1;p<f.line;p++)l.unshift(()=>s(p,c));n(f.line,0,f.character,c)}}l.forEach(c=>c())}}}function Yf(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new te(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let r=t+1;r<e.length;r++){let o=e[r],n=a.start.offset<=o.start.offset&&o.start.offset<a.end.offset,s=a.start.offset<o.end.offset&&o.end.offset<=a.end.offset,i=o.start.offset<=a.start.offset&&a.start.offset<o.end.offset,l=o.start.offset<a.end.offset&&a.end.offset<=o.end.offset;if(n||s||i||l){if(n&&s||i&&l||i&&a.start.offset===a.end.offset||s&&o.start.offset===o.end.offset)continue;throw new te(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(o.start)} intersect.`)}}}}function Ui(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Ui).join(""):""}var Zf=[Jf()];function Ja(e){let t=ep(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Zf]}function ep(e){let t=[],a=[],r=[];for(let o of e)switch(o.enforce){case"pre":t.push(o);break;case"post":a.push(o);break;default:r.push(o)}return{pre:t,post:a,normal:r}}var ft=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],mo={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function tp(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let r=e.indexOf("m",a);if(r!==-1)return{sequence:e.substring(a+2,r).split(";"),startPosition:a,position:r+1}}return{position:e.length}}function vi(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(r=>Number.parseInt(r));return a.length!==3||a.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function ap(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let r=Number.parseInt(a);if(!Number.isNaN(r))if(r===0)t.push({type:"resetAll"});else if(r<=9)mo[r]&&t.push({type:"setDecoration",value:mo[r]});else if(r<=29){let o=mo[r-20];o&&(t.push({type:"resetDecoration",value:o}),o==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-30]}});else if(r===38){let o=vi(e);o&&t.push({type:"setForegroundColor",value:o})}else if(r===39)t.push({type:"resetForegroundColor"});else if(r<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-40]}});else if(r===48){let o=vi(e);o&&t.push({type:"setBackgroundColor",value:o})}else r===49?t.push({type:"resetBackgroundColor"}):r===53?t.push({type:"setDecoration",value:"overline"}):r===55?t.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-90+8]}}):r>=100&&r<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-100+8]}})}return t}function rp(){let e=null,t=null,a=new Set;return{parse(r){let o=[],n=0;do{let s=tp(r,n),i=s.sequence?r.substring(n,s.startPosition):r.substring(n);if(i.length>0&&o.push({value:i,foreground:e,background:t,decorations:new Set(a)}),s.sequence){let l=ap(s.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}n=s.position}while(n<r.length);return o}}}var op={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function np(e=op){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function o(){if(r)return r;r=[];for(let u=0;u<ft.length;u++)r.push(t(ft[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let c=0;c<6;c++)for(let d=0;d<6;d++)r.push(a([i[u],i[c],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)r.push(a([l,l,l]));return r}function n(i){return o()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return n(i.index)}}return{value:s}}var sp={black:"#000000",red:"#cd3131",green:"#0DBC79",yellow:"#E5E510",blue:"#2472C8",magenta:"#BC3FBC",cyan:"#11A8CD",white:"#E5E5E5",brightBlack:"#666666",brightRed:"#F14C4C",brightGreen:"#23D18B",brightYellow:"#F5F543",brightBlue:"#3B8EEA",brightMagenta:"#D670D6",brightCyan:"#29B8DB",brightWhite:"#FFFFFF"};function ip(e,t,a){let r=Ka(e,a),o=er(t),n=Object.fromEntries(ft.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,c=e.colors?.[u];return[l,c||sp[l]]})),s=np(n),i=rp();return o.map(l=>i.parse(l[0]).map(u=>{let c,d;u.decorations.has("reverse")?(c=u.background?s.value(u.background):e.bg,d=u.foreground?s.value(u.foreground):e.fg):(c=u.foreground?s.value(u.foreground):e.fg,d=u.background?s.value(u.background):void 0),c=Ze(c,r),d=Ze(d,r),u.decorations.has("dim")&&(c=lp(c));let f=Ie.None;return u.decorations.has("bold")&&(f|=Ie.Bold),u.decorations.has("italic")&&(f|=Ie.Italic),u.decorations.has("underline")&&(f|=Ie.Underline),u.decorations.has("strikethrough")&&(f|=Ie.Strikethrough),{content:u.value,offset:l[1],color:c,bgColor:d,fontStyle:f}}))}function lp(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let r=t[1];if(r.length===8){let o=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${o}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){let o=r[0],n=r[1],s=r[2],i=r[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${o}${o}${n}${n}${s}${s}${l}`}else if(r.length===3){let o=r[0],n=r[1],s=r[2];return`#${o}${o}${n}${n}${s}${s}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function So(e,t,a={}){let{theme:r=e.getLoadedThemes()[0]}=a,o=e.resolveLangAlias(a.lang||"text");if(Lo(o)||Io(r))return er(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:n,colorMap:s}=e.setTheme(r);if(o==="ansi")return ip(n,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new te(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(n.name))throw new te(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${n.name}"`)}return dp(t,i,n,s,a)}function up(...e){if(e.length===2)return ia(e[1]);let[t,a,r={}]=e,{lang:o="text",theme:n=t.getLoadedThemes()[0]}=r;if(Lo(o)||Io(n))throw new te("Plain language does not have grammar state");if(o==="ansi")throw new te("ANSI language does not have grammar state");let{theme:s,colorMap:i}=t.setTheme(n),l=t.getLanguage(o);return new Tt(yo(a,l,s,i,r).stateStack,l.name,s.name)}function dp(e,t,a,r,o){let n=yo(e,t,a,r,o),s=new Tt(n.stateStack,t.name,a.name);return tr(n.tokens,s),n.tokens}function yo(e,t,a,r,o){let n=Ka(a,o),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=o,l=er(e),u=o.grammarState?Qf(o.grammarState,a.name)??Ga:o.grammarContextCode!=null?yo(o.grammarContextCode,t,a,r,{...o,grammarState:void 0,grammarContextCode:void 0}).stateStack:Ga,c=[],d=[];for(let f=0,p=l.length;f<p;f++){let[m,I]=l[f];if(m===""){c=[],d.push([]);continue}if(s>0&&m.length>=s){c=[],d.push([{content:m,offset:I,color:"",fontStyle:0}]);continue}let L,w,g;o.includeExplanation&&(L=t.tokenizeLine(m,u,i),w=L.tokens,g=0);let h=t.tokenizeLine2(m,u,i),x=h.tokens.length/2;for(let S=0;S<x;S++){let v=h.tokens[2*S],A=S+1<x?h.tokens[2*S+2]:m.length;if(v===A)continue;let P=h.tokens[2*S+1],D=Ze(r[ct.getForeground(P)],n),k=ct.getFontStyle(P),M={content:m.substring(v,A),offset:I+v,color:D,fontStyle:k};if(o.includeExplanation){let b=[];if(o.includeExplanation!=="scopeName")for(let q of a.settings){let y;switch(typeof q.scope){case"string":y=q.scope.split(/,/).map(F=>F.trim());break;case"object":y=q.scope;break;default:continue}b.push({settings:q,selectors:y.map(F=>F.split(/ /))})}M.explanation=[];let z=0;for(;v+z<A;){let q=w[g],y=m.substring(q.startIndex,q.endIndex);z+=y.length,M.explanation.push({content:y,scopes:o.includeExplanation==="scopeName"?cp(q.scopes):fp(b,q.scopes)}),g+=1}}c.push(M)}d.push(c),c=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function cp(e){return e.map(t=>({scopeName:t}))}function fp(e,t){let a=[];for(let r=0,o=t.length;r<o;r++){let n=t[r];a[r]={scopeName:n,themeMatches:mp(e,n,t.slice(0,r))}}return a}function Pi(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function pp(e,t,a){if(!Pi(e[e.length-1],t))return!1;let r=e.length-2,o=a.length-1;for(;r>=0&&o>=0;)Pi(e[r],a[o])&&(r-=1),o-=1;return r===-1}function mp(e,t,a){let r=[];for(let{selectors:o,settings:n}of e)for(let s of o)if(pp(s,t,a)){r.push(n);break}return r}function Hi(e,t,a){let r=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),o=r.map(l=>{let u=So(e,t,{...a,theme:l.theme}),c=ia(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:c,theme:d}}),n=hp(...o.map(l=>l.tokens)),s=n[0].map((l,u)=>l.map((c,d)=>{let f={content:c.content,variants:{},offset:c.offset};return"includeExplanation"in a&&a.includeExplanation&&(f.explanation=c.explanation),n.forEach((p,m)=>{let{content:I,explanation:L,offset:w,...g}=p[u][d];f.variants[r[m].color]=g}),f})),i=o[0].state?new Tt(Object.fromEntries(o.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),o[0].state.lang):void 0;return i&&tr(s,i),s}function hp(...e){let t=e.map(()=>[]),a=e.length;for(let r=0;r<e[0].length;r++){let o=e.map(l=>l[r]),n=t.map(()=>[]);t.forEach((l,u)=>l.push(n[u]));let s=o.map(()=>0),i=o.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let c=i[u];c.content.length===l?(n[u].push(c),s[u]+=1,i[u]=o[u][s[u]]):(n[u].push({...c,content:c.content.slice(0,l)}),i[u]={...c,content:c.content.slice(l),offset:c.offset+l})}}}return t}function Ya(e,t,a){let r,o,n,s,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:c="--shiki-",colorsRendering:d="css-vars"}=a,f=Object.entries(a.themes).filter(w=>w[1]).map(w=>({color:w[0],theme:w[1]})).sort((w,g)=>w.color===u?-1:g.color===u?1:0);if(f.length===0)throw new te("`themes` option must not be empty");let p=Hi(e,t,a);if(l=ia(p),u&&Co!==u&&!f.find(w=>w.color===u))throw new te(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=f.map(w=>e.getTheme(w.theme)),I=f.map(w=>w.color);n=p.map(w=>w.map(g=>Xf(g,I,c,u,d))),l&&tr(n,l);let L=f.map(w=>Ka(w.theme,a));o=Ai(f,m,L,c,u,"fg",d),r=Ai(f,m,L,c,u,"bg",d),s=`shiki-themes ${m.map(w=>w.name).join(" ")}`,i=u?void 0:[o,r].join(";")}else if("theme"in a){let u=Ka(a.theme,a);n=So(e,t,a);let c=e.getTheme(a.theme);r=Ze(c.bg,u),o=Ze(c.fg,u),s=c.name,l=ia(n)}else throw new te("Invalid options, either `theme` or `themes` must be provided");return{tokens:n,fg:o,bg:r,themeName:s,rootStyle:i,grammarState:l}}function Ai(e,t,a,r,o,n,s){return e.map((i,l)=>{let u=Ze(t[l][n],a[l])||"inherit",c=`${r+i.color}${n==="bg"?"-bg":""}:${u}`;if(l===0&&o){if(o===Co&&e.length>1){let d=e.findIndex(I=>I.color==="light"),f=e.findIndex(I=>I.color==="dark");if(d===-1||f===-1)throw new te('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Ze(t[d][n],a[d])||"inherit",m=Ze(t[f][n],a[f])||"inherit";return`light-dark(${p}, ${m});${c}`}return u}return s==="css-vars"?c:null}).filter(i=>!!i).join(";")}function Za(e,t,a,r={meta:{},options:a,codeToHast:(o,n)=>Za(e,o,n),codeToTokens:(o,n)=>Ya(e,o,n)}){let o=t;for(let m of Ja(a))o=m.preprocess?.call(r,o,a)||o;let{tokens:n,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:c}=Ya(e,o,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=a;d===!0?n=wp(n):d==="never"&&(n=xp(n)),f&&(n=Lp(n));let p={...r,get source(){return o}};for(let m of Ja(a))n=m.tokens?.call(p,n)||n;return gp(n,{...a,fg:s,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,c)}function gp(e,t,a,r=ia(e)){let o=Ja(t),n=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[I,L]of Object.entries(t.meta||{}))I.startsWith("_")||(u[I]=L);let c={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:n},f=[],p={...a,structure:i,addClassToHast:_i,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return c},get code(){return d},get lines(){return f}};if(e.forEach((I,L)=>{L&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&n.push({type:"text",value:`
|
|
13
|
+
`}));let w={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of I){let x={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},S=go(h.htmlStyle||Qa(h));S&&(x.properties.style=S);for(let v of o)x=v?.span?.call(p,x,L+1,g,w,h)||x;i==="inline"?s.children.push(x):i==="classic"&&w.children.push(x),g+=h.content.length}if(i==="classic"){for(let h of o)w=h?.line?.call(p,w,L+1)||w;f.push(w),n.push(w)}else i==="inline"&&f.push(w)}),i==="classic"){for(let I of o)d=I?.code?.call(p,d)||d;c.children.push(d);for(let I of o)c=I?.pre?.call(p,c)||c;s.children.push(c)}else if(i==="inline"){let I=[],L={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of s.children)h.type==="element"&&h.tagName==="br"?(I.push(L),L={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&L.children.push(h);I.push(L);let g={type:"element",tagName:"code",properties:{},children:I};for(let h of o)g=h?.code?.call(p,g)||g;s.children=[];for(let h=0;h<g.children.length;h++){h>0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});let x=g.children[h];x.type==="element"&&s.children.push(...x.children)}}let m=s;for(let I of o)m=I?.root?.call(p,m)||m;return r&&tr(m,r),m}function wp(e){return e.map(t=>{let a=[],r="",o;return t.forEach((n,s)=>{let l=!(n.fontStyle&&(n.fontStyle&Ie.Underline||n.fontStyle&Ie.Strikethrough));l&&n.content.match(/^\s+$/)&&t[s+1]?(o===void 0&&(o=n.offset),r+=n.content):r?(l?a.push({...n,offset:o,content:r+n.content}):a.push({content:r,offset:o},n),o=void 0,r=""):a.push(n)}),a})}function xp(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let r=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return a;let[,o,n,s]=r;if(!o&&!s)return a;let i=[{...a,offset:a.offset+o.length,content:n}];return o&&i.unshift({content:o,offset:a.offset}),s&&i.push({content:s,offset:a.offset+o.length+n.length}),i}))}function Lp(e){return e.map(t=>{let a=[];for(let r of t){if(a.length===0){a.push({...r});continue}let o=a[a.length-1],n=go(o.htmlStyle||Qa(o)),s=go(r.htmlStyle||Qa(r)),i=o.fontStyle&&(o.fontStyle&Ie.Underline||o.fontStyle&Ie.Strikethrough),l=r.fontStyle&&(r.fontStyle&Ie.Underline||r.fontStyle&Ie.Strikethrough);!i&&!l&&n===s?o.content+=r.content:a.push({...r})}return a})}var Ip=po;function Cp(e,t,a){let r={meta:{},options:a,codeToHast:(n,s)=>Za(e,n,s),codeToTokens:(n,s)=>Ya(e,n,s)},o=Ip(Za(e,t,a,r));for(let n of Ja(a))o=n.postprocess?.call(r,o,a)||o;return o}var Ri={light:"#333333",dark:"#bbbbbb"},Mi={light:"#fffffe",dark:"#1e1e1e"},Fi="__shiki_resolved";function bo(e){if(e?.[Fi])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:a,fg:r}=t;if(!a||!r){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),r||(r=t.type==="light"?Ri.light:Ri.dark),a||(a=t.type==="light"?Mi.light:Mi.dark),t.fg=r,t.bg=a}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let o=0,n=new Map;function s(i){if(n.has(i))return n.get(i);o+=1;let l=`#${o.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(n.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let c={...i,settings:{...i.settings}};if(l){let d=s(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,c.settings.foreground=d}if(u){let d=s(i.settings.background);t.colorReplacements[d]=i.settings.background,c.settings.background=d}return c});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Fi,{enumerable:!1,writable:!1,value:!0}),t}async function qi(e){return Array.from(new Set((await Promise.all(e.filter(t=>!Ei(t)).map(async t=>await Bi(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Wi(e){return(await Promise.all(e.map(async a=>Di(a)?null:bo(await Bi(a))))).filter(a=>!!a)}var ho=3,Sp=!1;function yp(e,t=3){if(ho&&!(typeof ho=="number"&&t>ho)){if(Sp)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var Ye=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Gi(e,t){if(!t)return e;if(t[e]){let a=new Set([e]);for(;t[e];){if(e=t[e],a.has(e))throw new Ye(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var wo=class extends ii{constructor(t,a,r,o={}){super(t),this._resolver=t,this._themes=a,this._langs=r,this._alias=o,this._themes.map(n=>this.loadTheme(n)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=bo(t);return a.name&&(this._resolvedThemes.set(a.name,a),this._loadedThemesCache=null),a}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let a=this._textmateThemeCache.get(t);a||(a=ea.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=Gi(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(n=>n.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let o=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(o.name=t.name,this._resolvedGrammars.set(t.name,o),t.aliases&&t.aliases.forEach(n=>{this._alias[n]=t.name}),this._loadedLanguagesCache=null,a.size)for(let n of a)this._resolvedGrammars.delete(n.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(n.scopeName),this._syncRegistry?._grammars?.delete(n.scopeName),this.loadLanguage(this._langMap.get(n.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let o of t)this.resolveEmbeddedLanguages(o);let a=Array.from(this._langGraph.entries()),r=a.filter(([o,n])=>!n);if(r.length){let o=a.filter(([n,s])=>s?(s.embeddedLanguages||s.embeddedLangs)?.some(l=>r.map(([u])=>u).includes(l)):!1).filter(n=>!r.includes(n));throw new Ye(`Missing languages ${r.map(([n])=>`\`${n}\``).join(", ")}, required by ${o.map(([n])=>`\`${n}\``).join(", ")}`)}for(let[o,n]of a)this._resolver.addLanguage(n);for(let[o,n]of a)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let r of a)this._langGraph.set(r,this._langMap.get(r))}},xo=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},a.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(a=>{this._langs.set(a,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(a=>{this._injections.get(a)||this._injections.set(a,[]),this._injections.get(a).push(t.scopeName)})}getInjections(t){let a=t.split("."),r=[];for(let o=1;o<=a.length;o++){let n=a.slice(0,o).join(".");r=[...r,...this._injections.get(n)||[]]}return r}},sa=0;function bp(e){sa+=1,e.warnings!==!1&&sa>=10&&sa%10===0&&console.warn(`[Shiki] ${sa} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new Ye("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(bo),o=new xo(e.engine,a),n=new wo(o,r,a,e.langAlias),s;function i(h){return Gi(h,e.langAlias)}function l(h){w();let x=n.getGrammar(typeof h=="string"?h:h.name);if(!x)throw new Ye(`Language \`${h}\` not found, you may need to load it first`);return x}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};w();let x=n.getTheme(h);if(!x)throw new Ye(`Theme \`${h}\` not found, you may need to load it first`);return x}function c(h){w();let x=u(h);s!==h&&(n.setTheme(x),s=h);let S=n.getColorMap();return{theme:x,colorMap:S}}function d(){return w(),n.getLoadedThemes()}function f(){return w(),n.getLoadedLanguages()}function p(...h){w(),n.loadLanguages(h.flat(1))}async function m(...h){return p(await qi(h))}function I(...h){w();for(let x of h.flat(1))n.loadTheme(x)}async function L(...h){return w(),I(await Wi(h))}function w(){if(t)throw new Ye("Shiki instance has been disposed")}function g(){t||(t=!0,n.dispose(),sa-=1)}return{setTheme:c,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:f,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:L,loadThemeSync:I,dispose:g,[Symbol.dispose]:g}}async function kp(e){e.engine||yp("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,r]=await Promise.all([Wi(e.themes||[]),qi(e.langs||[]),e.engine]);return bp({...e,themes:t,langs:a,engine:r})}async function Tp(e){let t=await kp(e);return{getLastGrammarState:(...a)=>up(t,...a),codeToTokensBase:(a,r)=>So(t,a,r),codeToTokensWithThemes:(a,r)=>Hi(t,a,r),codeToTokens:(a,r)=>Ya(t,a,r),codeToHast:(a,r)=>Za(t,a,r),codeToHtml:(a,r)=>Cp(t,a,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function Vi(e){let t=e.langs,a=e.themes,r=e.engine;async function o(n){function s(d){if(typeof d=="string"){if(d=n.langAlias?.[d]||d,Ei(d))return[];let f=t[d];if(!f)throw new te(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return f}return d}function i(d){if(Di(d))return"none";if(typeof d=="string"){let f=a[d];if(!f)throw new te(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return f}return d}let l=(n.themes??[]).map(d=>i(d)),u=(n.langs??[]).map(d=>s(d)),c=await Tp({engine:n.engine??r(),...n,themes:l,langs:u});return{...c,loadLanguage(...d){return c.loadLanguage(...d.map(s))},loadTheme(...d){return c.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return o}function vp(e){let t;async function a(r={}){if(t){let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}else{t=e({...r,themes:[],langs:[]});let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}}return a}function zi(e,t){let a=vp(e);async function r(o,n){let s=await a({langs:[n.lang],themes:"theme"in n?[n.theme]:Object.values(n.themes)}),i=await t?.guessEmbeddedLanguages?.(o,n.lang,s);return i&&await s.loadLanguage(...i),s}return{getSingletonHighlighter(o){return a(o)},async codeToHtml(o,n){return(await r(o,n)).codeToHtml(o,n)},async codeToHast(o,n){return(await r(o,n)).codeToHast(o,n)},async codeToTokens(o,n){return(await r(o,n)).codeToTokens(o,n)},async codeToTokensBase(o,n){return(await r(o,n)).codeToTokensBase(o,n)},async codeToTokensWithThemes(o,n){return(await r(o,n)).codeToTokensWithThemes(o,n)},async getLastGrammarState(o,n){return(await a({langs:[n.lang],themes:[n.theme]})).getLastGrammarState(o,n)}}}var ko=[{id:"abap",name:"ABAP",import:(()=>import("../abap-KGVIZMDC.js"))},{id:"actionscript-3",name:"ActionScript",import:(()=>import("../actionscript-3-2UHK5QYP.js"))},{id:"ada",name:"Ada",import:(()=>import("../ada-JKTWR5BV.js"))},{id:"angular-html",name:"Angular HTML",import:(()=>import("../angular-html-EOIKHM3D.js"))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>import("../angular-ts-DFS2FCNO.js"))},{id:"apache",name:"Apache Conf",import:(()=>import("../apache-MPGFGQFB.js"))},{id:"apex",name:"Apex",import:(()=>import("../apex-BOAZL66Z.js"))},{id:"apl",name:"APL",import:(()=>import("../apl-FBR445XW.js"))},{id:"applescript",name:"AppleScript",import:(()=>import("../applescript-C4CJ3STL.js"))},{id:"ara",name:"Ara",import:(()=>import("../ara-FSFFBRSD.js"))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>import("../asciidoc-QQK2LANG.js"))},{id:"asm",name:"Assembly",import:(()=>import("../asm-X43A2VYW.js"))},{id:"astro",name:"Astro",import:(()=>import("../astro-BMSTTQT4.js"))},{id:"awk",name:"AWK",import:(()=>import("../awk-4Z3PRTF7.js"))},{id:"ballerina",name:"Ballerina",import:(()=>import("../ballerina-JCXSJ2QD.js"))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>import("../bat-XFWR7RMZ.js"))},{id:"beancount",name:"Beancount",import:(()=>import("../beancount-7BBDB4BH.js"))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>import("../berry-PQ2BEJIZ.js"))},{id:"bibtex",name:"BibTeX",import:(()=>import("../bibtex-J2PAB23I.js"))},{id:"bicep",name:"Bicep",import:(()=>import("../bicep-TNKT6R3W.js"))},{id:"blade",name:"Blade",import:(()=>import("../blade-OHP5YUT7.js"))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>import("../bsl-PQW6E45S.js"))},{id:"c",name:"C",import:(()=>import("../c-PZBJFNXE.js"))},{id:"c3",name:"C3",import:(()=>import("../c3-GP7XYHE6.js"))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>import("../cadence-NABGDHKY.js"))},{id:"cairo",name:"Cairo",import:(()=>import("../cairo-WQSC2GLN.js"))},{id:"clarity",name:"Clarity",import:(()=>import("../clarity-NXNSINKX.js"))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>import("../clojure-Y57BKRMA.js"))},{id:"cmake",name:"CMake",import:(()=>import("../cmake-LVMEA3JZ.js"))},{id:"cobol",name:"COBOL",import:(()=>import("../cobol-LJNKRWP5.js"))},{id:"codeowners",name:"CODEOWNERS",import:(()=>import("../codeowners-JYHOTXQS.js"))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>import("../codeql-IWWSYR3L.js"))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>import("../coffee-NNDQ5QXC.js"))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>import("../common-lisp-JKXCDYH3.js"))},{id:"coq",name:"Coq",import:(()=>import("../coq-BEHPNP64.js"))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>import("../cpp-IALOHSZA.js"))},{id:"crystal",name:"Crystal",import:(()=>import("../crystal-ZDP3FIUI.js"))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>import("../csharp-ODFBXRGA.js"))},{id:"css",name:"CSS",import:(()=>import("../css-CJGL5AVH.js"))},{id:"csv",name:"CSV",import:(()=>import("../csv-LIK4TU3Z.js"))},{id:"cue",name:"CUE",import:(()=>import("../cue-UAAEAKHI.js"))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>import("../cypher-SZPVUQZJ.js"))},{id:"d",name:"D",import:(()=>import("../d-VSCA3XHG.js"))},{id:"dart",name:"Dart",import:(()=>import("../dart-A4PE6FIS.js"))},{id:"dax",name:"DAX",import:(()=>import("../dax-TILIKSFB.js"))},{id:"desktop",name:"Desktop",import:(()=>import("../desktop-75KK3D55.js"))},{id:"diff",name:"Diff",import:(()=>import("../diff-HOT6P45M.js"))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>import("../docker-FF35TY6T.js"))},{id:"dotenv",name:"dotEnv",import:(()=>import("../dotenv-FVPPHJI3.js"))},{id:"dream-maker",name:"Dream Maker",import:(()=>import("../dream-maker-SYE3ZPSJ.js"))},{id:"edge",name:"Edge",import:(()=>import("../edge-CCLQ2CKA.js"))},{id:"elixir",name:"Elixir",import:(()=>import("../elixir-F6DQGRKA.js"))},{id:"elm",name:"Elm",import:(()=>import("../elm-5QRQXDZ6.js"))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>import("../emacs-lisp-NJ4S4OHV.js"))},{id:"erb",name:"ERB",import:(()=>import("../erb-KUYJX32Q.js"))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>import("../erlang-APEONNZ6.js"))},{id:"fennel",name:"Fennel",import:(()=>import("../fennel-7OCMFVPS.js"))},{id:"fish",name:"Fish",import:(()=>import("../fish-BC46ME2N.js"))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>import("../fluent-MXZS6EX3.js"))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>import("../fortran-fixed-form-35BC2KX6.js"))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>import("../fortran-free-form-AXRAI2HH.js"))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>import("../fsharp-JKNSQXHD.js"))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>import("../gdresource-ZMKZGPZV.js"))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>import("../gdscript-HNCVXEYB.js"))},{id:"gdshader",name:"GDShader",import:(()=>import("../gdshader-XAJ4QRYP.js"))},{id:"genie",name:"Genie",import:(()=>import("../genie-HEFVQZAP.js"))},{id:"gherkin",name:"Gherkin",import:(()=>import("../gherkin-OFBRDPXX.js"))},{id:"git-commit",name:"Git Commit Message",import:(()=>import("../git-commit-ZE2M3Q5H.js"))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>import("../git-rebase-3N3INGLU.js"))},{id:"gleam",name:"Gleam",import:(()=>import("../gleam-NFFQFQLP.js"))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>import("../glimmer-js-RSUW6JYN.js"))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>import("../glimmer-ts-EZGWLX5T.js"))},{id:"glsl",name:"GLSL",import:(()=>import("../glsl-VJLRYEVJ.js"))},{id:"gn",name:"GN",import:(()=>import("../gn-UH2XQWLG.js"))},{id:"gnuplot",name:"Gnuplot",import:(()=>import("../gnuplot-K6IV6NNR.js"))},{id:"go",name:"Go",import:(()=>import("../go-BDV7RR5G.js"))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>import("../graphql-NLMAEKLI.js"))},{id:"groovy",name:"Groovy",import:(()=>import("../groovy-SX7K3XGL.js"))},{id:"hack",name:"Hack",import:(()=>import("../hack-3TGPQNR2.js"))},{id:"haml",name:"Ruby Haml",import:(()=>import("../haml-335RVEQR.js"))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>import("../handlebars-73IS6B2J.js"))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>import("../haskell-P5PTJARU.js"))},{id:"haxe",name:"Haxe",import:(()=>import("../haxe-RCPSSA3N.js"))},{id:"hcl",name:"HashiCorp HCL",import:(()=>import("../hcl-AKKZAVC2.js"))},{id:"hjson",name:"Hjson",import:(()=>import("../hjson-REXV6F6N.js"))},{id:"hlsl",name:"HLSL",import:(()=>import("../hlsl-AJ7VWOVL.js"))},{id:"html",name:"HTML",import:(()=>import("../html-654LNGWF.js"))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>import("../html-derivative-CMQ7BFDQ.js"))},{id:"http",name:"HTTP",import:(()=>import("../http-7ZVVH3VM.js"))},{id:"hurl",name:"Hurl",import:(()=>import("../hurl-B6WXEN45.js"))},{id:"hxml",name:"HXML",import:(()=>import("../hxml-5BXJCAAU.js"))},{id:"hy",name:"Hy",import:(()=>import("../hy-SB4TMFE7.js"))},{id:"imba",name:"Imba",import:(()=>import("../imba-Y64MHYWP.js"))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>import("../ini-J2OP4CNW.js"))},{id:"java",name:"Java",import:(()=>import("../java-MJKJ5GPP.js"))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>import("../javascript-IYAGHPR6.js"))},{id:"jinja",name:"Jinja",import:(()=>import("../jinja-WPD26JJ6.js"))},{id:"jison",name:"Jison",import:(()=>import("../jison-UYDZQBN5.js"))},{id:"json",name:"JSON",import:(()=>import("../json-5V4JESJO.js"))},{id:"json5",name:"JSON5",import:(()=>import("../json5-7SHUZD3R.js"))},{id:"jsonc",name:"JSON with Comments",import:(()=>import("../jsonc-X3Z34FN3.js"))},{id:"jsonl",name:"JSON Lines",import:(()=>import("../jsonl-6I3D2HM6.js"))},{id:"jsonnet",name:"Jsonnet",import:(()=>import("../jsonnet-PZEQIBYV.js"))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>import("../jssm-GJJ25IKR.js"))},{id:"jsx",name:"JSX",import:(()=>import("../jsx-NI2J427C.js"))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>import("../julia-CPV3A4MM.js"))},{id:"kdl",name:"KDL",import:(()=>import("../kdl-IA7HA2TL.js"))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>import("../kotlin-CCRMGYMI.js"))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>import("../kusto-7DW25GYH.js"))},{id:"latex",name:"LaTeX",import:(()=>import("../latex-F2CTDTFG.js"))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>import("../lean-MGJJWBTR.js"))},{id:"less",name:"Less",import:(()=>import("../less-WFSIMX5G.js"))},{id:"liquid",name:"Liquid",import:(()=>import("../liquid-7CFNUD3V.js"))},{id:"llvm",name:"LLVM IR",import:(()=>import("../llvm-CFQSEDXB.js"))},{id:"log",name:"Log file",import:(()=>import("../log-YQNML6LA.js"))},{id:"logo",name:"Logo",import:(()=>import("../logo-2PPKBL2M.js"))},{id:"lua",name:"Lua",import:(()=>import("../lua-RPAMRKNG.js"))},{id:"luau",name:"Luau",import:(()=>import("../luau-GR2DOH6N.js"))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>import("../make-DQQEEPI4.js"))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>import("../markdown-OC5ILZSY.js"))},{id:"marko",name:"Marko",import:(()=>import("../marko-XSB3CTWQ.js"))},{id:"matlab",name:"MATLAB",import:(()=>import("../matlab-YQY6FS4U.js"))},{id:"mdc",name:"MDC",import:(()=>import("../mdc-XWCHWP6B.js"))},{id:"mdx",name:"MDX",import:(()=>import("../mdx-ZIH2JLVR.js"))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>import("../mermaid-WPX56SBB.js"))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>import("../mipsasm-IDXQRZ2B.js"))},{id:"mojo",name:"Mojo",import:(()=>import("../mojo-MH7EQVOK.js"))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>import("../moonbit-5JDFTWKE.js"))},{id:"move",name:"Move",import:(()=>import("../move-RWSXKYDY.js"))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>import("../narrat-QJUEXMVV.js"))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>import("../nextflow-2EICNZA3.js"))},{id:"nginx",name:"Nginx",import:(()=>import("../nginx-RIWAEC5Z.js"))},{id:"nim",name:"Nim",import:(()=>import("../nim-U57UBFBS.js"))},{id:"nix",name:"Nix",import:(()=>import("../nix-XCKQVWCN.js"))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>import("../nushell-QGW7HANA.js"))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>import("../objective-c-V7KYXFHL.js"))},{id:"objective-cpp",name:"Objective-C++",import:(()=>import("../objective-cpp-NKUEWVGU.js"))},{id:"ocaml",name:"OCaml",import:(()=>import("../ocaml-QT2CZJZN.js"))},{id:"odin",name:"Odin",import:(()=>import("../odin-MVMIXBHP.js"))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>import("../openscad-BJDUXUUZ.js"))},{id:"pascal",name:"Pascal",import:(()=>import("../pascal-HGWEFD6L.js"))},{id:"perl",name:"Perl",import:(()=>import("../perl-IZHDGBO6.js"))},{id:"php",name:"PHP",import:(()=>import("../php-MNP62HWP.js"))},{id:"pkl",name:"Pkl",import:(()=>import("../pkl-VA5ZK5DW.js"))},{id:"plsql",name:"PL/SQL",import:(()=>import("../plsql-J7A7YWFH.js"))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>import("../po-5RDI65JX.js"))},{id:"polar",name:"Polar",import:(()=>import("../polar-VUJL2E7F.js"))},{id:"postcss",name:"PostCSS",import:(()=>import("../postcss-ESTB5G7N.js"))},{id:"powerquery",name:"PowerQuery",import:(()=>import("../powerquery-ODTEKQCW.js"))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>import("../powershell-ZOYRAWBJ.js"))},{id:"prisma",name:"Prisma",import:(()=>import("../prisma-QHG2W5GE.js"))},{id:"prolog",name:"Prolog",import:(()=>import("../prolog-CSAPG5PH.js"))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>import("../proto-WDNJBTSW.js"))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>import("../pug-P7LS6DER.js"))},{id:"puppet",name:"Puppet",import:(()=>import("../puppet-LHFWHTY3.js"))},{id:"purescript",name:"PureScript",import:(()=>import("../purescript-DUFJP4FY.js"))},{id:"python",name:"Python",aliases:["py"],import:(()=>import("../python-5ZNZSNQ2.js"))},{id:"qml",name:"QML",import:(()=>import("../qml-LTAXB6W5.js"))},{id:"qmldir",name:"QML Directory",import:(()=>import("../qmldir-7Z2ODQLM.js"))},{id:"qss",name:"Qt Style Sheets",import:(()=>import("../qss-FDFD3HQD.js"))},{id:"r",name:"R",import:(()=>import("../r-6ZOS53WN.js"))},{id:"racket",name:"Racket",import:(()=>import("../racket-7AYZPEUI.js"))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>import("../raku-A4F6VHVG.js"))},{id:"razor",name:"ASP.NET Razor",import:(()=>import("../razor-4QOCK4UD.js"))},{id:"reg",name:"Windows Registry Script",import:(()=>import("../reg-FAPHGG66.js"))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>import("../regexp-5BYLYA2R.js"))},{id:"rel",name:"Rel",import:(()=>import("../rel-7DJ7HHU4.js"))},{id:"riscv",name:"RISC-V",import:(()=>import("../riscv-YIYJATFG.js"))},{id:"ron",name:"RON",import:(()=>import("../ron-HYYMCHTX.js"))},{id:"rosmsg",name:"ROS Interface",import:(()=>import("../rosmsg-FDNH6QF7.js"))},{id:"rst",name:"reStructuredText",import:(()=>import("../rst-6KQSGP2V.js"))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>import("../ruby-OWE2HOOR.js"))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>import("../rust-V3GMJA2K.js"))},{id:"sas",name:"SAS",import:(()=>import("../sas-D3G4GB3X.js"))},{id:"sass",name:"Sass",import:(()=>import("../sass-JTO65AGR.js"))},{id:"scala",name:"Scala",import:(()=>import("../scala-4XQGFSVM.js"))},{id:"scheme",name:"Scheme",import:(()=>import("../scheme-CB7AC7IL.js"))},{id:"scss",name:"SCSS",import:(()=>import("../scss-6SKV4OGI.js"))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>import("../sdbl-LKGZFJ46.js"))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>import("../shaderlab-K536DHEB.js"))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>import("../shellscript-LRNUKUSZ.js"))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>import("../shellsession-IBQK7VWQ.js"))},{id:"smalltalk",name:"Smalltalk",import:(()=>import("../smalltalk-DQOSWAW7.js"))},{id:"solidity",name:"Solidity",import:(()=>import("../solidity-V2FMZEG4.js"))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>import("../soy-VW3CKXWF.js"))},{id:"sparql",name:"SPARQL",import:(()=>import("../sparql-L2VKP7YP.js"))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>import("../splunk-KDKHP7GC.js"))},{id:"sql",name:"SQL",import:(()=>import("../sql-UF27CALT.js"))},{id:"ssh-config",name:"SSH Config",import:(()=>import("../ssh-config-JC2DQ6ED.js"))},{id:"stata",name:"Stata",import:(()=>import("../stata-7PXCUY24.js"))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>import("../stylus-2L7N3EZD.js"))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>import("../surrealql-ZY3E6XEL.js"))},{id:"svelte",name:"Svelte",import:(()=>import("../svelte-Q45XIK2A.js"))},{id:"swift",name:"Swift",import:(()=>import("../swift-XBH5HZSC.js"))},{id:"system-verilog",name:"SystemVerilog",import:(()=>import("../system-verilog-VRAUSZY3.js"))},{id:"systemd",name:"Systemd Units",import:(()=>import("../systemd-JOTSGJD4.js"))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>import("../talonscript-NNZRZKOU.js"))},{id:"tasl",name:"Tasl",import:(()=>import("../tasl-MBFZ4QNC.js"))},{id:"tcl",name:"Tcl",import:(()=>import("../tcl-4GEDCBVE.js"))},{id:"templ",name:"Templ",import:(()=>import("../templ-3XM7DLQ3.js"))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>import("../terraform-XTHOS4UK.js"))},{id:"tex",name:"TeX",import:(()=>import("../tex-UXMN2CV7.js"))},{id:"toml",name:"TOML",import:(()=>import("../toml-J6K55ZSV.js"))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>import("../ts-tags-XNK5N5RZ.js"))},{id:"tsv",name:"TSV",import:(()=>import("../tsv-DOUJHQDQ.js"))},{id:"tsx",name:"TSX",import:(()=>import("../tsx-G5BMVRHK.js"))},{id:"turtle",name:"Turtle",import:(()=>import("../turtle-JHJ7W6U5.js"))},{id:"twig",name:"Twig",import:(()=>import("../twig-OEIJ72KK.js"))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>import("../typescript-LMKEAHFC.js"))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>import("../typespec-5CLTIJYY.js"))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>import("../typst-4W4Z436Z.js"))},{id:"v",name:"V",import:(()=>import("../v-Y4SBDBN7.js"))},{id:"vala",name:"Vala",import:(()=>import("../vala-UMKT2MFA.js"))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>import("../vb-DQ7A5WJU.js"))},{id:"verilog",name:"Verilog",import:(()=>import("../verilog-N6ZF7GQD.js"))},{id:"vhdl",name:"VHDL",import:(()=>import("../vhdl-BNYDT37G.js"))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>import("../viml-37RMDCBC.js"))},{id:"vue",name:"Vue",import:(()=>import("../vue-FIH2DYBE.js"))},{id:"vue-html",name:"Vue HTML",import:(()=>import("../vue-html-ZLTZN573.js"))},{id:"vue-vine",name:"Vue Vine",import:(()=>import("../vue-vine-6JKAZ54I.js"))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>import("../vyper-GVXF46KD.js"))},{id:"wasm",name:"WebAssembly",import:(()=>import("../wasm-NTB4O7GL.js"))},{id:"wenyan",name:"Wenyan",aliases:["\u6587\u8A00"],import:(()=>import("../wenyan-W7WB3BC7.js"))},{id:"wgsl",name:"WGSL",import:(()=>import("../wgsl-7GTDVXHG.js"))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>import("../wikitext-ASAFPAIL.js"))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>import("../wit-ZBCR6544.js"))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>import("../wolfram-SZRZOETJ.js"))},{id:"xml",name:"XML",import:(()=>import("../xml-EBTJCOTU.js"))},{id:"xsl",name:"XSL",import:(()=>import("../xsl-IBYEXWDX.js"))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>import("../yaml-GMVQNECR.js"))},{id:"zenscript",name:"ZenScript",import:(()=>import("../zenscript-O2TZFP4A.js"))},{id:"zig",name:"Zig",import:(()=>import("../zig-ZLGM7IMN.js"))}],ji=Object.fromEntries(ko.map(e=>[e.id,e.import])),$i=Object.fromEntries(ko.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),la={...ji,...$i};var Pp=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-HAPOYWX3.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-R6WAWEBC.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-KMD4YO7F.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-2ATPDILG.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-LJ7PG5AM.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-Z4Y2POK6.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-4TQUIKX4.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-B7YYPERT.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-KX33VXKA.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-LNHXUR7U.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-T2CMBBQ5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-SMFRNKX2.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-DBZHIUAO.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-TDAGYJUK.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-3E25TTAN.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-KCBFVSS5.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-WRCBXEVS.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-ET7SAHAV.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-6FNTZH5H.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-GGTAKNM7.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-LHYKPR5E.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-IQWZCHF7.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-ARPWF4FS.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-ODS6FPID.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-KFA5YFDW.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-MMET4L3Y.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-DBZDERMK.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-FSOMPXNP.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-FAQBCORN.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-JNDVF5RJ.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-S7JK6TQ6.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-QJJIMVEV.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-YFP3EJVX.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-NGDHCPUZ.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-H2BHKUKX.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-VENCGWTB.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-SDMLS22W.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-UHDBRLVF.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-3TB2BEET.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-CQ5WKNT7.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-LZRD4NPR.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-WHRY6275.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-7PNEW2JB.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-GJUYOOJR.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-EVGUMUX2.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-PMTR3SA7.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-O7WH4N5X.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-FBVUW6NJ.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-WBB7GZAD.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-7KAMONOP.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-F2G5IHZD.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-ALZ7XGH2.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-D3K4SWUL.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-YFPJODWS.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-H67AWZOI.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-OUVS63VK.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-2RCAVEXJ.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-XFSENHTC.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-5XXB3K6S.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-CHJCCBJH.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-Y5GIEAN4.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-7TI33KHX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-FOB25MRB.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-4WCNCTCO.js"))}],Xi=Object.fromEntries(Pp.map(e=>[e.id,e.import]));var ua=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ap(){return 2147483648}function Rp(){return typeof performance<"u"?performance.now():Date.now()}var Mp=(e,t)=>e+(t-e%t)%t;async function Fp(e){let t,a,r={};function o(p){a=p,r.HEAPU8=new Uint8Array(p),r.HEAPU32=new Uint32Array(p)}function n(p,m,I){r.HEAPU8.copyWithin(p,m,m+I)}function s(p){try{return t.grow(p-a.byteLength+65535>>>16),o(t.buffer),1}catch{}}function i(p){let m=r.HEAPU8.length;p=p>>>0;let I=Ap();if(p>I)return!1;for(let L=1;L<=4;L*=2){let w=m*(1+.2/L);w=Math.min(w,p+100663296);let g=Math.min(I,Mp(Math.max(p,w),65536));if(s(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,I=1024){let L=m+I,w=m;for(;p[w]&&!(w>=L);)++w;if(w-m>16&&p.buffer&&l)return l.decode(p.subarray(m,w));let g="";for(;m<w;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let x=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|x);continue}let S=p[m++]&63;if((h&240)===224?h=(h&15)<<12|x<<6|S:h=(h&7)<<18|x<<12|S<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let v=h-65536;g+=String.fromCharCode(55296|v>>10,56320|v&1023)}}return g}function c(p,m){return p?u(r.HEAPU8,p,m):""}let d={emscripten_get_now:Rp,emscripten_memcpy_big:n,emscripten_resize_heap:i,fd_write:()=>0};async function f(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,o(t.buffer),Object.assign(r,m),r.UTF8ToString=c}return await f(),r}var Bp=Object.defineProperty,Ep=(e,t,a)=>t in e?Bp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ce=(e,t,a)=>Ep(e,typeof t!="symbol"?t+"":t,a),ge=null;function Dp(e){throw new ua(e.UTF8ToString(e.getLastOnigError()))}var rr=class e{constructor(t){ce(this,"utf16Length"),ce(this,"utf8Length"),ce(this,"utf16Value"),ce(this,"utf8Value"),ce(this,"utf16OffsetToUtf8"),ce(this,"utf8OffsetToUtf16");let a=t.length,r=e._utf8ByteLength(t),o=r!==a,n=o?new Uint32Array(a+1):null;o&&(n[a]=r);let s=o?new Uint32Array(r+1):null;o&&(s[r]=a);let i=new Uint8Array(r),l=0;for(let u=0;u<a;u++){let c=t.charCodeAt(u),d=c,f=!1;if(c>=55296&&c<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(d=(c-55296<<10)+65536|p-56320,f=!0)}o&&(n[u]=l,f&&(n[u+1]=l),d<=127?s[l+0]=u:d<=2047?(s[l+0]=u,s[l+1]=u):d<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),d<=127?i[l++]=d:d<=2047?(i[l++]=192|(d&1984)>>>6,i[l++]=128|(d&63)>>>0):d<=65535?(i[l++]=224|(d&61440)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0):(i[l++]=240|(d&1835008)>>>18,i[l++]=128|(d&258048)>>>12,i[l++]=128|(d&4032)>>>6,i[l++]=128|(d&63)>>>0),f&&u++}this.utf16Length=a,this.utf8Length=r,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=n,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let a=0;for(let r=0,o=t.length;r<o;r++){let n=t.charCodeAt(r),s=n,i=!1;if(n>=55296&&n<=56319&&r+1<o){let l=t.charCodeAt(r+1);l>=56320&&l<=57343&&(s=(n-55296<<10)+65536|l-56320,i=!0)}s<=127?a+=1:s<=2047?a+=2:s<=65535?a+=3:a+=4,i&&r++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},or=class We{constructor(t){if(ce(this,"id",++We.LAST_ID),ce(this,"_onigBinding"),ce(this,"content"),ce(this,"utf16Length"),ce(this,"utf8Length"),ce(this,"utf16OffsetToUtf8"),ce(this,"utf8OffsetToUtf16"),ce(this,"ptr"),!ge)throw new ua("Must invoke loadWasm first.");this._onigBinding=ge,this.content=t;let a=new rr(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!We._sharedPtrInUse?(We._sharedPtr||(We._sharedPtr=ge.omalloc(1e4)),We._sharedPtrInUse=!0,ge.HEAPU8.set(a.utf8Value,We._sharedPtr),this.ptr=We._sharedPtr):this.ptr=a.createString(ge)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===We._sharedPtr?We._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};ce(or,"LAST_ID",0);ce(or,"_sharedPtr",0);ce(or,"_sharedPtrInUse",!1);var Ki=or,vo=class{constructor(t){if(ce(this,"_onigBinding"),ce(this,"_ptr"),!ge)throw new ua("Must invoke loadWasm first.");let a=[],r=[];for(let i=0,l=t.length;i<l;i++){let u=new rr(t[i]);a[i]=u.createString(ge),r[i]=u.utf8Length}let o=ge.omalloc(4*t.length);ge.HEAPU32.set(a,o/4);let n=ge.omalloc(4*t.length);ge.HEAPU32.set(r,n/4);let s=ge.createOnigScanner(o,n,t.length);for(let i=0,l=t.length;i<l;i++)ge.ofree(a[i]);ge.ofree(n),ge.ofree(o),s===0&&Dp(ge),this._onigBinding=ge,this._ptr=s}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,r){let o=0;if(typeof r=="number"&&(o=r),typeof t=="string"){t=new Ki(t);let n=this._findNextMatchSync(t,a,!1,o);return t.dispose(),n}return this._findNextMatchSync(t,a,!1,o)}_findNextMatchSync(t,a,r,o){let n=this._onigBinding,s=n.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),o);if(s===0)return null;let i=n.HEAPU32,l=s/4,u=i[l++],c=i[l++],d=[];for(let f=0;f<c;f++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[f]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function _p(e){return typeof e.instantiator=="function"}function Np(e){return typeof e.default=="function"}function Op(e){return typeof e.data<"u"}function Up(e){return typeof Response<"u"&&e instanceof Response}function Hp(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}var ar;function qp(e){if(ar)return ar;async function t(){ge=await Fp(async a=>{let r=e;return r=await r,typeof r=="function"&&(r=await r(a)),typeof r=="function"&&(r=await r(a)),_p(r)?r=await r.instantiator(a):Np(r)?r=await r.default(a):(Op(r)&&(r=r.data),Up(r)?typeof WebAssembly.instantiateStreaming=="function"?r=await Wp(r)(a):r=await Gp(r)(a):Hp(r)?r=await To(r)(a):r instanceof WebAssembly.Module?r=await To(r)(a):"default"in r&&r.default instanceof WebAssembly.Module&&(r=await To(r.default)(a))),"instance"in r&&(r=r.instance),"exports"in r&&(r=r.exports),r})}return ar=t(),ar}function To(e){return t=>WebAssembly.instantiate(e,t)}function Wp(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Gp(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Qi(e){return e&&await qp(e),{createScanner(t){return new vo(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Ki(t)}}}var nr=Vi({langs:la,themes:Xi,engine:()=>Qi(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Vp,codeToHast:zp,codeToTokens:jp,codeToTokensBase:$p,codeToTokensWithThemes:Xp,getSingletonHighlighter:Kp,getLastGrammarState:Qp}=zi(nr,{guessEmbeddedLanguages:Ni});var Ji=new Set(Object.keys(la)),Po=new Map,Ao=new Map,vt=new Map,Jp=(e,t)=>`${e}-${t[0]}-${t[1]}`,Yp=(e,t,a)=>{let r=e.slice(0,100),o=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${r}:${o}`},Zp=(e,t)=>{let a=Jp(e,t);if(Po.has(a))return Po.get(a);let r=nr({themes:t,langs:[e]});return Po.set(a,r),r};function em(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(r){return Ji.has(r)},getSupportedLanguages(){return Array.from(Ji)},getThemes(){return a},highlight({code:r,language:o,themes:n},s){let i=Yp(r,o,n);return Ao.has(i)?Ao.get(i):(s&&(vt.has(i)||vt.set(i,new Set),vt.get(i).add(s)),Zp(o,n).then(l=>{let u=l.getLoadedLanguages().includes(o)?o:"text",c=l.codeToTokens(r,{lang:u,themes:{light:n[0],dark:n[1]}});Ao.set(i,c);let d=vt.get(i);if(d){for(let f of d)f(c);vt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),vt.delete(i)}),null)}}}var Yi=em();import{memo as om}from"react";import{useEffect as tm,useRef as sr,useState as am}from"react";var rm=5,Zi=400;function el(e,t,a={}){let{msPerChar:r=rm}=a,[o,n]=am(t?"":e),s=sr(e),i=sr(t?0:e.length),l=sr(0),u=sr(null);return(e.length<i.current||!e.startsWith(o.slice(0,i.current)))&&(i.current=t?0:e.length),s.current=e,tm(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,n(e);return}if(s.current.length-i.current>Zi&&(i.current=s.current.length-Zi),u.current!==null)return;let d=f=>{let p=s.current;if(i.current>=p.length){u.current=null;return}l.current===0&&(l.current=f);let m=f-l.current;if(m>=r){let I=Math.min(Math.floor(m/r),p.length-i.current);i.current+=I,n(p.slice(0,i.current)),l.current=f}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,r]),o}import{jsx as ir}from"react/jsx-runtime";var Ro=({className:e,from:t,children:a,...r})=>ir("div",{className:T("ww-message ww:group ww:flex ww:w-full",t==="user"?"ww-message-user is-user ww:ml-auto ww:flex-col ww:items-end ww:[max-width:var(--ww-msg-max-width,80%)]":"ww-message-assistant is-assistant ww:flex-col",e),...r,children:ir("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),Mo=({children:e,className:t,...a})=>ir("div",{className:T("ww-bubble ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden","ww:[font-size:var(--ww-font-size,1rem)] ww:[line-height:var(--ww-line-height,1.5)]","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:[color:var(--ww-color-user-bubble-text)] ww:group-[.is-user]:[border-radius:var(--ww-msg-radius,8px)] ww:group-[.is-user]:[padding:var(--ww-msg-pad-y,12px)_var(--ww-msg-pad-x,16px)]","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),nm={cjk:Yr,code:Yi},sm={cjk:Yr},im={enabled:!1};function lm({className:e,linkSafety:t,isStreaming:a,children:r,...o}){let s=el(typeof r=="string"?r:"",!!a),i=typeof r=="string"?s:r;return ir(Et,{className:T("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??im,plugins:a?sm:nm,...o,children:i})}var lr=om(lm,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);lr.displayName="MessageResponse";import{createContext as um,useCallback as dm,useContext as ol,useEffect as cm,useMemo as Bo,useRef as fm,useState as Eo}from"react";import{Fragment as rl,jsx as K,jsxs as pt}from"react/jsx-runtime";function pm(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let r=Object.entries(e),o=[],n=t-2;for(let[s,i]of r){if(n<=8)break;let l=s.length>4?`${s.slice(0,4)}\u2026`:s,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let c=`${l}\u2009${u}`;o.push(c),n-=c.length+3}return`{${o.join(", ")}}`}function mm({text:e,className:t}){let{t:a}=V(),[r,o]=Eo(!1),n=fm(null);cm(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=dm(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),o(!0),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>o(!1),2e3)}catch{}},[e]);return K(Ee,{variant:"ghost",size:"sm",onClick:s,className:T("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:r?pt(rl,{children:[K(_t,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):pt(rl,{children:[K(Ot,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function nl({data:e,label:t,className:a,...r}){let[o,n]=Eo(!1),s=Bo(()=>JSON.stringify(e,null,2),[e]),i=pm(e);return pt("div",{className:T("ww:rounded-lg ww:bg-tool-card",a),...r,children:[pt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K(mm,{text:s})]}),pt("button",{type:"button",onClick:()=>n(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[K(Nt,{className:T("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",o&&"ww:rotate-90")}),o?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:s})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Do=um({open:!1,toggle:()=>{}});function sl({className:e,defaultOpen:t=!1,children:a,...r}){let[o,n]=Eo(t);return K(Do.Provider,{value:{open:o,toggle:()=>n(s=>!s)},children:K("div",{className:T("ww:mb-4 ww:w-full",e),"data-state":o?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:a})})}function il({className:e,title:t,state:a,...r}){let{open:o,toggle:n}=ol(Do),s=a==="input-available"||a==="input-streaming",i=t??"";return pt("button",{type:"button",onClick:n,className:T("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":o,...r,children:[K(nt,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:s?K(Ne,{duration:1.6,children:i}):i}),K($e,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",o&&"ww:rotate-180")})]})}function ll({className:e,title:t,state:a,...r}){let o=a==="input-available"||a==="input-streaming",n=t??"";return K("div",{className:T("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:K("span",{className:"ww:truncate",children:o?K(Ne,{duration:1.6,children:n}):n})})}function ul({className:e,children:t,...a}){let{open:r}=ol(Do);return K("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:T("ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",e),...a,children:t})})})}function _o({className:e,input:t,debug:a,...r}){let{t:o}=V(),n=Bo(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...i}=t;return i}return t},[t,a]);return K(nl,{data:n,label:o.tool.request,className:e,...r})}function Fo(e){if(!(typeof e!="object"||e===null))return e}function dl(e){return Fo(e?.ui)}function cl(e){return Fo(Fo(e)?._meta)}function tl(e){if(!e)return;let t=dl(e)?.resourceUri;if(typeof t=="string"&&t.length>0)return t;let a=e["ui/resourceUri"];if(typeof a=="string"&&a.length>0)return a;let r=e["openai/outputTemplate"];if(typeof r=="string"&&r.length>0)return r}function al(e){return dl(e)?.autoHeight===!0}function da(e,t,a){if(e){let r=tl(a?.[e]?._meta);if(r)return r}return tl(cl(t))}function fl(e,t,a){return e&&al(a?.[e]?._meta)?!0:al(cl(t))}function No({className:e,output:t,errorText:a,debug:r,...o}){let{t:n}=V(),s=Bo(()=>{if(!r&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,r]);return t||a?a?pt("div",{className:T("ww:space-y-2",e),...o,children:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:n.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(nl,{data:s,label:n.tool.response,className:e,...o}):null}import{jsx as pl,jsxs as hm}from"react/jsx-runtime";function ml(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function hl(e){return e.parts.some(ml)}function gl(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let r=e[e.length-1];return!r||r.role!=="assistant"?!0:!r.parts.some(n=>!(!ml(n)||a?.ignoreToolParts&&"toolCallId"in n||a?.ignoreReasoningParts&&n.type==="reasoning"))}function wl({className:e,...t}){let{t:a}=V();return hm("div",{"aria-live":"polite",className:T("ww:mb-4 ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...t,children:[pl(Vt,{className:"ww:size-4 ww:shrink-0"}),pl(Ne,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as gm,useEffect as Oo,useMemo as wm,useRef as Te,useState as Ll}from"react";function Pt(e){if(!e)return!1;let t=Array.isArray(e.content)&&e.content.length>0,a=typeof e.structuredContent=="object"&&e.structuredContent!==null&&Object.keys(e.structuredContent).length>0;return t||a}function xl(e,t){return!Pt(e)&&!Pt(t)?null:Pt(e)?Pt(t)?{...e.content||t.content?{content:[...e.content??[],...t.content??[]]}:{},...e.structuredContent||t.structuredContent?{structuredContent:{...e.structuredContent??{},...t.structuredContent??{}}}:{}}:{...e.content?{content:[...e.content]}:{},...e.structuredContent?{structuredContent:{...e.structuredContent}}:{}}:{...t?.content?{content:[...t.content]}:{},...t?.structuredContent?{structuredContent:{...t.structuredContent}}:{}}}import{jsx as Pm}from"react/jsx-runtime";var xm="/api/mcp/resource",Lm=500,Im=0,Cm=16,Sm="2026-01-26",ym=300,bm=3e3,km=3;function Tm(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function vm(e,t,a){return da(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Uo({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:r=xm,chatSessionId:o,isDark:n=!1,className:s,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:c,onDisplayModeChange:d,isFullscreen:f=!1,toolDefinitions:p}){let m=Te(null),I=Te(t),L=Te(a),w=Te({width:0,height:0}),g=Te(null),h=Te(!1),x=Te(0),S=Te("inline"),[v,A]=Ll(Im),[P,D]=Ll(void 0),k=Te(l),M=Te(u),b=Te(c),z=Te(d),q=Te(o),y=Te(p);I.current=t,L.current=a,k.current=l,M.current=u,b.current=c,z.current=d,q.current=o,y.current=p;let F=gm(_=>i?Math.max(_+Cm,0):Math.min(Math.max(_,50),Lm),[i]),B=wm(()=>{let _=r.includes("?")?"&":"?";return`${r}${_}uri=${encodeURIComponent(e)}`},[r,e]),ve=Te(n);ve.current=n;let we=Te(f);return Oo(()=>{we.current=f,w.current.height=-1,g.current&&(g.current.cancel(),g.current=null)},[f]),Oo(()=>{if(!h.current)return;let _=m.current;_?.contentWindow&&_.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:n?"dark":"light"}},"*")},[n]),Oo(()=>{let _=m.current;if(!_)return;let me=!1,re=!1,ye=null,oe=null,G=setTimeout(()=>{if(me||re||x.current>=km)return;x.current+=1;let le=new URL(_.src);le.searchParams.set("_retry",String(x.current)),_.src=le.toString()},bm),$=le=>{_.contentWindow?.postMessage(le,"*")},Pe=le=>{if(me||le.source!==_.contentWindow)return;let Q=le.data;if(!Q||typeof Q!="object"||Q.jsonrpc!=="2.0")return;let ne=Q.method,W=Q.id;if(ne==="ui/initialize"&&W!=null){re=!0,clearTimeout(G),$({jsonrpc:"2.0",id:W,result:{protocolVersion:Q.params?.protocolVersion??Sm,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:ve.current?"dark":"light",displayMode:S.current}}});return}if(ne==="ui/notifications/initialized"){h.current=!0;let N=I.current,U=L.current,X=U._meta&&typeof U._meta=="object"?U._meta:null,ue=Tm(q.current),Z=X&&typeof X.waniwani=="object"&&X.waniwani!==null?X.waniwani:null,be=Z||ue?{...Z??{},...ue?{sessionId:ue}:{}}:void 0,xe=X||be?{...X??{},...be?{waniwani:be}:{}}:void 0;$({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:N}});let R=U.content??[{type:"text",text:JSON.stringify(U)}];$({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:R,structuredContent:U.structuredContent,_meta:xe,meta:xe}});return}if(ne==="ui/notifications/size-changed"){let N=Q.params,U=typeof N?.height=="number"?N.height:void 0,X=typeof N?.width=="number"?N.width:void 0,ue=w.current,Z=U!==void 0&&U!==ue.height,be=X!==void 0&&X!==ue.width;if(!Z&&!be)return;if(Z&&U!==void 0){if(ue.height=U,we.current)return;let xe=F(U),R=_.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),A(xe),_.animate&&Math.abs(R-xe)>2){let H=_.animate([{height:`${R}px`},{height:`${xe}px`}],{duration:ym,easing:"ease-out",fill:"forwards"});g.current=H,H.onfinish=()=>{g.current===H&&(H.cancel(),g.current=null)}}}be&&i&&X!==void 0&&(ue.width=X,D(X));return}if(ne==="ui/open-link"&&W!=null){let N=Q.params?.url;typeof N=="string"&&(k.current?k.current(N):window.open(N,"_blank","noopener,noreferrer")),$({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="ui/message"&&W!=null){if(M.current&&Q.params){let N=Q.params,U=ye;if(ye=null,oe){clearTimeout(oe.timer);let X=oe.text;oe=null;let ue=(N.content??[]).map(Z=>Z.text??"").join("").trim();N={...N,content:[{type:"text",text:`${ue}
|
|
14
14
|
|
|
15
|
-
${X}`}]}}P.current({...O,...U?{modelContext:U}:{}})}$({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="ui/update-model-context"&&W!=null){ye=ml(ye,Q.params),$({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="tools/call"&&W!=null){let O=b.current;if(!O){$({jsonrpc:"2.0",id:W,error:{code:-32601,message:"tools/call not supported"}});return}let U=Q.params?.name;O({name:U,arguments:Q.params?.arguments??{}}).then(X=>{$({jsonrpc:"2.0",id:W,result:X});let ue=X.content?.map(Z=>Z.text??"").join("").trim();ue&&bm(U,X,S.current)&&(oe&&clearTimeout(oe.timer),oe={text:ue,timer:setTimeout(()=>{if(me)return;let Z=ye;ye=null,oe=null,P.current?.({role:"user",content:[{type:"text",text:ue}],...Z?{modelContext:Z}:{}})},500)})}).catch(X=>{let ue=X instanceof Error?X.message:"Tool call failed";$({jsonrpc:"2.0",id:W,error:{code:-32e3,message:ue}})});return}if(ne==="ui/request-display-mode"&&W!=null){let O=Q.params?.mode,U=O==="fullscreen"||O==="inline"||O==="pip"?O:"inline";y.current=U,$({jsonrpc:"2.0",id:W,result:{mode:U}}),$({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:U}}),q.current?.(U);return}if(ne==="ui/resource-teardown"&&W!=null){$({jsonrpc:"2.0",id:W,result:{}});return}ne==="ping"&&W!=null&&$({jsonrpc:"2.0",id:W,result:{}})};return window.addEventListener("message",Pe),()=>{me=!0,clearTimeout(V),oe&&clearTimeout(oe.timer),window.removeEventListener("message",Pe)}},[i,B]),km("iframe",{ref:m,src:E,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:k(!f&&"ww:rounded-md ww:border ww:border-border",s),style:{height:f?"100%":T,minWidth:f||!A?void 0:`min(${A}px, 100%)`,width:"100%",border:"none",colorScheme:n?"dark":"auto"},title:"MCP App"})}import{jsx as da,jsxs as Tm}from"react/jsx-runtime";function gl({icon:e,title:t,description:a,suggestions:r,onSuggestionSelect:o}){return Tm("div",{className:"ww:flex ww:flex-col ww:items-center ww:justify-center ww:py-12 ww:px-6 ww:text-center ww:min-h-full",children:[e&&da("div",{className:"ww:mb-4 ww:flex ww:items-center ww:justify-center ww:size-12 ww:rounded-xl ww:bg-foreground ww:text-background",children:e}),da("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&da("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),r&&r.length>0&&da("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:r.map((n,s)=>da("button",{type:"button",onClick:()=>o?.(n),className:k("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})]})}import{Component as vm}from"react";import{jsx as Ho,jsxs as Am}from"react/jsx-runtime";function Pm({onRetry:e}){let{t}=z();return Am("div",{className:"ww:flex ww:items-center ww:justify-between ww:rounded-md ww:border ww:border-border ww:bg-muted/50 ww:px-4 ww:py-3 ww:text-sm ww:text-muted-foreground",children:[Ho("span",{children:t.widgetErrorBoundary.failedToLoad}),Ho("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var lr=class extends vm{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?Ho(Pm,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Rm,jsx as Y,jsxs as et}from"react/jsx-runtime";function qo(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function wl(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Ut:nt}function ur({messages:e,status:t,welcomeMessage:a,welcome:r,onSuggestionSelect:o,resourceEndpoint:n,chatSessionId:s,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:c,fullscreenToolCallId:d,debug:f,showToolCalls:p=!0,toolDefinitions:m,messageClassNames:L}){let{t:I}=z(),w=e[e.length-1],g=e.length>0,h=d!=null,x=!h&&fl(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return et(Rm,{children:[!h&&(!g&&r?Y(gl,{...r,onSuggestionSelect:o}):a&&Y(Ro,{from:"assistant",children:Y(Mo,{children:Y(ir,{children:a})})})),e.map(y=>{let T=y.parts.filter(S=>S.type==="text"),v=y.parts.filter(S=>S.type==="reasoning"),A=y.parts.filter(S=>S.type==="file"),M=y.parts.filter(S=>"toolCallId"in S),F=y.parts.filter(S=>S.type==="reasoning"||"toolCallId"in S),P=y===w&&y.role==="assistant",b=T.length>0,q=h?M.some(S=>S.toolCallId===d):!1,G=p!==!1&&!q&&F.length>=2;return h&&!q?Y("div",{style:{display:"none"}},y.id):y.role==="assistant"&&!cl(y)?Y("div",{style:{display:"none"}},y.id):p===!1&&y.role==="assistant"&&!b&&A.length===0&&M.every(S=>{let B="output"in S?S.output:void 0;return B===void 0||!n||!ua(S.toolName,B,m)})?Y("div",{style:{display:"none"}},y.id):et(Ro,{from:y.role,className:L?.message,children:[p!==!1&&!q&&!G&&v.map((S,B)=>et($t,{isStreaming:S.state==="streaming",children:[Y(Xt,{}),Y(Kt,{children:S.text})]},`reasoning-${y.id}-${B}`)),G&&(()=>{let S=F[F.length-1],B=S.type==="reasoning"?{icon:We,label:I.reasoning.thinking}:{icon:wl(S.toolName),label:S.title??qo(S.toolName)};return et(ms,{isWorking:P&&(t==="streaming"||t==="submitted"),activeStep:B,children:[Y(hs,{workingLabel:I.chainOfThought.working,label:I.chainOfThought.done}),Y(gs,{children:F.map((E,ve)=>{let we=ve===F.length-1;if(E.type==="reasoning")return Y(xs,{isStreaming:E.state==="streaming",isLast:we,children:E.text},`reasoning-${y.id}-${ve}`);let _=E.title??qo(E.toolName),me=wl(E.toolName);if(p==="titles-only")return Y(Kr,{icon:me,title:_,state:E.state,isLast:we},E.toolCallId);let re="output"in E?E.output:void 0;return et(Kr,{icon:me,title:_,state:E.state,isLast:we,children:[Y(_o,{input:E.input,debug:f}),re!==void 0&&Y(Oo,{output:re,errorText:"errorText"in E?E.errorText:void 0,debug:f})]},E.toolCallId)})})]})})(),p!==!1&&!q&&!G&&M.length===1&&(()=>{let S=M[0],B=S.title??qo(S.toolName);if(p==="titles-only")return Y(ol,{title:B,state:S.state});let E="output"in S?S.output:void 0;return et(al,{children:[Y(rl,{title:B,state:S.state}),et(nl,{children:[Y(_o,{input:S.input,debug:f}),E!==void 0&&Y(Oo,{output:E,errorText:"errorText"in S?S.errorText:void 0,debug:f})]})]})})(),M.map(S=>{let B="output"in S?S.output:void 0,E=ua(S.toolName,B,m),ve=ll(S.toolName,B,m),we=S.toolCallId===d;return E&&n&&B!==void 0?Y("div",{style:we?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:E&&n&&B!==void 0&&Y(lr,{children:Y(Uo,{isFullscreen:we,resourceUri:E,toolInput:S.input??{},toolResult:{content:B.content,structuredContent:B.structuredContent,_meta:B._meta},resourceEndpoint:n,chatSessionId:s,isDark:i,autoHeight:ve,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:c?_=>c(_,{toolCallId:S.toolCallId,resourceUri:E,toolInput:S.input??{},toolResult:{content:B.content,structuredContent:B.structuredContent,_meta:B._meta},autoHeight:ve}):void 0})})},S.toolCallId):null}),!q&&Y("div",{children:et(Mo,{className:k(y.role==="user"?L?.userBubble:L?.assistantBubble),children:[A.length>0&&Y(ls,{files:A}),b?T.map((S,B)=>{let E=P&&t==="streaming"&&B===T.length-1;return Y(ir,{isStreaming:E,children:S.type==="text"?S.text:""},`${y.id}-${B}`)}):null]})})]},y.id)}),x&&Y(pl,{})]})}import{jsx as xl,jsxs as Bm}from"react/jsx-runtime";var Mm="https://app.waniwani.ai/assets/waniwani-logo.svg",Fm="https://waniwani.ai";function dr(){let{t:e}=z();return Bm("a",{href:Fm,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[xl("span",{children:e.poweredBy.label}),xl("img",{src:Mm,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as cr}from"react/jsx-runtime";function fr({suggestions:e,isLoading:t,onSelect:a,className:r,...o}){return e.length===0&&!t?null:cr("div",{className:k("ww:px-4 ww:py-2",r),...o,children:cr("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(n=>cr("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+n*20}px`}},n)):e.map((n,s)=>cr("button",{type:"button",onClick:()=>a(n),className:k("ww:rounded-full ww:border ww:border-border ww:bg-accent ww:px-3.5 ww:py-1.5 ww:text-sm","ww:text-foreground ww:hover:bg-border ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})})}import{useEffect as Em,useRef as Dm,useState as _m}from"react";import{jsx as ae,jsxs as mt}from"react/jsx-runtime";var Il=20;function Om({label:e}){return mt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ae("title",{children:e}),ae("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),ae("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function Nm({label:e}){return mt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ae("title",{children:e}),ae("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),ae("polyline",{points:"3 4 3 9 8 9"}),ae("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),ae("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Um({label:e}){return mt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ae("title",{children:e}),ae("polyline",{points:"3 6 5 6 21 6"}),ae("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),ae("path",{d:"M10 11v6"}),ae("path",{d:"M14 11v6"})]})}function pr({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:r,onDeleteThread:o}){let{locale:n,t:s}=z(),[i,l]=_m(!1),u=Dm(null);Em(()=>{if(!i)return;let f=p=>{let m=u.current;m&&(p.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[i]);let c=e.slice(0,Il),d=Math.max(0,e.length-Il);return mt("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[ae("button",{type:"button",onClick:a,title:s.threadMenu.newChat,"aria-label":s.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ae(Om,{label:s.threadMenu.newChat})}),ae("button",{type:"button",onClick:()=>l(f=>!f),title:s.threadMenu.threadHistory,"aria-label":s.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ae(Nm,{label:s.threadMenu.threadHistory})}),i&&mt("div",{role:"menu",className:"ww:absolute ww:right-0 ww:top-full ww:mt-1 ww:w-72 ww:max-h-80 ww:overflow-y-auto ww:rounded-lg ww:border ww:border-border ww:bg-background ww:shadow-lg ww:z-50",children:[c.length===0&&ae("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:s.threadMenu.noPreviousChats}),c.map(f=>{let p=f.threadId===t,m=Date.parse(f.updatedAt);return mt("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${p?"ww:bg-foreground/5":""}`,children:[mt("button",{type:"button",onClick:()=>{r(f.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[ae("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:f.title}),ae("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Gr(m,n)})]}),ae("button",{type:"button",onClick:L=>{L.stopPropagation(),o(f.threadId)},title:s.threadMenu.deleteThread,"aria-label":s.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:ae(Um,{label:s.threadMenu.deleteThread})})]},f.threadId)}),d>0&&ae("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:s.threadMenu.hiddenThreads(d)})]})]})}import{useCallback as Hm,useRef as qm}from"react";function mr(e){let t=qm(e);return t.current=e,Hm(async a=>{let{api:r,headers:o,onCallTool:n,sessionId:s}=t.current;if(n)return n(a);let i=`${r??"/api/waniwani"}/tool`,l=typeof s=="string"&&s.trim().length>0?s.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...o},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as sh}from"@ai-sdk/react";import{useCallback as Ce,useEffect as Fe,useRef as fe,useState as ht}from"react";import{createContext as Gm,useContext as Wm}from"react";function Ll(e){let t=new Set;return{subscribe(a){return t.add(a),()=>{t.delete(a)}},emit(a){let{sessionId:r,...o}=a,n=a.name==="session.started"?a.properties.sessionId:void 0,s={...o,mode:e.mode,sessionId:Object.hasOwn(a,"sessionId")?r:n??e.getSessionId?.(),timestamp:Date.now()};for(let i of[...t])try{i(s)}catch(l){console.warn("[Waniwani] onEvent subscriber threw:",l)}}}}function Cl(){return{subscribe(){return()=>{}},emit(){}}}var Sl=Gm(Cl());function hr(){return Wm(Sl)}var yl=Sl.Provider;function tt(e,t,a){let[r,o=""]=e.split("?"),n=r.replace(/\/$/,""),s=new URLSearchParams(o);if(a)for(let[l,u]of Object.entries(a))s.set(l,u);let i=s.toString();return`${n}${t}${i?`?${i}`:""}`}import{DefaultChatTransport as Vm,uiMessageChunkSchema as zm}from"ai";function jm(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let r=a.find(o=>o.code==="invalid_union");if(!r?.errors)return null;for(let o of r.errors){if(!Array.isArray(o)||o.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let s=o.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(s.length>0)return s}return null}var gr=class extends Vm{processResponseStream(t){let a="",r=zm(),o=r.validate?.bind(r);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(n,s){a+=n;let i=a.split(`
|
|
16
|
-
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let c=u.slice(5).trim();if(c!=="[DONE]")try{let d=JSON.parse(c);if(!o){s.enqueue(d);continue}let f=await o(d);if(f.success){s.enqueue(f.value);continue}let p=jm(f.error);if(p?.length){let m={...d};for(let I of p)delete m[I];let L=await o(m);L.success&&s.enqueue(L.value)}}catch{}}}}))}};var $m="waniwani-memory";var Me="threads",wr="by_memoryUserId",Xm="by_updatedAt";var kl="memoryUserId",bl="waniwani-memory-user-id",Go=null;function Wo(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}function Km(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Me)){let a=e.createObjectStore(Me,{keyPath:"threadId"});a.createIndex(wr,"memoryUserId",{unique:!1}),a.createIndex(Xm,"updatedAt",{unique:!1})}}async function Vo(){return new Promise((e,t)=>{let a=indexedDB.open($m,2);a.onupgradeneeded=r=>{Km(a.result,r.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Qm(){return Vo()}async function Jm(e){return new Promise((t,a)=>{let n=e.transaction("ids","readonly").objectStore("ids").get(kl);n.onsuccess=()=>t(typeof n.result=="string"?n.result:null),n.onerror=()=>a(n.error)})}async function Ym(e,t){return new Promise((a,r)=>{let s=e.transaction("ids","readwrite").objectStore("ids").put(t,kl);s.onsuccess=()=>a(),s.onerror=()=>r(s.error)})}async function Zm(){if(typeof indexedDB>"u")return null;try{let e=await Qm();try{let t=await Jm(e);if(t)return t;let a=Wo();return await Ym(e,a),a}finally{e.close()}}catch{return null}}function eh(){try{let e=localStorage.getItem(bl);if(e)return e;let t=Wo();return localStorage.setItem(bl,t),t}catch{return null}}async function Tl(){let e=await Zm();if(e)return e;let t=eh();return t||(Go||(Go=Wo()),Go)}var vl=50,Pl=1e3;function xr(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.threadId=="string"&&typeof t.memoryUserId=="string"&&typeof t.title=="string"&&Array.isArray(t.messages)&&typeof t.createdAt=="string"&&typeof t.updatedAt=="string"}async function Ir(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Vo(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function zo(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function jo(e){return await Ir(async a=>{let n=a.transaction(Me,"readonly").objectStore(Me).index(wr),i=(await zo(n.getAll(e))??[]).filter(xr);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function Lr(e){return await Ir(async a=>{let o=a.transaction(Me,"readonly").objectStore(Me),n=await zo(o.get(e));return xr(n)?n:null})??null}async function $o(e){if(!xr(e))return;let t=e.messages.length>Pl?{...e,messages:e.messages.slice(e.messages.length-Pl)}:e;await Ir(async a=>{await new Promise((l,u)=>{let c=a.transaction(Me,"readwrite");c.oncomplete=()=>l(),c.onerror=()=>u(c.error),c.onabort=()=>u(c.error),c.objectStore(Me).put(t)});let r=a.transaction(Me,"readwrite"),o=r.objectStore(Me),n=o.index(wr),i=(await zo(n.getAll(t.memoryUserId))??[]).filter(xr);if(i.length>vl){i.sort((u,c)=>u.updatedAt<c.updatedAt?-1:1);let l=i.slice(0,i.length-vl);for(let u of l)o.delete(u.threadId)}return await new Promise((l,u)=>{r.oncomplete=()=>l(),r.onerror=()=>u(r.error),r.onabort=()=>u(r.error)}),null})}async function Al(e){await Ir(async t=>(await new Promise((a,r)=>{let o=t.transaction(Me,"readwrite");o.oncomplete=()=>a(),o.onerror=()=>r(o.error),o.onabort=()=>r(o.error),o.objectStore(Me).delete(e)}),null))}async function Xo(e){return(await jo(e))[0]?.threadId??null}function Rl(e){let t=e.trim();if(!t)return`Conversation on ${new Date().toISOString().slice(0,10)}`;let a=t.split(/\r?\n/,1)[0]??t;return a.length<=60?a:`${a.slice(0,60).trimEnd()}\u2026`}var Ko="waniwani-visitor-id";function Fl(e,t){return e.match(t)?.[1]??null}function th(e){let t=[["Edge",/Edg(?:e|A|iOS)?\/(\S+)/],["Opera",/(?:OPR|Opera)\/(\S+)/],["Samsung Internet",/SamsungBrowser\/(\S+)/],["Firefox",/Firefox\/(\S+)/],["Chrome",/Chrome\/(\S+)/],["Safari",/Version\/(\S+).*Safari/]];for(let[a,r]of t){let o=Fl(e,r);if(o)return{name:a,version:o}}return null}function ah(e){let t=[["iOS",/(?:iPhone|iPad|iPod).+?OS (\d+[_.\d]*)/],["Android",/Android (\d+[.\d]*)/],["macOS",/Mac OS X (\d+[_.\d]*)/],["Windows",/Windows NT (\d+[.\d]*)/],["ChromeOS",/CrOS \S+ (\d+[.\d]*)/],["Linux",/Linux/]];for(let[a,r]of t){let o=Fl(e,r);if(o)return{name:a,version:o.replace(/_/g,".")};if(a==="Linux"&&r.test(e))return{name:a,version:""}}return null}function rh(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}function oh(){try{if(typeof crypto<"u"){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto.getRandomValues=="function"){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,a=>a.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}}}catch{}return`v-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function At(){try{let t=localStorage.getItem(Ko);if(t)return t}catch{}let e=oh();try{localStorage.setItem(Ko,e)}catch{}return e}function Ml(e){let t=typeof e=="string"?e.trim():"";if(!t)return At();try{localStorage.setItem(Ko,t)}catch{}return t}function nh(e){return e!=null&&typeof e.then=="function"}function Bl(e){let t=!1,a=()=>{t=!0};if(e==null)return a;let r;try{r=typeof e=="function"?e():e}catch{return a}return nh(r)?r.then(o=>{t||Ml(o??"")},()=>{}):Ml(r??""),a}async function ca(){let e=navigator.userAgent,t=At(),a=await Tl();return{userAgent:e,browser:th(e),os:ah(e),deviceType:rh(e),language:navigator.language,languages:[...navigator.languages],timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,screenWidth:screen.width,screenHeight:screen.height,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,colorDepth:screen.colorDepth,devicePixelRatio:window.devicePixelRatio??1,touchSupport:"ontouchstart"in window||navigator.maxTouchPoints>0,connectionType:navigator.connection?.effectiveType??"unknown",referrer:document.referrer,visitorId:t,memoryUserId:a}}var ih="x-session-id",lh=250,uh=200;function El(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():zt()}function Cr(){return new Date().toISOString()}function Dl(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function dh(e,t){let a=tt(e,"/tools"),r=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!r.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${r.status} ${r.statusText}`);let o=await r.json();if(!o||!Array.isArray(o.tools))return{};let n={};for(let s of o.tools)s&&typeof s.name=="string"&&(n[s.name]=s);return n}function Sr(e){let{api:t="/api/waniwani",headers:a,body:r,onMessageSent:o,onResponseReceived:n,enableThreadHistory:s=!1,activeThreadId:i,onThreadChange:l}=e,u=e.visitorId;Fe(()=>Bl(u),[u]);let c=hr(),d=fe(a),f=fe(r),p=fe(s);Fe(()=>{p.current=s},[s]);let m=fe(void 0),L=fe(null),[I,w]=ht(void 0),g=fe(I),[h,x]=ht(i),y=fe(h),[T,v]=ht([]),[A,M]=ht(!s),F=fe(void 0),P=fe(void 0),b=fe(void 0),q=fe(void 0),G=fe(0),S=fe(l);Fe(()=>{S.current=l},[l]);let B=Ce(C=>{y.current=C,x(C),C&&(S.current?.(C),c.emit({name:"thread.changed",sessionId:g.current,properties:{threadId:C}}))},[c]),E=Ce(async()=>{if(!s)return;let C=L.current?.memoryUserId;if(!C)return;let D=await jo(C);v(D)},[s]),ve=Ce(()=>g.current,[]),we=Ce(C=>{let D=Dl(C);if(!D||g.current===D)return;let N=g.current===void 0;g.current=D,w(D),N&&c.emit({name:"session.started",properties:{sessionId:D}})},[c]),_=Ce(()=>{g.current=void 0,w(void 0)},[]);Fe(()=>{d.current=a},[a]),Fe(()=>{f.current=r},[r]),Fe(()=>{let C=!1,D=G.current;return(async()=>{try{let ee=await ca();if(C)return;L.current=ee}catch{}if(!s)return;let N=L.current?.memoryUserId;if(!N){M(!0);return}try{let ee=i??await Xo(N);if(C||D!==G.current)return;if(ee){let he=await Lr(ee);if(C||D!==G.current)return;he&&he.memoryUserId===N&&(y.current=he.threadId,x(he.threadId),F.current=he.createdAt,P.current=he.title,he.sessionId&&(g.current=he.sessionId,w(he.sessionId)),W(he.messages))}await E()}finally{C||M(!0)}})(),()=>{C=!0}},[]);let me=fe(new gr({api:t,headers:()=>({...d.current}),body:()=>{let C={...f.current??{}},D=Object.hasOwn(C,"sessionId"),N=Dl(C.sessionId);if(N)we(N),C.sessionId=N;else if(D)_(),delete C.sessionId;else{let Fr=ve();Fr&&(C.sessionId=Fr)}Pt(m.current)&&(C.modelContext=m.current);let ee=L.current,he=At();ee&&(C.visitorContext={timezone:ee.timezone,language:ee.language,languages:ee.languages,deviceType:ee.deviceType,referrer:ee.referrer,visitorId:he});let se=typeof C.visitor=="object"&&C.visitor!==null?C.visitor:{},vu=typeof se.client=="object"&&se.client!==null?se.client:{};C.visitor={...se,id:he,client:{...vu,...ee&&{memoryUserId:ee.memoryUserId}}};let gn=typeof C.extra=="object"&&C.extra!==null&&!Array.isArray(C.extra)?C.extra:void 0,wn=L.current?.memoryUserId,xn=L.current?.language,ga={};if(wn&&(ga.memoryUserId=wn),xn&&(ga.locale=xn),(Object.keys(ga).length>0||gn)&&(C.extra={...ga,...gn??{}}),p.current)if(Object.hasOwn(C,"threadId"))typeof C.threadId=="string"&&(y.current=C.threadId);else{let wa=y.current;wa||(wa=El(),F.current=Cr(),P.current=void 0,B(wa)),C.threadId=wa}return C},fetch:(async(C,D)=>{let N=await fetch(C,D);return m.current=void 0,we(N.headers.get(ih)),N})})),re=fe(null),ye=fe(null),oe=fe({}),[V,$]=ht(0),Pe=e.skipRemoteConfig===!0,le=Ce(async()=>{if(!Pe)try{let C=await dh(t,d.current);oe.current=C,$(D=>D+1)}catch(C){console.warn("[Waniwani] Failed to fetch tool definitions:",C instanceof Error?C.message:C)}},[t,Pe]);Fe(()=>{le()},[le]);let{messages:Q,sendMessage:ne,setMessages:W,status:O}=sh({messages:e.initialMessages,transport:me.current,onFinish({message:C,isAbort:D,isDisconnect:N,isError:ee}){n?.(),!D&&!N&&!ee&&c.emit({name:"message.received"}),re.current&&(ye.current=C)},onError(C){console.warn("[Waniwani] Chat error:",C.message),c.emit({name:"chat.error",properties:{message:C.message.slice(0,uh)}}),re.current&&(re.current.reject(C),re.current=null)}}),U=fe(Q);Fe(()=>{U.current=Q},[Q]);let X=fe(s);Fe(()=>{if(!s||X.current||(X.current=!0,U.current.length>0))return;let C=!1,D=G.current;return M(!1),(async()=>{try{let N=L.current;if(!N)try{N=await ca(),L.current=N}catch{}let ee=N?.memoryUserId;if(!ee||C||D!==G.current){C||M(!0);return}let he=i??await Xo(ee);if(C||D!==G.current)return;if(he){let se=await Lr(he);if(C||D!==G.current)return;se&&se.memoryUserId===ee&&(y.current=se.threadId,x(se.threadId),F.current=se.createdAt,P.current=se.title,se.sessionId&&(g.current=se.sessionId,w(se.sessionId)),W(se.messages))}await E()}finally{C||M(!0)}})(),()=>{C=!0}},[s]),Fe(()=>{if(O==="ready"&&re.current&&ye.current){let C=re.current,D=ye.current;re.current=null,ye.current=null,C.resolve(D)}},[O]);let[ue,Z]=ht(""),[be,xe]=ht([]),R=O==="submitted"||O==="streaming",H=Ce(C=>{xe(D=>D.filter(N=>N.id!==C))},[]),de=R&&be.length>0,Be=Ce(C=>{let D=!!C.text?.trim(),N=!!C.files?.length;if(D||N){if(R){if(be.length>0)return;xe(ee=>[...ee,{id:zt(),text:C.text||"",files:C.files??[],modelContext:C.modelContext}]),Z("");return}m.current=C.modelContext,ne({text:C.text||"",files:C.files}),o?.(C.text||""),c.emit({name:"message.sent"}),Z("")}},[ne,o,R,be.length,c]),je=Ce(C=>new Promise((D,N)=>{re.current={resolve:D,reject:N},ne({text:C}),o?.(C),c.emit({name:"message.sent"})}),[ne,o,c]);Fe(()=>{if(O!=="ready"||be.length===0)return;let[C,...D]=be;xe(D),m.current=C.modelContext,ne({text:C.text,files:C.files.length>0?C.files:void 0}),o?.(C.text),c.emit({name:"message.sent"})},[O,ne,o,be,c]);let gt=Ce(()=>{W([]),xe([]),_(),Z(""),oe.current={},$(C=>C+1),le()},[W,_,le]),wt=Ce(()=>{if(!p.current)return;let C=L.current?.memoryUserId,D=y.current,N=U.current;if(!(!C||!D||N.length===0)){if(F.current||(F.current=Cr()),!P.current){let ee=N.find(se=>se.role==="user"),he=ee?ee.parts.map(se=>"text"in se&&typeof se.text=="string"?se.text:"").join(" "):"";P.current=Rl(he)}return{threadId:D,memoryUserId:C,title:P.current,messages:N,sessionId:g.current,createdAt:F.current,updatedAt:Cr()}}},[]),pn=Ce(async()=>{let C=wt();C&&(await $o(C),await E())},[wt,E]);Fe(()=>{if(s&&A&&!(O==="submitted"||O==="streaming")&&Q.length!==0)return b.current&&clearTimeout(b.current),b.current=setTimeout(()=>{b.current=void 0;let C=pn().finally(()=>{q.current===C&&(q.current=void 0)});q.current=C},lh),()=>{b.current&&clearTimeout(b.current)}},[s,A,Q,O,pn]);let ha=Ce(()=>{let C=q.current,D=b.current,N=D?wt():void 0;return D&&(clearTimeout(D),b.current=void 0),(async()=>{C&&await C,N&&(await $o(N),await E())})()},[wt,E]),Su=Ce(()=>{G.current+=1,ha(),W([]),xe([]),_(),Z("");let C=El();return F.current=Cr(),P.current=void 0,B(C),E(),C},[W,_,B,E,ha]),Mr=Ce(async C=>{G.current+=1;let D=G.current;if(await ha(),D!==G.current)return;let N=await Lr(C);D===G.current&&N&&(N.sessionId?(g.current=N.sessionId,w(N.sessionId)):_(),B(N.threadId),F.current=N.createdAt,P.current=N.title,W(N.messages),xe([]),Z(""))},[W,_,B,ha]),yu=Ce(async C=>{if(y.current===C){G.current+=1,b.current&&(clearTimeout(b.current),b.current=void 0);let D=q.current;D&&await D}await Al(C),await E(),y.current===C&&(W([]),xe([]),_(),Z(""),y.current=void 0,x(void 0),F.current=void 0,P.current=void 0)},[W,_,E]);Fe(()=>{s&&A&&i!==void 0&&i!==y.current&&Mr(i)},[i,s,A,Mr]);let bu=Ce(C=>{Z(C.target.value)},[]),mn=Q[Q.length-1],hn=Q.length>0,ku=R&&(!hn||mn.role==="user"),Tu=oe.current;return{messages:Q,status:O,text:ue,setText:Z,handleSubmit:Be,handleTextChange:bu,isLoading:R,showLoaderBubble:ku,lastMessage:mn,hasMessages:hn,sendMessage:ne,sendMessageAndWait:je,reset:gt,queuedMessages:be,queueFull:de,removeQueuedMessage:H,sessionId:I,toolDefinitions:Tu,refreshToolDefinitions:le,threads:T,activeThreadId:h,isThreadHistoryReady:A,startNewThread:Su,switchThread:Mr,deleteThread:yu}}import{useEffect as _l,useRef as ch,useState as fh}from"react";var ph={debug:!1,eval:!1};function Ol(e="/api/waniwani",t,a=!1){let[r,o]=fh(ph),n=ch(t);return _l(()=>{n.current=t},[t]),_l(()=>{a||(async()=>{try{let s=n.current,l=await(await fetch(tt(e,"/config"),{headers:s?{...s}:void 0})).json();o({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),r}import{useCallback as wh,useEffect as Jo,useRef as xh,useState as Hl}from"react";var fa=["channel","page","flow","followup"];var Qo="waniwani/suggestions";function Rt(e){return typeof e=="object"&&e!==null}function Nl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function mh(e){if(!Rt(e)||!("toolCallId"in e)||!("output"in e))return null;let t=e.output;if(!Rt(t)||!Rt(t._meta))return null;let a=t._meta[Qo];return!Rt(a)||!Nl(a.suggestions)?null:a.suggestions}function hh(e){let t=null;for(let a of e.parts){let r=mh(a);r!==null&&(t=r.length>0?r:null)}return t}function gh(e){for(let t of e.parts){if(!Rt(t)||t.type!=="data-suggestions")continue;let a=t.data;if(Rt(a)&&Nl(a.suggestions)&&a.suggestions.length>0)return a.suggestions}return null}function Ul(e,t={}){let{includeFlow:a=!0}=t,r=a?hh(e):null;if(r)return{suggestions:r,source:"flow"};let o=gh(e);return o?{suggestions:o,source:"followup"}:null}function ql(e){return typeof e=="object"&&e!==null}var Gl=["channel","page","followup"];function Ih(e){if(e===!1)return[];if(e===!0)return[...fa];if(ql(e)){if(e.origins!==void 0)return e.origins;if(e.dynamic===!0)return[...fa];if(e.dynamic===!1)return[]}return[...Gl]}function Wl(e){let{suggestions:t,suggestionOrigins:a}=e;if(!(!t&&a===void 0))return{initial:t,origins:a}}function yr(e){let{messages:t,status:a,config:r}=e,o=ql(r)&&r.initial?r.initial:void 0,[n,s]=Hl(o??[]),[i,l]=Hl("channel"),u=xh(a),c=Ih(r),d=c.includes("flow"),f=c.includes("followup"),p=wh(()=>{s([])},[]),m=t.length>0;Jo(()=>{m||(s(o??[]),l("channel"))},[o,m]);let L=t[t.length-1];return Jo(()=>{L?.role==="user"&&p()},[L,p]),Jo(()=>{let I=u.current;if(u.current=a,I==="streaming"&&a==="ready"&&(d||f)){let w=[...t].reverse().find(x=>x.role==="assistant");if(!w)return;let g=Ul(w,{includeFlow:d}),h=g&&(g.source==="flow"&&d||g.source==="followup"&&f);s(h?g.suggestions:[]),l(h?g.source:"channel")}},[a,d,f,t]),{suggestions:n,source:i,isLoading:!1,clear:p}}import{useEffect as Lh,useRef as Ch,useState as Sh}from"react";var yh=80,bh=50,kh=15e3,Vl=500;function br(e,t=!0){let[a,r]=Sh(""),o=Ch(void 0);return Lh(()=>{if(!t){r("");return}let n=0,s=!1,i=!1,l=()=>{i||(s?(n--,r(e.slice(0,n)),n<=0?(s=!1,o.current=setTimeout(l,Vl)):o.current=setTimeout(l,bh)):(n++,r(e.slice(0,n)),n>=e.length?(s=!0,o.current=setTimeout(l,kh)):o.current=setTimeout(l,yh)))};return o.current=setTimeout(l,Vl),()=>{i=!0,clearTimeout(o.current)}},[e,t]),a}function kr(e,t){let a=t?.Authorization,r=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return tt(e,"/resource",r?{token:r}:void 0)}var zl={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:8,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5",userBubbleTextColor:"#1f2937",assistantBubbleTextColor:"#1f2937",messagePaddingX:16,messagePaddingY:12,messageMaxWidth:"80%",fontSize:16,lineHeight:"1.5",glassTint:"transparent",glassTintStrength:"0"},Th={backgroundColor:"#212121",headerBackgroundColor:"#1e1e1e",headerTextColor:"#ececec",textColor:"#ececec",primaryForeground:"#ffffff",mutedColor:"#8e8ea0",borderColor:"#444444",assistantBubbleColor:"#2f2f2f",userBubbleColor:"#303030",inputBackgroundColor:"#2f2f2f",primaryColor:"#6366f1",statusColor:"#22c55e",toolCardColor:"#262626",userBubbleTextColor:"#ffffff",assistantBubbleTextColor:"#ececec"},vh={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"],userBubbleTextColor:["--ww-user-bubble-text"],assistantBubbleTextColor:["--ww-assistant-bubble-text"],messagePaddingX:["--ww-msg-pad-x"],messagePaddingY:["--ww-msg-pad-y"],messageMaxWidth:["--ww-msg-max-width"],fontSize:["--ww-font-size"],lineHeight:["--ww-line-height"],glassTint:["--ww-glass-tint"],glassTintStrength:["--ww-glass-tint-opacity"]};function Yo(e){return{...zl,...e}}function pa(e){let t={};for(let[a,r]of Object.entries(vh)){let o=e[a];if(o===void 0)continue;let n=typeof o=="number"?`${o}px`:String(o);for(let s of r)t[s]=n}return t}import{jsx as Se,jsxs as ma}from"react/jsx-runtime";var Mh=Ph(function(t,a){let{theme:r,title:o="Assistant",width:n,height:s,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:c,placeholder:d="Ask me anything...",triggerEvent:f="triggerDemoRequest",api:p,debug:m,enableThreadHistory:L=!1,showToolCalls:I=!0}=t,w=p??"/api/waniwani",g=kr(w,t.headers),h=Yo(r),x=pa(r??{}),y=h.backgroundColor.replace("#",""),T=parseInt(y.substring(0,2),16),v=parseInt(y.substring(2,4),16),A=parseInt(y.substring(4,6),16),M=(T*299+v*587+A*114)/1e3<128,F=Ol(w,t.headers,t.skipRemoteConfig),P=m??F.debug,b=Sr({...t,api:w}),q=mr({...t,api:w,sessionId:b.sessionId}),G=br(d,!b.text),[S,B]=$l(!1),[E,ve]=$l(null),we=jl(null),_=jl(void 0),me=Zo(()=>{let V=we.current;if(!V)return;V.scrollIntoView({behavior:"smooth",block:"center"});let $=V.querySelector("textarea");$&&setTimeout(()=>$.focus(),300),B(!0),clearTimeout(_.current),_.current=setTimeout(()=>B(!1),2e3)},[]),re=yr({messages:b.messages,status:b.status,config:t.suggestions}),ye=Zo(V=>{let $=V.content.map(Pe=>Pe.text??"").join("").trim();$&&b.handleSubmit({text:$,files:[],modelContext:V.modelContext})},[b.handleSubmit]),oe=Zo(V=>{re.clear(),b.handleSubmit({text:V,files:[]})},[re.clear,b.handleSubmit]);return Rh(a,()=>({sendMessage:V=>{b.handleSubmit({text:V,files:[]}),me()},sendMessageAndWait:V=>b.sendMessageAndWait(V),reset:b.reset,focus:me,get messages(){return b.messages},get sessionId(){return b.sessionId}}),[b.handleSubmit,b.sendMessageAndWait,b.reset,b.messages,b.sessionId,me]),Ah(()=>{if(!f)return;let V=$=>{let Pe=$.detail,le=typeof Pe?.message=="string"?Pe.message:void 0;le&&b.handleSubmit({text:le,files:[]}),me()};return window.addEventListener(f,V),()=>window.removeEventListener(f,V)},[f,b.handleSubmit,me]),ma("div",{ref:we,style:{...x,width:n,height:s},"data-waniwani-chat":"","data-waniwani-layout":"card",...M?{"data-waniwani-dark":""}:{},className:k("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",S&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[ma("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3",style:{backgroundColor:h.headerBackgroundColor,color:h.headerTextColor},children:[Se("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:o}),Se(is,{messages:b.messages,evalEnabled:F.eval,api:w}),L&&Se(pr,{threads:b.threads,activeThreadId:b.activeThreadId,onNewThread:b.startNewThread,onSelectThread:V=>{b.switchThread(V)},onDeleteThread:V=>{b.deleteThread(V)}})]}),ma(Nn,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[Se(Un,{scrollClassName:E?"ww:!relative ww:!overflow-hidden":void 0,children:Se(ur,{messages:b.messages,status:b.status,welcomeMessage:u,welcome:c,onSuggestionSelect:oe,resourceEndpoint:g,chatSessionId:b.sessionId,isDark:M,onFollowUp:ye,onCallTool:q,fullscreenToolCallId:E,debug:P,showToolCalls:I,toolDefinitions:b.toolDefinitions,onWidgetDisplayModeChange:(V,$)=>{ve(V==="fullscreen"?$.toolCallId:null)}})}),Se(Hn,{})]}),Se("div",{style:E?{display:"none"}:void 0,children:Se(fr,{suggestions:re.suggestions,isLoading:re.isLoading,onSelect:oe})}),Se("div",{style:E?{display:"none"}:void 0,children:Se(Pa,{queuedMessages:b.queuedMessages,onRemove:b.removeQueuedMessage})}),Se("div",{style:E?{display:"none"}:void 0,children:Se("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:ma("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[Se(ba,{onSubmit:b.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:ma("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&Se(va,{}),Se(ka,{onChange:b.handleTextChange,value:b.text,placeholder:G,className:"ww:min-h-0 ww:py-1 ww:px-0"}),Se(Ta,{status:b.status,disabled:b.queueFull})]})}),Se(dr,{})]})})})]})});import{forwardRef as Kl,useCallback as Tr,useEffect as at,useImperativeHandle as Bh,useRef as Mt,useState as vr}from"react";import{jsx as Fh}from"react/jsx-runtime";function Xl({text:e}){let{t}=z();return e===!1?null:Fh("span",{className:"ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as pe,jsxs as rt}from"react/jsx-runtime";var en=Kl(function(t,a){let{locale:r,messages:o}=t;return pe(qr,{locale:r,messages:o,children:pe(Eh,{...t,ref:a})})}),Eh=Kl(function(t,a){let{t:r,ready:o}=z(),{appearance:n,className:s,classNames:i,allowAttachments:l=!1,welcomeMessage:u,welcome:c,placeholder:d=r.promptInput.placeholder,triggerEvent:f="triggerDemoRequest",api:p,mcp:m,debug:L=!1,readOnly:I=!1,title:w,headerActions:g,hideHeader:h=!1,enableThreadHistory:x=!1,showToolCalls:y=!0,initializing:T=!1,disclaimer:v}=t,A=n?.theme,M=n?.variables,F=n?.assistantBubble??!1,P=M?pa(M):{},[b,q]=vr(!1);at(()=>{if(A!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");q(R.matches);let H=()=>q(R.matches);return R.addEventListener("change",H),()=>R.removeEventListener("change",H)},[A]);let G=A==="dark"||A==="auto"&&b,S=Sr({...t,api:p}),B=hr(),E=mr({...t,api:p,sessionId:S.sessionId,onCallTool:m?.onCallTool}),ve=m?.resourceEndpoint??kr(p,t.headers),we=br(d,!S.text),[_,me]=vr(null),[re,ye]=vr(null),oe=Mt(null),V=Mt(null),$=Mt(null),Pe=Mt(null),[le,Q]=vr(!0),ne=Mt(le);ne.current=le;let W=Tr(()=>{let R=oe.current;if(!R)return;let H=R.querySelector("textarea");H&&H.focus()},[]),O=Tr((R="smooth")=>{let H=V.current;H&&H.scrollTo({top:H.scrollHeight,behavior:R})},[]);at(()=>{let R=Pe.current,H=V.current;if(!R||!H)return;let de=new IntersectionObserver(([Be])=>Q(Be.isIntersecting),{root:H,rootMargin:"0px 0px 200px 0px",threshold:0});return de.observe(R),()=>de.disconnect()},[]),at(()=>{let R=V.current;if(!R)return;let H=de=>{let je=(de.target instanceof Element?de.target:null)?.closest("a");je?.href&&B.emit({name:"link.clicked",properties:{url:je.href}})};return R.addEventListener("click",H),()=>R.removeEventListener("click",H)},[B]),at(()=>{(S.messages[S.messages.length-1]?.role==="user"||ne.current)&&O("smooth")},[S.messages.length,S.messages[S.messages.length-1]]),at(()=>{O("auto")},[O]),at(()=>{if(typeof ResizeObserver>"u")return;let R=V.current,H=$.current;if(!R&&!H)return;let de=R?.scrollHeight??0,Be=R?.clientHeight??0,je=new ResizeObserver(()=>{let gt=V.current;if(!gt)return;let wt=gt.scrollTop+Be>=de-5;de=gt.scrollHeight,Be=gt.clientHeight,wt&&O("auto")});return R&&je.observe(R),H&&je.observe(H),()=>je.disconnect()},[O]);let U=yr({messages:S.messages,status:S.status,config:t.suggestions}),X=Mt(null);at(()=>{let R=U.suggestions;R.length===0||X.current===R||(X.current=R,B.emit({name:"suggestions.shown",properties:{texts:R,origin:U.source}}))},[U.suggestions,U.source,B]);let ue=Tr(R=>{let H=R.content.map(de=>de.text??"").join("").trim();H&&S.handleSubmit({text:H,files:[],modelContext:R.modelContext})},[S.handleSubmit]),Z=Tr(R=>{let H=U.suggestions.indexOf(R),de=H>=0?H:c?.suggestions?.indexOf(R)??-1,Be=H>=0?U.source:"channel";B.emit({name:"suggestion.clicked",properties:{text:R,index:de,origin:Be}}),U.clear(),S.handleSubmit({text:R,files:[]})},[U.suggestions,U.source,U.clear,S.handleSubmit,c,B]);Bh(a,()=>({sendMessage:R=>{S.handleSubmit({text:R,files:[]}),W()},sendMessageAndWait:R=>S.sendMessageAndWait(R),reset:S.reset,focus:W,get messages(){return S.messages},get sessionId(){return S.sessionId}}),[S.handleSubmit,S.sendMessageAndWait,S.reset,S.messages,S.sessionId,W]),at(()=>{if(!f)return;let R=H=>{let de=H.detail,Be=typeof de?.message=="string"?de.message:void 0;Be&&S.handleSubmit({text:Be,files:[]}),W()};return window.addEventListener(f,R),()=>window.removeEventListener(f,R)},[f,S.handleSubmit,W]);let be=!h&&!!(w||x||g),xe=T||!o;return rt("div",{ref:oe,style:{...P,maxHeight:"inherit",..._&&re?{height:re}:{},opacity:xe?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-assistant-bubble":F?"true":void 0,"data-color-scheme":A==="auto"?"auto":void 0,...xe?{"data-waniwani-initializing":""}:{},...G?{"data-waniwani-dark":""}:{},className:k("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",A==="dark"&&"dark",s,i?.root),children:[be&&rt("div",{className:k("ww-header ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",i?.header),style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[w&&pe("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:w}),!w&&pe("div",{className:"ww:flex-1"}),x&&pe(pr,{threads:S.threads,activeThreadId:S.activeThreadId,onNewThread:S.startNewThread,onSelectThread:R=>{S.switchThread(R)},onDeleteThread:R=>{S.deleteThread(R)}}),g]}),rt("div",{ref:V,className:k("ww:relative ww:flex-1 ww:min-h-0",_?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[rt("div",{ref:$,className:k("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",_&&"ww:!py-0"),children:[pe(ur,{messages:S.messages,status:S.status,welcomeMessage:u,welcome:c,onSuggestionSelect:Z,resourceEndpoint:ve,chatSessionId:S.sessionId,isDark:G,onFollowUp:ue,onCallTool:E,fullscreenToolCallId:_,debug:L,showToolCalls:y,toolDefinitions:S.toolDefinitions,messageClassNames:{message:i?.message,userBubble:i?.userBubble,assistantBubble:i?.assistantBubble},onWidgetDisplayModeChange:(R,H)=>{if(R==="fullscreen"){let de=oe.current?.getBoundingClientRect().height??0;ye(de>0?de:null),me(H.toolCallId)}else ye(null),me(null)}}),pe("div",{ref:Pe,"aria-hidden":!0,style:{height:1}})]}),!le&&!_&&pe("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:pe(Ee,{type:"button",onClick:()=>O("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:pe(ot,{className:"ww:size-4"})})})]}),!I&&rt("div",{className:"ww:shrink-0 ww:bg-background",style:_?{display:"none"}:void 0,children:[pe(fr,{suggestions:U.suggestions,isLoading:U.isLoading,onSelect:Z}),pe(Pa,{queuedMessages:S.queuedMessages,onRemove:S.removeQueuedMessage}),pe("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:rt("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[pe(ba,{onSubmit:S.handleSubmit,globalDrop:l,multiple:l,className:k("ww-input ww:rounded-2xl ww:border-border ww:bg-input",i?.input),children:rt("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&pe(va,{}),pe(ka,{onChange:S.handleTextChange,value:S.text,placeholder:we,className:"ww:min-h-0 ww:py-1 ww:px-0"}),pe(Ta,{status:S.status,disabled:S.queueFull})]})}),rt("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:flex-nowrap ww:justify-center ww:items-center ww:gap-1.5",children:[pe(dr,{}),pe(Xl,{text:v})]})]})})]})]})});import{forwardRef as Sg,useEffect as Rr,useImperativeHandle as yg,useMemo as cn,useRef as fn,useState as Iu}from"react";var Dh="https://app.waniwani.ai/api/mcp/chat",_h={api:Dh};function Oh(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelector("script[src][data-token]");if(e instanceof HTMLScriptElement)return e;let t=document.querySelectorAll("script[src]");for(let a of t)if(a instanceof HTMLScriptElement&&/embed/i.test(a.src))return a;return null}function Nh(){let e=Oh();if(!e)return{};let t=P=>e.getAttribute(P)??void 0,a=P=>{let b=e.getAttribute(P);if(b==null)return;let q=b.trim().toLowerCase();if(q==="true"||q==="1"||q==="")return!0;if(q==="false"||q==="0")return!1},r={},o=t("data-api");o&&(r.api=o);let n=t("data-token");n&&(r.token=n);let s=t("data-visitor-id");s&&(r.visitorId=s);let i=t("data-title");i&&(r.title=i);let l=t("data-welcome-message");l&&(r.welcomeMessage=l);let u=t("data-placeholder");u&&(r.placeholder=u);let c=t("data-mcp-server-url");c&&(r.mcpServerUrl=c);let d=t("data-channel-id");if(d&&(r.channelId=d),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")r.showToolCalls="titles-only";else{let P=a("data-show-tool-calls");P!==void 0&&(r.showToolCalls=P)}let p=t("data-css");p&&(r.css=p);let m=t("data-suggestions");m&&(r.suggestions=m.split(",").map(P=>P.trim()).filter(Boolean));let L=a("data-enable-thread-history");L!==void 0&&(r.enableThreadHistory=L);let I=e.getAttribute("data-suggestion-origins");I!==null&&(r.suggestionOrigins=I.split(",").map(P=>P.trim()).filter(P=>fa.includes(P)));let w=a("data-disable-page-view");w!==void 0&&(r.disablePageView=w);let g=a("data-hide-header");g!==void 0&&(r.hideHeader=g);let h=t("data-theme");(h==="light"||h==="dark"||h==="auto")&&(r.appearance={...r.appearance,theme:h});let x=a("data-assistant-bubble");x!==void 0&&(r.appearance={...r.appearance,assistantBubble:x});let y=t("data-locale");(y==="en"||y==="fr"||y==="es")&&(r.locale=y);let T=t("data-mode");(T==="inline"||T==="floating")&&(r.mode=T);let v=t("data-height");v&&(r.height=v);let A=t("data-launcher-text");A&&(r.launcherText=A);let M=t("data-appear-delay");if(M!==void 0){let P=Number.parseInt(M.trim(),10);Number.isFinite(P)&&P>=0&&(r.appearDelay=P)}let F=t("data-disclaimer");if(F!==void 0){let P=F.trim(),b=P.toLowerCase();b==="false"||b==="0"?r.disclaimer=!1:P&&(r.disclaimer=P)}return r}function tn(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function an(e,t,a){let r=a??Nh(),o=Uh(t,r,e),n={token:"",..._h,...tn(t),...tn(r),...tn(e),...o?{appearance:o}:{}};if(!n.token)throw new Error("[Waniwani] Missing required config: `token`. Set data-token on the script tag or pass it to Waniwani.chat.init().");return n}function Uh(e,t,a){let r=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,o={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},n=Object.keys(o).length>0,s=a?.appearance?.assistantBubble??t.appearance?.assistantBubble??e?.appearance?.assistantBubble;if(!r&&!n&&s===void 0)return;let i={};return r&&(i.theme=r),n&&(i.variables=o),s!==void 0&&(i.assistantBubble=s),i}import{useEffect as hk,useState as gk}from"react";function Hh(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function Pr(...e){Hh()&&console.log("[Waniwani]",...e)}var rn=new Set;function qh(e,t,a){return`${e}|${t}|${a??""}`}function on(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function nn(e){let{api:t,token:a,channelId:r,mode:o,source:n}=e;if(typeof window>"u"||!t||!a)return;let s=qh(t,a,r);if(!rn.has(s)){rn.add(s);try{let i=await ca(),l=new Date().toISOString(),u=JSON.stringify({sentAt:l,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:n,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:r,mode:o,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(on(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{rn.delete(s)}}}import{useMemo as uk}from"react";import{useEffect as zh,useSyncExternalStore as jh}from"react";function Gh(e){return e?.patterns??e?.rules??[]}var Ql="\0\0";function Wh(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Ql).replace(/\\\*/g,"[^/]*").split(Ql).join(".*");return new RegExp(`^${a}$`)}function Vh(e,t){try{return Wh(e).test(t)}catch{return!1}}function Jl(e,t){if(!e)return!0;let a=!1;for(let r of Gh(e))if(Vh(r.glob,t)){if(r.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var sn="waniwani:locationchange",Yl=!1;function $h(){if(!(Yl||typeof history>"u")){Yl=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...r){let o=t.apply(this,r);return window.dispatchEvent(new Event(sn)),o}}}}function Xh(e){return $h(),window.addEventListener(sn,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(sn,e),window.removeEventListener("popstate",e)}}function Kh(){return window.location.pathname}function Qh(){return"/"}function Zl(){return jh(Xh,Kh,Qh)}function eu(e,t){let a=Zl(),r=t&&Jl(e,a);return zh(()=>{Pr("visibility gate",{pathname:a,ready:t,visible:r,rules:e})},[a,t,r]),r}function tu(e){return Array.isArray(e)?e.flatMap(t=>{let a=t;if(typeof a?.url!="string"||a.url.length===0||!Array.isArray(a.prompts))return[];let r=a.prompts.flatMap(o=>{let n=o;return typeof n?.text!="string"||n.text.length===0?[]:[{id:typeof n.id=="string"?n.id:null,text:n.text,tier:n.tier==="low"||n.tier==="medium"||n.tier==="high"?n.tier:void 0}]});return r.length>0?[{url:a.url,prompts:r}]:[]}):[]}var Jh="waniwani:config:";function au(e,t,a){return`${Jh}${e}|${t}|${a??""}`}function ln(e,t,a){if(typeof window>"u")return null;try{let r=window.sessionStorage.getItem(au(e,t,a));if(!r)return null;let o=JSON.parse(r);return o&&typeof o=="object"?o:null}catch{return null}}function ru(e,t,a,r){if(!(typeof window>"u"))try{window.sessionStorage.setItem(au(e,t,a),JSON.stringify(r))}catch{}}async function ou(e,t,a,r){try{let o=tt(e,"/config",r?{channel:r}:void 0),n=await fetch(o,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let s=await n.json(),i=s&&typeof s=="object"&&"data"in s&&s.data?s.data:s;return i?Yh(i):{}}catch{return{}}}function Yh(e){let t={};e.source!=null&&(t.source=e.source),e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions);let a=tu(e.pageSuggestions);return a.length>0&&(t.pageSuggestions=a),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),e.visibility&&(t.visibility=e.visibility),t}function Ft(e,t){for(let a of t){let r=e[a];if(typeof r=="string"&&r.length>0)return r}}var Zh=["waniwani/sessionId","openai/sessionId","openai/session","sessionId","conversationId","mcp-session-id"],eg=["waniwani/requestId","openai/requestId","requestId","mcp/requestId"],tg=["waniwani/traceId","openai/traceId","traceId","mcp/traceId","openai/requestId","requestId"],ag=["waniwani/userId","openai/userId","externalUserId","userId","actorId"],rg=["waniwani/visitorId","visitorId"],og=["correlationId","openai/requestId"];function nu(e){return e?Ft(e,Zh):void 0}function su(e){return e?Ft(e,eg):void 0}function iu(e){return e?Ft(e,tg):void 0}function lu(e){return e?Ft(e,ag):void 0}function uu(e){return e?Ft(e,rg):void 0}function du(e){return e?Ft(e,og):void 0}var ng=[{key:"openai/sessionId",source:"chatgpt"},{key:"openai/session",source:"chatgpt"}],sg=[{needle:"claude",source:"claude"},{needle:"chatgpt",source:"chatgpt"},{needle:"openai",source:"chatgpt"},{needle:"gemini",source:"gemini"}];function cu(e,t){if(e){let r=e["waniwani/source"];if(typeof r=="string"&&r.length>0)return r;for(let{key:o,source:n}of ng){let s=e[o];if(typeof s=="string"&&s.length>0)return n}}let a=t?.name;if(typeof a=="string"&&a.length>0){let r=a.toLowerCase();for(let{needle:o,source:n}of sg)if(r.includes(o))return n}}var ig="@waniwani/sdk";function fu(e,t={}){let a=t.now??(()=>new Date),r=t.generateId??lg,o=cg(e),n=Ar(e.meta),s=Ar(e.metadata),i=fg(e,n),l=Ue(e.eventId)??r(),u=pg(e.timestamp,a),c=Ue(e.source)??cu(n)??t.source??ig,d=un(e)?{...e}:void 0,f={...s};return Object.keys(n).length>0&&(f.meta=n),d&&(f.rawLegacy=d),{id:l,type:"mcp.event",name:o,source:c,timestamp:u,correlation:i,properties:ug(e,o),metadata:f,rawLegacy:d}}function lg(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`evt_${crypto.randomUUID()}`:`evt_${Math.random().toString(36).slice(2,10)}_${Date.now().toString(36)}`}function ug(e,t){if(!un(e))return Ar(e.properties);let a=dg(e,t),r=Ar(e.properties);return{...a,...r}}function dg(e,t){switch(t){case"tool.called":{let a={};return Ue(e.toolName)&&(a.name=e.toolName),Ue(e.toolType)&&(a.type=e.toolType),a}case"link.clicked":{let a={};return Ue(e.linkUrl)&&(a.url=e.linkUrl),a}default:return{}}}function cg(e){return un(e)?e.eventType:e.event}function fg(e,t){let a=Ue(e.requestId)??su(t),r=Ue(e.sessionId)??nu(t),o=Ue(e.traceId)??iu(t),n=Ue(e.externalUserId)??lu(t),s=Ue(e.visitorId)??uu(t),i=Ue(e.correlationId)??du(t)??a,l={};return r&&(l.sessionId=r),o&&(l.traceId=o),a&&(l.requestId=a),i&&(l.correlationId=i),n&&(l.externalUserId=n),s&&(l.visitorId=s),l}function pg(e,t){if(e instanceof Date)return e.toISOString();if(typeof e=="string"){let a=new Date(e);if(!Number.isNaN(a.getTime()))return a.toISOString()}return t().toISOString()}function Ar(e){return!e||typeof e!="object"||Array.isArray(e)?{}:e}function Ue(e){if(typeof e=="string"&&e.trim().length!==0)return e}function un(e){return"eventType"in e}function pu(e){return{priceShown:({amount:t,currency:a,itemId:r,label:o,...n})=>e({event:"price_shown",properties:{amount:t,currency:a,itemId:r,label:o},...n}),pricesCompared:({options:t,...a})=>e({event:"prices_compared",properties:{options:t},...a}),optionSelected:({id:t,amount:a,currency:r,...o})=>e({event:"option_selected",properties:{id:t,amount:a,currency:r},...o}),leadQualified:t=>{let{externalId:a,email:r,name:o,...n}=t??{};return e({event:"lead_qualified",properties:{externalId:a,email:r,name:o},...n})},converted:({amount:t,currency:a,occurredAt:r,...o})=>e({event:"converted",properties:{amount:t,currency:a,occurredAt:r},...o})}}var mg="/api/mcp/events/v2/batch";var mu="@waniwani/sdk";var hg=new Set([401,403]),gg=new Set([408,425,429,500,502,503,504]);function hu(e){return new dn(e)}var dn=class{endpointUrl;flushIntervalMs;maxBatchSize;maxBufferSize;maxRetries;retryBaseDelayMs;retryMaxDelayMs;shutdownTimeoutMs;sdkVersion;fetchFn;logger;now;sleep;apiKey;buffer=[];flushTimer;flushScheduled=!1;flushScheduledTimer;flushInFlight;inFlightCount=0;isStopped=!1;isShuttingDown=!1;constructor(t){this.endpointUrl=Ig(t.apiUrl,t.endpointPath??mg),this.flushIntervalMs=t.flushIntervalMs??1e3,this.maxBatchSize=t.maxBatchSize??20,this.maxBufferSize=t.maxBufferSize??1e3,this.maxRetries=t.maxRetries??3,this.retryBaseDelayMs=t.retryBaseDelayMs??200,this.retryMaxDelayMs=t.retryMaxDelayMs??2e3,this.shutdownTimeoutMs=t.shutdownTimeoutMs??2e3,this.fetchFn=t.fetchFn??fetch,this.logger=t.logger??console,this.now=t.now??(()=>new Date),this.sleep=t.sleep??(a=>new Promise(r=>setTimeout(r,a))),this.apiKey=t.apiKey,this.sdkVersion=t.sdkVersion,this.flushIntervalMs>0&&(this.flushTimer=setInterval(()=>{this.flush()},this.flushIntervalMs)),this.registerBrowserTeardown()}enqueue(t){if(this.isStopped||this.isShuttingDown){this.logger.warn("[Waniwani] Tracking transport is stopped, dropping event %s",t.id);return}if(this.buffer.length>=this.maxBufferSize){let a=this.buffer.length-this.maxBufferSize+1;this.buffer.splice(0,a),this.logger.warn("[Waniwani] Tracking buffer overflow, dropped %d oldest event(s)",a)}if(this.buffer.push(t),this.buffer.length>=this.maxBatchSize){this.flush();return}this.scheduleMicroFlush()}pendingEvents(){return this.buffer.length+this.inFlightCount}async flush(){return this.flushInFlight?this.flushInFlight:(this.flushInFlight=this.flushLoop().finally(()=>{this.flushInFlight=void 0}),this.flushInFlight)}async shutdown(t){this.isShuttingDown=!0,this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=void 0),this.flushScheduledTimer&&(clearTimeout(this.flushScheduledTimer),this.flushScheduledTimer=void 0,this.flushScheduled=!1);let a=t?.timeoutMs??this.shutdownTimeoutMs,r=this.flush();if(!Number.isFinite(a)||a<=0)return await r,this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()};let o=Symbol("shutdown-timeout");return await Promise.race([r.then(()=>"flushed"),this.sleep(a).then(()=>o)])===o?(this.isStopped=!0,{timedOut:!0,pendingEvents:this.pendingEvents()}):(this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()})}registerBrowserTeardown(){if(typeof document>"u"||typeof window>"u")return;let t=()=>{document.visibilityState==="hidden"&&this.keepaliveFlush()};document.addEventListener("visibilitychange",t),window.addEventListener("pagehide",()=>this.keepaliveFlush())}keepaliveFlush(){if(this.isStopped||this.buffer.length===0)return;let t=this.buffer.splice(0,this.buffer.length);this.sendKeepaliveChunk(t)}sendKeepaliveChunk(t){let a=JSON.stringify(this.makeBatchRequest(t));if(a.length>6e4&&t.length>1){let r=Math.ceil(t.length/2);this.sendKeepaliveChunk(t.slice(0,r)),this.sendKeepaliveChunk(t.slice(r));return}try{this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:a,keepalive:!0}).catch(()=>{})}catch{}}requestHeaders(){let t={"Content-Type":"application/json","X-WaniWani-SDK":mu};return this.apiKey&&(t.Authorization=`Bearer ${this.apiKey}`),t}scheduleMicroFlush(){this.flushScheduled||(this.flushScheduled=!0,this.flushScheduledTimer=setTimeout(()=>{this.flushScheduledTimer=void 0,this.flushScheduled=!1,this.flush()},0))}async flushLoop(){for(;this.buffer.length>0&&!this.isStopped;){let t=this.buffer.splice(0,this.maxBatchSize);await this.sendBatchWithRetry(t)}}async sendBatchWithRetry(t){let a=0,r=t;for(;r.length>0&&!this.isStopped;){this.inFlightCount=r.length;let o=await this.sendBatchOnce(r);switch(this.inFlightCount=0,o.kind){case"success":return;case"auth":this.stopTransportForAuthFailure(o.status,r.length);return;case"permanent":this.logger.error("[Waniwani] Dropping %d event(s) after permanent failure: %s",r.length,o.reason);return;case"retryable":if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d event(s) after retry exhaustion: %s",r.length,o.reason);return}await this.sleep(this.backoffDelayMs(a)),a+=1;continue;case"partial":if(o.permanent.length>0&&this.logger.error("[Waniwani] Dropping %d event(s) rejected as permanent",o.permanent.length),o.retryable.length===0)return;if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d retryable event(s) after retry exhaustion",o.retryable.length);return}r=o.retryable,await this.sleep(this.backoffDelayMs(a)),a+=1;continue}}}async sendBatchOnce(t){let a;try{a=await this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:JSON.stringify(this.makeBatchRequest(t))})}catch(n){return{kind:"retryable",reason:Lg(n)}}if(hg.has(a.status))return{kind:"auth",status:a.status};if(gg.has(a.status))return{kind:"retryable",reason:`HTTP ${a.status}`};if(!a.ok)return{kind:"permanent",reason:`HTTP ${a.status}`};let r=await xg(a);if(!r?.rejected||r.rejected.length===0)return{kind:"success"};let o=this.classifyRejectedEvents(t,r.rejected);return o.retryable.length===0&&o.permanent.length===0?{kind:"success"}:{kind:"partial",retryable:o.retryable,permanent:o.permanent}}makeBatchRequest(t){return{sentAt:this.now().toISOString(),source:{sdk:mu,version:this.sdkVersion??"0.0.0"},events:t}}classifyRejectedEvents(t,a){let r=new Map(t.map(s=>[s.id,s])),o=[],n=[];for(let s of a){let i=r.get(s.eventId);if(i){if(wg(s)){o.push(i);continue}n.push(i)}}return{retryable:o,permanent:n}}backoffDelayMs(t){let a=this.retryBaseDelayMs*2**t;return Math.min(a,this.retryMaxDelayMs)}stopTransportForAuthFailure(t,a){this.isStopped=!0;let r=this.buffer.length;this.buffer.splice(0,r),this.logger.error("[Waniwani] Auth failure (HTTP %d). Stopping tracking transport and dropping %d queued event(s)",t,a+r)}};function wg(e){if(e.retryable===!0)return!0;let t=e.code.toLowerCase();return t.includes("timeout")||t.includes("temporary")||t.includes("unavailable")||t.includes("rate_limit")||t.includes("transient")||t.includes("server")}async function xg(e){let t=await e.text();if(t)try{return JSON.parse(t)}catch{return}}function Ig(e,t){let a=e.endsWith("/")?e:`${e}/`,r=t.startsWith("/")?t.slice(1):t;return`${a}${r}`}function Lg(e){return e instanceof Error?e.message:String(e)}function gu(e){let{apiUrl:t,endpointPath:a}=Cg(e.endpoint),r=hu({apiUrl:t,apiKey:e.token,endpointPath:a,flushIntervalMs:e.flushIntervalMs}),o,n=i=>typeof i=="function"?i():i,s=async i=>{let l=e.identity?.()??{},u=n(e.channelId),c=u===void 0?i.properties:{channelId:u,...i.properties},d=fu({sessionId:l.sessionId,visitorId:l.visitorId,externalUserId:l.externalUserId??o,traceId:l.traceId,...i,properties:c,metadata:{...e.metadata,...i.metadata}},{source:n(e.source)});return r.enqueue(d),{eventId:d.id}};return{track:Object.assign(s,pu(s)),identify(i,l){return o=i,s({event:"user.identified",externalUserId:i,properties:l})},flush:()=>r.flush(),shutdown:i=>r.shutdown(i)}}function Cg(e){let t=new URL(e);return{apiUrl:t.origin,endpointPath:`${t.pathname}${t.search}`}}function wu(e){return gu({endpoint:on(e.api),token:e.token,channelId:e.channelId,source:e.getSource,identity:()=>({sessionId:e.getSessionId(),visitorId:At()})})}function xu(e){let t=!1,a=async()=>(t||(t=!0,console.warn(`[Waniwani] track() is disabled: ${e}`)),{eventId:""});return{track:Object.assign(a,{priceShown:a,pricesCompared:a,optionSelected:a,leadQualified:a,converted:a}),identify:a,flush:async()=>{},shutdown:async()=>({timedOut:!1,pendingEvents:0})}}import{jsx as Cu}from"react/jsx-runtime";var bg=600,Lu="https://app.waniwani.ai/api/mcp/chat",kg=Sg(function(t,a){let{token:r,channelId:o,className:n,visitorId:s,overrides:i,onEvent:l}=t,u=fn(null),c=fn(null),d=cn(()=>Ll({mode:"inline",getSessionId:()=>u.current?.sessionId}),[]);Rr(()=>{if(l)return d.subscribe(l)},[l,d]);let f=cn(()=>({token:r,channelId:o,api:i?.api,mcpServerUrl:i?.mcpServerUrl,title:i?.title,hideHeader:i?.hideHeader,welcomeMessage:i?.welcomeMessage,placeholder:i?.placeholder,suggestions:i?.suggestions,suggestionOrigins:i?.suggestionOrigins,enableThreadHistory:i?.enableThreadHistory,showToolCalls:i?.showToolCalls,appearance:i?.appearance,disclaimer:i?.disclaimer,locale:i?.locale}),[r,o,i?.api,i?.mcpServerUrl,i?.title,i?.hideHeader,i?.welcomeMessage,i?.placeholder,i?.suggestions,i?.suggestionOrigins,i?.enableThreadHistory,i?.showToolCalls,i?.appearance,i?.disclaimer,i?.locale]),p=i?.api??Lu,[m,L]=Iu({}),[I,w]=Iu(!1),g=fn(!1);Rr(()=>{I&&!g.current&&(g.current=!0,d.emit({name:"chat.ready"}))},[I,d]);let h=i?.disablePageView;Rr(()=>{if(!r){w(!0);return}let v=P=>{h||nn({api:p,token:r,channelId:o,mode:"inline",source:P})},A=ln(p,r,o);A&&(L(A),w(!0),v(A.source));let M=new AbortController,F=setTimeout(()=>w(!0),bg);return ou(p,r,M.signal,o).then(P=>{M.signal.aborted||(Object.keys(P).length>0&&(ru(p,r,o,P),L(P)),w(!0),v(P.source))}).catch(P=>{console.error("[Waniwani] Remote config fetch failed:",P),w(!0)}).finally(()=>clearTimeout(F)),()=>{M.abort(),clearTimeout(F)}},[p,r,o,h]);let x=cn(()=>an(f,m,void 0),[f,m]);Rr(()=>{if(!r)return;let v=wu({api:p,token:r,channelId:o,getSource:()=>ln(p,r,o)?.source??void 0,getSessionId:()=>u.current?.sessionId});return c.current=v,()=>{c.current=null,v.shutdown()}},[p,r,o]),yg(a,()=>{let v=()=>c.current??xu("no public token configured"),A=Object.assign(M=>v().track(M),{priceShown:M=>v().track.priceShown(M),pricesCompared:M=>v().track.pricesCompared(M),optionSelected:M=>v().track.optionSelected(M),leadQualified:M=>v().track.leadQualified(M),converted:M=>v().track.converted(M)});return{sendMessage:M=>u.current?.sendMessage(M),sendMessageAndWait:M=>u.current?u.current.sendMessageAndWait(M):Promise.resolve(void 0),reset:()=>u.current?.reset(),focus:()=>u.current?.focus(),get messages(){return u.current?.messages??[]},get sessionId(){return u.current?.sessionId},track:A,identify:(M,F)=>v().identify(M,F)}},[]);let y=eu(x.visibility,I),T={mode:"inline"};return x.mcpServerUrl&&(T.mcpServerUrl=x.mcpServerUrl),x.channelId&&(T.channelId=x.channelId),y?Cu(yl,{value:d,children:Cu(en,{ref:u,api:x.api??Lu,headers:{Authorization:`Bearer ${x.token}`},visitorId:s,skipRemoteConfig:!0,body:T,appearance:x.appearance,classNames:i?.classNames,title:x.title,hideHeader:x.hideHeader,welcomeMessage:x.welcomeMessage,welcome:i?.welcome,placeholder:x.placeholder,suggestions:Wl({suggestions:x.suggestions,suggestionOrigins:x.suggestionOrigins}),enableThreadHistory:x.enableThreadHistory,showToolCalls:x.showToolCalls,disclaimer:x.disclaimer,allowAttachments:i?.allowAttachments,locale:x.locale,messages:i?.messages,className:n,initializing:!I})}):null});export{Mh as ChatCard,en as ChatEmbed,Th as DARK_THEME,zl as DEFAULT_THEME,Uo as McpAppFrame,kg as WaniwaniChat,Yo as mergeTheme,pa as themeToCSSProperties};
|
|
15
|
+
${X}`}]}}M.current({...N,...U?{modelContext:U}:{}})}$({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="ui/update-model-context"&&W!=null){ye=xl(ye,Q.params),$({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="tools/call"&&W!=null){let N=b.current;if(!N){$({jsonrpc:"2.0",id:W,error:{code:-32601,message:"tools/call not supported"}});return}let U=Q.params?.name;N({name:U,arguments:Q.params?.arguments??{}}).then(X=>{$({jsonrpc:"2.0",id:W,result:X});let ue=X.content?.map(Z=>Z.text??"").join("").trim();ue&&vm(U,X,y.current)&&(oe&&clearTimeout(oe.timer),oe={text:ue,timer:setTimeout(()=>{if(me)return;let Z=ye;ye=null,oe=null,M.current?.({role:"user",content:[{type:"text",text:ue}],...Z?{modelContext:Z}:{}})},500)})}).catch(X=>{let ue=X instanceof Error?X.message:"Tool call failed";$({jsonrpc:"2.0",id:W,error:{code:-32e3,message:ue}})});return}if(ne==="ui/request-display-mode"&&W!=null){let N=Q.params?.mode,U=N==="fullscreen"||N==="inline"||N==="pip"?N:"inline";S.current=U,$({jsonrpc:"2.0",id:W,result:{mode:U}}),$({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:U}}),z.current?.(U);return}if(ne==="ui/resource-teardown"&&W!=null){$({jsonrpc:"2.0",id:W,result:{}});return}ne==="ping"&&W!=null&&$({jsonrpc:"2.0",id:W,result:{}})};return window.addEventListener("message",Pe),()=>{me=!0,clearTimeout(G),oe&&clearTimeout(oe.timer),window.removeEventListener("message",Pe)}},[i,F]),Pm("iframe",{ref:m,src:B,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:T(!f&&"ww:rounded-md ww:border ww:border-border",s),style:{height:f?"100%":v,minWidth:f||!P?void 0:`min(${P}px, 100%)`,width:"100%",border:"none",colorScheme:n?"dark":"auto"},title:"MCP App"})}import{jsx as ca,jsxs as Am}from"react/jsx-runtime";function Il({icon:e,title:t,description:a,suggestions:r,onSuggestionSelect:o}){return Am("div",{className:"ww:flex ww:flex-col ww:items-center ww:justify-center ww:py-12 ww:px-6 ww:text-center ww:min-h-full",children:[e&&ca("div",{className:"ww:mb-4 ww:flex ww:items-center ww:justify-center ww:size-12 ww:rounded-xl ww:bg-foreground ww:text-background",children:e}),ca("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&ca("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),r&&r.length>0&&ca("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:r.map((n,s)=>ca("button",{type:"button",onClick:()=>o?.(n),className:T("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})]})}import{Component as Rm}from"react";import{jsx as Ho,jsxs as Fm}from"react/jsx-runtime";function Mm({onRetry:e}){let{t}=V();return Fm("div",{className:"ww:flex ww:items-center ww:justify-between ww:rounded-md ww:border ww:border-border ww:bg-muted/50 ww:px-4 ww:py-3 ww:text-sm ww:text-muted-foreground",children:[Ho("span",{children:t.widgetErrorBoundary.failedToLoad}),Ho("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var ur=class extends Rm{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?Ho(Mm,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Bm,jsx as Y,jsxs as et}from"react/jsx-runtime";function qo(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Cl(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Ht:nt}function dr({messages:e,status:t,welcomeMessage:a,welcome:r,onSuggestionSelect:o,resourceEndpoint:n,chatSessionId:s,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:c,fullscreenToolCallId:d,debug:f,showToolCalls:p=!0,toolDefinitions:m,messageClassNames:I}){let{t:L}=V(),w=e[e.length-1],g=e.length>0,h=d!=null,x=!h&&gl(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return et(Bm,{children:[!h&&(!g&&r?Y(Il,{...r,onSuggestionSelect:o}):a&&Y(Ro,{from:"assistant",children:Y(Mo,{children:Y(lr,{children:a})})})),e.map(S=>{let v=S.parts.filter(y=>y.type==="text"),A=S.parts.filter(y=>y.type==="reasoning"),P=S.parts.filter(y=>y.type==="file"),D=S.parts.filter(y=>"toolCallId"in y),k=S.parts.filter(y=>y.type==="reasoning"||"toolCallId"in y),M=S===w&&S.role==="assistant",b=v.length>0,z=h?D.some(y=>y.toolCallId===d):!1,q=p!==!1&&!z&&k.length>=2;return h&&!z?Y("div",{style:{display:"none"}},S.id):S.role==="assistant"&&!hl(S)?Y("div",{style:{display:"none"}},S.id):p===!1&&S.role==="assistant"&&!b&&P.length===0&&D.every(y=>{let F="output"in y?y.output:void 0;return F===void 0||!n||!da(y.toolName,F,m)})?Y("div",{style:{display:"none"}},S.id):et(Ro,{from:S.role,className:I?.message,children:[p!==!1&&!z&&!q&&A.map((y,F)=>et(Xt,{isStreaming:y.state==="streaming",children:[Y(Kt,{}),Y(Qt,{children:y.text})]},`reasoning-${S.id}-${F}`)),q&&(()=>{let y=k[k.length-1],F=y.type==="reasoning"?{icon:Ge,label:L.reasoning.thinking}:{icon:Cl(y.toolName),label:y.title??qo(y.toolName)};return et(xs,{isWorking:M&&(t==="streaming"||t==="submitted"),activeStep:F,children:[Y(Ls,{workingLabel:L.chainOfThought.working,label:L.chainOfThought.done}),Y(Is,{children:k.map((B,ve)=>{let we=ve===k.length-1;if(B.type==="reasoning")return Y(Ss,{isStreaming:B.state==="streaming",isLast:we,children:B.text},`reasoning-${S.id}-${ve}`);let _=B.title??qo(B.toolName),me=Cl(B.toolName);if(p==="titles-only")return Y(Kr,{icon:me,title:_,state:B.state,isLast:we},B.toolCallId);let re="output"in B?B.output:void 0;return et(Kr,{icon:me,title:_,state:B.state,isLast:we,children:[Y(_o,{input:B.input,debug:f}),re!==void 0&&Y(No,{output:re,errorText:"errorText"in B?B.errorText:void 0,debug:f})]},B.toolCallId)})})]})})(),p!==!1&&!z&&!q&&D.length===1&&(()=>{let y=D[0],F=y.title??qo(y.toolName);if(p==="titles-only")return Y(ll,{title:F,state:y.state});let B="output"in y?y.output:void 0;return et(sl,{children:[Y(il,{title:F,state:y.state}),et(ul,{children:[Y(_o,{input:y.input,debug:f}),B!==void 0&&Y(No,{output:B,errorText:"errorText"in y?y.errorText:void 0,debug:f})]})]})})(),D.map(y=>{let F="output"in y?y.output:void 0,B=da(y.toolName,F,m),ve=fl(y.toolName,F,m),we=y.toolCallId===d;return B&&n&&F!==void 0?Y("div",{style:we?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:B&&n&&F!==void 0&&Y(ur,{children:Y(Uo,{isFullscreen:we,resourceUri:B,toolInput:y.input??{},toolResult:{content:F.content,structuredContent:F.structuredContent,_meta:F._meta},resourceEndpoint:n,chatSessionId:s,isDark:i,autoHeight:ve,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:c?_=>c(_,{toolCallId:y.toolCallId,resourceUri:B,toolInput:y.input??{},toolResult:{content:F.content,structuredContent:F.structuredContent,_meta:F._meta},autoHeight:ve}):void 0})})},y.toolCallId):null}),!z&&Y("div",{children:et(Mo,{className:T(S.role==="user"?I?.userBubble:I?.assistantBubble),children:[P.length>0&&Y(fs,{files:P}),b?v.map((y,F)=>{let B=M&&t==="streaming"&&F===v.length-1;return Y(lr,{isStreaming:B,children:y.type==="text"?y.text:""},`${S.id}-${F}`)}):null]})})]},S.id)}),x&&Y(wl,{})]})}import{jsx as Sl,jsxs as _m}from"react/jsx-runtime";var Em="https://app.waniwani.ai/assets/waniwani-logo.svg",Dm="https://waniwani.ai";function cr(){let{t:e}=V();return _m("a",{href:Dm,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Sl("span",{children:e.poweredBy.label}),Sl("img",{src:Em,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as fr}from"react/jsx-runtime";function pr({suggestions:e,isLoading:t,onSelect:a,className:r,...o}){return e.length===0&&!t?null:fr("div",{className:T("ww:px-4 ww:py-2",r),...o,children:fr("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(n=>fr("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+n*20}px`}},n)):e.map((n,s)=>fr("button",{type:"button",onClick:()=>a(n),className:T("ww:rounded-full ww:border ww:border-border ww:bg-accent ww:px-3.5 ww:py-1.5 ww:text-sm","ww:text-foreground ww:hover:bg-border ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})})}import{useEffect as Nm,useRef as Om,useState as Um}from"react";import{jsx as ae,jsxs as mt}from"react/jsx-runtime";var yl=20;function Hm({label:e}){return mt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ae("title",{children:e}),ae("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),ae("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function qm({label:e}){return mt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ae("title",{children:e}),ae("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),ae("polyline",{points:"3 4 3 9 8 9"}),ae("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),ae("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Wm({label:e}){return mt("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",role:"img","aria-label":e,children:[ae("title",{children:e}),ae("polyline",{points:"3 6 5 6 21 6"}),ae("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),ae("path",{d:"M10 11v6"}),ae("path",{d:"M14 11v6"})]})}function mr({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:r,onDeleteThread:o}){let{locale:n,t:s}=V(),[i,l]=Um(!1),u=Om(null);Nm(()=>{if(!i)return;let f=p=>{let m=u.current;m&&(p.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[i]);let c=e.slice(0,yl),d=Math.max(0,e.length-yl);return mt("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[ae("button",{type:"button",onClick:a,title:s.threadMenu.newChat,"aria-label":s.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ae(Hm,{label:s.threadMenu.newChat})}),ae("button",{type:"button",onClick:()=>l(f=>!f),title:s.threadMenu.threadHistory,"aria-label":s.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:ae(qm,{label:s.threadMenu.threadHistory})}),i&&mt("div",{role:"menu",className:"ww:absolute ww:right-0 ww:top-full ww:mt-1 ww:w-72 ww:max-h-80 ww:overflow-y-auto ww:rounded-lg ww:border ww:border-border ww:bg-background ww:shadow-lg ww:z-50",children:[c.length===0&&ae("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:s.threadMenu.noPreviousChats}),c.map(f=>{let p=f.threadId===t,m=Date.parse(f.updatedAt);return mt("div",{className:`ww:flex ww:items-center ww:gap-2 ww:px-3 ww:py-2 ww:text-xs hover:ww:bg-foreground/5 ${p?"ww:bg-foreground/5":""}`,children:[mt("button",{type:"button",onClick:()=>{r(f.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[ae("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:f.title}),ae("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Wr(m,n)})]}),ae("button",{type:"button",onClick:I=>{I.stopPropagation(),o(f.threadId)},title:s.threadMenu.deleteThread,"aria-label":s.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:ae(Wm,{label:s.threadMenu.deleteThread})})]},f.threadId)}),d>0&&ae("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:s.threadMenu.hiddenThreads(d)})]})]})}import{useCallback as Gm,useRef as Vm}from"react";function hr(e){let t=Vm(e);return t.current=e,Gm(async a=>{let{api:r,headers:o,onCallTool:n,sessionId:s}=t.current;if(n)return n(a);let i=`${r??"/api/waniwani"}/tool`,l=typeof s=="string"&&s.trim().length>0?s.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...o},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as uh}from"@ai-sdk/react";import{useCallback as Ce,useEffect as Fe,useRef as fe,useState as ht}from"react";import{createContext as zm,useContext as jm}from"react";function bl(e){let t=new Set;return{subscribe(a){return t.add(a),()=>{t.delete(a)}},emit(a){let{sessionId:r,...o}=a,n=a.name==="session.started"?a.properties.sessionId:void 0,s={...o,mode:e.mode,sessionId:Object.hasOwn(a,"sessionId")?r:n??e.getSessionId?.(),timestamp:Date.now()};for(let i of[...t])try{i(s)}catch(l){console.warn("[Waniwani] onEvent subscriber threw:",l)}}}}function kl(){return{subscribe(){return()=>{}},emit(){}}}var Tl=zm(kl());function gr(){return jm(Tl)}var vl=Tl.Provider;function tt(e,t,a){let[r,o=""]=e.split("?"),n=r.replace(/\/$/,""),s=new URLSearchParams(o);if(a)for(let[l,u]of Object.entries(a))s.set(l,u);let i=s.toString();return`${n}${t}${i?`?${i}`:""}`}import{DefaultChatTransport as $m,uiMessageChunkSchema as Xm}from"ai";function Km(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let r=a.find(o=>o.code==="invalid_union");if(!r?.errors)return null;for(let o of r.errors){if(!Array.isArray(o)||o.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let s=o.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(s.length>0)return s}return null}var wr=class extends $m{processResponseStream(t){let a="",r=Xm(),o=r.validate?.bind(r);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(n,s){a+=n;let i=a.split(`
|
|
16
|
+
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let c=u.slice(5).trim();if(c!=="[DONE]")try{let d=JSON.parse(c);if(!o){s.enqueue(d);continue}let f=await o(d);if(f.success){s.enqueue(f.value);continue}let p=Km(f.error);if(p?.length){let m={...d};for(let L of p)delete m[L];let I=await o(m);I.success&&s.enqueue(I.value)}}catch{}}}}))}};var Qm="waniwani-memory";var Me="threads",xr="by_memoryUserId",Jm="by_updatedAt";var Al="memoryUserId",Pl="waniwani-memory-user-id",Wo=null;function Go(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}function Ym(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Me)){let a=e.createObjectStore(Me,{keyPath:"threadId"});a.createIndex(xr,"memoryUserId",{unique:!1}),a.createIndex(Jm,"updatedAt",{unique:!1})}}async function Vo(){return new Promise((e,t)=>{let a=indexedDB.open(Qm,2);a.onupgradeneeded=r=>{Ym(a.result,r.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Zm(){return Vo()}async function eh(e){return new Promise((t,a)=>{let n=e.transaction("ids","readonly").objectStore("ids").get(Al);n.onsuccess=()=>t(typeof n.result=="string"?n.result:null),n.onerror=()=>a(n.error)})}async function th(e,t){return new Promise((a,r)=>{let s=e.transaction("ids","readwrite").objectStore("ids").put(t,Al);s.onsuccess=()=>a(),s.onerror=()=>r(s.error)})}async function ah(){if(typeof indexedDB>"u")return null;try{let e=await Zm();try{let t=await eh(e);if(t)return t;let a=Go();return await th(e,a),a}finally{e.close()}}catch{return null}}function rh(){try{let e=localStorage.getItem(Pl);if(e)return e;let t=Go();return localStorage.setItem(Pl,t),t}catch{return null}}async function Rl(){let e=await ah();if(e)return e;let t=rh();return t||(Wo||(Wo=Go()),Wo)}var Ml=50,Fl=1e3;function Lr(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.threadId=="string"&&typeof t.memoryUserId=="string"&&typeof t.title=="string"&&Array.isArray(t.messages)&&typeof t.createdAt=="string"&&typeof t.updatedAt=="string"}async function Ir(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Vo(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function zo(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function jo(e){return await Ir(async a=>{let n=a.transaction(Me,"readonly").objectStore(Me).index(xr),i=(await zo(n.getAll(e))??[]).filter(Lr);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function Cr(e){return await Ir(async a=>{let o=a.transaction(Me,"readonly").objectStore(Me),n=await zo(o.get(e));return Lr(n)?n:null})??null}async function $o(e){if(!Lr(e))return;let t=e.messages.length>Fl?{...e,messages:e.messages.slice(e.messages.length-Fl)}:e;await Ir(async a=>{await new Promise((l,u)=>{let c=a.transaction(Me,"readwrite");c.oncomplete=()=>l(),c.onerror=()=>u(c.error),c.onabort=()=>u(c.error),c.objectStore(Me).put(t)});let r=a.transaction(Me,"readwrite"),o=r.objectStore(Me),n=o.index(xr),i=(await zo(n.getAll(t.memoryUserId))??[]).filter(Lr);if(i.length>Ml){i.sort((u,c)=>u.updatedAt<c.updatedAt?-1:1);let l=i.slice(0,i.length-Ml);for(let u of l)o.delete(u.threadId)}return await new Promise((l,u)=>{r.oncomplete=()=>l(),r.onerror=()=>u(r.error),r.onabort=()=>u(r.error)}),null})}async function Bl(e){await Ir(async t=>(await new Promise((a,r)=>{let o=t.transaction(Me,"readwrite");o.oncomplete=()=>a(),o.onerror=()=>r(o.error),o.onabort=()=>r(o.error),o.objectStore(Me).delete(e)}),null))}async function Xo(e){return(await jo(e))[0]?.threadId??null}function El(e){let t=e.trim();if(!t)return`Conversation on ${new Date().toISOString().slice(0,10)}`;let a=t.split(/\r?\n/,1)[0]??t;return a.length<=60?a:`${a.slice(0,60).trimEnd()}\u2026`}var Ko="waniwani-visitor-id";function _l(e,t){return e.match(t)?.[1]??null}function oh(e){let t=[["Edge",/Edg(?:e|A|iOS)?\/(\S+)/],["Opera",/(?:OPR|Opera)\/(\S+)/],["Samsung Internet",/SamsungBrowser\/(\S+)/],["Firefox",/Firefox\/(\S+)/],["Chrome",/Chrome\/(\S+)/],["Safari",/Version\/(\S+).*Safari/]];for(let[a,r]of t){let o=_l(e,r);if(o)return{name:a,version:o}}return null}function nh(e){let t=[["iOS",/(?:iPhone|iPad|iPod).+?OS (\d+[_.\d]*)/],["Android",/Android (\d+[.\d]*)/],["macOS",/Mac OS X (\d+[_.\d]*)/],["Windows",/Windows NT (\d+[.\d]*)/],["ChromeOS",/CrOS \S+ (\d+[.\d]*)/],["Linux",/Linux/]];for(let[a,r]of t){let o=_l(e,r);if(o)return{name:a,version:o.replace(/_/g,".")};if(a==="Linux"&&r.test(e))return{name:a,version:""}}return null}function sh(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}function ih(){try{if(typeof crypto<"u"){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto.getRandomValues=="function"){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,a=>a.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}}}catch{}return`v-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function At(){try{let t=localStorage.getItem(Ko);if(t)return t}catch{}let e=ih();try{localStorage.setItem(Ko,e)}catch{}return e}function Dl(e){let t=typeof e=="string"?e.trim():"";if(!t)return At();try{localStorage.setItem(Ko,t)}catch{}return t}function lh(e){return e!=null&&typeof e.then=="function"}function Nl(e){let t=!1,a=()=>{t=!0};if(e==null)return a;let r;try{r=typeof e=="function"?e():e}catch{return a}return lh(r)?r.then(o=>{t||Dl(o??"")},()=>{}):Dl(r??""),a}async function fa(){let e=navigator.userAgent,t=At(),a=await Rl();return{userAgent:e,browser:oh(e),os:nh(e),deviceType:sh(e),language:navigator.language,languages:[...navigator.languages],timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,screenWidth:screen.width,screenHeight:screen.height,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,colorDepth:screen.colorDepth,devicePixelRatio:window.devicePixelRatio??1,touchSupport:"ontouchstart"in window||navigator.maxTouchPoints>0,connectionType:navigator.connection?.effectiveType??"unknown",referrer:document.referrer,visitorId:t,memoryUserId:a}}var dh="x-session-id",ch=250,fh=200;function Ol(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():jt()}function Sr(){return new Date().toISOString()}function Ul(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function ph(e,t){let a=tt(e,"/tools"),r=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!r.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${r.status} ${r.statusText}`);let o=await r.json();if(!o||!Array.isArray(o.tools))return{};let n={};for(let s of o.tools)s&&typeof s.name=="string"&&(n[s.name]=s);return n}function yr(e){let{api:t="/api/waniwani",headers:a,body:r,onMessageSent:o,onResponseReceived:n,enableThreadHistory:s=!1,activeThreadId:i,onThreadChange:l}=e,u=e.visitorId;Fe(()=>Nl(u),[u]);let c=gr(),d=fe(a),f=fe(r),p=fe(s);Fe(()=>{p.current=s},[s]);let m=fe(void 0),I=fe(null),[L,w]=ht(void 0),g=fe(L),[h,x]=ht(i),S=fe(h),[v,A]=ht([]),[P,D]=ht(!s),k=fe(void 0),M=fe(void 0),b=fe(void 0),z=fe(void 0),q=fe(0),y=fe(l);Fe(()=>{y.current=l},[l]);let F=Ce(C=>{S.current=C,x(C),C&&(y.current?.(C),c.emit({name:"thread.changed",sessionId:g.current,properties:{threadId:C}}))},[c]),B=Ce(async()=>{if(!s)return;let C=I.current?.memoryUserId;if(!C)return;let E=await jo(C);A(E)},[s]),ve=Ce(()=>g.current,[]),we=Ce(C=>{let E=Ul(C);if(!E||g.current===E)return;let O=g.current===void 0;g.current=E,w(E),O&&c.emit({name:"session.started",properties:{sessionId:E}})},[c]),_=Ce(()=>{g.current=void 0,w(void 0)},[]);Fe(()=>{d.current=a},[a]),Fe(()=>{f.current=r},[r]),Fe(()=>{let C=!1,E=q.current;return(async()=>{try{let ee=await fa();if(C)return;I.current=ee}catch{}if(!s)return;let O=I.current?.memoryUserId;if(!O){D(!0);return}try{let ee=i??await Xo(O);if(C||E!==q.current)return;if(ee){let he=await Cr(ee);if(C||E!==q.current)return;he&&he.memoryUserId===O&&(S.current=he.threadId,x(he.threadId),k.current=he.createdAt,M.current=he.title,he.sessionId&&(g.current=he.sessionId,w(he.sessionId)),W(he.messages))}await B()}finally{C||D(!0)}})(),()=>{C=!0}},[]);let me=fe(new wr({api:t,headers:()=>({...d.current}),body:()=>{let C={...f.current??{}},E=Object.hasOwn(C,"sessionId"),O=Ul(C.sessionId);if(O)we(O),C.sessionId=O;else if(E)_(),delete C.sessionId;else{let Fr=ve();Fr&&(C.sessionId=Fr)}Pt(m.current)&&(C.modelContext=m.current);let ee=I.current,he=At();ee&&(C.visitorContext={timezone:ee.timezone,language:ee.language,languages:ee.languages,deviceType:ee.deviceType,referrer:ee.referrer,visitorId:he});let se=typeof C.visitor=="object"&&C.visitor!==null?C.visitor:{},Ru=typeof se.client=="object"&&se.client!==null?se.client:{};C.visitor={...se,id:he,client:{...Ru,...ee&&{memoryUserId:ee.memoryUserId}}};let In=typeof C.extra=="object"&&C.extra!==null&&!Array.isArray(C.extra)?C.extra:void 0,Cn=I.current?.memoryUserId,Sn=I.current?.language,wa={};if(Cn&&(wa.memoryUserId=Cn),Sn&&(wa.locale=Sn),(Object.keys(wa).length>0||In)&&(C.extra={...wa,...In??{}}),p.current)if(Object.hasOwn(C,"threadId"))typeof C.threadId=="string"&&(S.current=C.threadId);else{let xa=S.current;xa||(xa=Ol(),k.current=Sr(),M.current=void 0,F(xa)),C.threadId=xa}return C},fetch:(async(C,E)=>{let O=await fetch(C,E);return m.current=void 0,we(O.headers.get(dh)),O})})),re=fe(null),ye=fe(null),oe=fe({}),[G,$]=ht(0),Pe=e.skipRemoteConfig===!0,le=Ce(async()=>{if(!Pe)try{let C=await ph(t,d.current);oe.current=C,$(E=>E+1)}catch(C){console.warn("[Waniwani] Failed to fetch tool definitions:",C instanceof Error?C.message:C)}},[t,Pe]);Fe(()=>{le()},[le]);let{messages:Q,sendMessage:ne,setMessages:W,status:N}=uh({messages:e.initialMessages,transport:me.current,onFinish({message:C,isAbort:E,isDisconnect:O,isError:ee}){n?.(),!E&&!O&&!ee&&c.emit({name:"message.received"}),re.current&&(ye.current=C)},onError(C){console.warn("[Waniwani] Chat error:",C.message),c.emit({name:"chat.error",properties:{message:C.message.slice(0,fh)}}),re.current&&(re.current.reject(C),re.current=null)}}),U=fe(Q);Fe(()=>{U.current=Q},[Q]);let X=fe(s);Fe(()=>{if(!s||X.current||(X.current=!0,U.current.length>0))return;let C=!1,E=q.current;return D(!1),(async()=>{try{let O=I.current;if(!O)try{O=await fa(),I.current=O}catch{}let ee=O?.memoryUserId;if(!ee||C||E!==q.current){C||D(!0);return}let he=i??await Xo(ee);if(C||E!==q.current)return;if(he){let se=await Cr(he);if(C||E!==q.current)return;se&&se.memoryUserId===ee&&(S.current=se.threadId,x(se.threadId),k.current=se.createdAt,M.current=se.title,se.sessionId&&(g.current=se.sessionId,w(se.sessionId)),W(se.messages))}await B()}finally{C||D(!0)}})(),()=>{C=!0}},[s]),Fe(()=>{if(N==="ready"&&re.current&&ye.current){let C=re.current,E=ye.current;re.current=null,ye.current=null,C.resolve(E)}},[N]);let[ue,Z]=ht(""),[be,xe]=ht([]),R=N==="submitted"||N==="streaming",H=Ce(C=>{xe(E=>E.filter(O=>O.id!==C))},[]),de=R&&be.length>0,Be=Ce(C=>{let E=!!C.text?.trim(),O=!!C.files?.length;if(E||O){if(R){if(be.length>0)return;xe(ee=>[...ee,{id:jt(),text:C.text||"",files:C.files??[],modelContext:C.modelContext}]),Z("");return}m.current=C.modelContext,ne({text:C.text||"",files:C.files}),o?.(C.text||""),c.emit({name:"message.sent"}),Z("")}},[ne,o,R,be.length,c]),je=Ce(C=>new Promise((E,O)=>{re.current={resolve:E,reject:O},ne({text:C}),o?.(C),c.emit({name:"message.sent"})}),[ne,o,c]);Fe(()=>{if(N!=="ready"||be.length===0)return;let[C,...E]=be;xe(E),m.current=C.modelContext,ne({text:C.text,files:C.files.length>0?C.files:void 0}),o?.(C.text),c.emit({name:"message.sent"})},[N,ne,o,be,c]);let gt=Ce(()=>{W([]),xe([]),_(),Z(""),oe.current={},$(C=>C+1),le()},[W,_,le]),wt=Ce(()=>{if(!p.current)return;let C=I.current?.memoryUserId,E=S.current,O=U.current;if(!(!C||!E||O.length===0)){if(k.current||(k.current=Sr()),!M.current){let ee=O.find(se=>se.role==="user"),he=ee?ee.parts.map(se=>"text"in se&&typeof se.text=="string"?se.text:"").join(" "):"";M.current=El(he)}return{threadId:E,memoryUserId:C,title:M.current,messages:O,sessionId:g.current,createdAt:k.current,updatedAt:Sr()}}},[]),wn=Ce(async()=>{let C=wt();C&&(await $o(C),await B())},[wt,B]);Fe(()=>{if(s&&P&&!(N==="submitted"||N==="streaming")&&Q.length!==0)return b.current&&clearTimeout(b.current),b.current=setTimeout(()=>{b.current=void 0;let C=wn().finally(()=>{z.current===C&&(z.current=void 0)});z.current=C},ch),()=>{b.current&&clearTimeout(b.current)}},[s,P,Q,N,wn]);let ga=Ce(()=>{let C=z.current,E=b.current,O=E?wt():void 0;return E&&(clearTimeout(E),b.current=void 0),(async()=>{C&&await C,O&&(await $o(O),await B())})()},[wt,B]),ku=Ce(()=>{q.current+=1,ga(),W([]),xe([]),_(),Z("");let C=Ol();return k.current=Sr(),M.current=void 0,F(C),B(),C},[W,_,F,B,ga]),Mr=Ce(async C=>{q.current+=1;let E=q.current;if(await ga(),E!==q.current)return;let O=await Cr(C);E===q.current&&O&&(O.sessionId?(g.current=O.sessionId,w(O.sessionId)):_(),F(O.threadId),k.current=O.createdAt,M.current=O.title,W(O.messages),xe([]),Z(""))},[W,_,F,ga]),Tu=Ce(async C=>{if(S.current===C){q.current+=1,b.current&&(clearTimeout(b.current),b.current=void 0);let E=z.current;E&&await E}await Bl(C),await B(),S.current===C&&(W([]),xe([]),_(),Z(""),S.current=void 0,x(void 0),k.current=void 0,M.current=void 0)},[W,_,B]);Fe(()=>{s&&P&&i!==void 0&&i!==S.current&&Mr(i)},[i,s,P,Mr]);let vu=Ce(C=>{Z(C.target.value)},[]),xn=Q[Q.length-1],Ln=Q.length>0,Pu=R&&(!Ln||xn.role==="user"),Au=oe.current;return{messages:Q,status:N,text:ue,setText:Z,handleSubmit:Be,handleTextChange:vu,isLoading:R,showLoaderBubble:Pu,lastMessage:xn,hasMessages:Ln,sendMessage:ne,sendMessageAndWait:je,reset:gt,queuedMessages:be,queueFull:de,removeQueuedMessage:H,sessionId:L,toolDefinitions:Au,refreshToolDefinitions:le,threads:v,activeThreadId:h,isThreadHistoryReady:P,startNewThread:ku,switchThread:Mr,deleteThread:Tu}}import{useEffect as Hl,useRef as mh,useState as hh}from"react";var gh={debug:!1,eval:!1};function ql(e="/api/waniwani",t,a=!1){let[r,o]=hh(gh),n=mh(t);return Hl(()=>{n.current=t},[t]),Hl(()=>{a||(async()=>{try{let s=n.current,l=await(await fetch(tt(e,"/config"),{headers:s?{...s}:void 0})).json();o({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),r}import{useCallback as xh,useEffect as Yo,useMemo as Zo,useRef as Lh,useState as zl}from"react";function Rt(e){return e.map(t=>({id:null,text:t}))}function Qo(e){let{flow:t,followup:a,page:r,channel:o}=e;return t!==null?{origin:"flow",suggestions:t}:a?.length?{origin:"followup",suggestions:a}:r?.length?{origin:"page",suggestions:r}:o?.length?{origin:"channel",suggestions:o}:null}var Jo="waniwani/suggestions";function Mt(e){return typeof e=="object"&&e!==null}function Wl(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function wh(e){if(!Mt(e)||!("toolCallId"in e)||!("output"in e))return null;let t=e.output;if(!Mt(t)||!Mt(t._meta))return null;let a=t._meta[Jo];return!Mt(a)||!Wl(a.suggestions)?null:a.suggestions}function Gl(e){let t=null;for(let a of e.parts){let r=wh(a);r!==null&&(t=r)}return t}function Vl(e){for(let t of e.parts){if(!Mt(t)||t.type!=="data-suggestions")continue;let a=t.data;if(Mt(a)&&Wl(a.suggestions)&&a.suggestions.length>0)return a.suggestions}return null}function Ih(e){return"page"in e||"channel"in e}function Ch(e){return typeof e!="object"||e===null?{}:Ih(e)?{rungs:e}:{initial:e.initial}}function br(e){let{messages:t,status:a,suggestions:r}=e,o=r!==!1,{rungs:n,initial:s}=Ch(r),i=Zo(()=>({page:null,channel:Rt(s??[])}),[s]),l=n??i,u=Zo(()=>o?Qo({flow:null,followup:null,...l}):null,[o,l]),c=Zo(()=>u?.suggestions.map(h=>h.text)??[],[u]),[d,f]=zl(c),[p,m]=zl(u?.origin??"channel"),I=Lh(a),L=xh(()=>{f([])},[]),w=t.length>0;Yo(()=>{w||(f(c),m(u?.origin??"channel"))},[c,u,w]);let g=t[t.length-1];return Yo(()=>{g?.role==="user"&&L()},[g,L]),Yo(()=>{let h=I.current;if(I.current=a,h!=="streaming"||a!=="ready"||!o)return;let x=[...t].reverse().find(P=>P.role==="assistant");if(!x)return;let S=Gl(x),v=Vl(x),A=Qo({flow:S===null?null:Rt(S),followup:v===null?null:Rt(v),page:null,channel:null});f(A?A.suggestions.map(P=>P.text):[]),m(A?.origin??"channel")},[a,o,t]),{suggestions:d,source:p,isLoading:!1,clear:L}}import{useEffect as Sh,useRef as yh,useState as bh}from"react";var kh=80,Th=50,vh=15e3,jl=500;function kr(e,t=!0){let[a,r]=bh(""),o=yh(void 0);return Sh(()=>{if(!t){r("");return}let n=0,s=!1,i=!1,l=()=>{i||(s?(n--,r(e.slice(0,n)),n<=0?(s=!1,o.current=setTimeout(l,jl)):o.current=setTimeout(l,Th)):(n++,r(e.slice(0,n)),n>=e.length?(s=!0,o.current=setTimeout(l,vh)):o.current=setTimeout(l,kh)))};return o.current=setTimeout(l,jl),()=>{i=!0,clearTimeout(o.current)}},[e,t]),a}function Tr(e,t){let a=t?.Authorization,r=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return tt(e,"/resource",r?{token:r}:void 0)}var $l={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:8,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5",userBubbleTextColor:"#1f2937",assistantBubbleTextColor:"#1f2937",messagePaddingX:16,messagePaddingY:12,messageMaxWidth:"80%",fontSize:16,lineHeight:"1.5",glassTint:"transparent",glassTintStrength:"0"},Ph={backgroundColor:"#212121",headerBackgroundColor:"#1e1e1e",headerTextColor:"#ececec",textColor:"#ececec",primaryForeground:"#ffffff",mutedColor:"#8e8ea0",borderColor:"#444444",assistantBubbleColor:"#2f2f2f",userBubbleColor:"#303030",inputBackgroundColor:"#2f2f2f",primaryColor:"#6366f1",statusColor:"#22c55e",toolCardColor:"#262626",userBubbleTextColor:"#ffffff",assistantBubbleTextColor:"#ececec"},Ah={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"],userBubbleTextColor:["--ww-user-bubble-text"],assistantBubbleTextColor:["--ww-assistant-bubble-text"],messagePaddingX:["--ww-msg-pad-x"],messagePaddingY:["--ww-msg-pad-y"],messageMaxWidth:["--ww-msg-max-width"],fontSize:["--ww-font-size"],lineHeight:["--ww-line-height"],glassTint:["--ww-glass-tint"],glassTintStrength:["--ww-glass-tint-opacity"]};function en(e){return{...$l,...e}}function pa(e){let t={};for(let[a,r]of Object.entries(Ah)){let o=e[a];if(o===void 0)continue;let n=typeof o=="number"?`${o}px`:String(o);for(let s of r)t[s]=n}return t}import{jsx as Se,jsxs as ma}from"react/jsx-runtime";var Bh=Rh(function(t,a){let{theme:r,title:o="Assistant",width:n,height:s,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:c,placeholder:d="Ask me anything...",triggerEvent:f="triggerDemoRequest",api:p,debug:m,enableThreadHistory:I=!1,showToolCalls:L=!0}=t,w=p??"/api/waniwani",g=Tr(w,t.headers),h=en(r),x=pa(r??{}),S=h.backgroundColor.replace("#",""),v=parseInt(S.substring(0,2),16),A=parseInt(S.substring(2,4),16),P=parseInt(S.substring(4,6),16),D=(v*299+A*587+P*114)/1e3<128,k=ql(w,t.headers,t.skipRemoteConfig),M=m??k.debug,b=yr({...t,api:w}),z=hr({...t,api:w,sessionId:b.sessionId}),q=kr(d,!b.text),[y,F]=Kl(!1),[B,ve]=Kl(null),we=Xl(null),_=Xl(void 0),me=tn(()=>{let G=we.current;if(!G)return;G.scrollIntoView({behavior:"smooth",block:"center"});let $=G.querySelector("textarea");$&&setTimeout(()=>$.focus(),300),F(!0),clearTimeout(_.current),_.current=setTimeout(()=>F(!1),2e3)},[]),re=br({messages:b.messages,status:b.status,suggestions:t.suggestions}),ye=tn(G=>{let $=G.content.map(Pe=>Pe.text??"").join("").trim();$&&b.handleSubmit({text:$,files:[],modelContext:G.modelContext})},[b.handleSubmit]),oe=tn(G=>{re.clear(),b.handleSubmit({text:G,files:[]})},[re.clear,b.handleSubmit]);return Fh(a,()=>({sendMessage:G=>{b.handleSubmit({text:G,files:[]}),me()},sendMessageAndWait:G=>b.sendMessageAndWait(G),reset:b.reset,focus:me,get messages(){return b.messages},get sessionId(){return b.sessionId}}),[b.handleSubmit,b.sendMessageAndWait,b.reset,b.messages,b.sessionId,me]),Mh(()=>{if(!f)return;let G=$=>{let Pe=$.detail,le=typeof Pe?.message=="string"?Pe.message:void 0;le&&b.handleSubmit({text:le,files:[]}),me()};return window.addEventListener(f,G),()=>window.removeEventListener(f,G)},[f,b.handleSubmit,me]),ma("div",{ref:we,style:{...x,width:n,height:s},"data-waniwani-chat":"","data-waniwani-layout":"card",...D?{"data-waniwani-dark":""}:{},className:T("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",y&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[ma("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:px-6 ww:py-3",style:{backgroundColor:h.headerBackgroundColor,color:h.headerTextColor},children:[Se("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:o}),Se(cs,{messages:b.messages,evalEnabled:k.eval,api:w}),I&&Se(mr,{threads:b.threads,activeThreadId:b.activeThreadId,onNewThread:b.startNewThread,onSelectThread:G=>{b.switchThread(G)},onDeleteThread:G=>{b.deleteThread(G)}})]}),ma(Wn,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[Se(Gn,{scrollClassName:B?"ww:!relative ww:!overflow-hidden":void 0,children:Se(dr,{messages:b.messages,status:b.status,welcomeMessage:u,welcome:c,onSuggestionSelect:oe,resourceEndpoint:g,chatSessionId:b.sessionId,isDark:D,onFollowUp:ye,onCallTool:z,fullscreenToolCallId:B,debug:M,showToolCalls:L,toolDefinitions:b.toolDefinitions,onWidgetDisplayModeChange:(G,$)=>{ve(G==="fullscreen"?$.toolCallId:null)}})}),Se(Vn,{})]}),Se("div",{style:B?{display:"none"}:void 0,children:Se(pr,{suggestions:re.suggestions,isLoading:re.isLoading,onSelect:oe})}),Se("div",{style:B?{display:"none"}:void 0,children:Se(Aa,{queuedMessages:b.queuedMessages,onRemove:b.removeQueuedMessage})}),Se("div",{style:B?{display:"none"}:void 0,children:Se("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:ma("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[Se(ka,{onSubmit:b.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:ma("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&Se(Pa,{}),Se(Ta,{onChange:b.handleTextChange,value:b.text,placeholder:q,className:"ww:min-h-0 ww:py-1 ww:px-0"}),Se(va,{status:b.status,disabled:b.queueFull})]})}),Se(cr,{})]})})})]})});import{forwardRef as Jl,useCallback as vr,useEffect as at,useImperativeHandle as Dh,useRef as Ft,useState as Pr}from"react";import{jsx as Eh}from"react/jsx-runtime";function Ql({text:e}){let{t}=V();return e===!1?null:Eh("span",{className:"ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as pe,jsxs as rt}from"react/jsx-runtime";var an=Jl(function(t,a){let{locale:r,messages:o}=t;return pe(qr,{locale:r,messages:o,children:pe(_h,{...t,ref:a})})}),_h=Jl(function(t,a){let{t:r,ready:o}=V(),{appearance:n,className:s,classNames:i,allowAttachments:l=!1,welcomeMessage:u,welcome:c,placeholder:d=r.promptInput.placeholder,triggerEvent:f="triggerDemoRequest",api:p,mcp:m,debug:I=!1,readOnly:L=!1,title:w,headerActions:g,hideHeader:h=!1,enableThreadHistory:x=!1,showToolCalls:S=!0,initializing:v=!1,disclaimer:A}=t,P=n?.theme,D=n?.variables,k=n?.assistantBubble??!1,M=D?pa(D):{},[b,z]=Pr(!1);at(()=>{if(P!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");z(R.matches);let H=()=>z(R.matches);return R.addEventListener("change",H),()=>R.removeEventListener("change",H)},[P]);let q=P==="dark"||P==="auto"&&b,y=yr({...t,api:p}),F=gr(),B=hr({...t,api:p,sessionId:y.sessionId,onCallTool:m?.onCallTool}),ve=m?.resourceEndpoint??Tr(p,t.headers),we=kr(d,!y.text),[_,me]=Pr(null),[re,ye]=Pr(null),oe=Ft(null),G=Ft(null),$=Ft(null),Pe=Ft(null),[le,Q]=Pr(!0),ne=Ft(le);ne.current=le;let W=vr(()=>{let R=oe.current;if(!R)return;let H=R.querySelector("textarea");H&&H.focus()},[]),N=vr((R="smooth")=>{let H=G.current;H&&H.scrollTo({top:H.scrollHeight,behavior:R})},[]);at(()=>{let R=Pe.current,H=G.current;if(!R||!H)return;let de=new IntersectionObserver(([Be])=>Q(Be.isIntersecting),{root:H,rootMargin:"0px 0px 200px 0px",threshold:0});return de.observe(R),()=>de.disconnect()},[]),at(()=>{let R=G.current;if(!R)return;let H=de=>{let je=(de.target instanceof Element?de.target:null)?.closest("a");je?.href&&F.emit({name:"link.clicked",properties:{url:je.href}})};return R.addEventListener("click",H),()=>R.removeEventListener("click",H)},[F]),at(()=>{(y.messages[y.messages.length-1]?.role==="user"||ne.current)&&N("smooth")},[y.messages.length,y.messages[y.messages.length-1]]),at(()=>{N("auto")},[N]),at(()=>{if(typeof ResizeObserver>"u")return;let R=G.current,H=$.current;if(!R&&!H)return;let de=R?.scrollHeight??0,Be=R?.clientHeight??0,je=new ResizeObserver(()=>{let gt=G.current;if(!gt)return;let wt=gt.scrollTop+Be>=de-5;de=gt.scrollHeight,Be=gt.clientHeight,wt&&N("auto")});return R&&je.observe(R),H&&je.observe(H),()=>je.disconnect()},[N]);let U=br({messages:y.messages,status:y.status,suggestions:t.suggestions}),X=Ft(null);at(()=>{let R=U.suggestions;R.length===0||X.current===R||(X.current=R,F.emit({name:"suggestions.shown",properties:{texts:R,origin:U.source}}))},[U.suggestions,U.source,F]);let ue=vr(R=>{let H=R.content.map(de=>de.text??"").join("").trim();H&&y.handleSubmit({text:H,files:[],modelContext:R.modelContext})},[y.handleSubmit]),Z=vr(R=>{let H=U.suggestions.indexOf(R),de=H>=0?H:c?.suggestions?.indexOf(R)??-1,Be=H>=0?U.source:"channel";F.emit({name:"suggestion.clicked",properties:{text:R,index:de,origin:Be}}),U.clear(),y.handleSubmit({text:R,files:[]})},[U.suggestions,U.source,U.clear,y.handleSubmit,c,F]);Dh(a,()=>({sendMessage:R=>{y.handleSubmit({text:R,files:[]}),W()},sendMessageAndWait:R=>y.sendMessageAndWait(R),reset:y.reset,focus:W,get messages(){return y.messages},get sessionId(){return y.sessionId}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,y.sessionId,W]),at(()=>{if(!f)return;let R=H=>{let de=H.detail,Be=typeof de?.message=="string"?de.message:void 0;Be&&y.handleSubmit({text:Be,files:[]}),W()};return window.addEventListener(f,R),()=>window.removeEventListener(f,R)},[f,y.handleSubmit,W]);let be=!h&&!!(w||x||g),xe=v||!o;return rt("div",{ref:oe,style:{...M,maxHeight:"inherit",..._&&re?{height:re}:{},opacity:xe?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-assistant-bubble":k?"true":void 0,"data-color-scheme":P==="auto"?"auto":void 0,...xe?{"data-waniwani-initializing":""}:{},...q?{"data-waniwani-dark":""}:{},className:T("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",P==="dark"&&"dark",s,i?.root),children:[be&&rt("div",{className:T("ww-header ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",i?.header),style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[w&&pe("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:w}),!w&&pe("div",{className:"ww:flex-1"}),x&&pe(mr,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:R=>{y.switchThread(R)},onDeleteThread:R=>{y.deleteThread(R)}}),g]}),rt("div",{ref:G,className:T("ww:relative ww:flex-1 ww:min-h-0",_?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[rt("div",{ref:$,className:T("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",_&&"ww:!py-0"),children:[pe(dr,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:c,onSuggestionSelect:Z,resourceEndpoint:ve,chatSessionId:y.sessionId,isDark:q,onFollowUp:ue,onCallTool:B,fullscreenToolCallId:_,debug:I,showToolCalls:S,toolDefinitions:y.toolDefinitions,messageClassNames:{message:i?.message,userBubble:i?.userBubble,assistantBubble:i?.assistantBubble},onWidgetDisplayModeChange:(R,H)=>{if(R==="fullscreen"){let de=oe.current?.getBoundingClientRect().height??0;ye(de>0?de:null),me(H.toolCallId)}else ye(null),me(null)}}),pe("div",{ref:Pe,"aria-hidden":!0,style:{height:1}})]}),!le&&!_&&pe("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:pe(Ee,{type:"button",onClick:()=>N("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:pe(ot,{className:"ww:size-4"})})})]}),!L&&rt("div",{className:"ww:shrink-0 ww:bg-background",style:_?{display:"none"}:void 0,children:[pe(pr,{suggestions:U.suggestions,isLoading:U.isLoading,onSelect:Z}),pe(Aa,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage}),pe("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:rt("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[pe(ka,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:T("ww-input ww:rounded-2xl ww:border-border ww:bg-input",i?.input),children:rt("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&pe(Pa,{}),pe(Ta,{onChange:y.handleTextChange,value:y.text,placeholder:we,className:"ww:min-h-0 ww:py-1 ww:px-0"}),pe(va,{status:y.status,disabled:y.queueFull})]})}),rt("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:flex-nowrap ww:justify-center ww:items-center ww:gap-1.5",children:[pe(cr,{}),pe(Ql,{text:A})]})]})})]})]})});import{forwardRef as Pg,useEffect as Rr,useImperativeHandle as Ag,useMemo as hn,useRef as gn,useState as Su}from"react";var Nh="https://app.waniwani.ai/api/mcp/chat",Oh={api:Nh};function Uh(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelector("script[src][data-token]");if(e instanceof HTMLScriptElement)return e;let t=document.querySelectorAll("script[src]");for(let a of t)if(a instanceof HTMLScriptElement&&/embed/i.test(a.src))return a;return null}function Hh(){let e=Uh();if(!e)return{};let t=k=>e.getAttribute(k)??void 0,a=k=>{let M=e.getAttribute(k);if(M==null)return;let b=M.trim().toLowerCase();if(b==="true"||b==="1"||b==="")return!0;if(b==="false"||b==="0")return!1},r={},o=t("data-api");o&&(r.api=o);let n=t("data-token");n&&(r.token=n);let s=t("data-visitor-id");s&&(r.visitorId=s);let i=t("data-title");i&&(r.title=i);let l=t("data-welcome-message");l&&(r.welcomeMessage=l);let u=t("data-placeholder");u&&(r.placeholder=u);let c=t("data-mcp-server-url");c&&(r.mcpServerUrl=c);let d=t("data-channel-id");if(d&&(r.channelId=d),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")r.showToolCalls="titles-only";else{let k=a("data-show-tool-calls");k!==void 0&&(r.showToolCalls=k)}let p=t("data-css");p&&(r.css=p);let m=t("data-suggestions");m&&(r.suggestions=m.split(",").map(k=>k.trim()).filter(Boolean));let I=a("data-enable-thread-history");I!==void 0&&(r.enableThreadHistory=I);let L=a("data-disable-page-view");L!==void 0&&(r.disablePageView=L);let w=a("data-hide-header");w!==void 0&&(r.hideHeader=w);let g=t("data-theme");(g==="light"||g==="dark"||g==="auto")&&(r.appearance={...r.appearance,theme:g});let h=a("data-assistant-bubble");h!==void 0&&(r.appearance={...r.appearance,assistantBubble:h});let x=t("data-locale");(x==="en"||x==="fr"||x==="es")&&(r.locale=x);let S=t("data-mode");(S==="inline"||S==="floating")&&(r.mode=S);let v=t("data-height");v&&(r.height=v);let A=t("data-launcher-text");A&&(r.launcherText=A);let P=t("data-appear-delay");if(P!==void 0){let k=Number.parseInt(P.trim(),10);Number.isFinite(k)&&k>=0&&(r.appearDelay=k)}let D=t("data-disclaimer");if(D!==void 0){let k=D.trim(),M=k.toLowerCase();M==="false"||M==="0"?r.disclaimer=!1:k&&(r.disclaimer=k)}return r}function rn(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function on(e,t,a){let r=a??Hh(),o=qh(t,r,e),n={token:"",...Oh,...rn(t),...rn(r),...rn(e),...o?{appearance:o}:{}};if(!n.token)throw new Error("[Waniwani] Missing required config: `token`. Set data-token on the script tag or pass it to Waniwani.chat.init().");return n}function qh(e,t,a){let r=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,o={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},n=Object.keys(o).length>0,s=a?.appearance?.assistantBubble??t.appearance?.assistantBubble??e?.appearance?.assistantBubble;if(!r&&!n&&s===void 0)return;let i={};return r&&(i.theme=r),n&&(i.variables=o),s!==void 0&&(i.assistantBubble=s),i}import{useEffect as Lk,useState as Ik}from"react";function Wh(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function ha(...e){Wh()&&console.log("[Waniwani]",...e)}var nn=new Set;function Gh(e,t,a){return`${e}|${t}|${a??""}`}function sn(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function ln(e){let{api:t,token:a,channelId:r,mode:o,source:n}=e;if(typeof window>"u"||!t||!a)return;let s=Gh(t,a,r);if(!nn.has(s)){nn.add(s);try{let i=await fa(),l=new Date().toISOString(),u=JSON.stringify({sentAt:l,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:n,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:r,mode:o,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(sn(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{nn.delete(s)}}}import{useMemo as Zh}from"react";import{useEffect as $h,useSyncExternalStore as Xh}from"react";function Vh(e){return e?.patterns??e?.rules??[]}var Yl="\0\0";function zh(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Yl).replace(/\\\*/g,"[^/]*").split(Yl).join(".*");return new RegExp(`^${a}$`)}function jh(e,t){try{return zh(e).test(t)}catch{return!1}}function Zl(e,t){if(!e)return!0;let a=!1;for(let r of Vh(e))if(jh(r.glob,t)){if(r.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var un="waniwani:locationchange",eu=!1;function Kh(){if(!(eu||typeof history>"u")){eu=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...r){let o=t.apply(this,r);return window.dispatchEvent(new Event(un)),o}}}}function Qh(e){return Kh(),window.addEventListener(un,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(un,e),window.removeEventListener("popstate",e)}}function Jh(){return window.location.pathname}function Yh(){return"/"}function dn(){return Xh(Qh,Jh,Yh)}function tu(e,t){let a=dn(),r=t&&Zl(e,a);return $h(()=>{ha("visibility gate",{pathname:a,ready:t,visible:r,rules:e})},[a,t,r]),r}var eg=3,tg=["low","medium","high"];function cn(e){if(e.length===0)return;let t=Math.floor(Math.random()*e.length),[a]=e.splice(t,1);return a}function ag(e){let t=new Map,a=[];for(let n of e)if(n.tier){let s=t.get(n.tier)??[];s.push(n),t.set(n.tier,s)}else a.push(n);let r=[];for(let n of tg){let s=cn(t.get(n)??[])??cn(a);s&&r.push(s)}let o=[...t.values()].flat().concat(a);for(;r.length<Math.min(eg,e.length);){let n=cn(o);if(!n)break;r.push(n)}return r}function au(e){let t;try{t=new URL(e,"http://localhost").pathname}catch{t="/"}let a=t.replace(/\/+$/,"");return(a===""?"/":a).toLowerCase()}function ru(e){return Array.isArray(e)?e.flatMap(t=>{let a=t;if(typeof a?.url!="string"||a.url.length===0||!Array.isArray(a.prompts))return[];let r=a.prompts.flatMap(o=>{let n=o;return typeof n?.text!="string"||n.text.length===0?[]:[{id:typeof n.id=="string"?n.id:null,text:n.text,tier:n.tier==="low"||n.tier==="medium"||n.tier==="high"?n.tier:void 0}]});return r.length>0?[{url:a.url,prompts:r}]:[]}):[]}function ou(e){let{pageSuggestions:t,suggestions:a}=e,r=dn();return Zh(()=>{let o=au(r),n=t?.find(i=>au(i.url)===o),s=n?ag(n.prompts).map(({id:i,text:l})=>({id:i,text:l})):null;return ha("configured suggestions resolve",{pathname:o,matched:!!n,count:s?.length??0}),{page:s,channel:Rt(a??[])}},[r,t,a])}var rg="waniwani:config:";function nu(e,t,a){return`${rg}${e}|${t}|${a??""}`}function fn(e,t,a){if(typeof window>"u")return null;try{let r=window.sessionStorage.getItem(nu(e,t,a));if(!r)return null;let o=JSON.parse(r);return o&&typeof o=="object"?o:null}catch{return null}}function su(e,t,a,r){if(!(typeof window>"u"))try{window.sessionStorage.setItem(nu(e,t,a),JSON.stringify(r))}catch{}}async function iu(e,t,a,r){try{let o=tt(e,"/config",r?{channel:r}:void 0),n=await fetch(o,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let s=await n.json(),i=s&&typeof s=="object"&&"data"in s&&s.data?s.data:s;return i?og(i):{}}catch{return{}}}function og(e){let t={};e.source!=null&&(t.source=e.source),e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions);let a=ru(e.pageSuggestions);return a.length>0&&(t.pageSuggestions=a),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),e.visibility&&(t.visibility=e.visibility),t}function Bt(e,t){for(let a of t){let r=e[a];if(typeof r=="string"&&r.length>0)return r}}var ng=["waniwani/sessionId","openai/sessionId","openai/session","sessionId","conversationId","mcp-session-id"],sg=["waniwani/requestId","openai/requestId","requestId","mcp/requestId"],ig=["waniwani/traceId","openai/traceId","traceId","mcp/traceId","openai/requestId","requestId"],lg=["waniwani/userId","openai/userId","externalUserId","userId","actorId"],ug=["waniwani/visitorId","visitorId"],dg=["correlationId","openai/requestId"];function lu(e){return e?Bt(e,ng):void 0}function uu(e){return e?Bt(e,sg):void 0}function du(e){return e?Bt(e,ig):void 0}function cu(e){return e?Bt(e,lg):void 0}function fu(e){return e?Bt(e,ug):void 0}function pu(e){return e?Bt(e,dg):void 0}var cg=[{key:"openai/sessionId",source:"chatgpt"},{key:"openai/session",source:"chatgpt"}],fg=[{needle:"claude",source:"claude"},{needle:"chatgpt",source:"chatgpt"},{needle:"openai",source:"chatgpt"},{needle:"gemini",source:"gemini"}];function mu(e,t){if(e){let r=e["waniwani/source"];if(typeof r=="string"&&r.length>0)return r;for(let{key:o,source:n}of cg){let s=e[o];if(typeof s=="string"&&s.length>0)return n}}let a=t?.name;if(typeof a=="string"&&a.length>0){let r=a.toLowerCase();for(let{needle:o,source:n}of fg)if(r.includes(o))return n}}var pg="@waniwani/sdk";function hu(e,t={}){let a=t.now??(()=>new Date),r=t.generateId??mg,o=wg(e),n=Ar(e.meta),s=Ar(e.metadata),i=xg(e,n),l=Ue(e.eventId)??r(),u=Lg(e.timestamp,a),c=Ue(e.source)??mu(n)??t.source??pg,d=pn(e)?{...e}:void 0,f={...s};return Object.keys(n).length>0&&(f.meta=n),d&&(f.rawLegacy=d),{id:l,type:"mcp.event",name:o,source:c,timestamp:u,correlation:i,properties:hg(e,o),metadata:f,rawLegacy:d}}function mg(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`evt_${crypto.randomUUID()}`:`evt_${Math.random().toString(36).slice(2,10)}_${Date.now().toString(36)}`}function hg(e,t){if(!pn(e))return Ar(e.properties);let a=gg(e,t),r=Ar(e.properties);return{...a,...r}}function gg(e,t){switch(t){case"tool.called":{let a={};return Ue(e.toolName)&&(a.name=e.toolName),Ue(e.toolType)&&(a.type=e.toolType),a}case"link.clicked":{let a={};return Ue(e.linkUrl)&&(a.url=e.linkUrl),a}default:return{}}}function wg(e){return pn(e)?e.eventType:e.event}function xg(e,t){let a=Ue(e.requestId)??uu(t),r=Ue(e.sessionId)??lu(t),o=Ue(e.traceId)??du(t),n=Ue(e.externalUserId)??cu(t),s=Ue(e.visitorId)??fu(t),i=Ue(e.correlationId)??pu(t)??a,l={};return r&&(l.sessionId=r),o&&(l.traceId=o),a&&(l.requestId=a),i&&(l.correlationId=i),n&&(l.externalUserId=n),s&&(l.visitorId=s),l}function Lg(e,t){if(e instanceof Date)return e.toISOString();if(typeof e=="string"){let a=new Date(e);if(!Number.isNaN(a.getTime()))return a.toISOString()}return t().toISOString()}function Ar(e){return!e||typeof e!="object"||Array.isArray(e)?{}:e}function Ue(e){if(typeof e=="string"&&e.trim().length!==0)return e}function pn(e){return"eventType"in e}function gu(e){return{priceShown:({amount:t,currency:a,itemId:r,label:o,...n})=>e({event:"price_shown",properties:{amount:t,currency:a,itemId:r,label:o},...n}),pricesCompared:({options:t,...a})=>e({event:"prices_compared",properties:{options:t},...a}),optionSelected:({id:t,amount:a,currency:r,...o})=>e({event:"option_selected",properties:{id:t,amount:a,currency:r},...o}),leadQualified:t=>{let{externalId:a,email:r,name:o,...n}=t??{};return e({event:"lead_qualified",properties:{externalId:a,email:r,name:o},...n})},converted:({amount:t,currency:a,occurredAt:r,...o})=>e({event:"converted",properties:{amount:t,currency:a,occurredAt:r},...o})}}var Ig="/api/mcp/events/v2/batch";var wu="@waniwani/sdk";var Cg=new Set([401,403]),Sg=new Set([408,425,429,500,502,503,504]);function xu(e){return new mn(e)}var mn=class{endpointUrl;flushIntervalMs;maxBatchSize;maxBufferSize;maxRetries;retryBaseDelayMs;retryMaxDelayMs;shutdownTimeoutMs;sdkVersion;fetchFn;logger;now;sleep;apiKey;buffer=[];flushTimer;flushScheduled=!1;flushScheduledTimer;flushInFlight;inFlightCount=0;isStopped=!1;isShuttingDown=!1;constructor(t){this.endpointUrl=kg(t.apiUrl,t.endpointPath??Ig),this.flushIntervalMs=t.flushIntervalMs??1e3,this.maxBatchSize=t.maxBatchSize??20,this.maxBufferSize=t.maxBufferSize??1e3,this.maxRetries=t.maxRetries??3,this.retryBaseDelayMs=t.retryBaseDelayMs??200,this.retryMaxDelayMs=t.retryMaxDelayMs??2e3,this.shutdownTimeoutMs=t.shutdownTimeoutMs??2e3,this.fetchFn=t.fetchFn??fetch,this.logger=t.logger??console,this.now=t.now??(()=>new Date),this.sleep=t.sleep??(a=>new Promise(r=>setTimeout(r,a))),this.apiKey=t.apiKey,this.sdkVersion=t.sdkVersion,this.flushIntervalMs>0&&(this.flushTimer=setInterval(()=>{this.flush()},this.flushIntervalMs)),this.registerBrowserTeardown()}enqueue(t){if(this.isStopped||this.isShuttingDown){this.logger.warn("[Waniwani] Tracking transport is stopped, dropping event %s",t.id);return}if(this.buffer.length>=this.maxBufferSize){let a=this.buffer.length-this.maxBufferSize+1;this.buffer.splice(0,a),this.logger.warn("[Waniwani] Tracking buffer overflow, dropped %d oldest event(s)",a)}if(this.buffer.push(t),this.buffer.length>=this.maxBatchSize){this.flush();return}this.scheduleMicroFlush()}pendingEvents(){return this.buffer.length+this.inFlightCount}async flush(){return this.flushInFlight?this.flushInFlight:(this.flushInFlight=this.flushLoop().finally(()=>{this.flushInFlight=void 0}),this.flushInFlight)}async shutdown(t){this.isShuttingDown=!0,this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=void 0),this.flushScheduledTimer&&(clearTimeout(this.flushScheduledTimer),this.flushScheduledTimer=void 0,this.flushScheduled=!1);let a=t?.timeoutMs??this.shutdownTimeoutMs,r=this.flush();if(!Number.isFinite(a)||a<=0)return await r,this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()};let o=Symbol("shutdown-timeout");return await Promise.race([r.then(()=>"flushed"),this.sleep(a).then(()=>o)])===o?(this.isStopped=!0,{timedOut:!0,pendingEvents:this.pendingEvents()}):(this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()})}registerBrowserTeardown(){if(typeof document>"u"||typeof window>"u")return;let t=()=>{document.visibilityState==="hidden"&&this.keepaliveFlush()};document.addEventListener("visibilitychange",t),window.addEventListener("pagehide",()=>this.keepaliveFlush())}keepaliveFlush(){if(this.isStopped||this.buffer.length===0)return;let t=this.buffer.splice(0,this.buffer.length);this.sendKeepaliveChunk(t)}sendKeepaliveChunk(t){let a=JSON.stringify(this.makeBatchRequest(t));if(a.length>6e4&&t.length>1){let r=Math.ceil(t.length/2);this.sendKeepaliveChunk(t.slice(0,r)),this.sendKeepaliveChunk(t.slice(r));return}try{this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:a,keepalive:!0}).catch(()=>{})}catch{}}requestHeaders(){let t={"Content-Type":"application/json","X-WaniWani-SDK":wu};return this.apiKey&&(t.Authorization=`Bearer ${this.apiKey}`),t}scheduleMicroFlush(){this.flushScheduled||(this.flushScheduled=!0,this.flushScheduledTimer=setTimeout(()=>{this.flushScheduledTimer=void 0,this.flushScheduled=!1,this.flush()},0))}async flushLoop(){for(;this.buffer.length>0&&!this.isStopped;){let t=this.buffer.splice(0,this.maxBatchSize);await this.sendBatchWithRetry(t)}}async sendBatchWithRetry(t){let a=0,r=t;for(;r.length>0&&!this.isStopped;){this.inFlightCount=r.length;let o=await this.sendBatchOnce(r);switch(this.inFlightCount=0,o.kind){case"success":return;case"auth":this.stopTransportForAuthFailure(o.status,r.length);return;case"permanent":this.logger.error("[Waniwani] Dropping %d event(s) after permanent failure: %s",r.length,o.reason);return;case"retryable":if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d event(s) after retry exhaustion: %s",r.length,o.reason);return}await this.sleep(this.backoffDelayMs(a)),a+=1;continue;case"partial":if(o.permanent.length>0&&this.logger.error("[Waniwani] Dropping %d event(s) rejected as permanent",o.permanent.length),o.retryable.length===0)return;if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d retryable event(s) after retry exhaustion",o.retryable.length);return}r=o.retryable,await this.sleep(this.backoffDelayMs(a)),a+=1;continue}}}async sendBatchOnce(t){let a;try{a=await this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:JSON.stringify(this.makeBatchRequest(t))})}catch(n){return{kind:"retryable",reason:Tg(n)}}if(Cg.has(a.status))return{kind:"auth",status:a.status};if(Sg.has(a.status))return{kind:"retryable",reason:`HTTP ${a.status}`};if(!a.ok)return{kind:"permanent",reason:`HTTP ${a.status}`};let r=await bg(a);if(!r?.rejected||r.rejected.length===0)return{kind:"success"};let o=this.classifyRejectedEvents(t,r.rejected);return o.retryable.length===0&&o.permanent.length===0?{kind:"success"}:{kind:"partial",retryable:o.retryable,permanent:o.permanent}}makeBatchRequest(t){return{sentAt:this.now().toISOString(),source:{sdk:wu,version:this.sdkVersion??"0.0.0"},events:t}}classifyRejectedEvents(t,a){let r=new Map(t.map(s=>[s.id,s])),o=[],n=[];for(let s of a){let i=r.get(s.eventId);if(i){if(yg(s)){o.push(i);continue}n.push(i)}}return{retryable:o,permanent:n}}backoffDelayMs(t){let a=this.retryBaseDelayMs*2**t;return Math.min(a,this.retryMaxDelayMs)}stopTransportForAuthFailure(t,a){this.isStopped=!0;let r=this.buffer.length;this.buffer.splice(0,r),this.logger.error("[Waniwani] Auth failure (HTTP %d). Stopping tracking transport and dropping %d queued event(s)",t,a+r)}};function yg(e){if(e.retryable===!0)return!0;let t=e.code.toLowerCase();return t.includes("timeout")||t.includes("temporary")||t.includes("unavailable")||t.includes("rate_limit")||t.includes("transient")||t.includes("server")}async function bg(e){let t=await e.text();if(t)try{return JSON.parse(t)}catch{return}}function kg(e,t){let a=e.endsWith("/")?e:`${e}/`,r=t.startsWith("/")?t.slice(1):t;return`${a}${r}`}function Tg(e){return e instanceof Error?e.message:String(e)}function Lu(e){let{apiUrl:t,endpointPath:a}=vg(e.endpoint),r=xu({apiUrl:t,apiKey:e.token,endpointPath:a,flushIntervalMs:e.flushIntervalMs}),o,n=i=>typeof i=="function"?i():i,s=async i=>{let l=e.identity?.()??{},u=n(e.channelId),c=u===void 0?i.properties:{channelId:u,...i.properties},d=hu({sessionId:l.sessionId,visitorId:l.visitorId,externalUserId:l.externalUserId??o,traceId:l.traceId,...i,properties:c,metadata:{...e.metadata,...i.metadata}},{source:n(e.source)});return r.enqueue(d),{eventId:d.id}};return{track:Object.assign(s,gu(s)),identify(i,l){return o=i,s({event:"user.identified",externalUserId:i,properties:l})},flush:()=>r.flush(),shutdown:i=>r.shutdown(i)}}function vg(e){let t=new URL(e);return{apiUrl:t.origin,endpointPath:`${t.pathname}${t.search}`}}function Iu(e){return Lu({endpoint:sn(e.api),token:e.token,channelId:e.channelId,source:e.getSource,identity:()=>({sessionId:e.getSessionId(),visitorId:At()})})}function Cu(e){let t=!1,a=async()=>(t||(t=!0,console.warn(`[Waniwani] track() is disabled: ${e}`)),{eventId:""});return{track:Object.assign(a,{priceShown:a,pricesCompared:a,optionSelected:a,leadQualified:a,converted:a}),identify:a,flush:async()=>{},shutdown:async()=>({timedOut:!1,pendingEvents:0})}}import{jsx as bu}from"react/jsx-runtime";var Rg=600,yu="https://app.waniwani.ai/api/mcp/chat",Mg=Pg(function(t,a){let{token:r,channelId:o,className:n,visitorId:s,overrides:i,onEvent:l}=t,u=gn(null),c=gn(null),d=hn(()=>bl({mode:"inline",getSessionId:()=>u.current?.sessionId}),[]);Rr(()=>{if(l)return d.subscribe(l)},[l,d]);let f=hn(()=>({token:r,channelId:o,api:i?.api,mcpServerUrl:i?.mcpServerUrl,title:i?.title,hideHeader:i?.hideHeader,welcomeMessage:i?.welcomeMessage,placeholder:i?.placeholder,suggestions:i?.suggestions,enableThreadHistory:i?.enableThreadHistory,showToolCalls:i?.showToolCalls,appearance:i?.appearance,disclaimer:i?.disclaimer,locale:i?.locale}),[r,o,i?.api,i?.mcpServerUrl,i?.title,i?.hideHeader,i?.welcomeMessage,i?.placeholder,i?.suggestions,i?.enableThreadHistory,i?.showToolCalls,i?.appearance,i?.disclaimer,i?.locale]),p=i?.api??yu,[m,I]=Su({}),[L,w]=Su(!1),g=gn(!1);Rr(()=>{L&&!g.current&&(g.current=!0,d.emit({name:"chat.ready"}))},[L,d]);let h=i?.disablePageView;Rr(()=>{if(!r){w(!0);return}let P=b=>{h||ln({api:p,token:r,channelId:o,mode:"inline",source:b})},D=fn(p,r,o);D&&(I(D),w(!0),P(D.source));let k=new AbortController,M=setTimeout(()=>w(!0),Rg);return iu(p,r,k.signal,o).then(b=>{k.signal.aborted||(Object.keys(b).length>0&&(su(p,r,o,b),I(b)),w(!0),P(b.source))}).catch(b=>{console.error("[Waniwani] Remote config fetch failed:",b),w(!0)}).finally(()=>clearTimeout(M)),()=>{k.abort(),clearTimeout(M)}},[p,r,o,h]);let x=hn(()=>on(f,m,void 0),[f,m]),S=ou(x);Rr(()=>{if(!r)return;let P=Iu({api:p,token:r,channelId:o,getSource:()=>fn(p,r,o)?.source??void 0,getSessionId:()=>u.current?.sessionId});return c.current=P,()=>{c.current=null,P.shutdown()}},[p,r,o]),Ag(a,()=>{let P=()=>c.current??Cu("no public token configured"),D=Object.assign(k=>P().track(k),{priceShown:k=>P().track.priceShown(k),pricesCompared:k=>P().track.pricesCompared(k),optionSelected:k=>P().track.optionSelected(k),leadQualified:k=>P().track.leadQualified(k),converted:k=>P().track.converted(k)});return{sendMessage:k=>u.current?.sendMessage(k),sendMessageAndWait:k=>u.current?u.current.sendMessageAndWait(k):Promise.resolve(void 0),reset:()=>u.current?.reset(),focus:()=>u.current?.focus(),get messages(){return u.current?.messages??[]},get sessionId(){return u.current?.sessionId},track:D,identify:(k,M)=>P().identify(k,M)}},[]);let v=tu(x.visibility,L),A={mode:"inline"};return x.mcpServerUrl&&(A.mcpServerUrl=x.mcpServerUrl),x.channelId&&(A.channelId=x.channelId),v?bu(vl,{value:d,children:bu(an,{ref:u,api:x.api??yu,headers:{Authorization:`Bearer ${x.token}`},visitorId:s,skipRemoteConfig:!0,body:A,appearance:x.appearance,classNames:i?.classNames,title:x.title,hideHeader:x.hideHeader,welcomeMessage:x.welcomeMessage,welcome:i?.welcome,placeholder:x.placeholder,suggestions:S,enableThreadHistory:x.enableThreadHistory,showToolCalls:x.showToolCalls,disclaimer:x.disclaimer,allowAttachments:i?.allowAttachments,locale:x.locale,messages:i?.messages,className:n,initializing:!L})}):null});export{Bh as ChatCard,an as ChatEmbed,Ph as DARK_THEME,$l as DEFAULT_THEME,Uo as McpAppFrame,Mg as WaniwaniChat,en as mergeTheme,pa as themeToCSSProperties};
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|
|
19
19
|
lucide-react/dist/esm/shared/src/utils/mergeClasses.js:
|