@waniwani/sdk 0.14.6 → 0.14.8-beta.1

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.
@@ -1,7 +1,7 @@
1
1
  "use client";
2
- import{a as zr,b as Vr,c as jr,d as $r,e as Xr,f as la,g as Qr,h as Kr,i as Jr,j as Zr,k as Lo,l as Yr,m as ft,n as ct,o as ua,p as pt,u as yt}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Tm,useCallback as Dr,useEffect as Pm,useImperativeHandle as Am,useRef as dl,useState as fl}from"react";import{forwardRef as Ml,createElement as Fl}from"react";var da=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var es=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var ts=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Co=e=>{let t=ts(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Rl,createElement as rs}from"react";var as={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 os=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var ss=Rl(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>rs("svg",{ref:l,...as,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:da("lucide",r),...!s&&!os(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>rs(u,f)),...Array.isArray(s)?s:[s]]));var W=(e,t)=>{let a=Ml(({className:o,...r},s)=>Fl(ss,{ref:s,iconNode:t,className:da(`lucide-${es(Co(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Co(e),a};var Bl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Je=W("arrow-down",Bl);var Dl=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],bt=W("arrow-up",Dl);var El=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],kt=W("check",El);var _l=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],We=W("chevron-down",_l);var Nl=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Tt=W("chevron-right",Nl);var Ol=[["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"}]],Pt=W("clipboard-copy",Ol);var Hl=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ze=W("clock",Hl);var Ul=[["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"}]],At=W("file",Ul);var ql=[["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"}]],vt=W("globe",ql);var Gl=[["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"}]],Rt=W("loader",Gl);var Wl=[["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"}]],Mt=W("paperclip",Wl);var zl=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Ft=W("square",zl);var Vl=[["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"}]],Ye=W("wrench",Vl);var jl=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],et=W("x",jl);var $l=[["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"}]],Bt=W("zap",$l);import{useCallback as du}from"react";import{useCallback as ze,useMemo as Xl,useRef as Ql,useState as Io}from"react";var Kl={damping:.7,stiffness:.05,mass:1.25},Jl=70,Zl=1e3/60,Yl=350,fa=!1;globalThis.document?.addEventListener("mousedown",()=>{fa=!0});globalThis.document?.addEventListener("mouseup",()=>{fa=!1});globalThis.document?.addEventListener("click",()=>{fa=!1});var is=(e={})=>{let[t,a]=Io(!1),[o,r]=Io(e.initial!==!1),[s,n]=Io(!1),i=Ql(null);i.current=e;let l=ze(()=>{if(!fa)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(x.current)||x.current?.contains(h.commonAncestorContainer)},[]),u=ze(g=>{d.isAtBottom=g,r(g)},[]),f=ze(g=>{d.escapedFromLock=g,a(g)},[]),d=Xl(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return x.current?.scrollTop??0},set scrollTop(h){x.current&&(x.current.scrollTop=h,d.ignoreScrollToTop=x.current.scrollTop)},get targetScrollTop(){return!x.current||!L.current?0:x.current.scrollHeight-1-x.current.clientHeight},get calculatedTargetScrollTop(){if(!x.current||!L.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let w=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:x.current,contentElement:L.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:w},requestAnimationFrame(()=>{g=void 0}),w},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Jl}}},[]),c=ze((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),w=yo(i.current,g.animation),{ignoreEscapes:b=!1}=g,k,P=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{k=Date.now()}):k=h+(g.duration??0);let A=async()=>{let E=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:B}=d,O=performance.now(),y=(O-(d.lastTick??O))/Zl;if(d.animation||(d.animation={behavior:w,promise:E,ignoreEscapes:b}),d.animation.behavior===w&&(d.lastTick=O),l()||h>Date.now())return A();if(B<Math.min(P,d.calculatedTargetScrollTop)){if(d.animation?.behavior===w){if(w==="instant")return d.scrollTop=d.calculatedTargetScrollTop,A();d.velocity=(w.damping*d.velocity+w.stiffness*d.scrollDifference)/w.mass,d.accumulated+=d.velocity*y,d.scrollTop+=d.accumulated,d.scrollTop!==B&&(d.accumulated=0)}return A()}return k>Date.now()?(P=d.calculatedTargetScrollTop,A()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:yo(i.current,i.current.resize),ignoreEscapes:b,duration:Math.max(0,k-Date.now())||void 0}):d.isAtBottom)});return E.then(B=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),B))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===w?d.animation.promise:A()},[u,l,d]),p=ze(()=>{f(!0),u(!1)},[f,u]),m=ze(({target:g})=>{if(g!==x.current)return;let{scrollTop:h,ignoreScrollToTop:w}=d,{lastScrollTop:b=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,w&&w>h&&(b=w),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===w)return;if(l()){f(!0),u(!1);return}let k=h>b,P=h<b;if(d.animation?.ignoreEscapes){d.scrollTop=b;return}P&&(f(!0),u(!1)),k&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),C=ze(({target:g,deltaY:h})=>{let w=g;for(;!["scroll","auto"].includes(getComputedStyle(w).overflow);){if(!w.parentElement)return;w=w.parentElement}w===x.current&&h<0&&x.current.scrollHeight>x.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),x=ns(g=>{x.current?.removeEventListener("scroll",m),x.current?.removeEventListener("wheel",C),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",C,{passive:!0})},[]),L=ns(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([w])=>{let{height:b}=w.contentRect,k=b-(h??b);if(d.resizeDifference=k,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),k>=0){let P=yo(i.current,h?i.current.resize:i.current.initial);c({animation:P,wait:!0,preserveScrollPosition:!0,duration:P==="instant"?void 0:Yl})}else d.isNearBottom&&(f(!1),u(!0));h=b,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===k&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:L,scrollRef:x,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function ns(e,t){let a=ze(o=>(a.current=o,e(o)),t);return a}var So=new Map;function yo(...e){let t={...Kl},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return So.has(o)||So.set(o,Object.freeze(t)),a?"instant":So.get(o)}import*as tt from"react";import{createContext as eu,useContext as tu,useEffect as au,useImperativeHandle as ou,useLayoutEffect as ru,useMemo as su,useRef as nu}from"react";var ls=eu(null),iu=typeof window<"u"?ru:au;function Dt({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=nu(null),d=tt.useCallback((b,k)=>(w?.targetScrollTop??i)?.(b,k)??b,[i]),c=is({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:C,stopScroll:x,isAtBottom:L,escapedFromLock:g,state:h}=e??c,w=su(()=>({scrollToBottom:C,stopScroll:x,scrollRef:p,isAtBottom:L,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(b){f.current=b}}),[C,L,m,p,x,g,h]);return ou(l,()=>w,[w]),iu(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),tt.createElement(ls.Provider,{value:w},tt.createElement("div",{...u},typeof t=="function"?t(w):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=bo();return tt.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},tt.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(Dt||(Dt={}));function bo(){let e=tu(ls);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var lu=Vr({prefix:"ww"});function T(...e){return lu(zr(e))}import{jsx as uu}from"react/jsx-runtime";var Ae=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>uu("button",{type:o,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),...r});import{jsx as ca}from"react/jsx-runtime";var us=({className:e,...t})=>ca(Dt,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),ds=({className:e,...t})=>ca(Dt.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}),fs=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=bo(),r=du(()=>{o()},[o]);return!a&&ca(Ae,{className:T("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:ca(Je,{className:"ww:size-4"})})};import ps from"crypto";var cs="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var fu=128,at,mt,cu=e=>{!at||at.length<e?(at=Buffer.allocUnsafe(e*fu),ps.randomFillSync(at),mt=0):mt+e>at.length&&(ps.randomFillSync(at),mt=0),mt+=e};var Et=(e=21)=>{cu(e|=0);let t="";for(let a=mt-e;a<mt;a++)t+=cs[at[a]&63];return t};import{createContext as Cu,useCallback as Ue,useContext as Iu,useEffect as vo,useMemo as Su,useRef as Ro,useState as Ls}from"react";import{createContext as pu,useContext as mu,useEffect as hu,useMemo as gu,useState as ws}from"react";var ms=["en","fr","es"];function ht(e){return ms.includes(e)}function ko(e){if(e&&ht(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&ht(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 o=a.toLowerCase();if(ht(o))return o;let r=o.split("-")[0];if(r&&ht(r))return r}return"en"}var pa={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 hs={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 gs={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 To={en:pa,fr:gs,es:hs};import{jsx as Lu}from"react/jsx-runtime";var xs=pu(null);function wu(e,t){if(!t)return e;let a={...e};for(let o of Object.keys(e)){let r=e[o],s=t[o];s&&typeof r=="object"&&(a[o]={...r,...s})}return a}function Po({children:e,locale:t,messages:a}){let o=!!(t&&xu(t)),r=o?t:"en",[s,n]=ws(r),[i,l]=ws(o);hu(()=>{n(ko(t)),l(!0)},[t]);let u=gu(()=>{let f=To[s]??To["en"];return{locale:s,t:wu(f,a),ready:i}},[s,a,i]);return Lu(xs.Provider,{value:u,children:e})}function xu(e){return e==="en"||e==="fr"||e==="es"}function H(){let e=mu(xs);return e||{locale:"en",t:pa,ready:!0}}function Ao(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 o,r;a<60*6e4?(o=-Math.floor(a/6e4),r="minute"):a<1440*6e4?(o=-Math.floor(a/(60*6e4)),r="hour"):(o=-Math.floor(a/(1440*6e4)),r="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(o,r)}catch{return`${Math.abs(o)}${r==="minute"?"m":r==="hour"?"h":"d"} ago`}}import{jsx as Fe,jsxs as Ss}from"react/jsx-runtime";var yu=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(o=>{let r=new FileReader;r.onloadend=()=>o(r.result),r.onerror=()=>o(null),r.readAsDataURL(a)})}catch{return null}},Cs=Cu(null),Is=()=>{let e=Iu(Cs);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ma=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let{t:u}=H(),f=Ro(null),d=Ro(null),[c,p]=Ls([]),m=Ro(c);vo(()=>{m.current=c},[c]);let C=Ue(()=>{f.current?.click()},[]),x=Ue(k=>{let P=[...k];if(P.length===0)return;let A=B=>s?B.size<=s:!0,E=P.filter(A);p(B=>{let O=typeof r=="number"?Math.max(0,r-B.length):void 0,y=typeof O=="number"?E.slice(0,O):E;return[...B,...y.map(v=>({filename:v.name,id:Et(),mediaType:v.type,type:"file",url:URL.createObjectURL(v)}))]})},[r,s]),L=Ue(k=>{p(P=>{let A=P.find(E=>E.id===k);return A?.url&&URL.revokeObjectURL(A.url),P.filter(E=>E.id!==k)})},[]),g=Ue(()=>{p(k=>{for(let P of k)P.url&&URL.revokeObjectURL(P.url);return[]})},[]);vo(()=>()=>{for(let k of m.current)k.url&&URL.revokeObjectURL(k.url)},[]);let h=Ue(k=>{k.currentTarget.files&&x(k.currentTarget.files),k.currentTarget.value=""},[x]);vo(()=>{if(!o)return;let k=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault()},P=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault(),A.dataTransfer?.files&&A.dataTransfer.files.length>0&&x(A.dataTransfer.files)};return document.addEventListener("dragover",k),document.addEventListener("drop",P),()=>{document.removeEventListener("dragover",k),document.removeEventListener("drop",P)}},[x,o]);let w=Ue(async k=>{k.preventDefault();let P=k.currentTarget,E=new FormData(P).get("message")||"";P.reset();let B=await Promise.all(c.map(async({id:O,...y})=>{if(y.url?.startsWith("blob:")){let v=await yu(y.url);return{...y,url:v??y.url}}return y}));try{let O=n({files:B,text:E},k);O instanceof Promise&&await O,g()}catch{}},[c,n,g]),b=Su(()=>({add:x,clear:g,files:c,openFileDialog:C,remove:L}),[c,x,L,g,C]);return Ss(Cs.Provider,{value:b,children:[Fe("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:f,title:u.promptInput.uploadFiles,type:"file"}),Fe("form",{className:T("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:w,ref:d,...l,children:i})]})};var ha=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=H(),n=Is(),[i,l]=Ls(!1),u=o??s.promptInput.placeholder,f=Ue(c=>{if(t?.(c),!c.defaultPrevented){if(c.key==="Enter"){if(i||c.nativeEvent.isComposing||c.shiftKey)return;c.preventDefault();let{form:p}=c.currentTarget;if(p?.querySelector('button[type="submit"]')?.disabled)return;p?.requestSubmit()}if(c.key==="Backspace"&&c.currentTarget.value===""&&n.files.length>0){c.preventDefault();let p=n.files.at(-1);p&&n.remove(p.id)}}},[t,i,n]),d=Ue(c=>{let p=c.clipboardData?.items;if(!p)return;let m=[];for(let C of p)if(C.kind==="file"){let x=C.getAsFile();x&&m.push(x)}m.length>0&&(c.preventDefault(),n.add(m))},[n]);return Fe("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:f,onPaste:d,placeholder:u,onChange:e,...r})},ga=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let{t:n}=H(),i=t==="submitted"||t==="streaming",l=Fe(bt,{className:"ww:size-4"});t==="submitted"?l=Fe(Rt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Fe(Ft,{className:"ww:size-4"}));let u=Ue(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return Fe(Ae,{"aria-label":i?n.promptInput.stop:n.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",...s,children:r??l})},wa=({className:e,children:t,...a})=>{let{t:o}=H(),r=Is();return r.files.length>0?Ss(Ae,{className:T("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[Fe("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:r.files.length}),Fe(et,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Fe(Ae,{className:T(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Fe(Mt,{className:"ww:size-4"})})};import{memo as bu,useCallback as ku}from"react";import{jsx as wt}from"react/jsx-runtime";var ys=({className:e,...t})=>wt("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),bs=({className:e,...t})=>wt("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}),ks=({className:e,...t})=>wt("span",{className:T("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})=>wt("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Ps=({className:e,...t})=>wt("div",{className:T("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),As=({className:e,...t})=>wt(Ae,{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 Ve,jsxs as Rs}from"react/jsx-runtime";var vs=bu(({message:e,onRemove:t})=>{let{t:a}=H(),o=ku(()=>t(e.id),[t,e.id]);return Rs(bs,{children:[Ve(ks,{}),Ve(Ts,{children:e.text||a.chatQueue.attachmentFallback}),Ve(Ps,{children:Ve(As,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:Ve(et,{className:"ww:size-3"})})})]})});vs.displayName="ChatQueueItem";function xa({queuedMessages:e,onRemove:t,className:a}){let{t:o}=H();return e.length===0?null:Rs(ys,{className:T("ww:border-t ww:border-border",a),children:[Ve("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),Ve("ul",{children:e.map(r=>Ve(vs,{message:r,onRemove:t},r.id))})]})}import{useState as Ms}from"react";import{jsx as Tu}from"react/jsx-runtime";function Fs({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=H(),[r,s]=Ms(!1),[n,i]=Ms(null),l=async()=>{let f={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};s(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{s(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:n==="saved"?o.exportSession.saved:n==="error"?o.exportSession.error:o.exportSession.export;return Tu("button",{type:"button",onClick:l,disabled:r,title:o.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 Au}from"react/jsx-runtime";var Bs=({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((o,r)=>_t(Pu,{file:o},r))});function Pu({file:e}){let{t}=H();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"}):Au("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(At,{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 Uu,useCallback as qu,useContext as Gu,useEffect as Do,useMemo as Wu,useRef as zu,useState as La}from"react";import{createContext as Fu,memo as Bo,useCallback as Bu,useContext as Du,useEffect as Mo,useMemo as Eu,useRef as Ds,useState as Fo}from"react";import{memo as vu}from"react";import{jsx as Mu}from"react/jsx-runtime";var Ru=({as:e="span",className:t,duration:a=2,style:o,children:r,...s})=>{let n={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`,...o};return Mu(e,{"data-waniwani-shimmer":"",className:T("ww:inline-block",t),style:n,...s,children:r})},Be=vu(Ru);Be.displayName="Shimmer";import{Fragment as Ou,jsx as De,jsxs as Hu}from"react/jsx-runtime";var Es=Fu(null);function _s(){let e=Du(Es);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var _u=1e3,Nu=1e3,Nt=Bo(({className:e,isStreaming:t=!1,open:a,defaultOpen:o,onOpenChange:r,duration:s,children:n,...i})=>{let l=o??t,u=o===!1,f=a!==void 0,[d,c]=Fo(l),p=f?a:d,m=Bu(P=>{f||c(P),r?.(P)},[f,r]),[C,x]=Fo(void 0),L=s??C,g=Ds(t),[h,w]=Fo(!1),b=Ds(null);Mo(()=>{t?(g.current=!0,b.current===null&&(b.current=Date.now())):b.current!==null&&(x(Math.ceil((Date.now()-b.current)/Nu)),b.current=null)},[t]),Mo(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Mo(()=>{if(g.current&&!t&&p&&!h){let P=setTimeout(()=>{m(!1),w(!0)},_u);return()=>clearTimeout(P)}},[t,p,h,m]);let k=Eu(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:L}),[t,p,m,L]);return De(Es.Provider,{value:k,children:De("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:n})})});Nt.displayName="Reasoning";var Ot=Bo(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...s})=>{let{t:n}=H(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:f}=_s(),c=a??((p,m)=>p||m===0?De(Be,{duration:1.6,children:n.reasoning.thinking}):m===void 0?De("span",{children:n.reasoning.thoughtBrief}):De("span",{children:n.reasoning.thoughtForSeconds(m)}));return De("button",{type:"button","aria-expanded":l,onClick:p=>{f(!l),r?.(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),...s,children:t??Hu(Ou,{children:[!o&&De(Ze,{className:"ww:size-4 ww:shrink-0"}),c(i,u)]})})});Ot.displayName="ReasoningTrigger";var Ht=Bo(({className:e,children:t,...a})=>{let{isOpen:o}=_s();return De("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:De("div",{className:"ww:min-h-0 ww:overflow-hidden",children:De("div",{className:T("ww:text-sm ww:text-muted-foreground",e),...a,children:De(yt,{children:t})})})})});Ht.displayName="ReasoningContent";import{jsx as Y,jsxs as ot}from"react/jsx-runtime";var Ns=1e3,Vu=240,Os=Uu(null);function Hs(){let e=Gu(Os);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Us({className:e,isWorking:t=!1,open:a,defaultOpen:o,onOpenChange:r,children:s,...n}){let i=o??t,l=a!==void 0,[u,f]=La(i),d=l?a:u,c=qu(h=>{l||f(h),r?.(h)},[l,r]),p=zu(t),[m,C]=La(!1),[x,L]=La(!t);Do(()=>{t&&(p.current=!0,C(!1),L(!1),l||f(!0))},[t,l]),Do(()=>{if(p.current&&!t&&d&&!m){let h=setTimeout(()=>{c(!1),C(!0)},Ns);return()=>clearTimeout(h)}},[t,d,m,c]),Do(()=>{if(p.current&&!t&&!x){let h=setTimeout(()=>L(!0),Ns+Vu);return()=>clearTimeout(h)}},[t,x]);let g=Wu(()=>({open:d,setOpen:c,isWorking:t,settled:x}),[d,c,t,x]);return Y(Os.Provider,{value:g,children:Y("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"},...n,children:s})})}function qs({className:e,label:t,workingLabel:a,children:o,...r}){let{open:s,setOpen:n,isWorking:i,settled:l}=Hs(),u=o??(l?t:i?Y(Be,{duration:1.6,children:a??t??""}):a??t);return ot("button",{type:"button",onClick:()=>n(!s),"aria-expanded":s,className:T("ww:flex 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),...r,children:[Y("span",{className:"ww:truncate",children:u}),Y(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",s&&"ww:rotate-180")})]})}function Gs({className:e,children:t,...a}){let{open:o}=Hs();return Y("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:T("ww:flex ww:flex-col",e),...a,children:t})})})}function Ws({icon:e,isLast:t,running:a,error:o}){return ot("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Y("span",{className:"ww:flex ww:h-5 ww:items-center",children:Y(e,{className:T("ww:size-4 ww:shrink-0",o?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Y("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Eo({className:e,icon:t,title:a,state:o,isLast:r=!1,children:s,...n}){let i=o==="input-available"||o==="input-streaming",l=o==="output-error",u=s!=null,[f,d]=La(!1),c=a??"",p=i?Y(Be,{duration:1.6,children:c}):Y("span",{className:"ww:truncate",children:c});return ot("div",{className:T("ww:flex ww:gap-2",e),...n,children:[Y(Ws,{icon:t,isLast:r,running:i,error:l}),ot("div",{className:T("ww:min-w-0 ww:flex-1",!r&&"ww:pb-3"),children:[u?ot("button",{type:"button",onClick:()=>d(m=>!m),"aria-expanded":f,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,Y(We,{className:T("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",f&&"ww:rotate-180")})]}):Y("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&Y("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",f?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:s})})})]})]})}function zs({isStreaming:e=!1,isLast:t=!1,children:a}){return ot("div",{className:"ww:flex ww:gap-2",children:[Y(Ws,{icon:Ze,isLast:t,running:e}),Y("div",{className:T("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:ot(Nt,{isStreaming:e,className:"ww:mb-0",children:[Y(Ot,{hideIcon:!0}),Y(Ht,{children:a})]})})]})}var he={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 _e={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 be={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 Vs(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 js(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function $s(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 Xs(e){return Vs(e)?"ambiguous":js(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":$s(e)?"wide":"neutral"}function ju(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Qs(e){return ju(e),Xs(e)}var $u=Object.defineProperty,Xu=(e,t,a)=>t in e?$u(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Qu=(e,t,a)=>Xu(e,typeof t!="symbol"?t+"":t,a);function Ku(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Ju(e){if(!e||e<4352)return!1;switch(Qs(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!Ku(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 Zu(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Yu(e){return e!==null&&e>=65024&&e<=65038}var ed=Ks(/\p{P}|\p{S}/u),td=Ks(/\s/);function Ks(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var ke;(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})(ke||(ke={}));function je(e){if(e===he.eof||Yr(e)||td(e))return _e.characterGroupWhitespace;let t=0;if(e>=4352){if(Yu(e))return ke.nonEmojiGeneralUseVS;switch(Ju(e)){case null:return ke.ivs;case!0:t|=ke.cjk;break}}return ed(e)&&(t|=_e.characterGroupPunctuation),t}function Ca(e,t,a){if(!od(e))return e;let o=t(),r=je(o);return!o||rt(r)?e:Zu(o,a)?ke.cjkPunctuation:ad(r)}function ad(e){return e&~ke.ivs}function rt(e){return!!(e&_e.characterGroupWhitespace)}function xt(e){return(e&ke.cjkPunctuation)===_e.characterGroupPunctuation}function Ut(e){return!!(e&ke.cjk)}function Js(e){return e===ke.ivs}function Zs(e){return!!(e&ke.cjkOrIvs)}function od(e){return e===ke.nonEmojiGeneralUseVS}function _o(e){return!!(e&ke.spaceOrPunctuation)}function Ia(e){return!!(e&&e>=55296&&e<=56319)}function Sa(e){return!!(e&&e>=56320&&e<=57343)}function ya(e,t,a){if(t._bufferIndex<2)return e;let r=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return r&&r>=65536?r:e}function rd(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,s=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),n=s.charCodeAt(s.length-1);if(Number.isNaN(n))return null;if(s.length<2||n<56320||57343<n)return n;let i=s.codePointAt(0);return i&&i>=65536?i:n}var ba=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,Qu(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=rd(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function ka(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var No={name:"attention",resolveAll:sd,tokenize:nd};function sd(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},c={...e[a][1].start};Ys(d,-l),Ys(c,l),n={type:l>1?be.strongSequence:be.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?be.strongSequence:be.emphasisSequence,start:{...e[a][1].start},end:c},s={type:l>1?be.strongText:be.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?be.strong:be.emphasis,start:{...n.start},end:{...i.end}},e[o][1].end={...n.start},e[a][1].start={...i.end},u=[],e[o][1].end.offset-e[o][1].start.offset&&(u=ct(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=ct(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=ct(u,ua(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=ct(u,[["exit",s,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[a][1].end.offset-e[a][1].start.offset?(f=2,u=ct(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,ft(e,o-1,a-o+3,u),a=o+u.length-f-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function nd(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=Sa(s)?ya(s,o(),r):s,i=je(n),l=new ba(n,o(),r),u=Ca(i,l.value.bind(l),n),f;return d;function d(p){return p===he.asterisk||he.underscore,f=p,e.enter("attentionSequence"),c(p)}function c(p){if(p===f)return e.consume(p),c;let m=e.exit("attentionSequence"),C=Ia(p)?ka(p,o(),r):p,x=je(C);let L=xt(u),g=L||rt(u),h=xt(x),w=h||rt(x),b=Zs(u),k=!w||h&&(g||b)||a.includes(p),P=!g||L&&(w||Ut(x))||a.includes(n);return m._open=!!(f===he.asterisk?k:k&&(_o(u)||!P)),m._close=!!(f===he.asterisk?P:P&&(_o(x)||!k)),t(p)}}function Ys(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function en(){return{text:{[he.asterisk]:No,[he.underscore]:No},insideSpan:{null:[No]}}}function tn(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(en())}function an(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[he.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[he.tilde]}};function r(n,i){let l=-1;for(;++l<n.length;)if(n[l][0]==="enter"&&n[l][1].type==="strikethroughSequenceTemporary"&&n[l][1]._close){let u=l;for(;u--;)if(n[u][0]==="exit"&&n[u][1].type==="strikethroughSequenceTemporary"&&n[u][1]._open&&n[l][1].end.offset-n[l][1].start.offset===n[u][1].end.offset-n[u][1].start.offset){n[l][1].type="strikethroughSequence",n[u][1].type="strikethroughSequence";let f={type:"strikethrough",start:Object.assign({},n[u][1].start),end:Object.assign({},n[l][1].end)},d={type:"strikethroughText",start:Object.assign({},n[u][1].end),end:Object.assign({},n[l][1].start)},c=[["enter",f,i],["enter",n[u][1],i],["exit",n[u][1],i],["enter",d,i]],p=i.parser.constructs.insideSpan.null;p&&ft(c,c.length,0,ua(p,n.slice(u+1,l),i)),ft(c,c.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),ft(n,u-1,l-u+3,c),l=u+c.length-2;break}}for(l=-1;++l<n.length;)n[l][1].type==="strikethroughSequenceTemporary"&&(n[l][1].type=be.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,c=Sa(d)?ya(d,u(),f):d,p=je(c),m=new ba(c,u(),f),C=Ca(p,m.value.bind(m),c),x=this.events,L=0;return g;function g(w){return he.tilde,c===he.tilde&&x[x.length-1][1].type!==be.characterEscape?l(w):(n.enter("strikethroughSequenceTemporary"),h(w))}function h(w){let b=je(c);if(w===he.tilde)return L>1?l(w):(n.consume(w),L++,h);if(L<2&&!a)return l(w);let k=n.exit("strikethroughSequenceTemporary"),P=Ia(w)?ka(w,u(),f):w,A=je(P),B=xt(C)||rt(C),y=xt(A)||rt(A),v=Ut(C)||Js(b);return k._open=!y||A===_e.attentionSideAfter&&(B||v),k._close=!B||b===_e.attentionSideAfter&&(y||Ut(A)),i(w)}}}function on(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(an(e))}var id=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),ld=/^(https?:\/\/|mailto:|www\.)/i,ud=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},dd=e=>{let t=0;for(let a of e){if(id.has(a))return t;t+=a.length}return null},fd=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),cd=e=>({type:"text",value:e}),pd=()=>e=>{jr(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!ud(t)||!ld.test(t.url))return;let r=dd(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=fd(s,t),l=cd(n);return o.children.splice(a,1,i,l),a+1})};function md(){let e=[tn],t=[pd,on],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Oo=md();var ee=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function hd(e){return Xo(e)}function Xo(e){return Array.isArray(e)?gd(e):e instanceof RegExp?e:typeof e=="object"?wd(e):e}function gd(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=Xo(e[a]);return t}function wd(e){let t={};for(let a in e)t[a]=Xo(e[a]);return t}function pn(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function mn(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?mn(e.substring(0,e.length-1)):e.substr(~t+1)}var Ho=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Ta=class{static hasCaptures(e){return e===null?!1:(Ho.lastIndex=0,Ho.test(e))}static replaceCaptures(e,t,a){return e.replace(Ho,(o,r,s,n)=>{let i=a[parseInt(r||s,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(n){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function hn(e,t){return e<t?-1:e>t?1:0}function gn(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,o=t.length;if(a===o){for(let r=0;r<a;r++){let s=hn(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function rn(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 wn(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var xn=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}},Wt=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Cd(e),t)}static createFromParsedTheme(e,t){return Sd(e,t)}_cachedMatchRoot=new xn(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,o=this._cachedMatchRoot.get(t).find(r=>xd(e.parent,r.parentScopes));return o?new Ln(o.fontStyle,o.foreground,o.background):null}},Uo=class Pa{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Pa(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Pa(a,t[o]);return a}push(t){return new Pa(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=[],o=this;for(;o&&o!==t;)a.push(o.scopeName),o=o.parent;return o===t?a.reverse():void 0}};function xd(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let o=t[a],r=!1;if(o===">"){if(a===t.length-1)return!1;o=t[++a],r=!0}for(;e&&!Ld(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Ld(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Ln=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Cd(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let c=0,p=d.length;c<p;c++)switch(d[c]){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 n.settings.foreground=="string"&&rn(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&rn(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),C=m[m.length-1],x=null;m.length>1&&(x=m.slice(0,m.length-1),x.reverse()),a[o++]=new Id(C,x,r,l,u,f)}}return a}var Id=class{constructor(e,t,a,o,r,s){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=s}},ge=(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))(ge||{});function Sd(e,t){e.sort((l,u)=>{let f=hn(l.scope,u.scope);return f!==0||(f=gn(l.parentScopes,u.parentScopes),f!==0)?f:l.index-u.index});let a=0,o="#000000",r="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(o=l.foreground),l.background!==null&&(r=l.background)}let s=new yd(t),n=new Ln(a,s.getId(o),s.getId(r)),i=new kd(new Go(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let f=e[l];i.insert(0,f.scope,f.parentScopes,f.fontStyle,s.getId(f.foreground),s.getId(f.background))}return new Wt(s,n,i)}var yd=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)}},bd=Object.freeze([]),Go=class Cn{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||bd,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new Cn(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let o=0,r=t.length;o<r;o++)a[o]=t[o].clone();return a}acceptOverwrite(t,a,o,r){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),o!==0&&(this.foreground=o),r!==0&&(this.background=r)}},kd=class Wo{constructor(t,a=[],o={}){this._mainRule=t,this._children=o,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let o=0,r=0;for(;t.parentScopes[o]===">"&&o++,a.parentScopes[r]===">"&&r++,!(o>=t.parentScopes.length||r>=a.parentScopes.length);){let s=a.parentScopes[r].length-t.parentScopes[o].length;if(s!==0)return s;o++,r++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let o=t.indexOf("."),r,s;if(o===-1?(r=t,s=""):(r=t.substring(0,o),s=t.substring(o+1)),this._children.hasOwnProperty(r))return this._children[r].match(s)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Wo._cmpBySpecificity),a}insert(t,a,o,r,s,n){if(a===""){this._doInsertHere(t,o,r,s,n);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let f;this._children.hasOwnProperty(l)?f=this._children[l]:(f=new Wo(this._mainRule.clone(),Go.cloneArr(this._rulesWithParentScopes)),this._children[l]=f),f.insert(t+1,u,o,r,s,n)}_doInsertHere(t,a,o,r,s){if(a===null){this._mainRule.acceptOverwrite(t,o,r,s);return}for(let n=0,i=this._rulesWithParentScopes.length;n<i;n++){let l=this._rulesWithParentScopes[n];if(gn(l.parentScopes,a)===0){l.acceptOverwrite(t,o,r,s);return}}o===-1&&(o=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),s===0&&(s=this._mainRule.background),this._rulesWithParentScopes.push(new Go(t,a,o,r,s))}},nt=class ve{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=ve.getLanguageId(t),o=ve.getTokenType(t),r=ve.getFontStyle(t),s=ve.getForeground(t),n=ve.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:s,background:n})}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,o,r,s,n,i){let l=ve.getLanguageId(t),u=ve.getTokenType(t),f=ve.containsBalancedBrackets(t)?1:0,d=ve.getFontStyle(t),c=ve.getForeground(t),p=ve.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(c=n),i!==0&&(p=i),(l<<0|u<<8|f<<10|d<<11|c<<15|p<<24)>>>0}};function va(e,t){let a=[],o=Td(e),r=o.next();for(;r!==null;){let l=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=o.next()}let u=n();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function s(){if(r==="-"){r=o.next();let l=s();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if(sn(r)){let l=[];do l.push(r),r=o.next();while(sn(r));return u=>t(l,u)}return null}function n(){let l=[],u=s();for(;u;)l.push(u),u=s();return f=>l.every(d=>d(f))}function i(){let l=[],u=n();for(;u&&(l.push(u),r==="|"||r===",");){do r=o.next();while(r==="|"||r===",");u=n()}return f=>l.some(d=>d(f))}}function sn(e){return!!e&&!!e.match(/[\w\.:]+/)}function Td(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let o=a[0];return a=t.exec(e),o}}}function In(e){typeof e.dispose=="function"&&e.dispose()}var zt=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Pd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Ad=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))}},vd=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new zt(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Ad;for(let a of e)Rd(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof zt){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 Rd(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof zt?Aa({baseGrammar:s,selfGrammar:r},o):zo(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new zt(i))}function zo(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Ra([o],t,a)}}function Aa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ra(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ra(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ra(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?pn({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Ra(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=Sn(s);switch(n.kind){case 0:Aa({...t,selfGrammar:t.baseGrammar},a);break;case 1:Aa(t,a);break;case 2:zo(n.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=n.scopeName===t.selfGrammar.scopeName?t.selfGrammar:n.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};n.kind===4?zo(n.ruleName,l,a):Aa(l,a)}else n.kind===4?a.add(new Pd(n.scopeName,n.ruleName)):a.add(new zt(n.scopeName));break}}}var Md=class{kind=0},Fd=class{kind=1},Bd=class{constructor(e){this.ruleName=e}kind=2},Dd=class{constructor(e){this.scopeName=e}kind=3},Ed=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Sn(e){if(e==="$base")return new Md;if(e==="$self")return new Fd;let t=e.indexOf("#");if(t===-1)return new Dd(e);if(t===0)return new Bd(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new Ed(a,o)}}var _d=/\\(\d+)/,nn=/\\(\d+)/g;var Nd=-1,yn=-2;var $t=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=Ta.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=Ta.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${mn(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:Ta.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Ta.replaceCaptures(this._contentName,e,t)}},Od=class extends $t{retokenizeCapturedWithRuleId;constructor(e,t,a,o,r){super(e,t,a,o),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,o){throw new Error("Not supported!")}},Hd=class extends $t{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new Vt(o,this.id),this.captures=r,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,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new jt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},ln=class extends $t{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,o),this.patterns=r.patterns,this.hasMissingPatterns=r.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,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new jt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Vo=class extends $t{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r,s,n,i,l,u){super(e,t,a,o),this._begin=new Vt(r,this.id),this.beginCaptures=s,this._end=new Vt(n||"\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,o){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,o)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new jt;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}},Ma=class extends $t{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,o,r,s,n,i,l){super(e,t,a,o),this._begin=new Vt(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new Vt(n,yn),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,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new jt;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,o){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,o)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new jt,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},bn=class Se{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new Od(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new Hd(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=pn({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new ln(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(s,a,o))}return t.while?new Ma(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,Se._compileCaptures(t.whileCaptures||t.captures,a,o),Se._compilePatterns(t.patterns,a,o)):new Vo(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,Se._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,Se._compilePatterns(t.patterns,a,o))}),t.id}static _compileCaptures(t,a,o){let r=[];if(t){let s=0;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10);i>s&&(s=i)}for(let n=0;n<=s;n++)r[n]=null;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10),l=0;t[n].patterns&&(l=Se.getCompiledRuleId(t[n],a,o)),r[i]=Se.createCaptureRule(a,t[n].$vscodeTextmateLocation,t[n].name,t[n].contentName,l)}}return r}static _compilePatterns(t,a,o){let r=[];if(t)for(let s=0,n=t.length;s<n;s++){let i=t[s],l=-1;if(i.include){let u=Sn(i.include);switch(u.kind){case 0:case 1:l=Se.getCompiledRuleId(o[i.include],a,o);break;case 2:let f=o[u.ruleName];f&&(l=Se.getCompiledRuleId(f,a,o));break;case 3:case 4:let d=u.scopeName,c=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(d,o);if(p)if(c){let m=p.repository[c];m&&(l=Se.getCompiledRuleId(m,a,p.repository))}else l=Se.getCompiledRuleId(p.repository.$self,a,p.repository);break}}else l=Se.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),f=!1;if((u instanceof ln||u instanceof Vo||u instanceof Ma)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},Vt=class kn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,s=[],n=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(s.push(t.substring(r,i)),s.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(n=!0),i++}this.hasAnchor=n,r===0?this.source=t:(s.push(t.substring(r,o)),this.source=s.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=_d.test(this.source):this.hasBackReferences=!1}clone(){return new kn(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 o=a.map(r=>t.substring(r.start,r.end));return nn.lastIndex=0,this.source.replace(nn,(r,s)=>wn(o[parseInt(s,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=[],o=[],r=[],s,n,i,l;for(s=0,n=this.source.length;s<n;s++)i=this.source.charAt(s),t[s]=i,a[s]=i,o[s]=i,r[s]=i,i==="\\"&&s+1<n&&(l=this.source.charAt(s+1),l==="A"?(t[s+1]="\uFFFF",a[s+1]="\uFFFF",o[s+1]="A",r[s+1]="A"):l==="G"?(t[s+1]="\uFFFF",a[s+1]="G",o[s+1]="\uFFFF",r[s+1]="G"):(t[s+1]=l,a[s+1]=l,o[s+1]=l,r[s+1]=l),s++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:o.join(""),A1_G1:r.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}},jt=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 un(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 o=this._items.map(r=>r.resolveAnchors(t,a));return new un(e,o,this._items.map(r=>r.ruleId))}},un=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 o=this.scanner.findNextMatchSync(e,t,a);return o?{ruleId:this.rules[o.index],captureIndices:o.captureIndices}:null}},qo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Ud=class jo{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new qo(t,8),this._embeddedLanguagesMatcher=new qd(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?jo._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new qo(0,0);_getBasicScopeAttributes=new xn(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new qo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(jo.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/},qd=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,o])=>wn(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])}},Rx={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},Tn=!1,dn=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function Pn(e,t,a,o,r,s,n,i){let l=t.content.length,u=!1,f=-1;if(n){let p=Gd(e,t,a,o,r,s);r=p.stack,o=p.linePos,a=p.isFirstLine,f=p.anchorPosition}let d=Date.now();for(;!u;){if(i!==0&&Date.now()-d>i)return new dn(r,!0);c()}return new dn(r,!1);function c(){let p=Wd(e,t,a,o,r,f);if(!p){s.produce(r,l),u=!0;return}let m=p.captureIndices,C=p.matchedRuleId,x=m&&m.length>0?m[0].end>o:!1;if(C===Nd){let L=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),qt(e,t,a,r,s,L.endCaptures,m),s.produce(r,m[0].end);let g=r;if(r=r.parent,f=g.getAnchorPos(),!x&&g.getEnterPos()===o){r=g,s.produce(r,l),u=!0;return}}else{let L=e.getRule(C);s.produce(r,m[0].start);let g=r,h=L.getName(t.content,m),w=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(C,o,f,m[0].end===l,null,w,w),L instanceof Vo){let b=L;qt(e,t,a,r,s,b.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=b.getContentName(t.content,m),P=w.pushAttributed(k,e);if(r=r.withContentNameScopesList(P),b.endHasBackReferences&&(r=r.withEndRule(b.getEndWithResolvedBackReferences(t.content,m))),!x&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(L instanceof Ma){let b=L;qt(e,t,a,r,s,b.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=b.getContentName(t.content,m),P=w.pushAttributed(k,e);if(r=r.withContentNameScopesList(P),b.whileHasBackReferences&&(r=r.withEndRule(b.getWhileWithResolvedBackReferences(t.content,m))),!x&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(qt(e,t,a,r,s,L.captures,m),s.produce(r,m[0].end),r=r.pop(),!x){r=r.safePop(),s.produce(r,l),u=!0;return}}m[0].end>o&&(o=m[0].end,a=!1)}}function Gd(e,t,a,o,r,s){let n=r.beginRuleCapturedEOL?0:-1,i=[];for(let l=r;l;l=l.pop()){let u=l.getRule(e);u instanceof Ma&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:f}=jd(l.rule,e,l.stack.endRule,a,o===n),d=u.findNextMatchSync(t,o,f);if(d){if(d.ruleId!==yn){r=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(s.produce(l.stack,d.captureIndices[0].start),qt(e,t,a,l.stack,s,l.rule.whileCaptures,d.captureIndices),s.produce(l.stack,d.captureIndices[0].end),n=d.captureIndices[0].end,d.captureIndices[0].end>o&&(o=d.captureIndices[0].end,a=!1))}else{r=l.stack.pop();break}}return{stack:r,linePos:o,anchorPosition:n,isFirstLine:a}}function Wd(e,t,a,o,r,s){let n=zd(e,t,a,o,r,s),i=e.getInjections();if(i.length===0)return n;let l=Vd(i,e,t,a,o,r,s);if(!l)return n;if(!n)return l;let u=n.captureIndices[0].start,f=l.captureIndices[0].start;return f<u||l.priorityMatch&&f===u?l:n}function zd(e,t,a,o,r,s){let n=r.getRule(e),{ruleScanner:i,findOptions:l}=An(n,e,r.endRule,a,o===s),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Vd(e,t,a,o,r,s,n){let i=Number.MAX_VALUE,l=null,u,f=0,d=s.contentNameScopesList.getScopeNames();for(let c=0,p=e.length;c<p;c++){let m=e[c];if(!m.matcher(d))continue;let C=t.getRule(m.ruleId),{ruleScanner:x,findOptions:L}=An(C,t,null,o,r===n),g=x.findNextMatchSync(a,r,L);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,f=m.priority,i===r))break}return l?{priorityMatch:f===-1,captureIndices:l,matchedRuleId:u}:null}function An(e,t,a,o,r){if(Tn){let n=e.compile(t,a),i=vn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function jd(e,t,a,o,r){if(Tn){let n=e.compileWhile(t,a),i=vn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function vn(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function qt(e,t,a,o,r,s,n){if(s.length===0)return;let i=t.content,l=Math.min(s.length,n.length),u=[],f=n[0].end;for(let d=0;d<l;d++){let c=s[d];if(c===null)continue;let p=n[d];if(p.length===0)continue;if(p.start>f)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?r.produceFromScopes(u[u.length-1].scopes,p.start):r.produce(o,p.start),c.retokenizeCapturedWithRuleId){let C=c.getName(i,n),x=o.contentNameScopesList.pushAttributed(C,e),L=c.getContentName(i,n),g=x.pushAttributed(L,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,x,g),w=e.createOnigString(i.substring(0,p.end));Pn(e,w,a&&p.start===0,p.start,h,r,!1,0),In(w);continue}let m=c.getName(i,n);if(m!==null){let x=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(m,e);u.push(new $d(x,p.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var $d=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function Xd(e,t,a,o,r,s,n,i){return new Kd(e,t,a,o,r,s,n,i)}function fn(e,t,a,o,r){let s=va(t,Fa),n=bn.getCompiledRuleId(a,o,r.repository);for(let i of s)e.push({debugSelector:t,matcher:i.matcher,ruleId:n,grammar:r,priority:i.priority})}function Fa(e,t){if(t.length<e.length)return!1;let a=0;return e.every(o=>{for(let r=a;r<t.length;r++)if(Qd(t[r],o))return a=r+1,!0;return!1})}function Qd(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 Kd=class{constructor(e,t,a,o,r,s,n,i){if(this._rootScopeName=e,this.balancedBracketSelectors=s,this._onigLib=i,this._basicScopeAttributesProvider=new Ud(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=n,this._grammar=cn(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=va(l,Fa);for(let f of u)this._tokenTypeMatchers.push({matcher:f.matcher,type:r[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:r=>r===this._rootScopeName?this._grammar:this.getExternalGrammar(r),injections:r=>this._grammarRepository.injections(r)},t=[],a=this._rootScopeName,o=e.lookup(a);if(o){let r=o.injections;if(r)for(let n in r)fn(t,n,r[n],this,o);let s=this._grammarRepository.injections(a);s&&s.forEach(n=>{let i=this.getExternalGrammar(n);if(i){let l=i.injectionSelector;l&&fn(t,l,i,this,i)}})}return t.sort((r,s)=>r.priority-s.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]=cn(a,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,a=0){let o=this._tokenize(e,t,!1,a);return{tokens:o.lineTokens.getResult(o.ruleStack,o.lineLength),ruleStack:o.ruleStack,stoppedEarly:o.stoppedEarly}}tokenizeLine2(e,t,a=0){let o=this._tokenize(e,t,!0,a);return{tokens:o.lineTokens.getBinaryResult(o.ruleStack,o.lineLength),ruleStack:o.ruleStack,stoppedEarly:o.stoppedEarly}}_tokenize(e,t,a,o){this._rootId===-1&&(this._rootId=bn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===$o.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),f=this.themeProvider.getDefaults(),d=nt.set(0,u.languageId,u.tokenType,null,f.fontStyle,f.foregroundId,f.backgroundId),c=this.getRule(this._rootId).getName(null,null),p;c?p=Gt.createRootAndLookUpScopeName(c,d,this):p=Gt.createRoot("unknown",d),t=new $o(null,this._rootId,-1,-1,!1,null,p,p)}else r=!1,t.reset();e=e+`
4
- `;let s=this.createOnigString(e),n=s.content.length,i=new Zd(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=Pn(this,s,r,0,t,i,!0,o);return In(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function cn(e,t){return e=hd(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 Gt=class Ne{constructor(t,a,o){this.parent=t,this.scopePath=a,this.tokenAttributes=o}static fromExtension(t,a){let o=t,r=t?.scopePath??null;for(let s of a)r=Uo.push(r,s.scopeNames),o=new Ne(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Ne(null,new Uo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Uo(null,t),n=o.themeProvider.themeMatch(s),i=Ne.mergeAttributes(a,r,n);return new Ne(null,s,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Ne.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,o){let r=-1,s=0,n=0;return o!==null&&(r=o.fontStyle,s=o.foregroundId,n=o.backgroundId),nt.set(t,a.languageId,a.tokenType,null,r,s,n)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Ne._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let s of o)r=Ne._pushAttributed(r,s,a);return r}static _pushAttributed(t,a,o){let r=o.getMetadataForScope(a),s=t.scopePath.push(a),n=o.themeProvider.themeMatch(s),i=Ne.mergeAttributes(t.tokenAttributes,r,n);return new Ne(t,s,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push({encodedTokenAttributes:o.tokenAttributes,scopeNames:o.scopePath.getExtensionIfDefined(o.parent?.scopePath??null)}),o=o.parent;return o===t?a.reverse():void 0}},$o=class st{constructor(t,a,o,r,s,n,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=s,this.endRule=n,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=o,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new st(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:st._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Gt.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(){st._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new st(this,t,a,o,r,s,n,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 st(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 o=Gt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new st(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,Gt.fromExtension(o,a.contentNameScopesList))}},Jd=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):va(a,Fa).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>va(a,Fa).map(o=>o.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}},Zd=class{constructor(e,t,a,o){this.balancedBracketSelectors=o,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 o=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let s=e?.getScopeNames()??[];for(let n of this._tokenTypeOverrides)n.matcher(s)&&(o=nt.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=nt.set(o,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===o){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(o),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 o=0,r=this._binaryTokens.length;o<r;o++)a[o]=this._binaryTokens[o];return a}},Yd=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,o,r){if(!this._grammars.has(e)){let s=this._rawGrammars.get(e);if(!s)return null;this._grammars.set(e,Xd(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},Rn=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Yd(Wt.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(Wt.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 Jd(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new vd(this._syncRegistry,e);for(;s.Q.length>0;)s.Q.map(n=>this._loadSingleGrammar(n.scopeName)),s.processQueue();return this._grammarForScopeName(e,t,a,o,r)}_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,o=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,o)}_grammarForScopeName(e,t=0,a=null,o=null,r=null){return this._syncRegistry.grammarForScopeName(e,t,a,o,r)}},Ba=$o.NULL;var ef=/["&'<>`]/g,tf=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,af=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,of=/[|\\{}()[\]^$+*?.]/g,Mn=new WeakMap;function Fn(e,t){if(e=e.replace(t.subset?rf(t.subset):ef,o),t.subset||t.escapeOnly)return e;return e.replace(tf,a).replace(af,o);function a(r,s,n){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,n.charCodeAt(s+2),t)}function o(r,s,n){return t.format(r.charCodeAt(0),n.charCodeAt(s+1),t)}}function rf(e){let t=Mn.get(e);return t||(t=sf(e),Mn.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 nf=/[\dA-Fa-f]/;function Bn(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!nf.test(String.fromCharCode(t))?o:o+";"}var lf=/\d/;function Dn(e,t,a){let o="&#"+String(e);return a&&t&&!lf.test(String.fromCharCode(t))?o:o+";"}var En=["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 Da={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 _n=["cent","copy","divide","gt","lt","not","para","times"];var Nn={}.hasOwnProperty,Qo={},Ea;for(Ea in Da)Nn.call(Da,Ea)&&(Qo[Da[Ea]]=Ea);var uf=/[^\dA-Za-z]/;function On(e,t,a,o){let r=String.fromCharCode(e);if(Nn.call(Qo,r)){let s=Qo[r],n="&"+s;return a&&En.includes(s)&&!_n.includes(s)&&(!o||t&&t!==61&&uf.test(String.fromCharCode(t)))?n:n+";"}return""}function Hn(e,t,a){let o=Bn(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=On(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Dn(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function qe(e,t){return Fn(e,Object.assign({format:Hn},t))}var df=/^>|^->|<!--|-->|--!>|<!-$/g,ff=[">"],cf=["<",">"];function Un(e,t,a,o){return o.settings.bogusComments?"<?"+qe(e.value,Object.assign({},o.settings.characterReferences,{subset:ff}))+">":"<!--"+e.value.replace(df,r)+"-->";function r(s){return qe(s,Object.assign({},o.settings.characterReferences,{subset:cf}))}}function qn(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ne=Gn(1),Ko=Gn(-1),pf=[];function Gn(e){return t;function t(a,o,r){let s=a?a.children:pf,n=(o||0)+e,i=s[n];if(!r)for(;i&&pt(i);)n+=e,i=s[n];return i}}var mf={}.hasOwnProperty;function _a(e){return t;function t(a,o,r){return mf.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Xt=_a({body:gf,caption:Jo,colgroup:Jo,dd:Cf,dt:Lf,head:Jo,html:hf,li:xf,optgroup:If,option:Sf,p:wf,rp:Wn,rt:Wn,tbody:bf,td:zn,tfoot:kf,th:zn,thead:yf,tr:Tf});function Jo(e,t,a){let o=ne(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&pt(o.value.charAt(0)))}function hf(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function gf(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function wf(e,t,a){let o=ne(a,t);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.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 xf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="li"}function Lf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function Cf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function Wn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function If(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function Sf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function yf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function bf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function kf(e,t,a){return!ne(a,t)}function Tf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function zn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var Vn=_a({body:vf,colgroup:Rf,head:Af,html:Pf,tbody:Mf});function Pf(e){let t=ne(e,-1);return!t||t.type!=="comment"}function Af(e){let t=new Set;for(let o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(t.has(o.tagName))return!1;t.add(o.tagName)}let a=e.children[0];return!a||a.type==="element"}function vf(e){let t=ne(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&pt(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function Rf(e,t,a){let o=Ko(a,t),r=ne(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&Xt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Mf(e,t,a){let o=Ko(a,t),r=ne(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&Xt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Na={name:[[`
2
+ import{a as jr,b as $r,c as Xr,d as Qr,e as Kr,f as la,g as Jr,h as Zr,i as Yr,j as es,k as Lo,l as ts,m as ft,n as ct,o as ua,p as pt,u as yt}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Fm,useCallback as Dr,useEffect as Bm,useImperativeHandle as Dm,useRef as cl,useState as pl}from"react";import{forwardRef as Nl,createElement as Ol}from"react";var da=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var as=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var os=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Co=e=>{let t=os(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as _l,createElement as ns}from"react";var rs={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 ss=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var is=_l(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>ns("svg",{ref:l,...rs,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:da("lucide",r),...!s&&!ss(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>ns(u,f)),...Array.isArray(s)?s:[s]]));var W=(e,t)=>{let a=Nl(({className:o,...r},s)=>Ol(is,{ref:s,iconNode:t,className:da(`lucide-${as(Co(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Co(e),a};var Hl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Je=W("arrow-down",Hl);var Ul=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],bt=W("arrow-up",Ul);var ql=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],kt=W("check",ql);var Gl=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],We=W("chevron-down",Gl);var Wl=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Tt=W("chevron-right",Wl);var Vl=[["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"}]],Pt=W("clipboard-copy",Vl);var zl=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ze=W("clock",zl);var jl=[["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"}]],At=W("file",jl);var $l=[["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"}]],vt=W("globe",$l);var Xl=[["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"}]],Rt=W("loader",Xl);var Ql=[["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"}]],Mt=W("paperclip",Ql);var Kl=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Ft=W("square",Kl);var Jl=[["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"}]],Ye=W("wrench",Jl);var Zl=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],et=W("x",Zl);var Yl=[["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"}]],Bt=W("zap",Yl);import{useCallback as gu}from"react";import{useCallback as Ve,useMemo as eu,useRef as tu,useState as Io}from"react";var au={damping:.7,stiffness:.05,mass:1.25},ou=70,ru=1e3/60,su=350,fa=!1;globalThis.document?.addEventListener("mousedown",()=>{fa=!0});globalThis.document?.addEventListener("mouseup",()=>{fa=!1});globalThis.document?.addEventListener("click",()=>{fa=!1});var us=(e={})=>{let[t,a]=Io(!1),[o,r]=Io(e.initial!==!1),[s,n]=Io(!1),i=tu(null);i.current=e;let l=Ve(()=>{if(!fa)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(w.current)||w.current?.contains(h.commonAncestorContainer)},[]),u=Ve(g=>{d.isAtBottom=g,r(g)},[]),f=Ve(g=>{d.escapedFromLock=g,a(g)},[]),d=eu(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return w.current?.scrollTop??0},set scrollTop(h){w.current&&(w.current.scrollTop=h,d.ignoreScrollToTop=w.current.scrollTop)},get targetScrollTop(){return!w.current||!x.current?0:w.current.scrollHeight-1-w.current.clientHeight},get calculatedTargetScrollTop(){if(!w.current||!x.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let L=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:w.current,contentElement:x.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:L},requestAnimationFrame(()=>{g=void 0}),L},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=ou}}},[]),c=Ve((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),L=yo(i.current,g.animation),{ignoreEscapes:S=!1}=g,k,A=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{k=Date.now()}):k=h+(g.duration??0);let P=async()=>{let E=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:B}=d,O=performance.now(),b=(O-(d.lastTick??O))/ru;if(d.animation||(d.animation={behavior:L,promise:E,ignoreEscapes:S}),d.animation.behavior===L&&(d.lastTick=O),l()||h>Date.now())return P();if(B<Math.min(A,d.calculatedTargetScrollTop)){if(d.animation?.behavior===L){if(L==="instant")return d.scrollTop=d.calculatedTargetScrollTop,P();d.velocity=(L.damping*d.velocity+L.stiffness*d.scrollDifference)/L.mass,d.accumulated+=d.velocity*b,d.scrollTop+=d.accumulated,d.scrollTop!==B&&(d.accumulated=0)}return P()}return k>Date.now()?(A=d.calculatedTargetScrollTop,P()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:yo(i.current,i.current.resize),ignoreEscapes:S,duration:Math.max(0,k-Date.now())||void 0}):d.isAtBottom)});return E.then(B=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),B))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===L?d.animation.promise:P()},[u,l,d]),p=Ve(()=>{f(!0),u(!1)},[f,u]),m=Ve(({target:g})=>{if(g!==w.current)return;let{scrollTop:h,ignoreScrollToTop:L}=d,{lastScrollTop:S=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,L&&L>h&&(S=L),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===L)return;if(l()){f(!0),u(!1);return}let k=h>S,A=h<S;if(d.animation?.ignoreEscapes){d.scrollTop=S;return}A&&(f(!0),u(!1)),k&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),C=Ve(({target:g,deltaY:h})=>{let L=g;for(;!["scroll","auto"].includes(getComputedStyle(L).overflow);){if(!L.parentElement)return;L=L.parentElement}L===w.current&&h<0&&w.current.scrollHeight>w.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),w=ls(g=>{w.current?.removeEventListener("scroll",m),w.current?.removeEventListener("wheel",C),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",C,{passive:!0})},[]),x=ls(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([L])=>{let{height:S}=L.contentRect,k=S-(h??S);if(d.resizeDifference=k,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),k>=0){let A=yo(i.current,h?i.current.resize:i.current.initial);c({animation:A,wait:!0,preserveScrollPosition:!0,duration:A==="instant"?void 0:su})}else d.isNearBottom&&(f(!1),u(!0));h=S,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===k&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:x,scrollRef:w,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function ls(e,t){let a=Ve(o=>(a.current=o,e(o)),t);return a}var So=new Map;function yo(...e){let t={...au},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return So.has(o)||So.set(o,Object.freeze(t)),a?"instant":So.get(o)}import*as tt from"react";import{createContext as nu,useContext as iu,useEffect as lu,useImperativeHandle as uu,useLayoutEffect as du,useMemo as fu,useRef as cu}from"react";var ds=nu(null),pu=typeof window<"u"?du:lu;function Dt({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=cu(null),d=tt.useCallback((S,k)=>(L?.targetScrollTop??i)?.(S,k)??S,[i]),c=us({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:C,stopScroll:w,isAtBottom:x,escapedFromLock:g,state:h}=e??c,L=fu(()=>({scrollToBottom:C,stopScroll:w,scrollRef:p,isAtBottom:x,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(S){f.current=S}}),[C,x,m,p,w,g,h]);return uu(l,()=>L,[L]),pu(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),tt.createElement(ds.Provider,{value:L},tt.createElement("div",{...u},typeof t=="function"?t(L):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=bo();return tt.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},tt.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(Dt||(Dt={}));function bo(){let e=iu(ds);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var mu=$r({prefix:"ww"});function T(...e){return mu(jr(e))}import{jsx as hu}from"react/jsx-runtime";var Ae=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>hu("button",{type:o,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),...r});import{jsx as ca}from"react/jsx-runtime";var fs=({className:e,...t})=>ca(Dt,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),cs=({className:e,...t})=>ca(Dt.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}),ps=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=bo(),r=gu(()=>{o()},[o]);return!a&&ca(Ae,{className:T("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:ca(Je,{className:"ww:size-4"})})};import hs from"crypto";var ms="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var wu=128,at,mt,xu=e=>{!at||at.length<e?(at=Buffer.allocUnsafe(e*wu),hs.randomFillSync(at),mt=0):mt+e>at.length&&(hs.randomFillSync(at),mt=0),mt+=e};var Et=(e=21)=>{xu(e|=0);let t="";for(let a=mt-e;a<mt;a++)t+=ms[at[a]&63];return t};import{createContext as Tu,useCallback as Ue,useContext as Pu,useEffect as vo,useMemo as Au,useRef as Ro,useState as Is}from"react";import{createContext as Lu,useContext as Cu,useEffect as Iu,useMemo as Su,useState as Ls}from"react";var gs=["en","fr","es"];function ht(e){return gs.includes(e)}function ko(e){if(e&&ht(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&ht(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 o=a.toLowerCase();if(ht(o))return o;let r=o.split("-")[0];if(r&&ht(r))return r}return"en"}var pa={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 ws={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 xs={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 To={en:pa,fr:xs,es:ws};import{jsx as ku}from"react/jsx-runtime";var Cs=Lu(null);function yu(e,t){if(!t)return e;let a={...e};for(let o of Object.keys(e)){let r=e[o],s=t[o];s&&typeof r=="object"&&(a[o]={...r,...s})}return a}function Po({children:e,locale:t,messages:a}){let o=!!(t&&bu(t)),r=o?t:"en",[s,n]=Ls(r),[i,l]=Ls(o);Iu(()=>{n(ko(t)),l(!0)},[t]);let u=Su(()=>{let f=To[s]??To["en"];return{locale:s,t:yu(f,a),ready:i}},[s,a,i]);return ku(Cs.Provider,{value:u,children:e})}function bu(e){return e==="en"||e==="fr"||e==="es"}function H(){let e=Cu(Cs);return e||{locale:"en",t:pa,ready:!0}}function Ao(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 o,r;a<60*6e4?(o=-Math.floor(a/6e4),r="minute"):a<1440*6e4?(o=-Math.floor(a/(60*6e4)),r="hour"):(o=-Math.floor(a/(1440*6e4)),r="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(o,r)}catch{return`${Math.abs(o)}${r==="minute"?"m":r==="hour"?"h":"d"} ago`}}import{jsx as Fe,jsxs as bs}from"react/jsx-runtime";var vu=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(o=>{let r=new FileReader;r.onloadend=()=>o(r.result),r.onerror=()=>o(null),r.readAsDataURL(a)})}catch{return null}},Ss=Tu(null),ys=()=>{let e=Pu(Ss);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ma=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let{t:u}=H(),f=Ro(null),d=Ro(null),[c,p]=Is([]),m=Ro(c);vo(()=>{m.current=c},[c]);let C=Ue(()=>{f.current?.click()},[]),w=Ue(k=>{let A=[...k];if(A.length===0)return;let P=B=>s?B.size<=s:!0,E=A.filter(P);p(B=>{let O=typeof r=="number"?Math.max(0,r-B.length):void 0,b=typeof O=="number"?E.slice(0,O):E;return[...B,...b.map(v=>({filename:v.name,id:Et(),mediaType:v.type,type:"file",url:URL.createObjectURL(v)}))]})},[r,s]),x=Ue(k=>{p(A=>{let P=A.find(E=>E.id===k);return P?.url&&URL.revokeObjectURL(P.url),A.filter(E=>E.id!==k)})},[]),g=Ue(()=>{p(k=>{for(let A of k)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);vo(()=>()=>{for(let k of m.current)k.url&&URL.revokeObjectURL(k.url)},[]);let h=Ue(k=>{k.currentTarget.files&&w(k.currentTarget.files),k.currentTarget.value=""},[w]);vo(()=>{if(!o)return;let k=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&&w(P.dataTransfer.files)};return document.addEventListener("dragover",k),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",k),document.removeEventListener("drop",A)}},[w,o]);let L=Ue(async k=>{k.preventDefault();let A=k.currentTarget,E=new FormData(A).get("message")||"";A.reset();let B=await Promise.all(c.map(async({id:O,...b})=>{if(b.url?.startsWith("blob:")){let v=await vu(b.url);return{...b,url:v??b.url}}return b}));try{let O=n({files:B,text:E},k);O instanceof Promise&&await O,g()}catch{}},[c,n,g]),S=Au(()=>({add:w,clear:g,files:c,openFileDialog:C,remove:x}),[c,w,x,g,C]);return bs(Ss.Provider,{value:S,children:[Fe("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:f,title:u.promptInput.uploadFiles,type:"file"}),Fe("form",{className:T("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:L,ref:d,...l,children:i})]})};var ha=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=H(),n=ys(),[i,l]=Is(!1),u=o??s.promptInput.placeholder,f=Ue(c=>{if(t?.(c),!c.defaultPrevented){if(c.key==="Enter"){if(i||c.nativeEvent.isComposing||c.shiftKey)return;c.preventDefault();let{form:p}=c.currentTarget;if(p?.querySelector('button[type="submit"]')?.disabled)return;p?.requestSubmit()}if(c.key==="Backspace"&&c.currentTarget.value===""&&n.files.length>0){c.preventDefault();let p=n.files.at(-1);p&&n.remove(p.id)}}},[t,i,n]),d=Ue(c=>{let p=c.clipboardData?.items;if(!p)return;let m=[];for(let C of p)if(C.kind==="file"){let w=C.getAsFile();w&&m.push(w)}m.length>0&&(c.preventDefault(),n.add(m))},[n]);return Fe("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:f,onPaste:d,placeholder:u,onChange:e,...r})},ga=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let{t:n}=H(),i=t==="submitted"||t==="streaming",l=Fe(bt,{className:"ww:size-4"});t==="submitted"?l=Fe(Rt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Fe(Ft,{className:"ww:size-4"}));let u=Ue(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return Fe(Ae,{"aria-label":i?n.promptInput.stop:n.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",...s,children:r??l})},wa=({className:e,children:t,...a})=>{let{t:o}=H(),r=ys();return r.files.length>0?bs(Ae,{className:T("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[Fe("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:r.files.length}),Fe(et,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Fe(Ae,{className:T(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Fe(Mt,{className:"ww:size-4"})})};import{memo as Ru,useCallback as Mu}from"react";import{jsx as wt}from"react/jsx-runtime";var ks=({className:e,...t})=>wt("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Ts=({className:e,...t})=>wt("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}),Ps=({className:e,...t})=>wt("span",{className:T("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),As=({className:e,...t})=>wt("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),vs=({className:e,...t})=>wt("div",{className:T("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})=>wt(Ae,{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 ze,jsxs as Fs}from"react/jsx-runtime";var Ms=Ru(({message:e,onRemove:t})=>{let{t:a}=H(),o=Mu(()=>t(e.id),[t,e.id]);return Fs(Ts,{children:[ze(Ps,{}),ze(As,{children:e.text||a.chatQueue.attachmentFallback}),ze(vs,{children:ze(Rs,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:ze(et,{className:"ww:size-3"})})})]})});Ms.displayName="ChatQueueItem";function xa({queuedMessages:e,onRemove:t,className:a}){let{t:o}=H();return e.length===0?null:Fs(ks,{className:T("ww:border-t ww:border-border",a),children:[ze("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),ze("ul",{children:e.map(r=>ze(Ms,{message:r,onRemove:t},r.id))})]})}import{useState as Bs}from"react";import{jsx as Fu}from"react/jsx-runtime";function Ds({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=H(),[r,s]=Bs(!1),[n,i]=Bs(null),l=async()=>{let f={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};s(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{s(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:n==="saved"?o.exportSession.saved:n==="error"?o.exportSession.error:o.exportSession.export;return Fu("button",{type:"button",onClick:l,disabled:r,title:o.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 Du}from"react/jsx-runtime";var Es=({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((o,r)=>_t(Bu,{file:o},r))});function Bu({file:e}){let{t}=H();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"}):Du("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(At,{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 ju,useCallback as $u,useContext as Xu,useEffect as Do,useMemo as Qu,useRef as Ku,useState as La}from"react";import{createContext as Ou,memo as Bo,useCallback as Hu,useContext as Uu,useEffect as Mo,useMemo as qu,useRef as _s,useState as Fo}from"react";import{memo as Eu}from"react";import{jsx as Nu}from"react/jsx-runtime";var _u=({as:e="span",className:t,duration:a=2,style:o,children:r,...s})=>{let n={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`,...o};return Nu(e,{"data-waniwani-shimmer":"",className:T("ww:inline-block",t),style:n,...s,children:r})},Be=Eu(_u);Be.displayName="Shimmer";import{Fragment as Vu,jsx as De,jsxs as zu}from"react/jsx-runtime";var Ns=Ou(null);function Os(){let e=Uu(Ns);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Gu=1e3,Wu=1e3,Nt=Bo(({className:e,isStreaming:t=!1,open:a,defaultOpen:o,onOpenChange:r,duration:s,children:n,...i})=>{let l=o??t,u=o===!1,f=a!==void 0,[d,c]=Fo(l),p=f?a:d,m=Hu(A=>{f||c(A),r?.(A)},[f,r]),[C,w]=Fo(void 0),x=s??C,g=_s(t),[h,L]=Fo(!1),S=_s(null);Mo(()=>{t?(g.current=!0,S.current===null&&(S.current=Date.now())):S.current!==null&&(w(Math.ceil((Date.now()-S.current)/Wu)),S.current=null)},[t]),Mo(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Mo(()=>{if(g.current&&!t&&p&&!h){let A=setTimeout(()=>{m(!1),L(!0)},Gu);return()=>clearTimeout(A)}},[t,p,h,m]);let k=qu(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:x}),[t,p,m,x]);return De(Ns.Provider,{value:k,children:De("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:n})})});Nt.displayName="Reasoning";var Ot=Bo(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...s})=>{let{t:n}=H(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:f}=Os(),c=a??((p,m)=>p||m===0?De(Be,{duration:1.6,children:n.reasoning.thinking}):m===void 0?De("span",{children:n.reasoning.thoughtBrief}):De("span",{children:n.reasoning.thoughtForSeconds(m)}));return De("button",{type:"button","aria-expanded":l,onClick:p=>{f(!l),r?.(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),...s,children:t??zu(Vu,{children:[!o&&De(Ze,{className:"ww:size-4 ww:shrink-0"}),c(i,u)]})})});Ot.displayName="ReasoningTrigger";var Ht=Bo(({className:e,children:t,...a})=>{let{isOpen:o}=Os();return De("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:De("div",{className:"ww:min-h-0 ww:overflow-hidden",children:De("div",{className:T("ww:text-sm ww:text-muted-foreground",e),...a,children:De(yt,{children:t})})})})});Ht.displayName="ReasoningContent";import{jsx as Y,jsxs as ot}from"react/jsx-runtime";var Hs=1e3,Ju=240,Us=ju(null);function qs(){let e=Xu(Us);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Gs({className:e,isWorking:t=!1,open:a,defaultOpen:o,onOpenChange:r,children:s,...n}){let i=o??t,l=a!==void 0,[u,f]=La(i),d=l?a:u,c=$u(h=>{l||f(h),r?.(h)},[l,r]),p=Ku(t),[m,C]=La(!1),[w,x]=La(!t);Do(()=>{t&&(p.current=!0,C(!1),x(!1),l||f(!0))},[t,l]),Do(()=>{if(p.current&&!t&&d&&!m){let h=setTimeout(()=>{c(!1),C(!0)},Hs);return()=>clearTimeout(h)}},[t,d,m,c]),Do(()=>{if(p.current&&!t&&!w){let h=setTimeout(()=>x(!0),Hs+Ju);return()=>clearTimeout(h)}},[t,w]);let g=Qu(()=>({open:d,setOpen:c,isWorking:t,settled:w}),[d,c,t,w]);return Y(Us.Provider,{value:g,children:Y("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"},...n,children:s})})}function Ws({className:e,label:t,workingLabel:a,children:o,...r}){let{open:s,setOpen:n,isWorking:i,settled:l}=qs(),u=o??(l?t:i?Y(Be,{duration:1.6,children:a??t??""}):a??t);return ot("button",{type:"button",onClick:()=>n(!s),"aria-expanded":s,className:T("ww:flex 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),...r,children:[Y("span",{className:"ww:truncate",children:u}),Y(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",s&&"ww:rotate-180")})]})}function Vs({className:e,children:t,...a}){let{open:o}=qs();return Y("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:T("ww:flex ww:flex-col",e),...a,children:t})})})}function zs({icon:e,isLast:t,running:a,error:o}){return ot("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Y("span",{className:"ww:flex ww:h-5 ww:items-center",children:Y(e,{className:T("ww:size-4 ww:shrink-0",o?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Y("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Eo({className:e,icon:t,title:a,state:o,isLast:r=!1,children:s,...n}){let i=o==="input-available"||o==="input-streaming",l=o==="output-error",u=s!=null,[f,d]=La(!1),c=a??"",p=i?Y(Be,{duration:1.6,children:c}):Y("span",{className:"ww:truncate",children:c});return ot("div",{className:T("ww:flex ww:gap-2",e),...n,children:[Y(zs,{icon:t,isLast:r,running:i,error:l}),ot("div",{className:T("ww:min-w-0 ww:flex-1",!r&&"ww:pb-3"),children:[u?ot("button",{type:"button",onClick:()=>d(m=>!m),"aria-expanded":f,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,Y(We,{className:T("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",f&&"ww:rotate-180")})]}):Y("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&Y("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",f?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:s})})})]})]})}function js({isStreaming:e=!1,isLast:t=!1,children:a}){return ot("div",{className:"ww:flex ww:gap-2",children:[Y(zs,{icon:Ze,isLast:t,running:e}),Y("div",{className:T("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:ot(Nt,{isStreaming:e,className:"ww:mb-0",children:[Y(Ot,{hideIcon:!0}),Y(Ht,{children:a})]})})]})}var he={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 _e={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 be={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 $s(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 Xs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Qs(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 Ks(e){return $s(e)?"ambiguous":Xs(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":Qs(e)?"wide":"neutral"}function Zu(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Js(e){return Zu(e),Ks(e)}var Yu=Object.defineProperty,ed=(e,t,a)=>t in e?Yu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,td=(e,t,a)=>ed(e,typeof t!="symbol"?t+"":t,a);function ad(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function od(e){if(!e||e<4352)return!1;switch(Js(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!ad(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 rd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function sd(e){return e!==null&&e>=65024&&e<=65038}var nd=Zs(/\p{P}|\p{S}/u),id=Zs(/\s/);function Zs(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var ke;(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})(ke||(ke={}));function je(e){if(e===he.eof||ts(e)||id(e))return _e.characterGroupWhitespace;let t=0;if(e>=4352){if(sd(e))return ke.nonEmojiGeneralUseVS;switch(od(e)){case null:return ke.ivs;case!0:t|=ke.cjk;break}}return nd(e)&&(t|=_e.characterGroupPunctuation),t}function Ca(e,t,a){if(!ud(e))return e;let o=t(),r=je(o);return!o||rt(r)?e:rd(o,a)?ke.cjkPunctuation:ld(r)}function ld(e){return e&~ke.ivs}function rt(e){return!!(e&_e.characterGroupWhitespace)}function xt(e){return(e&ke.cjkPunctuation)===_e.characterGroupPunctuation}function Ut(e){return!!(e&ke.cjk)}function Ys(e){return e===ke.ivs}function en(e){return!!(e&ke.cjkOrIvs)}function ud(e){return e===ke.nonEmojiGeneralUseVS}function _o(e){return!!(e&ke.spaceOrPunctuation)}function Ia(e){return!!(e&&e>=55296&&e<=56319)}function Sa(e){return!!(e&&e>=56320&&e<=57343)}function ya(e,t,a){if(t._bufferIndex<2)return e;let r=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return r&&r>=65536?r:e}function dd(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,s=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),n=s.charCodeAt(s.length-1);if(Number.isNaN(n))return null;if(s.length<2||n<56320||57343<n)return n;let i=s.codePointAt(0);return i&&i>=65536?i:n}var ba=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,td(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=dd(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function ka(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var No={name:"attention",resolveAll:fd,tokenize:cd};function fd(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},c={...e[a][1].start};tn(d,-l),tn(c,l),n={type:l>1?be.strongSequence:be.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?be.strongSequence:be.emphasisSequence,start:{...e[a][1].start},end:c},s={type:l>1?be.strongText:be.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?be.strong:be.emphasis,start:{...n.start},end:{...i.end}},e[o][1].end={...n.start},e[a][1].start={...i.end},u=[],e[o][1].end.offset-e[o][1].start.offset&&(u=ct(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=ct(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=ct(u,ua(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=ct(u,[["exit",s,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[a][1].end.offset-e[a][1].start.offset?(f=2,u=ct(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,ft(e,o-1,a-o+3,u),a=o+u.length-f-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function cd(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=Sa(s)?ya(s,o(),r):s,i=je(n),l=new ba(n,o(),r),u=Ca(i,l.value.bind(l),n),f;return d;function d(p){return p===he.asterisk||he.underscore,f=p,e.enter("attentionSequence"),c(p)}function c(p){if(p===f)return e.consume(p),c;let m=e.exit("attentionSequence"),C=Ia(p)?ka(p,o(),r):p,w=je(C);let x=xt(u),g=x||rt(u),h=xt(w),L=h||rt(w),S=en(u),k=!L||h&&(g||S)||a.includes(p),A=!g||x&&(L||Ut(w))||a.includes(n);return m._open=!!(f===he.asterisk?k:k&&(_o(u)||!A)),m._close=!!(f===he.asterisk?A:A&&(_o(w)||!k)),t(p)}}function tn(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function an(){return{text:{[he.asterisk]:No,[he.underscore]:No},insideSpan:{null:[No]}}}function on(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(an())}function rn(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[he.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[he.tilde]}};function r(n,i){let l=-1;for(;++l<n.length;)if(n[l][0]==="enter"&&n[l][1].type==="strikethroughSequenceTemporary"&&n[l][1]._close){let u=l;for(;u--;)if(n[u][0]==="exit"&&n[u][1].type==="strikethroughSequenceTemporary"&&n[u][1]._open&&n[l][1].end.offset-n[l][1].start.offset===n[u][1].end.offset-n[u][1].start.offset){n[l][1].type="strikethroughSequence",n[u][1].type="strikethroughSequence";let f={type:"strikethrough",start:Object.assign({},n[u][1].start),end:Object.assign({},n[l][1].end)},d={type:"strikethroughText",start:Object.assign({},n[u][1].end),end:Object.assign({},n[l][1].start)},c=[["enter",f,i],["enter",n[u][1],i],["exit",n[u][1],i],["enter",d,i]],p=i.parser.constructs.insideSpan.null;p&&ft(c,c.length,0,ua(p,n.slice(u+1,l),i)),ft(c,c.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),ft(n,u-1,l-u+3,c),l=u+c.length-2;break}}for(l=-1;++l<n.length;)n[l][1].type==="strikethroughSequenceTemporary"&&(n[l][1].type=be.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,c=Sa(d)?ya(d,u(),f):d,p=je(c),m=new ba(c,u(),f),C=Ca(p,m.value.bind(m),c),w=this.events,x=0;return g;function g(L){return he.tilde,c===he.tilde&&w[w.length-1][1].type!==be.characterEscape?l(L):(n.enter("strikethroughSequenceTemporary"),h(L))}function h(L){let S=je(c);if(L===he.tilde)return x>1?l(L):(n.consume(L),x++,h);if(x<2&&!a)return l(L);let k=n.exit("strikethroughSequenceTemporary"),A=Ia(L)?ka(L,u(),f):L,P=je(A),B=xt(C)||rt(C),b=xt(P)||rt(P),v=Ut(C)||Ys(S);return k._open=!b||P===_e.attentionSideAfter&&(B||v),k._close=!B||S===_e.attentionSideAfter&&(b||Ut(P)),i(L)}}}function sn(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(rn(e))}var pd=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),md=/^(https?:\/\/|mailto:|www\.)/i,hd=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},gd=e=>{let t=0;for(let a of e){if(pd.has(a))return t;t+=a.length}return null},wd=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),xd=e=>({type:"text",value:e}),Ld=()=>e=>{Xr(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!hd(t)||!md.test(t.url))return;let r=gd(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=wd(s,t),l=xd(n);return o.children.splice(a,1,i,l),a+1})};function Cd(){let e=[on],t=[Ld,sn],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Oo=Cd();var ee=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Id(e){return Xo(e)}function Xo(e){return Array.isArray(e)?Sd(e):e instanceof RegExp?e:typeof e=="object"?yd(e):e}function Sd(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=Xo(e[a]);return t}function yd(e){let t={};for(let a in e)t[a]=Xo(e[a]);return t}function hn(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function gn(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?gn(e.substring(0,e.length-1)):e.substr(~t+1)}var Ho=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Ta=class{static hasCaptures(e){return e===null?!1:(Ho.lastIndex=0,Ho.test(e))}static replaceCaptures(e,t,a){return e.replace(Ho,(o,r,s,n)=>{let i=a[parseInt(r||s,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(n){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function wn(e,t){return e<t?-1:e>t?1:0}function xn(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,o=t.length;if(a===o){for(let r=0;r<a;r++){let s=wn(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function nn(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 Ln(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Cn=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}},Wt=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Td(e),t)}static createFromParsedTheme(e,t){return Ad(e,t)}_cachedMatchRoot=new Cn(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,o=this._cachedMatchRoot.get(t).find(r=>bd(e.parent,r.parentScopes));return o?new In(o.fontStyle,o.foreground,o.background):null}},Uo=class Pa{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Pa(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Pa(a,t[o]);return a}push(t){return new Pa(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=[],o=this;for(;o&&o!==t;)a.push(o.scopeName),o=o.parent;return o===t?a.reverse():void 0}};function bd(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let o=t[a],r=!1;if(o===">"){if(a===t.length-1)return!1;o=t[++a],r=!0}for(;e&&!kd(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function kd(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var In=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Td(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let c=0,p=d.length;c<p;c++)switch(d[c]){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 n.settings.foreground=="string"&&nn(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&nn(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),C=m[m.length-1],w=null;m.length>1&&(w=m.slice(0,m.length-1),w.reverse()),a[o++]=new Pd(C,w,r,l,u,f)}}return a}var Pd=class{constructor(e,t,a,o,r,s){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=s}},ge=(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))(ge||{});function Ad(e,t){e.sort((l,u)=>{let f=wn(l.scope,u.scope);return f!==0||(f=xn(l.parentScopes,u.parentScopes),f!==0)?f:l.index-u.index});let a=0,o="#000000",r="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(o=l.foreground),l.background!==null&&(r=l.background)}let s=new vd(t),n=new In(a,s.getId(o),s.getId(r)),i=new Md(new Go(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let f=e[l];i.insert(0,f.scope,f.parentScopes,f.fontStyle,s.getId(f.foreground),s.getId(f.background))}return new Wt(s,n,i)}var vd=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)}},Rd=Object.freeze([]),Go=class Sn{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||Rd,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new Sn(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let o=0,r=t.length;o<r;o++)a[o]=t[o].clone();return a}acceptOverwrite(t,a,o,r){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),o!==0&&(this.foreground=o),r!==0&&(this.background=r)}},Md=class Wo{constructor(t,a=[],o={}){this._mainRule=t,this._children=o,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let o=0,r=0;for(;t.parentScopes[o]===">"&&o++,a.parentScopes[r]===">"&&r++,!(o>=t.parentScopes.length||r>=a.parentScopes.length);){let s=a.parentScopes[r].length-t.parentScopes[o].length;if(s!==0)return s;o++,r++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let o=t.indexOf("."),r,s;if(o===-1?(r=t,s=""):(r=t.substring(0,o),s=t.substring(o+1)),this._children.hasOwnProperty(r))return this._children[r].match(s)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Wo._cmpBySpecificity),a}insert(t,a,o,r,s,n){if(a===""){this._doInsertHere(t,o,r,s,n);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let f;this._children.hasOwnProperty(l)?f=this._children[l]:(f=new Wo(this._mainRule.clone(),Go.cloneArr(this._rulesWithParentScopes)),this._children[l]=f),f.insert(t+1,u,o,r,s,n)}_doInsertHere(t,a,o,r,s){if(a===null){this._mainRule.acceptOverwrite(t,o,r,s);return}for(let n=0,i=this._rulesWithParentScopes.length;n<i;n++){let l=this._rulesWithParentScopes[n];if(xn(l.parentScopes,a)===0){l.acceptOverwrite(t,o,r,s);return}}o===-1&&(o=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),s===0&&(s=this._mainRule.background),this._rulesWithParentScopes.push(new Go(t,a,o,r,s))}},nt=class ve{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=ve.getLanguageId(t),o=ve.getTokenType(t),r=ve.getFontStyle(t),s=ve.getForeground(t),n=ve.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:s,background:n})}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,o,r,s,n,i){let l=ve.getLanguageId(t),u=ve.getTokenType(t),f=ve.containsBalancedBrackets(t)?1:0,d=ve.getFontStyle(t),c=ve.getForeground(t),p=ve.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(c=n),i!==0&&(p=i),(l<<0|u<<8|f<<10|d<<11|c<<15|p<<24)>>>0}};function va(e,t){let a=[],o=Fd(e),r=o.next();for(;r!==null;){let l=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=o.next()}let u=n();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function s(){if(r==="-"){r=o.next();let l=s();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if(ln(r)){let l=[];do l.push(r),r=o.next();while(ln(r));return u=>t(l,u)}return null}function n(){let l=[],u=s();for(;u;)l.push(u),u=s();return f=>l.every(d=>d(f))}function i(){let l=[],u=n();for(;u&&(l.push(u),r==="|"||r===",");){do r=o.next();while(r==="|"||r===",");u=n()}return f=>l.some(d=>d(f))}}function ln(e){return!!e&&!!e.match(/[\w\.:]+/)}function Fd(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let o=a[0];return a=t.exec(e),o}}}function yn(e){typeof e.dispose=="function"&&e.dispose()}var Vt=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Bd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Dd=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))}},Ed=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new Vt(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Dd;for(let a of e)_d(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof Vt){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 _d(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof Vt?Aa({baseGrammar:s,selfGrammar:r},o):Vo(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new Vt(i))}function Vo(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Ra([o],t,a)}}function Aa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ra(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ra(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ra(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?hn({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Ra(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=bn(s);switch(n.kind){case 0:Aa({...t,selfGrammar:t.baseGrammar},a);break;case 1:Aa(t,a);break;case 2:Vo(n.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=n.scopeName===t.selfGrammar.scopeName?t.selfGrammar:n.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};n.kind===4?Vo(n.ruleName,l,a):Aa(l,a)}else n.kind===4?a.add(new Bd(n.scopeName,n.ruleName)):a.add(new Vt(n.scopeName));break}}}var Nd=class{kind=0},Od=class{kind=1},Hd=class{constructor(e){this.ruleName=e}kind=2},Ud=class{constructor(e){this.scopeName=e}kind=3},qd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function bn(e){if(e==="$base")return new Nd;if(e==="$self")return new Od;let t=e.indexOf("#");if(t===-1)return new Ud(e);if(t===0)return new Hd(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new qd(a,o)}}var Gd=/\\(\d+)/,un=/\\(\d+)/g;var Wd=-1,kn=-2;var $t=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=Ta.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=Ta.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${gn(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:Ta.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Ta.replaceCaptures(this._contentName,e,t)}},Vd=class extends $t{retokenizeCapturedWithRuleId;constructor(e,t,a,o,r){super(e,t,a,o),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,o){throw new Error("Not supported!")}},zd=class extends $t{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new zt(o,this.id),this.captures=r,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,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new jt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},dn=class extends $t{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,o),this.patterns=r.patterns,this.hasMissingPatterns=r.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,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new jt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},zo=class extends $t{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,o,r,s,n,i,l,u){super(e,t,a,o),this._begin=new zt(r,this.id),this.beginCaptures=s,this._end=new zt(n||"\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,o){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,o)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new jt;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}},Ma=class extends $t{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,o,r,s,n,i,l){super(e,t,a,o),this._begin=new zt(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new zt(n,kn),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,o){return this._getCachedCompiledPatterns(e).compileAG(e,a,o)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new jt;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,o){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,o)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new jt,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Tn=class Se{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new Vd(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new zd(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=hn({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new dn(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(s,a,o))}return t.while?new Ma(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,o),t.while,Se._compileCaptures(t.whileCaptures||t.captures,a,o),Se._compilePatterns(t.patterns,a,o)):new zo(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,o),t.end,Se._compileCaptures(t.endCaptures||t.captures,a,o),t.applyEndPatternLast,Se._compilePatterns(t.patterns,a,o))}),t.id}static _compileCaptures(t,a,o){let r=[];if(t){let s=0;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10);i>s&&(s=i)}for(let n=0;n<=s;n++)r[n]=null;for(let n in t){if(n==="$vscodeTextmateLocation")continue;let i=parseInt(n,10),l=0;t[n].patterns&&(l=Se.getCompiledRuleId(t[n],a,o)),r[i]=Se.createCaptureRule(a,t[n].$vscodeTextmateLocation,t[n].name,t[n].contentName,l)}}return r}static _compilePatterns(t,a,o){let r=[];if(t)for(let s=0,n=t.length;s<n;s++){let i=t[s],l=-1;if(i.include){let u=bn(i.include);switch(u.kind){case 0:case 1:l=Se.getCompiledRuleId(o[i.include],a,o);break;case 2:let f=o[u.ruleName];f&&(l=Se.getCompiledRuleId(f,a,o));break;case 3:case 4:let d=u.scopeName,c=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(d,o);if(p)if(c){let m=p.repository[c];m&&(l=Se.getCompiledRuleId(m,a,p.repository))}else l=Se.getCompiledRuleId(p.repository.$self,a,p.repository);break}}else l=Se.getCompiledRuleId(i,a,o);if(l!==-1){let u=a.getRule(l),f=!1;if((u instanceof dn||u instanceof zo||u instanceof Ma)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},zt=class Pn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,s=[],n=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(s.push(t.substring(r,i)),s.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(n=!0),i++}this.hasAnchor=n,r===0?this.source=t:(s.push(t.substring(r,o)),this.source=s.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=Gd.test(this.source):this.hasBackReferences=!1}clone(){return new Pn(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 o=a.map(r=>t.substring(r.start,r.end));return un.lastIndex=0,this.source.replace(un,(r,s)=>Ln(o[parseInt(s,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=[],o=[],r=[],s,n,i,l;for(s=0,n=this.source.length;s<n;s++)i=this.source.charAt(s),t[s]=i,a[s]=i,o[s]=i,r[s]=i,i==="\\"&&s+1<n&&(l=this.source.charAt(s+1),l==="A"?(t[s+1]="\uFFFF",a[s+1]="\uFFFF",o[s+1]="A",r[s+1]="A"):l==="G"?(t[s+1]="\uFFFF",a[s+1]="G",o[s+1]="\uFFFF",r[s+1]="G"):(t[s+1]=l,a[s+1]=l,o[s+1]=l,r[s+1]=l),s++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:o.join(""),A1_G1:r.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}},jt=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 fn(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 o=this._items.map(r=>r.resolveAnchors(t,a));return new fn(e,o,this._items.map(r=>r.ruleId))}},fn=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 o=this.scanner.findNextMatchSync(e,t,a);return o?{ruleId:this.rules[o.index],captureIndices:o.captureIndices}:null}},qo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},jd=class jo{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new qo(t,8),this._embeddedLanguagesMatcher=new $d(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?jo._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new qo(0,0);_getBasicScopeAttributes=new Cn(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new qo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(jo.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/},$d=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,o])=>Ln(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])}},$x={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},An=!1,cn=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function vn(e,t,a,o,r,s,n,i){let l=t.content.length,u=!1,f=-1;if(n){let p=Xd(e,t,a,o,r,s);r=p.stack,o=p.linePos,a=p.isFirstLine,f=p.anchorPosition}let d=Date.now();for(;!u;){if(i!==0&&Date.now()-d>i)return new cn(r,!0);c()}return new cn(r,!1);function c(){let p=Qd(e,t,a,o,r,f);if(!p){s.produce(r,l),u=!0;return}let m=p.captureIndices,C=p.matchedRuleId,w=m&&m.length>0?m[0].end>o:!1;if(C===Wd){let x=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),qt(e,t,a,r,s,x.endCaptures,m),s.produce(r,m[0].end);let g=r;if(r=r.parent,f=g.getAnchorPos(),!w&&g.getEnterPos()===o){r=g,s.produce(r,l),u=!0;return}}else{let x=e.getRule(C);s.produce(r,m[0].start);let g=r,h=x.getName(t.content,m),L=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(C,o,f,m[0].end===l,null,L,L),x instanceof zo){let S=x;qt(e,t,a,r,s,S.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=S.getContentName(t.content,m),A=L.pushAttributed(k,e);if(r=r.withContentNameScopesList(A),S.endHasBackReferences&&(r=r.withEndRule(S.getEndWithResolvedBackReferences(t.content,m))),!w&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(x instanceof Ma){let S=x;qt(e,t,a,r,s,S.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=S.getContentName(t.content,m),A=L.pushAttributed(k,e);if(r=r.withContentNameScopesList(A),S.whileHasBackReferences&&(r=r.withEndRule(S.getWhileWithResolvedBackReferences(t.content,m))),!w&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(qt(e,t,a,r,s,x.captures,m),s.produce(r,m[0].end),r=r.pop(),!w){r=r.safePop(),s.produce(r,l),u=!0;return}}m[0].end>o&&(o=m[0].end,a=!1)}}function Xd(e,t,a,o,r,s){let n=r.beginRuleCapturedEOL?0:-1,i=[];for(let l=r;l;l=l.pop()){let u=l.getRule(e);u instanceof Ma&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:f}=Zd(l.rule,e,l.stack.endRule,a,o===n),d=u.findNextMatchSync(t,o,f);if(d){if(d.ruleId!==kn){r=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(s.produce(l.stack,d.captureIndices[0].start),qt(e,t,a,l.stack,s,l.rule.whileCaptures,d.captureIndices),s.produce(l.stack,d.captureIndices[0].end),n=d.captureIndices[0].end,d.captureIndices[0].end>o&&(o=d.captureIndices[0].end,a=!1))}else{r=l.stack.pop();break}}return{stack:r,linePos:o,anchorPosition:n,isFirstLine:a}}function Qd(e,t,a,o,r,s){let n=Kd(e,t,a,o,r,s),i=e.getInjections();if(i.length===0)return n;let l=Jd(i,e,t,a,o,r,s);if(!l)return n;if(!n)return l;let u=n.captureIndices[0].start,f=l.captureIndices[0].start;return f<u||l.priorityMatch&&f===u?l:n}function Kd(e,t,a,o,r,s){let n=r.getRule(e),{ruleScanner:i,findOptions:l}=Rn(n,e,r.endRule,a,o===s),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Jd(e,t,a,o,r,s,n){let i=Number.MAX_VALUE,l=null,u,f=0,d=s.contentNameScopesList.getScopeNames();for(let c=0,p=e.length;c<p;c++){let m=e[c];if(!m.matcher(d))continue;let C=t.getRule(m.ruleId),{ruleScanner:w,findOptions:x}=Rn(C,t,null,o,r===n),g=w.findNextMatchSync(a,r,x);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,f=m.priority,i===r))break}return l?{priorityMatch:f===-1,captureIndices:l,matchedRuleId:u}:null}function Rn(e,t,a,o,r){if(An){let n=e.compile(t,a),i=Mn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function Zd(e,t,a,o,r){if(An){let n=e.compileWhile(t,a),i=Mn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function Mn(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function qt(e,t,a,o,r,s,n){if(s.length===0)return;let i=t.content,l=Math.min(s.length,n.length),u=[],f=n[0].end;for(let d=0;d<l;d++){let c=s[d];if(c===null)continue;let p=n[d];if(p.length===0)continue;if(p.start>f)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?r.produceFromScopes(u[u.length-1].scopes,p.start):r.produce(o,p.start),c.retokenizeCapturedWithRuleId){let C=c.getName(i,n),w=o.contentNameScopesList.pushAttributed(C,e),x=c.getContentName(i,n),g=w.pushAttributed(x,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,w,g),L=e.createOnigString(i.substring(0,p.end));vn(e,L,a&&p.start===0,p.start,h,r,!1,0),yn(L);continue}let m=c.getName(i,n);if(m!==null){let w=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(m,e);u.push(new Yd(w,p.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Yd=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function ef(e,t,a,o,r,s,n,i){return new af(e,t,a,o,r,s,n,i)}function pn(e,t,a,o,r){let s=va(t,Fa),n=Tn.getCompiledRuleId(a,o,r.repository);for(let i of s)e.push({debugSelector:t,matcher:i.matcher,ruleId:n,grammar:r,priority:i.priority})}function Fa(e,t){if(t.length<e.length)return!1;let a=0;return e.every(o=>{for(let r=a;r<t.length;r++)if(tf(t[r],o))return a=r+1,!0;return!1})}function tf(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 af=class{constructor(e,t,a,o,r,s,n,i){if(this._rootScopeName=e,this.balancedBracketSelectors=s,this._onigLib=i,this._basicScopeAttributesProvider=new jd(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=n,this._grammar=mn(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=va(l,Fa);for(let f of u)this._tokenTypeMatchers.push({matcher:f.matcher,type:r[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:r=>r===this._rootScopeName?this._grammar:this.getExternalGrammar(r),injections:r=>this._grammarRepository.injections(r)},t=[],a=this._rootScopeName,o=e.lookup(a);if(o){let r=o.injections;if(r)for(let n in r)pn(t,n,r[n],this,o);let s=this._grammarRepository.injections(a);s&&s.forEach(n=>{let i=this.getExternalGrammar(n);if(i){let l=i.injectionSelector;l&&pn(t,l,i,this,i)}})}return t.sort((r,s)=>r.priority-s.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]=mn(a,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,a=0){let o=this._tokenize(e,t,!1,a);return{tokens:o.lineTokens.getResult(o.ruleStack,o.lineLength),ruleStack:o.ruleStack,stoppedEarly:o.stoppedEarly}}tokenizeLine2(e,t,a=0){let o=this._tokenize(e,t,!0,a);return{tokens:o.lineTokens.getBinaryResult(o.ruleStack,o.lineLength),ruleStack:o.ruleStack,stoppedEarly:o.stoppedEarly}}_tokenize(e,t,a,o){this._rootId===-1&&(this._rootId=Tn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===$o.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),f=this.themeProvider.getDefaults(),d=nt.set(0,u.languageId,u.tokenType,null,f.fontStyle,f.foregroundId,f.backgroundId),c=this.getRule(this._rootId).getName(null,null),p;c?p=Gt.createRootAndLookUpScopeName(c,d,this):p=Gt.createRoot("unknown",d),t=new $o(null,this._rootId,-1,-1,!1,null,p,p)}else r=!1,t.reset();e=e+`
4
+ `;let s=this.createOnigString(e),n=s.content.length,i=new rf(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=vn(this,s,r,0,t,i,!0,o);return yn(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function mn(e,t){return e=Id(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 Gt=class Ne{constructor(t,a,o){this.parent=t,this.scopePath=a,this.tokenAttributes=o}static fromExtension(t,a){let o=t,r=t?.scopePath??null;for(let s of a)r=Uo.push(r,s.scopeNames),o=new Ne(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Ne(null,new Uo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Uo(null,t),n=o.themeProvider.themeMatch(s),i=Ne.mergeAttributes(a,r,n);return new Ne(null,s,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Ne.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,o){let r=-1,s=0,n=0;return o!==null&&(r=o.fontStyle,s=o.foregroundId,n=o.backgroundId),nt.set(t,a.languageId,a.tokenType,null,r,s,n)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Ne._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let s of o)r=Ne._pushAttributed(r,s,a);return r}static _pushAttributed(t,a,o){let r=o.getMetadataForScope(a),s=t.scopePath.push(a),n=o.themeProvider.themeMatch(s),i=Ne.mergeAttributes(t.tokenAttributes,r,n);return new Ne(t,s,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push({encodedTokenAttributes:o.tokenAttributes,scopeNames:o.scopePath.getExtensionIfDefined(o.parent?.scopePath??null)}),o=o.parent;return o===t?a.reverse():void 0}},$o=class st{constructor(t,a,o,r,s,n,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=s,this.endRule=n,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=o,this._anchorPos=r}_stackElementBrand=void 0;static NULL=new st(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:st._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Gt.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(){st._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new st(this,t,a,o,r,s,n,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 st(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 o=Gt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new st(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,Gt.fromExtension(o,a.contentNameScopesList))}},of=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):va(a,Fa).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>va(a,Fa).map(o=>o.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}},rf=class{constructor(e,t,a,o){this.balancedBracketSelectors=o,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 o=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let s=e?.getScopeNames()??[];for(let n of this._tokenTypeOverrides)n.matcher(s)&&(o=nt.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=nt.set(o,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===o){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(o),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 o=0,r=this._binaryTokens.length;o<r;o++)a[o]=this._binaryTokens[o];return a}},sf=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,o,r){if(!this._grammars.has(e)){let s=this._rawGrammars.get(e);if(!s)return null;this._grammars.set(e,ef(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},Fn=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new sf(Wt.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(Wt.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 of(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new Ed(this._syncRegistry,e);for(;s.Q.length>0;)s.Q.map(n=>this._loadSingleGrammar(n.scopeName)),s.processQueue();return this._grammarForScopeName(e,t,a,o,r)}_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,o=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,o)}_grammarForScopeName(e,t=0,a=null,o=null,r=null){return this._syncRegistry.grammarForScopeName(e,t,a,o,r)}},Ba=$o.NULL;var nf=/["&'<>`]/g,lf=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,uf=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,df=/[|\\{}()[\]^$+*?.]/g,Bn=new WeakMap;function Dn(e,t){if(e=e.replace(t.subset?ff(t.subset):nf,o),t.subset||t.escapeOnly)return e;return e.replace(lf,a).replace(uf,o);function a(r,s,n){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,n.charCodeAt(s+2),t)}function o(r,s,n){return t.format(r.charCodeAt(0),n.charCodeAt(s+1),t)}}function ff(e){let t=Bn.get(e);return t||(t=cf(e),Bn.set(e,t)),t}function cf(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(df,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var pf=/[\dA-Fa-f]/;function En(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!pf.test(String.fromCharCode(t))?o:o+";"}var mf=/\d/;function _n(e,t,a){let o="&#"+String(e);return a&&t&&!mf.test(String.fromCharCode(t))?o:o+";"}var Nn=["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 Da={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 On=["cent","copy","divide","gt","lt","not","para","times"];var Hn={}.hasOwnProperty,Qo={},Ea;for(Ea in Da)Hn.call(Da,Ea)&&(Qo[Da[Ea]]=Ea);var hf=/[^\dA-Za-z]/;function Un(e,t,a,o){let r=String.fromCharCode(e);if(Hn.call(Qo,r)){let s=Qo[r],n="&"+s;return a&&Nn.includes(s)&&!On.includes(s)&&(!o||t&&t!==61&&hf.test(String.fromCharCode(t)))?n:n+";"}return""}function qn(e,t,a){let o=En(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Un(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=_n(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function qe(e,t){return Dn(e,Object.assign({format:qn},t))}var gf=/^>|^->|<!--|-->|--!>|<!-$/g,wf=[">"],xf=["<",">"];function Gn(e,t,a,o){return o.settings.bogusComments?"<?"+qe(e.value,Object.assign({},o.settings.characterReferences,{subset:wf}))+">":"<!--"+e.value.replace(gf,r)+"-->";function r(s){return qe(s,Object.assign({},o.settings.characterReferences,{subset:xf}))}}function Wn(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ne=Vn(1),Ko=Vn(-1),Lf=[];function Vn(e){return t;function t(a,o,r){let s=a?a.children:Lf,n=(o||0)+e,i=s[n];if(!r)for(;i&&pt(i);)n+=e,i=s[n];return i}}var Cf={}.hasOwnProperty;function _a(e){return t;function t(a,o,r){return Cf.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Xt=_a({body:Sf,caption:Jo,colgroup:Jo,dd:Tf,dt:kf,head:Jo,html:If,li:bf,optgroup:Pf,option:Af,p:yf,rp:zn,rt:zn,tbody:Rf,td:jn,tfoot:Mf,th:jn,thead:vf,tr:Ff});function Jo(e,t,a){let o=ne(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&pt(o.value.charAt(0)))}function If(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function Sf(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function yf(e,t,a){let o=ne(a,t);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.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 bf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="li"}function kf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function Tf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function zn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function Pf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function Af(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function vf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function Rf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function Mf(e,t,a){return!ne(a,t)}function Ff(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function jn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var $n=_a({body:Ef,colgroup:_f,head:Df,html:Bf,tbody:Nf});function Bf(e){let t=ne(e,-1);return!t||t.type!=="comment"}function Df(e){let t=new Set;for(let o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(t.has(o.tagName))return!1;t.add(o.tagName)}let a=e.children[0];return!a||a.type==="element"}function Ef(e){let t=ne(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&pt(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function _f(e,t,a){let o=Ko(a,t),r=ne(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&Xt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Nf(e,t,a){let o=Ko(a,t),r=ne(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&Xt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Na={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 zr,b as Vr,c as jr,d as $r,e as Xr,f as la,g as Qr,h as Kr,i as Jr,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 jn(e,t,a,o){let r=o.schema,s=r.space==="svg"?!1:o.settings.omitOptionalTags,n=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=la);let u=Ff(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!Vn(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),n&&(r.space==="svg"||o.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!o.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(f),!n&&(!s||!Xt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Ff(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=Bf(e,r,t[r]);s&&a.push(s)}}for(;++o<a.length;){let s=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&s!=='"'&&s!=="'"&&(a[o]+=" ")}return a.join("")}function Bf(e,t,a){let o=$r(e.schema,t),r=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,s=e.settings.allowDangerousCharacters?0:1,n=e.quote,i;if(o.overloadedBoolean&&(a===o.attribute||a==="")?a=!0:(o.boolean||o.overloadedBoolean)&&(typeof a!="string"||a===o.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=qe(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Na.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Qr:Kr)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=qe(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Na.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&Lo(a,n)>Lo(a,e.alternative)&&(n=e.alternative),i=n+qe(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?Na.single:Na.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var Df=["<","&"];function Oa(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:qe(e.value,Object.assign({},o.settings.characterReferences,{subset:Df}))}function $n(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Oa(e,t,a,o)}function Xn(e,t,a,o){return o.all(e)}var Qn=Jr("type",{invalid:Ef,unknown:_f,handlers:{comment:Un,doctype:qn,element:jn,raw:$n,root:Xn,text:Oa}});function Ef(e){throw new Error("Expected node, not `"+e+"`")}function _f(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Nf={},Of={},Hf=[];function Zo(e,t){let a=t||Nf,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:Uf,all:qf,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||Zr,characterReferences:a.characterReferences||Of,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?la:Xr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Uf(e,t,a){return Qn(e,t,a,this)}function qf(e){let t=[],a=e&&e.children||Hf,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ha(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,s]of Object.entries(t?.colorReplacements||{}))typeof s=="string"?a[r]=s:r===o&&Object.assign(a,s);return a}function Xe(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Gf(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 rr(e){return!e||["plaintext","txt","text","plain"].includes(e)}function oi(e){return e==="ansi"||rr(e)}function sr(e){return e==="none"}function ri(e){return sr(e)}function si(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 o of a)o&&!e.properties.class.includes(o)&&e.properties.class.push(o);return e}function za(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let s=0;s<a.length;s+=2){let n=t?a[s]+(a[s+1]||""):a[s];r.push([n,o]),o+=a[s].length,o+=a[s+1]?.length||0}return r}function Wf(e){let t=za(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let s=r,n=0;for(let i of t){if(s<i.length)break;s-=i.length,n++}return{line:n,character:s}}function o(r,s){let n=0;for(let i=0;i<r;i++)n+=t[i].length;return n+=s,n}return{lines:t,indexToPos:a,posToIndex:o}}function ni(e,t,a){let o=new Set;for(let s of e.matchAll(/:?lang=["']([^"']+)["']/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/\\begin\{([\w-]+)\}/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let n=s[1].toLowerCase().trim(),i=n.includes("/")?n.split("/").pop():n;i&&o.add(i)}if(!a)return Array.from(o);let r=a.getBundledLanguages();return Array.from(o).filter(s=>s&&r[s])}var nr="light-dark()",zf=["color","background-color"];function Vf(e,t){let a=0,o=[];for(let r of t)r>a&&o.push({...e,content:e.content.slice(a,r),offset:e.offset+a}),a=r;return a<e.content.length&&o.push({...e,content:e.content.slice(a),offset:e.offset+a}),o}function jf(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((o,r)=>o-r);return a.length?e.map(o=>o.flatMap(r=>{let s=a.filter(n=>r.offset<n&&n<r.offset+r.content.length).map(n=>n-r.offset).sort((n,i)=>n-i);return s.length?Vf(r,s):r})):e}function $f(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>Ua(e.variants[f])),i=new Set(n.flatMap(f=>Object.keys(f))),l={},u=(f,d)=>{let c=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[f]+(d==="color"?"":c)};return n.forEach((f,d)=>{for(let c of i){let p=f[c]||"inherit";if(d===0&&o&&zf.includes(c))if(o===nr&&n.length>1){let m=t.findIndex(g=>g==="light"),C=t.findIndex(g=>g==="dark");if(m===-1||C===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let x=n[m][c]||"inherit",L=n[C][c]||"inherit";l[c]=`light-dark(${x}, ${L})`,r==="css-vars"&&(l[u(d,c)]=p)}else l[c]=p;else r==="css-vars"&&(l[u(d,c)]=p)}}),s.htmlStyle=l,s}function Ua(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&ge.Italic&&(t["font-style"]="italic"),e.fontStyle&ge.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&ge.Underline&&a.push("underline"),e.fontStyle&ge.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function tr(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ii=new WeakMap;function Va(e,t){ii.set(e,t)}function Kt(e){return ii.get(e)}var Lt=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(o=>[o,Ba])),t)}constructor(...t){if(t.length===2){let[a,o]=t;this.lang=o,this._stacks=a}else{let[a,o,r]=t;this.lang=o,this._stacks={[r]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return Xf(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Xf(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let s=r?.nameScopesList?.scopeName;s&&t.push(s),r.parent&&o(r.parent)}return o(e),t}function Qf(e,t){if(!(e instanceof Lt))throw new ee("Invalid grammar state");return e.getInternalStack(t)}function Kf(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(n){if(typeof n=="number"){if(n<0||n>a.source.length)throw new ee(`Invalid decoration offset: ${n}. Code length: ${a.source.length}`);return{...r.indexToPos(n),offset:n}}else{let i=r.lines[n.line];if(i===void 0)throw new ee(`Invalid decoration position ${JSON.stringify(n)}. Lines length: ${r.lines.length}`);let l=n.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new ee(`Invalid decoration position ${JSON.stringify(n)}. Line ${n.line} length: ${i.length}`);return{...n,character:l,offset:r.posToIndex(n.line,l)}}},r=Wf(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));Jf(s),e.set(a.meta,{decorations:s,converter:r,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let r=t(this).decorations.flatMap(n=>[n.start.offset,n.end.offset]);return jf(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(f=>f.type==="element"&&f.tagName==="span");if(r.length!==o.converter.lines.length)throw new ee(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,c,p){let m=r[f],C="",x=-1,L=-1;if(d===0&&(x=0),c===0&&(L=0),c===Number.POSITIVE_INFINITY&&(L=m.children.length),x===-1||L===-1)for(let h=0;h<m.children.length;h++)C+=li(m.children[h]),x===-1&&C.length===d&&(x=h+1),L===-1&&C.length===c&&(L=h+1);if(x===-1)throw new ee(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(L===-1)throw new ee(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(x,L);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(x,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,c){let p=d.properties||{},m=d.transform||(C=>C);return f.tagName=d.tagName||"span",f.properties={...f.properties,...p,class:f.properties.class},d.properties?.class&&si(f,d.properties.class),f=m(f,c)||f,f}let l=[],u=o.decorations.sort((f,d)=>d.start.offset-f.start.offset||f.end.offset-d.end.offset);for(let f of u){let{start:d,end:c}=f;if(d.line===c.line)s(d.line,d.character,c.character,f);else if(d.line<c.line){s(d.line,d.character,Number.POSITIVE_INFINITY,f);for(let p=d.line+1;p<c.line;p++)l.unshift(()=>n(p,f));s(c.line,0,c.character,f)}}l.forEach(f=>f())}}}function Jf(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new ee(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let o=t+1;o<e.length;o++){let r=e[o],s=a.start.offset<=r.start.offset&&r.start.offset<a.end.offset,n=a.start.offset<r.end.offset&&r.end.offset<=a.end.offset,i=r.start.offset<=a.start.offset&&a.start.offset<r.end.offset,l=r.start.offset<a.end.offset&&a.end.offset<=r.end.offset;if(s||n||i||l){if(s&&n||i&&l||i&&a.start.offset===a.end.offset||n&&r.start.offset===r.end.offset)continue;throw new ee(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function li(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(li).join(""):""}var Zf=[Kf()];function qa(e){let t=Yf(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Zf]}function Yf(e){let t=[],a=[],o=[];for(let r of e)switch(r.enforce){case"pre":t.push(r);break;case"post":a.push(r);break;default:o.push(r)}return{pre:t,post:a,normal:o}}var it=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Yo={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function ec(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let o=e.indexOf("m",a);if(o!==-1)return{sequence:e.substring(a+2,o).split(";"),startPosition:a,position:o+1}}return{position:e.length}}function Kn(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(o=>Number.parseInt(o));return a.length!==3||a.some(o=>Number.isNaN(o))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function tc(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let o=Number.parseInt(a);if(!Number.isNaN(o))if(o===0)t.push({type:"resetAll"});else if(o<=9)Yo[o]&&t.push({type:"setDecoration",value:Yo[o]});else if(o<=29){let r=Yo[o-20];r&&(t.push({type:"resetDecoration",value:r}),r==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(o<=37)t.push({type:"setForegroundColor",value:{type:"named",name:it[o-30]}});else if(o===38){let r=Kn(e);r&&t.push({type:"setForegroundColor",value:r})}else if(o===39)t.push({type:"resetForegroundColor"});else if(o<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:it[o-40]}});else if(o===48){let r=Kn(e);r&&t.push({type:"setBackgroundColor",value:r})}else o===49?t.push({type:"resetBackgroundColor"}):o===53?t.push({type:"setDecoration",value:"overline"}):o===55?t.push({type:"resetDecoration",value:"overline"}):o>=90&&o<=97?t.push({type:"setForegroundColor",value:{type:"named",name:it[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:it[o-100+8]}})}return t}function ac(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=ec(o,s),i=n.sequence?o.substring(s,n.startPosition):o.substring(s);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),n.sequence){let l=tc(n.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)}s=n.position}while(s<o.length);return r}}}var oc={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 rc(e=oc){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 o;function r(){if(o)return o;o=[];for(let u=0;u<it.length;u++)o.push(t(it[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let f=0;f<6;f++)for(let d=0;d<6;d++)o.push(a([i[u],i[f],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function s(i){return r()[i]}function n(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return s(i.index)}}return{value:n}}var sc={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 nc(e,t,a){let o=Ha(e,a),r=za(t),s=Object.fromEntries(it.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||sc[l]]})),n=rc(s),i=ac();return r.map(l=>i.parse(l[0]).map(u=>{let f,d;u.decorations.has("reverse")?(f=u.background?n.value(u.background):e.bg,d=u.foreground?n.value(u.foreground):e.fg):(f=u.foreground?n.value(u.foreground):e.fg,d=u.background?n.value(u.background):void 0),f=Xe(f,o),d=Xe(d,o),u.decorations.has("dim")&&(f=ic(f));let c=ge.None;return u.decorations.has("bold")&&(c|=ge.Bold),u.decorations.has("italic")&&(c|=ge.Italic),u.decorations.has("underline")&&(c|=ge.Underline),u.decorations.has("strikethrough")&&(c|=ge.Strikethrough),{content:u.value,offset:l[1],color:f,bgColor:d,fontStyle:c}}))}function ic(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let o=t[1];if(o.length===8){let r=Math.round(Number.parseInt(o.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${o.slice(0,6)}${r}`}else{if(o.length===6)return`#${o}80`;if(o.length===4){let r=o[0],s=o[1],n=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${s}${s}${n}${n}${l}`}else if(o.length===3){let r=o[0],s=o[1],n=o[2];return`#${r}${r}${s}${s}${n}${n}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function ir(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(rr(r)||sr(o))return za(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return nc(s,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new ee(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new ee(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${s.name}"`)}return uc(t,i,s,n,a)}function lc(...e){if(e.length===2)return Kt(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(rr(r)||sr(s))throw new ee("Plain language does not have grammar state");if(r==="ansi")throw new ee("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new Lt(lr(a,l,n,i,o).stateStack,l.name,n.name)}function uc(e,t,a,o,r){let s=lr(e,t,a,o,r),n=new Lt(s.stateStack,t.name,a.name);return Va(s.tokens,n),s.tokens}function lr(e,t,a,o,r){let s=Ha(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=za(e),u=r.grammarState?Qf(r.grammarState,a.name)??Ba:r.grammarContextCode!=null?lr(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Ba,f=[],d=[];for(let c=0,p=l.length;c<p;c++){let[m,C]=l[c];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:C,color:"",fontStyle:0}]);continue}let x,L,g;r.includeExplanation&&(x=t.tokenizeLine(m,u,i),L=x.tokens,g=0);let h=t.tokenizeLine2(m,u,i),w=h.tokens.length/2;for(let b=0;b<w;b++){let k=h.tokens[2*b],P=b+1<w?h.tokens[2*b+2]:m.length;if(k===P)continue;let A=h.tokens[2*b+1],E=Xe(o[nt.getForeground(A)],s),B=nt.getFontStyle(A),O={content:m.substring(k,P),offset:C+k,color:E,fontStyle:B};if(r.includeExplanation){let y=[];if(r.includeExplanation!=="scopeName")for(let S of a.settings){let M;switch(typeof S.scope){case"string":M=S.scope.split(/,/).map(X=>X.trim());break;case"object":M=S.scope;break;default:continue}y.push({settings:S,selectors:M.map(X=>X.split(/ /))})}O.explanation=[];let v=0;for(;k+v<P;){let S=L[g],M=m.substring(S.startIndex,S.endIndex);v+=M.length,O.explanation.push({content:M,scopes:r.includeExplanation==="scopeName"?dc(S.scopes):fc(y,S.scopes)}),g+=1}}f.push(O)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function dc(e){return e.map(t=>({scopeName:t}))}function fc(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:pc(e,s,t.slice(0,o))}}return a}function Jn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function cc(e,t,a){if(!Jn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Jn(e[o],a[r])&&(o-=1),r-=1;return o===-1}function pc(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(cc(n,t,a)){o.push(s);break}return o}function ui(e,t,a){let o=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),r=o.map(l=>{let u=ir(e,t,{...a,theme:l.theme}),f=Kt(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=mc(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let c={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(c.explanation=f.explanation),s.forEach((p,m)=>{let{content:C,explanation:x,offset:L,...g}=p[u][d];c.variants[o[m].color]=g}),c})),i=r[0].state?new Lt(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&Va(n,i),n}function mc(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),s=t.map(()=>[]);t.forEach((l,u)=>l.push(s[u]));let n=r.map(()=>0),i=r.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 f=i[u];f.content.length===l?(s[u].push(f),n[u]+=1,i[u]=r[u][n[u]]):(s[u].push({...f,content:f.content.slice(0,l)}),i[u]={...f,content:f.content.slice(l),offset:f.offset+l})}}}return t}function Ga(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,c=Object.entries(a.themes).filter(L=>L[1]).map(L=>({color:L[0],theme:L[1]})).sort((L,g)=>L.color===u?-1:g.color===u?1:0);if(c.length===0)throw new ee("`themes` option must not be empty");let p=ui(e,t,a);if(l=Kt(p),u&&nr!==u&&!c.find(L=>L.color===u))throw new ee(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(L=>e.getTheme(L.theme)),C=c.map(L=>L.color);s=p.map(L=>L.map(g=>$f(g,C,f,u,d))),l&&Va(s,l);let x=c.map(L=>Ha(L.theme,a));r=Zn(c,m,x,f,u,"fg",d),o=Zn(c,m,x,f,u,"bg",d),n=`shiki-themes ${m.map(L=>L.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ha(a.theme,a);s=ir(e,t,a);let f=e.getTheme(a.theme);o=Xe(f.bg,u),r=Xe(f.fg,u),n=f.name,l=Kt(s)}else throw new ee("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function Zn(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=Xe(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===nr&&e.length>1){let d=e.findIndex(C=>C.color==="light"),c=e.findIndex(C=>C.color==="dark");if(d===-1||c===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Xe(t[d][s],a[d])||"inherit",m=Xe(t[c][s],a[c])||"inherit";return`light-dark(${p}, ${m});${f}`}return u}return n==="css-vars"?f:null}).filter(i=>!!i).join(";")}function Wa(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Wa(e,r,s),codeToTokens:(r,s)=>Ga(e,r,s)}){let r=t;for(let m of qa(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=Ga(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:c=!1}=a;d===!0?s=gc(s):d==="never"&&(s=wc(s)),c&&(s=xc(s));let p={...o,get source(){return r}};for(let m of qa(a))s=m.tokens?.call(p,s)||s;return hc(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,f)}function hc(e,t,a,o=Kt(e)){let r=qa(t),s=[],n={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[C,x]of Object.entries(t.meta||{}))C.startsWith("_")||(u[C]=x);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},c=[],p={...a,structure:i,addClassToHast:si,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return c}};if(e.forEach((C,x)=>{x&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
13
- `}));let L={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of C){let w={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},b=tr(h.htmlStyle||Ua(h));b&&(w.properties.style=b);for(let k of r)w=k?.span?.call(p,w,x+1,g,L,h)||w;i==="inline"?n.children.push(w):i==="classic"&&L.children.push(w),g+=h.content.length}if(i==="classic"){for(let h of r)L=h?.line?.call(p,L,x+1)||L;c.push(L),s.push(L)}else i==="inline"&&c.push(L)}),i==="classic"){for(let C of r)d=C?.code?.call(p,d)||d;f.children.push(d);for(let C of r)f=C?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let C=[],x={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(C.push(x),x={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&x.children.push(h);C.push(x);let g={type:"element",tagName:"code",properties:{},children:C};for(let h of r)g=h?.code?.call(p,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let w=g.children[h];w.type==="element"&&n.children.push(...w.children)}}let m=n;for(let C of r)m=C?.root?.call(p,m)||m;return o&&Va(m,o),m}function gc(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&ge.Underline||s.fontStyle&ge.Strikethrough));l&&s.content.match(/^\s+$/)&&t[n+1]?(r===void 0&&(r=s.offset),o+=s.content):o?(l?a.push({...s,offset:r,content:o+s.content}):a.push({content:o,offset:r},s),r=void 0,o=""):a.push(s)}),a})}function wc(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let o=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!o)return a;let[,r,s,n]=o;if(!r&&!n)return a;let i=[{...a,offset:a.offset+r.length,content:s}];return r&&i.unshift({content:r,offset:a.offset}),n&&i.push({content:n,offset:a.offset+r.length+s.length}),i}))}function xc(e){return e.map(t=>{let a=[];for(let o of t){if(a.length===0){a.push({...o});continue}let r=a[a.length-1],s=tr(r.htmlStyle||Ua(r)),n=tr(o.htmlStyle||Ua(o)),i=r.fontStyle&&(r.fontStyle&ge.Underline||r.fontStyle&ge.Strikethrough),l=o.fontStyle&&(o.fontStyle&ge.Underline||o.fontStyle&ge.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var Lc=Zo;function Cc(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Wa(e,s,n),codeToTokens:(s,n)=>Ga(e,s,n)},r=Lc(Wa(e,t,a,o));for(let s of qa(a))r=s.postprocess?.call(o,r,a)||r;return r}var Yn={light:"#333333",dark:"#bbbbbb"},ei={light:"#fffffe",dark:"#1e1e1e"},ti="__shiki_resolved";function ur(e){if(e?.[ti])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:o}=t;if(!a||!o){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(o=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!o&&t?.colors?.["editor.foreground"]&&(o=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),o||(o=t.type==="light"?Yn.light:Yn.dark),a||(a=t.type==="light"?ei.light:ei.dark),t.fg=o,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 r=0,s=new Map;function n(i){if(s.has(i))return s.get(i);r+=1;let l=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?n(i):(s.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 f={...i,settings:{...i.settings}};if(l){let d=n(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,f.settings.foreground=d}if(u){let d=n(i.settings.background);t.colorReplacements[d]=i.settings.background,f.settings.background=d}return f});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=n(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,ti,{enumerable:!1,writable:!1,value:!0}),t}async function di(e){return Array.from(new Set((await Promise.all(e.filter(t=>!oi(t)).map(async t=>await ai(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function fi(e){return(await Promise.all(e.map(async a=>ri(a)?null:ur(await ai(a))))).filter(a=>!!a)}var er=3,Ic=!1;function Sc(e,t=3){if(er&&!(typeof er=="number"&&t>er)){if(Ic)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var $e=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function ci(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 $e(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var ar=class extends Rn{constructor(t,a,o,r={}){super(t),this._resolver=t,this._themes=a,this._langs=o,this._alias=r,this._themes.map(s=>this.loadTheme(s)),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=ur(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=Wt.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=ci(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(s=>s.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let o={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let r=this.loadGrammarWithConfiguration(t.scopeName,1,o);if(r.name=t.name,this._resolvedGrammars.set(t.name,r),t.aliases&&t.aliases.forEach(s=>{this._alias[s]=t.name}),this._loadedLanguagesCache=null,a.size)for(let s of a)this._resolvedGrammars.delete(s.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(s.scopeName),this._syncRegistry?._grammars?.delete(s.scopeName),this.loadLanguage(this._langMap.get(s.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let r of t)this.resolveEmbeddedLanguages(r);let a=Array.from(this._langGraph.entries()),o=a.filter(([r,s])=>!s);if(o.length){let r=a.filter(([s,n])=>n?(n.embeddedLanguages||n.embeddedLangs)?.some(l=>o.map(([u])=>u).includes(l)):!1).filter(s=>!o.includes(s));throw new $e(`Missing languages ${o.map(([s])=>`\`${s}\``).join(", ")}, required by ${r.map(([s])=>`\`${s}\``).join(", ")}`)}for(let[r,s]of a)this._resolver.addLanguage(s);for(let[r,s]of a)this.loadLanguage(s)}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 o of a)this._langGraph.set(o,this._langMap.get(o))}},or=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:o=>t.createScanner(o),createOnigString:o=>t.createString(o)},a.forEach(o=>this.addLanguage(o))}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("."),o=[];for(let r=1;r<=a.length;r++){let s=a.slice(0,r).join(".");o=[...o,...this._injections.get(s)||[]]}return o}},Qt=0;function yc(e){Qt+=1,e.warnings!==!1&&Qt>=10&&Qt%10===0&&console.warn(`[Shiki] ${Qt} 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 $e("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(ur),r=new or(e.engine,a),s=new ar(r,o,a,e.langAlias),n;function i(h){return ci(h,e.langAlias)}function l(h){L();let w=s.getGrammar(typeof h=="string"?h:h.name);if(!w)throw new $e(`Language \`${h}\` not found, you may need to load it first`);return w}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};L();let w=s.getTheme(h);if(!w)throw new $e(`Theme \`${h}\` not found, you may need to load it first`);return w}function f(h){L();let w=u(h);n!==h&&(s.setTheme(w),n=h);let b=s.getColorMap();return{theme:w,colorMap:b}}function d(){return L(),s.getLoadedThemes()}function c(){return L(),s.getLoadedLanguages()}function p(...h){L(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await di(h))}function C(...h){L();for(let w of h.flat(1))s.loadTheme(w)}async function x(...h){return L(),C(await fi(h))}function L(){if(t)throw new $e("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Qt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:c,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:x,loadThemeSync:C,dispose:g,[Symbol.dispose]:g}}async function bc(e){e.engine||Sc("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([fi(e.themes||[]),di(e.langs||[]),e.engine]);return yc({...e,themes:t,langs:a,engine:o})}async function kc(e){let t=await bc(e);return{getLastGrammarState:(...a)=>lc(t,...a),codeToTokensBase:(a,o)=>ir(t,a,o),codeToTokensWithThemes:(a,o)=>ui(t,a,o),codeToTokens:(a,o)=>Ga(t,a,o),codeToHast:(a,o)=>Wa(t,a,o),codeToHtml:(a,o)=>Cc(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function pi(e){let t=e.langs,a=e.themes,o=e.engine;async function r(s){function n(d){if(typeof d=="string"){if(d=s.langAlias?.[d]||d,oi(d))return[];let c=t[d];if(!c)throw new ee(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}function i(d){if(ri(d))return"none";if(typeof d=="string"){let c=a[d];if(!c)throw new ee(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await kc({engine:s.engine??o(),...s,themes:l,langs:u});return{...f,loadLanguage(...d){return f.loadLanguage(...d.map(n))},loadTheme(...d){return f.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function Tc(e){let t;async function a(o={}){if(t){let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}else{t=e({...o,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}}return a}function mi(e,t){let a=Tc(e);async function o(r,s){let n=await a({langs:[s.lang],themes:"theme"in s?[s.theme]:Object.values(s.themes)}),i=await t?.guessEmbeddedLanguages?.(r,s.lang,n);return i&&await n.loadLanguage(...i),n}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,s){return(await o(r,s)).codeToHtml(r,s)},async codeToHast(r,s){return(await o(r,s)).codeToHast(r,s)},async codeToTokens(r,s){return(await o(r,s)).codeToTokens(r,s)},async codeToTokensBase(r,s){return(await o(r,s)).codeToTokensBase(r,s)},async codeToTokensWithThemes(r,s){return(await o(r,s)).codeToTokensWithThemes(r,s)},async getLastGrammarState(r,s){return(await a({langs:[s.lang],themes:[s.theme]})).getLastGrammarState(r,s)}}}var dr=[{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"))}],hi=Object.fromEntries(dr.map(e=>[e.id,e.import])),gi=Object.fromEntries(dr.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Jt={...hi,...gi};var Pc=[{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"))}],wi=Object.fromEntries(Pc.map(e=>[e.id,e.import]));var Zt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ac(){return 2147483648}function vc(){return typeof performance<"u"?performance.now():Date.now()}var Rc=(e,t)=>e+(t-e%t)%t;async function Mc(e){let t,a,o={};function r(p){a=p,o.HEAPU8=new Uint8Array(p),o.HEAPU32=new Uint32Array(p)}function s(p,m,C){o.HEAPU8.copyWithin(p,m,m+C)}function n(p){try{return t.grow(p-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(p){let m=o.HEAPU8.length;p=p>>>0;let C=Ac();if(p>C)return!1;for(let x=1;x<=4;x*=2){let L=m*(1+.2/x);L=Math.min(L,p+100663296);let g=Math.min(C,Rc(Math.max(p,L),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,C=1024){let x=m+C,L=m;for(;p[L]&&!(L>=x);)++L;if(L-m>16&&p.buffer&&l)return l.decode(p.subarray(m,L));let g="";for(;m<L;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let w=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|w);continue}let b=p[m++]&63;if((h&240)===224?h=(h&15)<<12|w<<6|b:h=(h&7)<<18|w<<12|b<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let k=h-65536;g+=String.fromCharCode(55296|k>>10,56320|k&1023)}}return g}function f(p,m){return p?u(o.HEAPU8,p,m):""}let d={emscripten_get_now:vc,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function c(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await c(),o}var Fc=Object.defineProperty,Bc=(e,t,a)=>t in e?Fc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,le=(e,t,a)=>Bc(e,typeof t!="symbol"?t+"":t,a),me=null;function Dc(e){throw new Zt(e.UTF8ToString(e.getLastOnigError()))}var $a=class e{constructor(t){le(this,"utf16Length"),le(this,"utf8Length"),le(this,"utf16Value"),le(this,"utf8Value"),le(this,"utf16OffsetToUtf8"),le(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,s=r?new Uint32Array(a+1):null;r&&(s[a]=o);let n=r?new Uint32Array(o+1):null;r&&(n[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let f=t.charCodeAt(u),d=f,c=!1;if(f>=55296&&f<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(d=(f-55296<<10)+65536|p-56320,c=!0)}r&&(s[u]=l,c&&(s[u+1]=l),d<=127?n[l+0]=u:d<=2047?(n[l+0]=u,n[l+1]=u):d<=65535?(n[l+0]=u,n[l+1]=u,n[l+2]=u):(n[l+0]=u,n[l+1]=u,n[l+2]=u,n[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),c&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=n}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let s=t.charCodeAt(o),n=s,i=!1;if(s>=55296&&s<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(n=(s-55296<<10)+65536|l-56320,i=!0)}n<=127?a+=1:n<=2047?a+=2:n<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},Xa=class Oe{constructor(t){if(le(this,"id",++Oe.LAST_ID),le(this,"_onigBinding"),le(this,"content"),le(this,"utf16Length"),le(this,"utf8Length"),le(this,"utf16OffsetToUtf8"),le(this,"utf8OffsetToUtf16"),le(this,"ptr"),!me)throw new Zt("Must invoke loadWasm first.");this._onigBinding=me,this.content=t;let a=new $a(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Oe._sharedPtrInUse?(Oe._sharedPtr||(Oe._sharedPtr=me.omalloc(1e4)),Oe._sharedPtrInUse=!0,me.HEAPU8.set(a.utf8Value,Oe._sharedPtr),this.ptr=Oe._sharedPtr):this.ptr=a.createString(me)}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===Oe._sharedPtr?Oe._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};le(Xa,"LAST_ID",0);le(Xa,"_sharedPtr",0);le(Xa,"_sharedPtrInUse",!1);var xi=Xa,cr=class{constructor(t){if(le(this,"_onigBinding"),le(this,"_ptr"),!me)throw new Zt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new $a(t[i]);a[i]=u.createString(me),o[i]=u.utf8Length}let r=me.omalloc(4*t.length);me.HEAPU32.set(a,r/4);let s=me.omalloc(4*t.length);me.HEAPU32.set(o,s/4);let n=me.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)me.ofree(a[i]);me.ofree(s),me.ofree(r),n===0&&Dc(me),this._onigBinding=me,this._ptr=n}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new xi(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let c=0;c<f;c++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[c]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function Ec(e){return typeof e.instantiator=="function"}function _c(e){return typeof e.default=="function"}function Nc(e){return typeof e.data<"u"}function Oc(e){return typeof Response<"u"&&e instanceof Response}function Hc(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 ja;function Uc(e){if(ja)return ja;async function t(){me=await Mc(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),Ec(o)?o=await o.instantiator(a):_c(o)?o=await o.default(a):(Nc(o)&&(o=o.data),Oc(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await qc(o)(a):o=await Gc(o)(a):Hc(o)?o=await fr(o)(a):o instanceof WebAssembly.Module?o=await fr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await fr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return ja=t(),ja}function fr(e){return t=>WebAssembly.instantiate(e,t)}function qc(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Gc(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Li(e){return e&&await Uc(e),{createScanner(t){return new cr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new xi(t)}}}var Qa=pi({langs:Jt,themes:wi,engine:()=>Li(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Wc,codeToHast:zc,codeToTokens:Vc,codeToTokensBase:jc,codeToTokensWithThemes:$c,getSingletonHighlighter:Xc,getLastGrammarState:Qc}=mi(Qa,{guessEmbeddedLanguages:ni});var Ci=new Set(Object.keys(Jt)),pr=new Map,mr=new Map,Ct=new Map,Kc=(e,t)=>`${e}-${t[0]}-${t[1]}`,Jc=(e,t,a)=>{let o=e.slice(0,100),r=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${o}:${r}`},Zc=(e,t)=>{let a=Kc(e,t);if(pr.has(a))return pr.get(a);let o=Qa({themes:t,langs:[e]});return pr.set(a,o),o};function Yc(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return Ci.has(o)},getSupportedLanguages(){return Array.from(Ci)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=Jc(o,r,s);return mr.has(i)?mr.get(i):(n&&(Ct.has(i)||Ct.set(i,new Set),Ct.get(i).add(n)),Zc(r,s).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",f=l.codeToTokens(o,{lang:u,themes:{light:s[0],dark:s[1]}});mr.set(i,f);let d=Ct.get(i);if(d){for(let c of d)c(f);Ct.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),Ct.delete(i)}),null)}}}var Ii=Yc();import{memo as op}from"react";import{useEffect as ep,useRef as Ka,useState as tp}from"react";var ap=5,Si=400;function yi(e,t,a={}){let{msPerChar:o=ap}=a,[r,s]=tp(t?"":e),n=Ka(e),i=Ka(t?0:e.length),l=Ka(0),u=Ka(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),n.current=e,ep(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,s(e);return}if(n.current.length-i.current>Si&&(i.current=n.current.length-Si),u.current!==null)return;let d=c=>{let p=n.current;if(i.current>=p.length){u.current=null;return}l.current===0&&(l.current=c);let m=c-l.current;if(m>=o){let C=Math.min(Math.floor(m/o),p.length-i.current);i.current+=C,s(p.slice(0,i.current)),l.current=c}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,o]),r}import{jsx as Ja}from"react/jsx-runtime";var hr=({className:e,from:t,children:a,...o})=>Ja("div",{className:T("ww:group ww:flex ww:w-full",t==="user"?"is-user ww:ml-auto ww:max-w-[80%] ww:flex-col ww:items-end":"is-assistant ww:flex-col",e),...o,children:Ja("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),gr=({children:e,className:t,...a})=>Ja("div",{className:T("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),rp={cjk:Oo,code:Ii},sp={cjk:Oo},np={enabled:!1};function ip({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=yi(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Ja(yt,{className:T("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??np,plugins:a?sp:rp,...r,children:i})}var Za=op(ip,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Za.displayName="MessageResponse";import{createContext as lp,useCallback as up,useContext as Pi,useEffect as dp,useMemo as xr,useRef as fp,useState as Lr}from"react";import{Fragment as Ti,jsx as Q,jsxs as lt}from"react/jsx-runtime";function cp(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 o=Object.entries(e),r=[],s=t-2;for(let[n,i]of o){if(s<=8)break;let l=n.length>4?`${n.slice(0,4)}\u2026`:n,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 f=`${l}\u2009${u}`;r.push(f),s-=f.length+3}return`{${r.join(", ")}}`}function pp({text:e,className:t}){let{t:a}=H(),[o,r]=Lr(!1),s=fp(null);dp(()=>()=>{s.current&&clearTimeout(s.current)},[]);let n=up(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return Q(Ae,{variant:"ghost",size:"sm",onClick:n,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:o?lt(Ti,{children:[Q(kt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copied})]}):lt(Ti,{children:[Q(Pt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copy})]})})}function Ai({data:e,label:t,className:a,...o}){let[r,s]=Lr(!1),n=xr(()=>JSON.stringify(e,null,2),[e]),i=cp(e);return lt("div",{className:T("ww:rounded-lg ww:bg-tool-card",a),...o,children:[lt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[Q("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),Q(pp,{text:n})]}),lt("button",{type:"button",onClick:()=>s(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[Q(Tt,{className:T("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?Q("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:Q("code",{children:n})}):Q("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Cr=lp({open:!1,toggle:()=>{}});function vi({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=Lr(t);return Q(Cr.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:Q("div",{className:T("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:a})})}function Ri({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=Pi(Cr),n=a==="input-available"||a==="input-streaming",i=t??"";return lt("button",{type:"button",onClick:s,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":r,...o,children:[Q(Ye,{className:"ww:size-4 ww:shrink-0"}),Q("span",{className:"ww:truncate",children:n?Q(Be,{duration:1.6,children:i}):i}),Q(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Mi({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",s=t??"";return Q("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"},...o,children:Q("span",{className:"ww:truncate",children:r?Q(Be,{duration:1.6,children:s}):s})})}function Fi({className:e,children:t,...a}){let{open:o}=Pi(Cr);return Q("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Q("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Q("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 Ir({className:e,input:t,debug:a,...o}){let{t:r}=H(),s=xr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return Q(Ai,{data:s,label:r.tool.request,className:e,...o})}function wr(e){if(!(typeof e!="object"||e===null))return e}function Bi(e){return wr(e?.ui)}function Di(e){return wr(wr(e)?._meta)}function bi(e){if(!e)return;let t=Bi(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 o=e["openai/outputTemplate"];if(typeof o=="string"&&o.length>0)return o}function ki(e){return Bi(e)?.autoHeight===!0}function Yt(e,t,a){if(e){let o=bi(a?.[e]?._meta);if(o)return o}return bi(Di(t))}function Ei(e,t,a){return e&&ki(a?.[e]?._meta)?!0:ki(Di(t))}function Sr({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=H(),n=xr(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,o]);return t||a?a?lt("div",{className:T("ww:space-y-2",e),...r,children:[Q("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:s.tool.error}),Q("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):Q(Ai,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as _i,jsxs as mp}from"react/jsx-runtime";function Ni(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Oi(e){return e.parts.some(Ni)}function Hi(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!o.parts.some(s=>!(!Ni(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function Ui({className:e,...t}){let{t:a}=H();return mp("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:[_i(Bt,{className:"ww:size-4 ww:shrink-0"}),_i(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as hp,useEffect as Gi,useMemo as gp,useRef as ye,useState as Wi}from"react";function It(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 qi(e,t){return!It(e)&&!It(t)?null:It(e)?It(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 Pp}from"react/jsx-runtime";var wp="/api/mcp/resource",xp=500,Lp=0,Cp=16,Ip="2026-01-26",Sp=300,yp=3e3,bp=3;function kp(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Tp(e,t,a){return Yt(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function yr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=wp,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:c=!1,toolDefinitions:p}){let m=ye(null),C=ye(t),x=ye(a),L=ye({width:0,height:0}),g=ye(null),h=ye(!1),w=ye(0),b=ye("inline"),[k,P]=Wi(Lp),[A,E]=Wi(void 0),B=ye(l),O=ye(u),y=ye(f),v=ye(d),S=ye(r),M=ye(p);C.current=t,x.current=a,B.current=l,O.current=u,y.current=f,v.current=d,S.current=r,M.current=p;let X=hp(z=>i?Math.max(z+Cp,0):Math.min(Math.max(z,50),xp),[i]),ae=gp(()=>{let z=o.includes("?")?"&":"?";return`${o}${z}uri=${encodeURIComponent(e)}`},[o,e]),oe=ye(s);return oe.current=s,Gi(()=>{if(!h.current)return;let z=m.current;z?.contentWindow&&z.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),Gi(()=>{let z=m.current;if(!z)return;let re=!1,Le=!1,fe=null,ce=null,Ee=setTimeout(()=>{if(re||Le||w.current>=bp)return;w.current+=1;let V=new URL(z.src);V.searchParams.set("_retry",String(w.current)),z.src=V.toString()},yp),_=V=>{z.contentWindow?.postMessage(V,"*")},J=V=>{if(re||V.source!==z.contentWindow)return;let G=V.data;if(!G||typeof G!="object"||G.jsonrpc!=="2.0")return;let Z=G.method,U=G.id;if(Z==="ui/initialize"&&U!=null){Le=!0,clearTimeout(Ee),_({jsonrpc:"2.0",id:U,result:{protocolVersion:G.params?.protocolVersion??Ip,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:oe.current?"dark":"light",displayMode:b.current}}});return}if(Z==="ui/notifications/initialized"){h.current=!0;let j=C.current,$=x.current,R=$._meta&&typeof $._meta=="object"?$._meta:null,F=kp(S.current),q=R&&typeof R.waniwani=="object"&&R.waniwani!==null?R.waniwani:null,se=q||F?{...q??{},...F?{sessionId:F}:{}}:void 0,Ce=R||se?{...R??{},...se?{waniwani:se}:{}}:void 0;_({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:j}});let Me=$.content??[{type:"text",text:JSON.stringify($)}];_({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Me,structuredContent:$.structuredContent,_meta:Ce,meta:Ce}});return}if(Z==="ui/notifications/size-changed"){let j=G.params,$=typeof j?.height=="number"?j.height:void 0,R=typeof j?.width=="number"?j.width:void 0,F=L.current,q=$!==void 0&&$!==F.height,se=R!==void 0&&R!==F.width;if(!q&&!se)return;if(q&&$!==void 0){F.height=$;let Ce=X($),Me=z.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),P(Ce),z.animate&&Math.abs(Me-Ce)>2){let Ge=z.animate([{height:`${Me}px`},{height:`${Ce}px`}],{duration:Sp,easing:"ease-out",fill:"forwards"});g.current=Ge,Ge.onfinish=()=>{g.current===Ge&&(Ge.cancel(),g.current=null)}}}se&&i&&R!==void 0&&(F.width=R,E(R));return}if(Z==="ui/open-link"&&U!=null){let j=G.params?.url;typeof j=="string"&&(B.current?B.current(j):window.open(j,"_blank","noopener,noreferrer")),_({jsonrpc:"2.0",id:U,result:{}});return}if(Z==="ui/message"&&U!=null){if(O.current&&G.params){let j=G.params,$=fe;if(fe=null,ce){clearTimeout(ce.timer);let R=ce.text;ce=null;let F=(j.content??[]).map(q=>q.text??"").join("").trim();j={...j,content:[{type:"text",text:`${F}
12
+ \f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Xn(e,t,a,o){let r=o.schema,s=r.space==="svg"?!1:o.settings.omitOptionalTags,n=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=la);let u=Of(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!$n(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),n&&(r.space==="svg"||o.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!o.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(f),!n&&(!s||!Xt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Of(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=Hf(e,r,t[r]);s&&a.push(s)}}for(;++o<a.length;){let s=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&s!=='"'&&s!=="'"&&(a[o]+=" ")}return a.join("")}function Hf(e,t,a){let o=Qr(e.schema,t),r=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,s=e.settings.allowDangerousCharacters?0:1,n=e.quote,i;if(o.overloadedBoolean&&(a===o.attribute||a==="")?a=!0:(o.boolean||o.overloadedBoolean)&&(typeof a!="string"||a===o.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=qe(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Na.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Jr:Zr)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=qe(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Na.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&Lo(a,n)>Lo(a,e.alternative)&&(n=e.alternative),i=n+qe(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?Na.single:Na.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var Uf=["<","&"];function Oa(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:qe(e.value,Object.assign({},o.settings.characterReferences,{subset:Uf}))}function Qn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Oa(e,t,a,o)}function Kn(e,t,a,o){return o.all(e)}var Jn=Yr("type",{invalid:qf,unknown:Gf,handlers:{comment:Gn,doctype:Wn,element:Xn,raw:Qn,root:Kn,text:Oa}});function qf(e){throw new Error("Expected node, not `"+e+"`")}function Gf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Wf={},Vf={},zf=[];function Zo(e,t){let a=t||Wf,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:jf,all:$f,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||es,characterReferences:a.characterReferences||Vf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?la:Kr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function jf(e,t,a){return Jn(e,t,a,this)}function $f(e){let t=[],a=e&&e.children||zf,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ha(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,s]of Object.entries(t?.colorReplacements||{}))typeof s=="string"?a[r]=s:r===o&&Object.assign(a,s);return a}function Xe(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Xf(e){return Array.isArray(e)?e:[e]}async function ri(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function rr(e){return!e||["plaintext","txt","text","plain"].includes(e)}function si(e){return e==="ansi"||rr(e)}function sr(e){return e==="none"}function ni(e){return sr(e)}function ii(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 o of a)o&&!e.properties.class.includes(o)&&e.properties.class.push(o);return e}function Va(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let s=0;s<a.length;s+=2){let n=t?a[s]+(a[s+1]||""):a[s];r.push([n,o]),o+=a[s].length,o+=a[s+1]?.length||0}return r}function Qf(e){let t=Va(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let s=r,n=0;for(let i of t){if(s<i.length)break;s-=i.length,n++}return{line:n,character:s}}function o(r,s){let n=0;for(let i=0;i<r;i++)n+=t[i].length;return n+=s,n}return{lines:t,indexToPos:a,posToIndex:o}}function li(e,t,a){let o=new Set;for(let s of e.matchAll(/:?lang=["']([^"']+)["']/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/\\begin\{([\w-]+)\}/g)){let n=s[1].toLowerCase().trim();n&&o.add(n)}for(let s of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let n=s[1].toLowerCase().trim(),i=n.includes("/")?n.split("/").pop():n;i&&o.add(i)}if(!a)return Array.from(o);let r=a.getBundledLanguages();return Array.from(o).filter(s=>s&&r[s])}var nr="light-dark()",Kf=["color","background-color"];function Jf(e,t){let a=0,o=[];for(let r of t)r>a&&o.push({...e,content:e.content.slice(a,r),offset:e.offset+a}),a=r;return a<e.content.length&&o.push({...e,content:e.content.slice(a),offset:e.offset+a}),o}function Zf(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((o,r)=>o-r);return a.length?e.map(o=>o.flatMap(r=>{let s=a.filter(n=>r.offset<n&&n<r.offset+r.content.length).map(n=>n-r.offset).sort((n,i)=>n-i);return s.length?Jf(r,s):r})):e}function Yf(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>Ua(e.variants[f])),i=new Set(n.flatMap(f=>Object.keys(f))),l={},u=(f,d)=>{let c=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[f]+(d==="color"?"":c)};return n.forEach((f,d)=>{for(let c of i){let p=f[c]||"inherit";if(d===0&&o&&Kf.includes(c))if(o===nr&&n.length>1){let m=t.findIndex(g=>g==="light"),C=t.findIndex(g=>g==="dark");if(m===-1||C===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let w=n[m][c]||"inherit",x=n[C][c]||"inherit";l[c]=`light-dark(${w}, ${x})`,r==="css-vars"&&(l[u(d,c)]=p)}else l[c]=p;else r==="css-vars"&&(l[u(d,c)]=p)}}),s.htmlStyle=l,s}function Ua(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&ge.Italic&&(t["font-style"]="italic"),e.fontStyle&ge.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&ge.Underline&&a.push("underline"),e.fontStyle&ge.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function tr(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ui=new WeakMap;function za(e,t){ui.set(e,t)}function Kt(e){return ui.get(e)}var Lt=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(Xf(a).map(o=>[o,Ba])),t)}constructor(...t){if(t.length===2){let[a,o]=t;this.lang=o,this._stacks=a}else{let[a,o,r]=t;this.lang=o,this._stacks={[r]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return ec(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function ec(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let s=r?.nameScopesList?.scopeName;s&&t.push(s),r.parent&&o(r.parent)}return o(e),t}function tc(e,t){if(!(e instanceof Lt))throw new ee("Invalid grammar state");return e.getInternalStack(t)}function ac(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(n){if(typeof n=="number"){if(n<0||n>a.source.length)throw new ee(`Invalid decoration offset: ${n}. Code length: ${a.source.length}`);return{...r.indexToPos(n),offset:n}}else{let i=r.lines[n.line];if(i===void 0)throw new ee(`Invalid decoration position ${JSON.stringify(n)}. Lines length: ${r.lines.length}`);let l=n.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new ee(`Invalid decoration position ${JSON.stringify(n)}. Line ${n.line} length: ${i.length}`);return{...n,character:l,offset:r.posToIndex(n.line,l)}}},r=Qf(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));oc(s),e.set(a.meta,{decorations:s,converter:r,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let r=t(this).decorations.flatMap(n=>[n.start.offset,n.end.offset]);return Zf(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(f=>f.type==="element"&&f.tagName==="span");if(r.length!==o.converter.lines.length)throw new ee(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,c,p){let m=r[f],C="",w=-1,x=-1;if(d===0&&(w=0),c===0&&(x=0),c===Number.POSITIVE_INFINITY&&(x=m.children.length),w===-1||x===-1)for(let h=0;h<m.children.length;h++)C+=di(m.children[h]),w===-1&&C.length===d&&(w=h+1),x===-1&&C.length===c&&(x=h+1);if(w===-1)throw new ee(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(x===-1)throw new ee(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(w,x);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(w,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,c){let p=d.properties||{},m=d.transform||(C=>C);return f.tagName=d.tagName||"span",f.properties={...f.properties,...p,class:f.properties.class},d.properties?.class&&ii(f,d.properties.class),f=m(f,c)||f,f}let l=[],u=o.decorations.sort((f,d)=>d.start.offset-f.start.offset||f.end.offset-d.end.offset);for(let f of u){let{start:d,end:c}=f;if(d.line===c.line)s(d.line,d.character,c.character,f);else if(d.line<c.line){s(d.line,d.character,Number.POSITIVE_INFINITY,f);for(let p=d.line+1;p<c.line;p++)l.unshift(()=>n(p,f));s(c.line,0,c.character,f)}}l.forEach(f=>f())}}}function oc(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new ee(`Invalid decoration range: ${JSON.stringify(a.start)} - ${JSON.stringify(a.end)}`);for(let o=t+1;o<e.length;o++){let r=e[o],s=a.start.offset<=r.start.offset&&r.start.offset<a.end.offset,n=a.start.offset<r.end.offset&&r.end.offset<=a.end.offset,i=r.start.offset<=a.start.offset&&a.start.offset<r.end.offset,l=r.start.offset<a.end.offset&&a.end.offset<=r.end.offset;if(s||n||i||l){if(s&&n||i&&l||i&&a.start.offset===a.end.offset||n&&r.start.offset===r.end.offset)continue;throw new ee(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function di(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(di).join(""):""}var rc=[ac()];function qa(e){let t=sc(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...rc]}function sc(e){let t=[],a=[],o=[];for(let r of e)switch(r.enforce){case"pre":t.push(r);break;case"post":a.push(r);break;default:o.push(r)}return{pre:t,post:a,normal:o}}var it=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Yo={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function nc(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let o=e.indexOf("m",a);if(o!==-1)return{sequence:e.substring(a+2,o).split(";"),startPosition:a,position:o+1}}return{position:e.length}}function Zn(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(o=>Number.parseInt(o));return a.length!==3||a.some(o=>Number.isNaN(o))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function ic(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let o=Number.parseInt(a);if(!Number.isNaN(o))if(o===0)t.push({type:"resetAll"});else if(o<=9)Yo[o]&&t.push({type:"setDecoration",value:Yo[o]});else if(o<=29){let r=Yo[o-20];r&&(t.push({type:"resetDecoration",value:r}),r==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(o<=37)t.push({type:"setForegroundColor",value:{type:"named",name:it[o-30]}});else if(o===38){let r=Zn(e);r&&t.push({type:"setForegroundColor",value:r})}else if(o===39)t.push({type:"resetForegroundColor"});else if(o<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:it[o-40]}});else if(o===48){let r=Zn(e);r&&t.push({type:"setBackgroundColor",value:r})}else o===49?t.push({type:"resetBackgroundColor"}):o===53?t.push({type:"setDecoration",value:"overline"}):o===55?t.push({type:"resetDecoration",value:"overline"}):o>=90&&o<=97?t.push({type:"setForegroundColor",value:{type:"named",name:it[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:it[o-100+8]}})}return t}function lc(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=nc(o,s),i=n.sequence?o.substring(s,n.startPosition):o.substring(s);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),n.sequence){let l=ic(n.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)}s=n.position}while(s<o.length);return r}}}var uc={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 dc(e=uc){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 o;function r(){if(o)return o;o=[];for(let u=0;u<it.length;u++)o.push(t(it[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let f=0;f<6;f++)for(let d=0;d<6;d++)o.push(a([i[u],i[f],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function s(i){return r()[i]}function n(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return s(i.index)}}return{value:n}}var fc={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 cc(e,t,a){let o=Ha(e,a),r=Va(t),s=Object.fromEntries(it.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||fc[l]]})),n=dc(s),i=lc();return r.map(l=>i.parse(l[0]).map(u=>{let f,d;u.decorations.has("reverse")?(f=u.background?n.value(u.background):e.bg,d=u.foreground?n.value(u.foreground):e.fg):(f=u.foreground?n.value(u.foreground):e.fg,d=u.background?n.value(u.background):void 0),f=Xe(f,o),d=Xe(d,o),u.decorations.has("dim")&&(f=pc(f));let c=ge.None;return u.decorations.has("bold")&&(c|=ge.Bold),u.decorations.has("italic")&&(c|=ge.Italic),u.decorations.has("underline")&&(c|=ge.Underline),u.decorations.has("strikethrough")&&(c|=ge.Strikethrough),{content:u.value,offset:l[1],color:f,bgColor:d,fontStyle:c}}))}function pc(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let o=t[1];if(o.length===8){let r=Math.round(Number.parseInt(o.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${o.slice(0,6)}${r}`}else{if(o.length===6)return`#${o}80`;if(o.length===4){let r=o[0],s=o[1],n=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${s}${s}${n}${n}${l}`}else if(o.length===3){let r=o[0],s=o[1],n=o[2];return`#${r}${r}${s}${s}${n}${n}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function ir(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(rr(r)||sr(o))return Va(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return cc(s,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new ee(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new ee(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${s.name}"`)}return hc(t,i,s,n,a)}function mc(...e){if(e.length===2)return Kt(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(rr(r)||sr(s))throw new ee("Plain language does not have grammar state");if(r==="ansi")throw new ee("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new Lt(lr(a,l,n,i,o).stateStack,l.name,n.name)}function hc(e,t,a,o,r){let s=lr(e,t,a,o,r),n=new Lt(s.stateStack,t.name,a.name);return za(s.tokens,n),s.tokens}function lr(e,t,a,o,r){let s=Ha(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=Va(e),u=r.grammarState?tc(r.grammarState,a.name)??Ba:r.grammarContextCode!=null?lr(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Ba,f=[],d=[];for(let c=0,p=l.length;c<p;c++){let[m,C]=l[c];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:C,color:"",fontStyle:0}]);continue}let w,x,g;r.includeExplanation&&(w=t.tokenizeLine(m,u,i),x=w.tokens,g=0);let h=t.tokenizeLine2(m,u,i),L=h.tokens.length/2;for(let S=0;S<L;S++){let k=h.tokens[2*S],A=S+1<L?h.tokens[2*S+2]:m.length;if(k===A)continue;let P=h.tokens[2*S+1],E=Xe(o[nt.getForeground(P)],s),B=nt.getFontStyle(P),O={content:m.substring(k,A),offset:C+k,color:E,fontStyle:B};if(r.includeExplanation){let b=[];if(r.includeExplanation!=="scopeName")for(let y of a.settings){let M;switch(typeof y.scope){case"string":M=y.scope.split(/,/).map(X=>X.trim());break;case"object":M=y.scope;break;default:continue}b.push({settings:y,selectors:M.map(X=>X.split(/ /))})}O.explanation=[];let v=0;for(;k+v<A;){let y=x[g],M=m.substring(y.startIndex,y.endIndex);v+=M.length,O.explanation.push({content:M,scopes:r.includeExplanation==="scopeName"?gc(y.scopes):wc(b,y.scopes)}),g+=1}}f.push(O)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function gc(e){return e.map(t=>({scopeName:t}))}function wc(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:Lc(e,s,t.slice(0,o))}}return a}function Yn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function xc(e,t,a){if(!Yn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Yn(e[o],a[r])&&(o-=1),r-=1;return o===-1}function Lc(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(xc(n,t,a)){o.push(s);break}return o}function fi(e,t,a){let o=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),r=o.map(l=>{let u=ir(e,t,{...a,theme:l.theme}),f=Kt(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=Cc(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let c={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(c.explanation=f.explanation),s.forEach((p,m)=>{let{content:C,explanation:w,offset:x,...g}=p[u][d];c.variants[o[m].color]=g}),c})),i=r[0].state?new Lt(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&za(n,i),n}function Cc(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),s=t.map(()=>[]);t.forEach((l,u)=>l.push(s[u]));let n=r.map(()=>0),i=r.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 f=i[u];f.content.length===l?(s[u].push(f),n[u]+=1,i[u]=r[u][n[u]]):(s[u].push({...f,content:f.content.slice(0,l)}),i[u]={...f,content:f.content.slice(l),offset:f.offset+l})}}}return t}function Ga(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,c=Object.entries(a.themes).filter(x=>x[1]).map(x=>({color:x[0],theme:x[1]})).sort((x,g)=>x.color===u?-1:g.color===u?1:0);if(c.length===0)throw new ee("`themes` option must not be empty");let p=fi(e,t,a);if(l=Kt(p),u&&nr!==u&&!c.find(x=>x.color===u))throw new ee(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(x=>e.getTheme(x.theme)),C=c.map(x=>x.color);s=p.map(x=>x.map(g=>Yf(g,C,f,u,d))),l&&za(s,l);let w=c.map(x=>Ha(x.theme,a));r=ei(c,m,w,f,u,"fg",d),o=ei(c,m,w,f,u,"bg",d),n=`shiki-themes ${m.map(x=>x.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ha(a.theme,a);s=ir(e,t,a);let f=e.getTheme(a.theme);o=Xe(f.bg,u),r=Xe(f.fg,u),n=f.name,l=Kt(s)}else throw new ee("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function ei(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=Xe(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===nr&&e.length>1){let d=e.findIndex(C=>C.color==="light"),c=e.findIndex(C=>C.color==="dark");if(d===-1||c===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Xe(t[d][s],a[d])||"inherit",m=Xe(t[c][s],a[c])||"inherit";return`light-dark(${p}, ${m});${f}`}return u}return n==="css-vars"?f:null}).filter(i=>!!i).join(";")}function Wa(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Wa(e,r,s),codeToTokens:(r,s)=>Ga(e,r,s)}){let r=t;for(let m of qa(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=Ga(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:c=!1}=a;d===!0?s=Sc(s):d==="never"&&(s=yc(s)),c&&(s=bc(s));let p={...o,get source(){return r}};for(let m of qa(a))s=m.tokens?.call(p,s)||s;return Ic(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,f)}function Ic(e,t,a,o=Kt(e)){let r=qa(t),s=[],n={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[C,w]of Object.entries(t.meta||{}))C.startsWith("_")||(u[C]=w);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},c=[],p={...a,structure:i,addClassToHast:ii,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return c}};if(e.forEach((C,w)=>{w&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
13
+ `}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of C){let L={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},S=tr(h.htmlStyle||Ua(h));S&&(L.properties.style=S);for(let k of r)L=k?.span?.call(p,L,w+1,g,x,h)||L;i==="inline"?n.children.push(L):i==="classic"&&x.children.push(L),g+=h.content.length}if(i==="classic"){for(let h of r)x=h?.line?.call(p,x,w+1)||x;c.push(x),s.push(x)}else i==="inline"&&c.push(x)}),i==="classic"){for(let C of r)d=C?.code?.call(p,d)||d;f.children.push(d);for(let C of r)f=C?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let C=[],w={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(C.push(w),w={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&w.children.push(h);C.push(w);let g={type:"element",tagName:"code",properties:{},children:C};for(let h of r)g=h?.code?.call(p,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let L=g.children[h];L.type==="element"&&n.children.push(...L.children)}}let m=n;for(let C of r)m=C?.root?.call(p,m)||m;return o&&za(m,o),m}function Sc(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&ge.Underline||s.fontStyle&ge.Strikethrough));l&&s.content.match(/^\s+$/)&&t[n+1]?(r===void 0&&(r=s.offset),o+=s.content):o?(l?a.push({...s,offset:r,content:o+s.content}):a.push({content:o,offset:r},s),r=void 0,o=""):a.push(s)}),a})}function yc(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let o=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!o)return a;let[,r,s,n]=o;if(!r&&!n)return a;let i=[{...a,offset:a.offset+r.length,content:s}];return r&&i.unshift({content:r,offset:a.offset}),n&&i.push({content:n,offset:a.offset+r.length+s.length}),i}))}function bc(e){return e.map(t=>{let a=[];for(let o of t){if(a.length===0){a.push({...o});continue}let r=a[a.length-1],s=tr(r.htmlStyle||Ua(r)),n=tr(o.htmlStyle||Ua(o)),i=r.fontStyle&&(r.fontStyle&ge.Underline||r.fontStyle&ge.Strikethrough),l=o.fontStyle&&(o.fontStyle&ge.Underline||o.fontStyle&ge.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var kc=Zo;function Tc(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Wa(e,s,n),codeToTokens:(s,n)=>Ga(e,s,n)},r=kc(Wa(e,t,a,o));for(let s of qa(a))r=s.postprocess?.call(o,r,a)||r;return r}var ti={light:"#333333",dark:"#bbbbbb"},ai={light:"#fffffe",dark:"#1e1e1e"},oi="__shiki_resolved";function ur(e){if(e?.[oi])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:o}=t;if(!a||!o){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(o=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!o&&t?.colors?.["editor.foreground"]&&(o=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),o||(o=t.type==="light"?ti.light:ti.dark),a||(a=t.type==="light"?ai.light:ai.dark),t.fg=o,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 r=0,s=new Map;function n(i){if(s.has(i))return s.get(i);r+=1;let l=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?n(i):(s.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 f={...i,settings:{...i.settings}};if(l){let d=n(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,f.settings.foreground=d}if(u){let d=n(i.settings.background);t.colorReplacements[d]=i.settings.background,f.settings.background=d}return f});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=n(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,oi,{enumerable:!1,writable:!1,value:!0}),t}async function ci(e){return Array.from(new Set((await Promise.all(e.filter(t=>!si(t)).map(async t=>await ri(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function pi(e){return(await Promise.all(e.map(async a=>ni(a)?null:ur(await ri(a))))).filter(a=>!!a)}var er=3,Pc=!1;function Ac(e,t=3){if(er&&!(typeof er=="number"&&t>er)){if(Pc)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var $e=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function mi(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 $e(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var ar=class extends Fn{constructor(t,a,o,r={}){super(t),this._resolver=t,this._themes=a,this._langs=o,this._alias=r,this._themes.map(s=>this.loadTheme(s)),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=ur(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=Wt.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=mi(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(s=>s.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let o={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let r=this.loadGrammarWithConfiguration(t.scopeName,1,o);if(r.name=t.name,this._resolvedGrammars.set(t.name,r),t.aliases&&t.aliases.forEach(s=>{this._alias[s]=t.name}),this._loadedLanguagesCache=null,a.size)for(let s of a)this._resolvedGrammars.delete(s.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(s.scopeName),this._syncRegistry?._grammars?.delete(s.scopeName),this.loadLanguage(this._langMap.get(s.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let r of t)this.resolveEmbeddedLanguages(r);let a=Array.from(this._langGraph.entries()),o=a.filter(([r,s])=>!s);if(o.length){let r=a.filter(([s,n])=>n?(n.embeddedLanguages||n.embeddedLangs)?.some(l=>o.map(([u])=>u).includes(l)):!1).filter(s=>!o.includes(s));throw new $e(`Missing languages ${o.map(([s])=>`\`${s}\``).join(", ")}, required by ${r.map(([s])=>`\`${s}\``).join(", ")}`)}for(let[r,s]of a)this._resolver.addLanguage(s);for(let[r,s]of a)this.loadLanguage(s)}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 o of a)this._langGraph.set(o,this._langMap.get(o))}},or=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:o=>t.createScanner(o),createOnigString:o=>t.createString(o)},a.forEach(o=>this.addLanguage(o))}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("."),o=[];for(let r=1;r<=a.length;r++){let s=a.slice(0,r).join(".");o=[...o,...this._injections.get(s)||[]]}return o}},Qt=0;function vc(e){Qt+=1,e.warnings!==!1&&Qt>=10&&Qt%10===0&&console.warn(`[Shiki] ${Qt} 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 $e("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(ur),r=new or(e.engine,a),s=new ar(r,o,a,e.langAlias),n;function i(h){return mi(h,e.langAlias)}function l(h){x();let L=s.getGrammar(typeof h=="string"?h:h.name);if(!L)throw new $e(`Language \`${h}\` not found, you may need to load it first`);return L}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();let L=s.getTheme(h);if(!L)throw new $e(`Theme \`${h}\` not found, you may need to load it first`);return L}function f(h){x();let L=u(h);n!==h&&(s.setTheme(L),n=h);let S=s.getColorMap();return{theme:L,colorMap:S}}function d(){return x(),s.getLoadedThemes()}function c(){return x(),s.getLoadedLanguages()}function p(...h){x(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await ci(h))}function C(...h){x();for(let L of h.flat(1))s.loadTheme(L)}async function w(...h){return x(),C(await pi(h))}function x(){if(t)throw new $e("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Qt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:c,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:w,loadThemeSync:C,dispose:g,[Symbol.dispose]:g}}async function Rc(e){e.engine||Ac("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([pi(e.themes||[]),ci(e.langs||[]),e.engine]);return vc({...e,themes:t,langs:a,engine:o})}async function Mc(e){let t=await Rc(e);return{getLastGrammarState:(...a)=>mc(t,...a),codeToTokensBase:(a,o)=>ir(t,a,o),codeToTokensWithThemes:(a,o)=>fi(t,a,o),codeToTokens:(a,o)=>Ga(t,a,o),codeToHast:(a,o)=>Wa(t,a,o),codeToHtml:(a,o)=>Tc(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function hi(e){let t=e.langs,a=e.themes,o=e.engine;async function r(s){function n(d){if(typeof d=="string"){if(d=s.langAlias?.[d]||d,si(d))return[];let c=t[d];if(!c)throw new ee(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}function i(d){if(ni(d))return"none";if(typeof d=="string"){let c=a[d];if(!c)throw new ee(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await Mc({engine:s.engine??o(),...s,themes:l,langs:u});return{...f,loadLanguage(...d){return f.loadLanguage(...d.map(n))},loadTheme(...d){return f.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function Fc(e){let t;async function a(o={}){if(t){let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}else{t=e({...o,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}}return a}function gi(e,t){let a=Fc(e);async function o(r,s){let n=await a({langs:[s.lang],themes:"theme"in s?[s.theme]:Object.values(s.themes)}),i=await t?.guessEmbeddedLanguages?.(r,s.lang,n);return i&&await n.loadLanguage(...i),n}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,s){return(await o(r,s)).codeToHtml(r,s)},async codeToHast(r,s){return(await o(r,s)).codeToHast(r,s)},async codeToTokens(r,s){return(await o(r,s)).codeToTokens(r,s)},async codeToTokensBase(r,s){return(await o(r,s)).codeToTokensBase(r,s)},async codeToTokensWithThemes(r,s){return(await o(r,s)).codeToTokensWithThemes(r,s)},async getLastGrammarState(r,s){return(await a({langs:[s.lang],themes:[s.theme]})).getLastGrammarState(r,s)}}}var dr=[{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"))}],wi=Object.fromEntries(dr.map(e=>[e.id,e.import])),xi=Object.fromEntries(dr.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Jt={...wi,...xi};var Bc=[{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"))}],Li=Object.fromEntries(Bc.map(e=>[e.id,e.import]));var Zt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Dc(){return 2147483648}function Ec(){return typeof performance<"u"?performance.now():Date.now()}var _c=(e,t)=>e+(t-e%t)%t;async function Nc(e){let t,a,o={};function r(p){a=p,o.HEAPU8=new Uint8Array(p),o.HEAPU32=new Uint32Array(p)}function s(p,m,C){o.HEAPU8.copyWithin(p,m,m+C)}function n(p){try{return t.grow(p-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(p){let m=o.HEAPU8.length;p=p>>>0;let C=Dc();if(p>C)return!1;for(let w=1;w<=4;w*=2){let x=m*(1+.2/w);x=Math.min(x,p+100663296);let g=Math.min(C,_c(Math.max(p,x),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,C=1024){let w=m+C,x=m;for(;p[x]&&!(x>=w);)++x;if(x-m>16&&p.buffer&&l)return l.decode(p.subarray(m,x));let g="";for(;m<x;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let L=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|L);continue}let S=p[m++]&63;if((h&240)===224?h=(h&15)<<12|L<<6|S:h=(h&7)<<18|L<<12|S<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let k=h-65536;g+=String.fromCharCode(55296|k>>10,56320|k&1023)}}return g}function f(p,m){return p?u(o.HEAPU8,p,m):""}let d={emscripten_get_now:Ec,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function c(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await c(),o}var Oc=Object.defineProperty,Hc=(e,t,a)=>t in e?Oc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,le=(e,t,a)=>Hc(e,typeof t!="symbol"?t+"":t,a),me=null;function Uc(e){throw new Zt(e.UTF8ToString(e.getLastOnigError()))}var $a=class e{constructor(t){le(this,"utf16Length"),le(this,"utf8Length"),le(this,"utf16Value"),le(this,"utf8Value"),le(this,"utf16OffsetToUtf8"),le(this,"utf8OffsetToUtf16");let a=t.length,o=e._utf8ByteLength(t),r=o!==a,s=r?new Uint32Array(a+1):null;r&&(s[a]=o);let n=r?new Uint32Array(o+1):null;r&&(n[o]=a);let i=new Uint8Array(o),l=0;for(let u=0;u<a;u++){let f=t.charCodeAt(u),d=f,c=!1;if(f>=55296&&f<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(d=(f-55296<<10)+65536|p-56320,c=!0)}r&&(s[u]=l,c&&(s[u+1]=l),d<=127?n[l+0]=u:d<=2047?(n[l+0]=u,n[l+1]=u):d<=65535?(n[l+0]=u,n[l+1]=u,n[l+2]=u):(n[l+0]=u,n[l+1]=u,n[l+2]=u,n[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),c&&u++}this.utf16Length=a,this.utf8Length=o,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=s,this.utf8OffsetToUtf16=n}static _utf8ByteLength(t){let a=0;for(let o=0,r=t.length;o<r;o++){let s=t.charCodeAt(o),n=s,i=!1;if(s>=55296&&s<=56319&&o+1<r){let l=t.charCodeAt(o+1);l>=56320&&l<=57343&&(n=(s-55296<<10)+65536|l-56320,i=!0)}n<=127?a+=1:n<=2047?a+=2:n<=65535?a+=3:a+=4,i&&o++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},Xa=class Oe{constructor(t){if(le(this,"id",++Oe.LAST_ID),le(this,"_onigBinding"),le(this,"content"),le(this,"utf16Length"),le(this,"utf8Length"),le(this,"utf16OffsetToUtf8"),le(this,"utf8OffsetToUtf16"),le(this,"ptr"),!me)throw new Zt("Must invoke loadWasm first.");this._onigBinding=me,this.content=t;let a=new $a(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Oe._sharedPtrInUse?(Oe._sharedPtr||(Oe._sharedPtr=me.omalloc(1e4)),Oe._sharedPtrInUse=!0,me.HEAPU8.set(a.utf8Value,Oe._sharedPtr),this.ptr=Oe._sharedPtr):this.ptr=a.createString(me)}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===Oe._sharedPtr?Oe._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};le(Xa,"LAST_ID",0);le(Xa,"_sharedPtr",0);le(Xa,"_sharedPtrInUse",!1);var Ci=Xa,cr=class{constructor(t){if(le(this,"_onigBinding"),le(this,"_ptr"),!me)throw new Zt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new $a(t[i]);a[i]=u.createString(me),o[i]=u.utf8Length}let r=me.omalloc(4*t.length);me.HEAPU32.set(a,r/4);let s=me.omalloc(4*t.length);me.HEAPU32.set(o,s/4);let n=me.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)me.ofree(a[i]);me.ofree(s),me.ofree(r),n===0&&Uc(me),this._onigBinding=me,this._ptr=n}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new Ci(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let c=0;c<f;c++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[c]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function qc(e){return typeof e.instantiator=="function"}function Gc(e){return typeof e.default=="function"}function Wc(e){return typeof e.data<"u"}function Vc(e){return typeof Response<"u"&&e instanceof Response}function zc(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 ja;function jc(e){if(ja)return ja;async function t(){me=await Nc(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),qc(o)?o=await o.instantiator(a):Gc(o)?o=await o.default(a):(Wc(o)&&(o=o.data),Vc(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await $c(o)(a):o=await Xc(o)(a):zc(o)?o=await fr(o)(a):o instanceof WebAssembly.Module?o=await fr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await fr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return ja=t(),ja}function fr(e){return t=>WebAssembly.instantiate(e,t)}function $c(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Xc(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Ii(e){return e&&await jc(e),{createScanner(t){return new cr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Ci(t)}}}var Qa=hi({langs:Jt,themes:Li,engine:()=>Ii(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Qc,codeToHast:Kc,codeToTokens:Jc,codeToTokensBase:Zc,codeToTokensWithThemes:Yc,getSingletonHighlighter:ep,getLastGrammarState:tp}=gi(Qa,{guessEmbeddedLanguages:li});var Si=new Set(Object.keys(Jt)),pr=new Map,mr=new Map,Ct=new Map,ap=(e,t)=>`${e}-${t[0]}-${t[1]}`,op=(e,t,a)=>{let o=e.slice(0,100),r=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${o}:${r}`},rp=(e,t)=>{let a=ap(e,t);if(pr.has(a))return pr.get(a);let o=Qa({themes:t,langs:[e]});return pr.set(a,o),o};function sp(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return Si.has(o)},getSupportedLanguages(){return Array.from(Si)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=op(o,r,s);return mr.has(i)?mr.get(i):(n&&(Ct.has(i)||Ct.set(i,new Set),Ct.get(i).add(n)),rp(r,s).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",f=l.codeToTokens(o,{lang:u,themes:{light:s[0],dark:s[1]}});mr.set(i,f);let d=Ct.get(i);if(d){for(let c of d)c(f);Ct.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),Ct.delete(i)}),null)}}}var yi=sp();import{memo as up}from"react";import{useEffect as np,useRef as Ka,useState as ip}from"react";var lp=5,bi=400;function ki(e,t,a={}){let{msPerChar:o=lp}=a,[r,s]=ip(t?"":e),n=Ka(e),i=Ka(t?0:e.length),l=Ka(0),u=Ka(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),n.current=e,np(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,s(e);return}if(n.current.length-i.current>bi&&(i.current=n.current.length-bi),u.current!==null)return;let d=c=>{let p=n.current;if(i.current>=p.length){u.current=null;return}l.current===0&&(l.current=c);let m=c-l.current;if(m>=o){let C=Math.min(Math.floor(m/o),p.length-i.current);i.current+=C,s(p.slice(0,i.current)),l.current=c}u.current=requestAnimationFrame(d)};return u.current=requestAnimationFrame(d),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,o]),r}import{jsx as Ja}from"react/jsx-runtime";var hr=({className:e,from:t,children:a,...o})=>Ja("div",{className:T("ww:group ww:flex ww:w-full",t==="user"?"is-user ww:ml-auto ww:max-w-[80%] ww:flex-col ww:items-end":"is-assistant ww:flex-col",e),...o,children:Ja("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),gr=({children:e,className:t,...a})=>Ja("div",{className:T("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),dp={cjk:Oo,code:yi},fp={cjk:Oo},cp={enabled:!1};function pp({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=ki(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Ja(yt,{className:T("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??cp,plugins:a?fp:dp,...r,children:i})}var Za=up(pp,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Za.displayName="MessageResponse";import{createContext as mp,useCallback as hp,useContext as vi,useEffect as gp,useMemo as xr,useRef as wp,useState as Lr}from"react";import{Fragment as Ai,jsx as Q,jsxs as lt}from"react/jsx-runtime";function xp(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 o=Object.entries(e),r=[],s=t-2;for(let[n,i]of o){if(s<=8)break;let l=n.length>4?`${n.slice(0,4)}\u2026`:n,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 f=`${l}\u2009${u}`;r.push(f),s-=f.length+3}return`{${r.join(", ")}}`}function Lp({text:e,className:t}){let{t:a}=H(),[o,r]=Lr(!1),s=wp(null);gp(()=>()=>{s.current&&clearTimeout(s.current)},[]);let n=hp(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return Q(Ae,{variant:"ghost",size:"sm",onClick:n,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:o?lt(Ai,{children:[Q(kt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copied})]}):lt(Ai,{children:[Q(Pt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copy})]})})}function Ri({data:e,label:t,className:a,...o}){let[r,s]=Lr(!1),n=xr(()=>JSON.stringify(e,null,2),[e]),i=xp(e);return lt("div",{className:T("ww:rounded-lg ww:bg-tool-card",a),...o,children:[lt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[Q("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),Q(Lp,{text:n})]}),lt("button",{type:"button",onClick:()=>s(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[Q(Tt,{className:T("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",r&&"ww:rotate-90")}),r?Q("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:Q("code",{children:n})}):Q("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Cr=mp({open:!1,toggle:()=>{}});function Mi({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=Lr(t);return Q(Cr.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:Q("div",{className:T("ww:mb-4 ww:w-full",e),"data-state":r?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:a})})}function Fi({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=vi(Cr),n=a==="input-available"||a==="input-streaming",i=t??"";return lt("button",{type:"button",onClick:s,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":r,...o,children:[Q(Ye,{className:"ww:size-4 ww:shrink-0"}),Q("span",{className:"ww:truncate",children:n?Q(Be,{duration:1.6,children:i}):i}),Q(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Bi({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",s=t??"";return Q("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"},...o,children:Q("span",{className:"ww:truncate",children:r?Q(Be,{duration:1.6,children:s}):s})})}function Di({className:e,children:t,...a}){let{open:o}=vi(Cr);return Q("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Q("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Q("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 Ir({className:e,input:t,debug:a,...o}){let{t:r}=H(),s=xr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return Q(Ri,{data:s,label:r.tool.request,className:e,...o})}function wr(e){if(!(typeof e!="object"||e===null))return e}function Ei(e){return wr(e?.ui)}function _i(e){return wr(wr(e)?._meta)}function Ti(e){if(!e)return;let t=Ei(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 o=e["openai/outputTemplate"];if(typeof o=="string"&&o.length>0)return o}function Pi(e){return Ei(e)?.autoHeight===!0}function Yt(e,t,a){if(e){let o=Ti(a?.[e]?._meta);if(o)return o}return Ti(_i(t))}function Ni(e,t,a){return e&&Pi(a?.[e]?._meta)?!0:Pi(_i(t))}function Sr({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=H(),n=xr(()=>{if(!o&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,o]);return t||a?a?lt("div",{className:T("ww:space-y-2",e),...r,children:[Q("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:s.tool.error}),Q("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):Q(Ri,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as Oi,jsxs as Cp}from"react/jsx-runtime";function Hi(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Ui(e){return e.parts.some(Hi)}function qi(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!o.parts.some(s=>!(!Hi(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function Gi({className:e,...t}){let{t:a}=H();return Cp("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:[Oi(Bt,{className:"ww:size-4 ww:shrink-0"}),Oi(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as Ip,useEffect as Vi,useMemo as Sp,useRef as ye,useState as zi}from"react";function It(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 Wi(e,t){return!It(e)&&!It(t)?null:It(e)?It(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 Bp}from"react/jsx-runtime";var yp="/api/mcp/resource",bp=500,kp=0,Tp=16,Pp="2026-01-26",Ap=300,vp=3e3,Rp=3;function Mp(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Fp(e,t,a){return Yt(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function yr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=yp,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:c=!1,toolDefinitions:p}){let m=ye(null),C=ye(t),w=ye(a),x=ye({width:0,height:0}),g=ye(null),h=ye(!1),L=ye(0),S=ye("inline"),[k,A]=zi(kp),[P,E]=zi(void 0),B=ye(l),O=ye(u),b=ye(f),v=ye(d),y=ye(r),M=ye(p);C.current=t,w.current=a,B.current=l,O.current=u,b.current=f,v.current=d,y.current=r,M.current=p;let X=Ip(V=>i?Math.max(V+Tp,0):Math.min(Math.max(V,50),bp),[i]),ae=Sp(()=>{let V=o.includes("?")?"&":"?";return`${o}${V}uri=${encodeURIComponent(e)}`},[o,e]),oe=ye(s);return oe.current=s,Vi(()=>{if(!h.current)return;let V=m.current;V?.contentWindow&&V.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),Vi(()=>{let V=m.current;if(!V)return;let re=!1,Le=!1,fe=null,ce=null,Ee=setTimeout(()=>{if(re||Le||L.current>=Rp)return;L.current+=1;let z=new URL(V.src);z.searchParams.set("_retry",String(L.current)),V.src=z.toString()},vp),_=z=>{V.contentWindow?.postMessage(z,"*")},J=z=>{if(re||z.source!==V.contentWindow)return;let G=z.data;if(!G||typeof G!="object"||G.jsonrpc!=="2.0")return;let Z=G.method,U=G.id;if(Z==="ui/initialize"&&U!=null){Le=!0,clearTimeout(Ee),_({jsonrpc:"2.0",id:U,result:{protocolVersion:G.params?.protocolVersion??Pp,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:oe.current?"dark":"light",displayMode:S.current}}});return}if(Z==="ui/notifications/initialized"){h.current=!0;let j=C.current,$=w.current,R=$._meta&&typeof $._meta=="object"?$._meta:null,F=Mp(y.current),q=R&&typeof R.waniwani=="object"&&R.waniwani!==null?R.waniwani:null,se=q||F?{...q??{},...F?{sessionId:F}:{}}:void 0,Ce=R||se?{...R??{},...se?{waniwani:se}:{}}:void 0;_({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:j}});let Me=$.content??[{type:"text",text:JSON.stringify($)}];_({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Me,structuredContent:$.structuredContent,_meta:Ce,meta:Ce}});return}if(Z==="ui/notifications/size-changed"){let j=G.params,$=typeof j?.height=="number"?j.height:void 0,R=typeof j?.width=="number"?j.width:void 0,F=x.current,q=$!==void 0&&$!==F.height,se=R!==void 0&&R!==F.width;if(!q&&!se)return;if(q&&$!==void 0){F.height=$;let Ce=X($),Me=V.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),A(Ce),V.animate&&Math.abs(Me-Ce)>2){let Ge=V.animate([{height:`${Me}px`},{height:`${Ce}px`}],{duration:Ap,easing:"ease-out",fill:"forwards"});g.current=Ge,Ge.onfinish=()=>{g.current===Ge&&(Ge.cancel(),g.current=null)}}}se&&i&&R!==void 0&&(F.width=R,E(R));return}if(Z==="ui/open-link"&&U!=null){let j=G.params?.url;typeof j=="string"&&(B.current?B.current(j):window.open(j,"_blank","noopener,noreferrer")),_({jsonrpc:"2.0",id:U,result:{}});return}if(Z==="ui/message"&&U!=null){if(O.current&&G.params){let j=G.params,$=fe;if(fe=null,ce){clearTimeout(ce.timer);let R=ce.text;ce=null;let F=(j.content??[]).map(q=>q.text??"").join("").trim();j={...j,content:[{type:"text",text:`${F}
14
14
 
15
- ${R}`}]}}O.current({...j,...$?{modelContext:$}:{}})}_({jsonrpc:"2.0",id:U,result:{}});return}if(Z==="ui/update-model-context"&&U!=null){fe=qi(fe,G.params),_({jsonrpc:"2.0",id:U,result:{}});return}if(Z==="tools/call"&&U!=null){let j=y.current;if(!j){_({jsonrpc:"2.0",id:U,error:{code:-32601,message:"tools/call not supported"}});return}let $=G.params?.name;j({name:$,arguments:G.params?.arguments??{}}).then(R=>{_({jsonrpc:"2.0",id:U,result:R});let F=R.content?.map(q=>q.text??"").join("").trim();F&&Tp($,R,M.current)&&(ce&&clearTimeout(ce.timer),ce={text:F,timer:setTimeout(()=>{if(re)return;let q=fe;fe=null,ce=null,O.current?.({role:"user",content:[{type:"text",text:F}],...q?{modelContext:q}:{}})},500)})}).catch(R=>{let F=R instanceof Error?R.message:"Tool call failed";_({jsonrpc:"2.0",id:U,error:{code:-32e3,message:F}})});return}if(Z==="ui/request-display-mode"&&U!=null){let j=G.params?.mode,$=j==="fullscreen"||j==="inline"||j==="pip"?j:"inline";b.current=$,_({jsonrpc:"2.0",id:U,result:{mode:$}}),_({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),v.current?.($);return}if(Z==="ui/resource-teardown"&&U!=null){_({jsonrpc:"2.0",id:U,result:{}});return}Z==="ping"&&U!=null&&_({jsonrpc:"2.0",id:U,result:{}})};return window.addEventListener("message",J),()=>{re=!0,clearTimeout(Ee),ce&&clearTimeout(ce.timer),window.removeEventListener("message",J)}},[i,X]),Pp("iframe",{ref:m,src:ae,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:T(!c&&"ww:rounded-md ww:border ww:border-border",n),style:{height:c?"100%":k,minWidth:c||!A?void 0:`min(${A}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as ea,jsxs as Ap}from"react/jsx-runtime";function zi({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Ap("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&&ea("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}),ea("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&ea("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&ea("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:o.map((s,n)=>ea("button",{type:"button",onClick:()=>r?.(s),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:`${n*50}ms`},children:s},s))})]})}import{Component as vp}from"react";import{jsx as br,jsxs as Mp}from"react/jsx-runtime";function Rp({onRetry:e}){let{t}=H();return Mp("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:[br("span",{children:t.widgetErrorBoundary.failedToLoad}),br("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Ya=class extends vp{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?br(Rp,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Bp,jsx as K,jsxs as Qe}from"react/jsx-runtime";function Vi(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Fp(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?vt:Ye}function eo({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:s,chatSessionId:n,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:f,fullscreenToolCallId:d,debug:c,showToolCalls:p=!0,toolDefinitions:m}){let{t:C}=H(),x=e[e.length-1],L=e.length>0,g=d!=null,h=!g&&Hi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return Qe(Bp,{children:[!g&&(!L&&o?K(zi,{...o,onSuggestionSelect:r}):a&&K(hr,{from:"assistant",children:K(gr,{children:K(Za,{children:a})})})),e.map(w=>{let b=w.parts.filter(S=>S.type==="text"),k=w.parts.filter(S=>S.type==="reasoning"),P=w.parts.filter(S=>S.type==="file"),A=w.parts.filter(S=>"toolCallId"in S),E=w.parts.filter(S=>S.type==="reasoning"||"toolCallId"in S),B=w===x&&w.role==="assistant",O=b.length>0,y=g?A.some(S=>S.toolCallId===d):!1,v=p!==!1&&!y&&E.length>=2;return g&&!y?K("div",{style:{display:"none"}},w.id):w.role==="assistant"&&!Oi(w)?K("div",{style:{display:"none"}},w.id):p===!1&&w.role==="assistant"&&!O&&P.length===0&&A.every(S=>{let M="output"in S?S.output:void 0;return M===void 0||!s||!Yt(S.toolName,M,m)})?K("div",{style:{display:"none"}},w.id):Qe(hr,{from:w.role,children:[p!==!1&&!y&&!v&&k.map((S,M)=>Qe(Nt,{isStreaming:S.state==="streaming",children:[K(Ot,{}),K(Ht,{children:S.text})]},`reasoning-${w.id}-${M}`)),v&&Qe(Us,{isWorking:B&&(t==="streaming"||t==="submitted"),children:[K(qs,{workingLabel:C.chainOfThought.working,label:C.chainOfThought.done}),K(Gs,{children:E.map((S,M)=>{let X=M===E.length-1;if(S.type==="reasoning")return K(zs,{isStreaming:S.state==="streaming",isLast:X,children:S.text},`reasoning-${w.id}-${M}`);let ae=S.title??Vi(S.toolName),oe=Fp(S.toolName);if(p==="titles-only")return K(Eo,{icon:oe,title:ae,state:S.state,isLast:X},S.toolCallId);let z="output"in S?S.output:void 0;return Qe(Eo,{icon:oe,title:ae,state:S.state,isLast:X,children:[K(Ir,{input:S.input,debug:c}),z!==void 0&&K(Sr,{output:z,errorText:"errorText"in S?S.errorText:void 0,debug:c})]},S.toolCallId)})})]}),p!==!1&&!y&&!v&&A.length===1&&(()=>{let S=A[0],M=S.title??Vi(S.toolName);if(p==="titles-only")return K(Mi,{title:M,state:S.state});let X="output"in S?S.output:void 0;return Qe(vi,{children:[K(Ri,{title:M,state:S.state}),Qe(Fi,{children:[K(Ir,{input:S.input,debug:c}),X!==void 0&&K(Sr,{output:X,errorText:"errorText"in S?S.errorText:void 0,debug:c})]})]})})(),A.map(S=>{let M="output"in S?S.output:void 0,X=Yt(S.toolName,M,m),ae=Ei(S.toolName,M,m),oe=S.toolCallId===d;return X&&s&&M!==void 0?K("div",{style:oe?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:X&&s&&M!==void 0&&K(Ya,{children:K(yr,{isFullscreen:oe,resourceUri:X,toolInput:S.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:ae,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?z=>f(z,{toolCallId:S.toolCallId,resourceUri:X,toolInput:S.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},autoHeight:ae}):void 0})})},S.toolCallId):null}),!y&&K("div",{children:Qe(gr,{children:[P.length>0&&K(Bs,{files:P}),O?b.map((S,M)=>{let X=B&&t==="streaming"&&M===b.length-1;return K(Za,{isStreaming:X,children:S.type==="text"?S.text:""},`${w.id}-${M}`)}):null]})})]},w.id)}),h&&K(Ui,{})]})}import{jsx as ji,jsxs as _p}from"react/jsx-runtime";var Dp="https://app.waniwani.ai/assets/waniwani-logo.svg",Ep="https://waniwani.ai";function to(){let{t:e}=H();return _p("a",{href:Ep,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[ji("span",{children:e.poweredBy.label}),ji("img",{src:Dp,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as ao}from"react/jsx-runtime";function oo({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:ao("div",{className:T("ww:px-4 ww:py-2",o),...r,children:ao("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(s=>ao("div",{className:"ww:h-7 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+s*20}px`}},s)):e.map((s,n)=>ao("button",{type:"button",onClick:()=>a(s),className:T("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3 ww:py-1 ww:text-xs","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:`${n*50}ms`},children:s},s))})})}import{useEffect as Np,useRef as Op,useState as Hp}from"react";import{jsx as te,jsxs as ut}from"react/jsx-runtime";var $i=20;function Up({label:e}){return ut("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:[te("title",{children:e}),te("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),te("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function qp({label:e}){return ut("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:[te("title",{children:e}),te("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),te("polyline",{points:"3 4 3 9 8 9"}),te("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),te("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Gp({label:e}){return ut("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:[te("title",{children:e}),te("polyline",{points:"3 6 5 6 21 6"}),te("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),te("path",{d:"M10 11v6"}),te("path",{d:"M14 11v6"})]})}function ro({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=H(),[i,l]=Hp(!1),u=Op(null);Np(()=>{if(!i)return;let c=p=>{let m=u.current;m&&(p.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)},[i]);let f=e.slice(0,$i),d=Math.max(0,e.length-$i);return ut("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[te("button",{type:"button",onClick:a,title:n.threadMenu.newChat,"aria-label":n.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:te(Up,{label:n.threadMenu.newChat})}),te("button",{type:"button",onClick:()=>l(c=>!c),title:n.threadMenu.threadHistory,"aria-label":n.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:te(qp,{label:n.threadMenu.threadHistory})}),i&&ut("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:[f.length===0&&te("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:n.threadMenu.noPreviousChats}),f.map(c=>{let p=c.threadId===t,m=Date.parse(c.updatedAt);return ut("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:[ut("button",{type:"button",onClick:()=>{o(c.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[te("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:c.title}),te("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Ao(m,s)})]}),te("button",{type:"button",onClick:C=>{C.stopPropagation(),r(c.threadId)},title:n.threadMenu.deleteThread,"aria-label":n.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:te(Gp,{label:n.threadMenu.deleteThread})})]},c.threadId)}),d>0&&te("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:n.threadMenu.hiddenThreads(d)})]})]})}import{useCallback as Wp,useRef as zp}from"react";function so(e){let t=zp(e);return t.current=e,Wp(async a=>{let{api:o,headers:r,onCallTool:s,sessionId:n}=t.current;if(s)return s(a);let i=`${o??"/api/waniwani"}/tool`,l=typeof n=="string"&&n.trim().length>0?n.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...r},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as im}from"@ai-sdk/react";import{useCallback as we,useEffect as Re,useRef as ue,useState as dt}from"react";import{DefaultChatTransport as Vp,uiMessageChunkSchema as jp}from"ai";function $p(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let o=a.find(r=>r.code==="invalid_union");if(!o?.errors)return null;for(let r of o.errors){if(!Array.isArray(r)||r.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let n=r.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(n.length>0)return n}return null}var no=class extends Vp{processResponseStream(t){let a="",o=jp(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(s,n){a+=s;let i=a.split(`
16
- `);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let f=u.slice(5).trim();if(f!=="[DONE]")try{let d=JSON.parse(f);if(!r){n.enqueue(d);continue}let c=await r(d);if(c.success){n.enqueue(c.value);continue}let p=$p(c.error);if(p?.length){let m={...d};for(let x of p)delete m[x];let C=await r(m);C.success&&n.enqueue(C.value)}}catch{}}}}))}};var Xp="waniwani-memory";var Te="threads",io="by_memoryUserId",Qp="by_updatedAt";var Qi="memoryUserId",Xi="waniwani-memory-user-id",kr=null;function Tr(){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 Kp(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Te)){let a=e.createObjectStore(Te,{keyPath:"threadId"});a.createIndex(io,"memoryUserId",{unique:!1}),a.createIndex(Qp,"updatedAt",{unique:!1})}}async function Pr(){return new Promise((e,t)=>{let a=indexedDB.open(Xp,2);a.onupgradeneeded=o=>{Kp(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Jp(){return Pr()}async function Zp(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(Qi);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function Yp(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,Qi);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function em(){if(typeof indexedDB>"u")return null;try{let e=await Jp();try{let t=await Zp(e);if(t)return t;let a=Tr();return await Yp(e,a),a}finally{e.close()}}catch{return null}}function tm(){try{let e=localStorage.getItem(Xi);if(e)return e;let t=Tr();return localStorage.setItem(Xi,t),t}catch{return null}}async function Ki(){let e=await em();if(e)return e;let t=tm();return t||(kr||(kr=Tr()),kr)}var Ji=50,Zi=1e3;function lo(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 uo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Pr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Ar(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function vr(e){return await uo(async a=>{let s=a.transaction(Te,"readonly").objectStore(Te).index(io),i=(await Ar(s.getAll(e))??[]).filter(lo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function fo(e){return await uo(async a=>{let r=a.transaction(Te,"readonly").objectStore(Te),s=await Ar(r.get(e));return lo(s)?s:null})??null}async function Rr(e){if(!lo(e))return;let t=e.messages.length>Zi?{...e,messages:e.messages.slice(e.messages.length-Zi)}:e;await uo(async a=>{await new Promise((l,u)=>{let f=a.transaction(Te,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(Te).put(t)});let o=a.transaction(Te,"readwrite"),r=o.objectStore(Te),s=r.index(io),i=(await Ar(s.getAll(t.memoryUserId))??[]).filter(lo);if(i.length>Ji){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-Ji);for(let u of l)r.delete(u.threadId)}return await new Promise((l,u)=>{o.oncomplete=()=>l(),o.onerror=()=>u(o.error),o.onabort=()=>u(o.error)}),null})}async function Yi(e){await uo(async t=>(await new Promise((a,o)=>{let r=t.transaction(Te,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Te).delete(e)}),null))}async function Mr(e){return(await vr(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 tl="waniwani-visitor-id";function al(e,t){return e.match(t)?.[1]??null}function am(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,o]of t){let r=al(e,o);if(r)return{name:a,version:r}}return null}function om(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,o]of t){let r=al(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function rm(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"}async function sm(e){let t=new TextEncoder().encode(e),a=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(a)).map(o=>o.toString(16).padStart(2,"0")).join("")}async function nm(){try{let a=localStorage.getItem(tl);if(a)return a}catch{}let e=[navigator.userAgent,screen.width,screen.height,screen.colorDepth,Intl.DateTimeFormat().resolvedOptions().timeZone,navigator.language,navigator.hardwareConcurrency??"",navigator.platform??""].join("|"),t=await sm(e);try{localStorage.setItem(tl,t)}catch{}return t}async function ta(){let e=navigator.userAgent,[t,a]=await Promise.all([nm(),Ki()]);return{userAgent:e,browser:am(e),os:om(e),deviceType:rm(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 lm="x-session-id",um=250;function ol(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Et()}function co(){return new Date().toISOString()}function rl(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function dm(e,t){let a=`${e.replace(/\/$/,"")}/tools`,o=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!o.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${o.status} ${o.statusText}`);let r=await o.json();if(!r||!Array.isArray(r.tools))return{};let s={};for(let n of r.tools)n&&typeof n.name=="string"&&(s[n.name]=n);return s}function po(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=ue(a),f=ue(o),d=ue(n);Re(()=>{d.current=n},[n]);let c=ue(void 0),p=ue(null),[m,C]=dt(void 0),x=ue(m),[L,g]=dt(i),h=ue(L),[w,b]=dt([]),[k,P]=dt(!n),A=ue(void 0),E=ue(void 0),B=ue(void 0),O=ue(void 0),y=ue(0),v=ue(l);Re(()=>{v.current=l},[l]);let S=we(I=>{h.current=I,g(I),I&&v.current?.(I)},[]),M=we(async()=>{if(!n)return;let I=p.current?.memoryUserId;if(!I)return;let D=await vr(I);b(D)},[n]),X=we(()=>x.current,[]),ae=we(I=>{let D=rl(I);D&&x.current!==D&&(x.current=D,C(D))},[]),oe=we(()=>{x.current=void 0,C(void 0)},[]);Re(()=>{u.current=a},[a]),Re(()=>{f.current=o},[o]),Re(()=>{let I=!1,D=y.current;return(async()=>{try{let Ie=await ta();if(I)return;p.current=Ie}catch{}if(!n)return;let N=p.current?.memoryUserId;if(!N){P(!0);return}try{let Ie=i??await Mr(N);if(I||D!==y.current)return;if(Ie){let pe=await fo(Ie);if(I||D!==y.current)return;pe&&pe.memoryUserId===N&&(h.current=pe.threadId,g(pe.threadId),A.current=pe.createdAt,E.current=pe.title,pe.sessionId&&(x.current=pe.sessionId,C(pe.sessionId)),Z(pe.messages))}await M()}finally{I||P(!0)}})(),()=>{I=!0}},[]);let z=ue(new no({api:t,headers:()=>({...u.current}),body:()=>{let I={...f.current??{}},D=Object.hasOwn(I,"sessionId"),N=rl(I.sessionId);if(N)ae(N),I.sessionId=N;else if(D)oe(),delete I.sessionId;else{let Pe=X();Pe&&(I.sessionId=Pe)}if(It(c.current)&&(I.modelContext=c.current),p.current){let Pe=p.current;I.visitorContext={timezone:Pe.timezone,language:Pe.language,languages:Pe.languages,deviceType:Pe.deviceType,referrer:Pe.referrer,visitorId:Pe.visitorId};let He=typeof I.visitor=="object"&&I.visitor!==null?I.visitor:{},vl=typeof He.client=="object"&&He.client!==null?He.client:{};I.visitor={...He,id:Pe.visitorId,client:{...vl,memoryUserId:Pe.memoryUserId}}}let Ie=typeof I.extra=="object"&&I.extra!==null&&!Array.isArray(I.extra)?I.extra:void 0,pe=p.current?.memoryUserId,ie=p.current?.language,ia={};if(pe&&(ia.memoryUserId=pe),ie&&(ia.locale=ie),(Object.keys(ia).length>0||Ie)&&(I.extra={...ia,...Ie??{}}),d.current)if(Object.hasOwn(I,"threadId"))typeof I.threadId=="string"&&(h.current=I.threadId);else{let He=h.current;He||(He=ol(),A.current=co(),E.current=void 0,S(He)),I.threadId=He}return I},fetch:(async(I,D)=>{let N=await fetch(I,D);return c.current=void 0,ae(N.headers.get(lm)),N})})),re=ue(null),Le=ue(null),fe=ue({}),[ce,Ee]=dt(0),_=e.skipRemoteConfig===!0,J=we(async()=>{if(!_)try{let I=await dm(t,u.current);fe.current=I,Ee(D=>D+1)}catch(I){console.warn("[Waniwani] Failed to fetch tool definitions:",I instanceof Error?I.message:I)}},[t,_]);Re(()=>{J()},[J]);let{messages:V,sendMessage:G,setMessages:Z,status:U}=im({messages:e.initialMessages,transport:z.current,onFinish({message:I}){s?.(),re.current&&(Le.current=I)},onError(I){console.warn("[Waniwani] Chat error:",I.message),re.current&&(re.current.reject(I),re.current=null)}}),j=ue(V);Re(()=>{j.current=V},[V]);let $=ue(n);Re(()=>{if(!n||$.current||($.current=!0,j.current.length>0))return;let I=!1,D=y.current;return P(!1),(async()=>{try{let N=p.current;if(!N)try{N=await ta(),p.current=N}catch{}let Ie=N?.memoryUserId;if(!Ie||I||D!==y.current){I||P(!0);return}let pe=i??await Mr(Ie);if(I||D!==y.current)return;if(pe){let ie=await fo(pe);if(I||D!==y.current)return;ie&&ie.memoryUserId===Ie&&(h.current=ie.threadId,g(ie.threadId),A.current=ie.createdAt,E.current=ie.title,ie.sessionId&&(x.current=ie.sessionId,C(ie.sessionId)),Z(ie.messages))}await M()}finally{I||P(!0)}})(),()=>{I=!0}},[n]),Re(()=>{if(U==="ready"&&re.current&&Le.current){let I=re.current,D=Le.current;re.current=null,Le.current=null,I.resolve(D)}},[U]);let[R,F]=dt(""),[q,se]=dt([]),Ce=U==="submitted"||U==="streaming",Me=we(I=>{se(D=>D.filter(N=>N.id!==I))},[]),Ge=Ce&&q.length>0,Il=we(I=>{let D=!!I.text?.trim(),N=!!I.files?.length;if(D||N){if(Ce){if(q.length>0)return;se(Ie=>[...Ie,{id:Et(),text:I.text||"",files:I.files??[],modelContext:I.modelContext}]),F("");return}c.current=I.modelContext,G({text:I.text||"",files:I.files}),r?.(I.text||""),F("")}},[G,r,Ce,q.length]),Sl=we(I=>new Promise((D,N)=>{re.current={resolve:D,reject:N},G({text:I}),r?.(I)}),[G,r]);Re(()=>{if(U!=="ready"||q.length===0)return;let[I,...D]=q;se(D),c.current=I.modelContext,G({text:I.text,files:I.files.length>0?I.files:void 0}),r?.(I.text)},[U,G,r,q]);let yl=we(()=>{Z([]),se([]),oe(),F(""),fe.current={},Ee(I=>I+1),J()},[Z,oe,J]),sa=we(()=>{if(!d.current)return;let I=p.current?.memoryUserId,D=h.current,N=j.current;if(!(!I||!D||N.length===0)){if(A.current||(A.current=co()),!E.current){let Ie=N.find(ie=>ie.role==="user"),pe=Ie?Ie.parts.map(ie=>"text"in ie&&typeof ie.text=="string"?ie.text:"").join(" "):"";E.current=el(pe)}return{threadId:D,memoryUserId:I,title:E.current,messages:N,sessionId:x.current,createdAt:A.current,updatedAt:co()}}},[]),qr=we(async()=>{let I=sa();I&&(await Rr(I),await M())},[sa,M]);Re(()=>{if(n&&k&&!(U==="submitted"||U==="streaming")&&V.length!==0)return B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=void 0;let I=qr().finally(()=>{O.current===I&&(O.current=void 0)});O.current=I},um),()=>{B.current&&clearTimeout(B.current)}},[n,k,V,U,qr]);let na=we(()=>{let I=O.current,D=B.current,N=D?sa():void 0;return D&&(clearTimeout(D),B.current=void 0),(async()=>{I&&await I,N&&(await Rr(N),await M())})()},[sa,M]),bl=we(()=>{y.current+=1,na(),Z([]),se([]),oe(),F("");let I=ol();return A.current=co(),E.current=void 0,S(I),M(),I},[Z,oe,S,M,na]),xo=we(async I=>{y.current+=1;let D=y.current;if(await na(),D!==y.current)return;let N=await fo(I);D===y.current&&N&&(S(N.threadId),A.current=N.createdAt,E.current=N.title,N.sessionId?(x.current=N.sessionId,C(N.sessionId)):oe(),Z(N.messages),se([]),F(""))},[Z,oe,S,na]),kl=we(async I=>{if(h.current===I){y.current+=1,B.current&&(clearTimeout(B.current),B.current=void 0);let D=O.current;D&&await D}await Yi(I),await M(),h.current===I&&(Z([]),se([]),oe(),F(""),h.current=void 0,g(void 0),A.current=void 0,E.current=void 0)},[Z,oe,M]);Re(()=>{n&&k&&i!==void 0&&i!==h.current&&xo(i)},[i,n,k,xo]);let Tl=we(I=>{F(I.target.value)},[]),Gr=V[V.length-1],Wr=V.length>0,Pl=Ce&&(!Wr||Gr.role==="user"),Al=fe.current;return{messages:V,status:U,text:R,setText:F,handleSubmit:Il,handleTextChange:Tl,isLoading:Ce,showLoaderBubble:Pl,lastMessage:Gr,hasMessages:Wr,sendMessage:G,sendMessageAndWait:Sl,reset:yl,queuedMessages:q,queueFull:Ge,removeQueuedMessage:Me,sessionId:m,toolDefinitions:Al,refreshToolDefinitions:J,threads:w,activeThreadId:L,isThreadHistoryReady:k,startNewThread:bl,switchThread:xo,deleteThread:kl}}import{useEffect as sl,useRef as fm,useState as cm}from"react";var pm={debug:!1,eval:!1};function nl(e="/api/waniwani",t,a=!1){let[o,r]=cm(pm),s=fm(t);return sl(()=>{s.current=t},[t]),sl(()=>{a||(async()=>{try{let n=s.current,l=await(await fetch(`${e}/config`,{headers:n?{...n}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}import{useCallback as mm,useEffect as Fr,useRef as hm,useState as gm}from"react";function wm(e){for(let t of e.parts){let a=t;if(a.type==="data"||a.type==="data-suggestions"){let o=a.data;if(o&&Array.isArray(o.suggestions))return o.suggestions}}return null}function il(e){return typeof e=="object"&&e!==null&&"initial"in e}function mo(e){let{messages:t,status:a,config:o}=e,r=il(o)&&o.initial?o.initial:void 0,[s,n]=gm(r??[]),i=hm(a),l=o===!0||il(o)&&o.dynamic!==!1,u=mm(()=>{n([])},[]),f=t.length>0;Fr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return Fr(()=>{d?.role==="user"&&u()},[d,u]),Fr(()=>{let c=i.current;if(i.current=a,c==="streaming"&&a==="ready"&&l){let p=[...t].reverse().find(C=>C.role==="assistant");if(!p)return;let m=wm(p);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as xm,useRef as Lm,useState as Cm}from"react";var Im=50,Sm=30,ym=2e3,ll=500;function ho(e,t=!0){let[a,o]=Cm(""),r=Lm(void 0);return xm(()=>{if(!t){o("");return}let s=0,n=!1,i=!1,l=()=>{i||(n?(s--,o(e.slice(0,s)),s<=0?(n=!1,r.current=setTimeout(l,ll)):r.current=setTimeout(l,Sm)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,ym)):r.current=setTimeout(l,Im)))};return r.current=setTimeout(l,ll),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function go(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return o?`${e}/resource?token=${encodeURIComponent(o)}`:`${e}/resource`}var ul={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:12,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5"},bm={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"},km={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"]};function Br(e){return{...ul,...e}}function aa(e){let t={};for(let[a,o]of Object.entries(km)){let r=e[a];if(r===void 0)continue;let s=typeof r=="number"?`${r}px`:String(r);for(let n of o)t[n]=s}return t}import{jsx as xe,jsxs as oa}from"react/jsx-runtime";var vm=Tm(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:c="triggerDemoRequest",api:p,debug:m,enableThreadHistory:C=!1,showToolCalls:x=!0}=t,L=p??"/api/waniwani",g=go(L,t.headers),h=Br(o),w=aa(h),b=h.backgroundColor.replace("#",""),k=parseInt(b.substring(0,2),16),P=parseInt(b.substring(2,4),16),A=parseInt(b.substring(4,6),16),E=(k*299+P*587+A*114)/1e3<128,B=nl(L,t.headers,t.skipRemoteConfig),O=m??B.debug,y=po({...t,api:L}),v=so({...t,api:L,sessionId:y.sessionId}),S=ho(d,!y.text),[M,X]=fl(!1),[ae,oe]=fl(null),z=dl(null),re=dl(void 0),Le=Dr(()=>{let _=z.current;if(!_)return;_.scrollIntoView({behavior:"smooth",block:"center"});let J=_.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),X(!0),clearTimeout(re.current),re.current=setTimeout(()=>X(!1),2e3)},[]),fe=mo({messages:y.messages,status:y.status,config:t.suggestions}),ce=Dr(_=>{let J=_.content.map(V=>V.text??"").join("").trim();J&&y.handleSubmit({text:J,files:[],modelContext:_.modelContext})},[y.handleSubmit]),Ee=Dr(_=>{fe.clear(),y.handleSubmit({text:_,files:[]})},[fe.clear,y.handleSubmit]);return Am(a,()=>({sendMessage:_=>{y.handleSubmit({text:_,files:[]}),Le()},sendMessageAndWait:_=>y.sendMessageAndWait(_),reset:y.reset,focus:Le,get messages(){return y.messages},get sessionId(){return y.sessionId}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,y.sessionId,Le]),Pm(()=>{if(!c)return;let _=J=>{let V=J.detail,G=typeof V?.message=="string"?V.message:void 0;G&&y.handleSubmit({text:G,files:[]}),Le()};return window.addEventListener(c,_),()=>window.removeEventListener(c,_)},[c,y.handleSubmit,Le]),oa("div",{ref:z,style:{...w,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...E?{"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",M&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[oa("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:[xe("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),xe(Fs,{messages:y.messages,evalEnabled:B.eval,api:L}),C&&xe(ro,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:_=>{y.switchThread(_)},onDeleteThread:_=>{y.deleteThread(_)}})]}),oa(us,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[xe(ds,{scrollClassName:ae?"ww:!relative ww:!overflow-hidden":void 0,children:xe(eo,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:f,onSuggestionSelect:Ee,resourceEndpoint:g,chatSessionId:y.sessionId,isDark:E,onFollowUp:ce,onCallTool:v,fullscreenToolCallId:ae,debug:O,showToolCalls:x,toolDefinitions:y.toolDefinitions,onWidgetDisplayModeChange:(_,J)=>{oe(_==="fullscreen"?J.toolCallId:null)}})}),xe(fs,{})]}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(oo,{suggestions:fe.suggestions,isLoading:fe.isLoading,onSelect:Ee})}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(xa,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage})}),xe("div",{style:ae?{display:"none"}:void 0,children:xe("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:oa("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[xe(ma,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:oa("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&xe(wa,{}),xe(ha,{onChange:y.handleTextChange,value:y.text,placeholder:S,className:"ww:min-h-0 ww:py-1 ww:px-0"}),xe(ga,{status:y.status,disabled:y.queueFull})]})}),xe(to,{})]})})})]})});import{forwardRef as pl,useCallback as wo,useEffect as St,useImperativeHandle as Mm,useRef as ra,useState as Er}from"react";import{jsx as Rm}from"react/jsx-runtime";function cl({text:e}){let{t}=H();return e===!1?null:Rm("span",{className:"ww:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as de,jsxs as Ke}from"react/jsx-runtime";var _r=pl(function(t,a){let{locale:o,messages:r}=t;return de(Po,{locale:o,messages:r,children:de(Fm,{...t,ref:a})})}),Fm=pl(function(t,a){let{t:o,ready:r}=H(),{appearance:s,className:n,allowAttachments:i=!1,welcomeMessage:l,welcome:u,placeholder:f=o.promptInput.placeholder,triggerEvent:d="triggerDemoRequest",api:c,mcp:p,debug:m=!1,readOnly:C=!1,title:x,headerActions:L,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:w=!0,initializing:b=!1,disclaimer:k}=t,P=s?.theme,A=s?.variables,E=A?aa(A):{},[B,O]=Er(!1);St(()=>{if(P!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");O(R.matches);let F=()=>O(R.matches);return R.addEventListener("change",F),()=>R.removeEventListener("change",F)},[P]);let y=P==="dark"||P==="auto"&&B,v=po({...t,api:c}),S=so({...t,api:c,sessionId:v.sessionId,onCallTool:p?.onCallTool}),M=p?.resourceEndpoint??go(c,t.headers),X=ho(f,!v.text),[ae,oe]=Er(null),z=ra(null),re=ra(null),Le=ra(null),fe=ra(null),[ce,Ee]=Er(!0),_=ra(ce);_.current=ce;let J=wo(()=>{let R=z.current;if(!R)return;let F=R.querySelector("textarea");F&&F.focus()},[]),V=wo((R="smooth")=>{let F=re.current;F&&F.scrollTo({top:F.scrollHeight,behavior:R})},[]);St(()=>{let R=fe.current,F=re.current;if(!R||!F)return;let q=new IntersectionObserver(([se])=>Ee(se.isIntersecting),{root:F,rootMargin:"0px 0px 200px 0px",threshold:0});return q.observe(R),()=>q.disconnect()},[]),St(()=>{(v.messages[v.messages.length-1]?.role==="user"||_.current)&&V("smooth")},[v.messages.length,v.messages[v.messages.length-1]]),St(()=>{V("auto")},[V]),St(()=>{if(typeof ResizeObserver>"u")return;let R=re.current,F=Le.current;if(!R&&!F)return;let q=R?.scrollHeight??0,se=R?.clientHeight??0,Ce=new ResizeObserver(()=>{let Me=re.current;if(!Me)return;let Ge=Me.scrollTop+se>=q-5;q=Me.scrollHeight,se=Me.clientHeight,Ge&&V("auto")});return R&&Ce.observe(R),F&&Ce.observe(F),()=>Ce.disconnect()},[V]);let G=mo({messages:v.messages,status:v.status,config:t.suggestions}),Z=wo(R=>{let F=R.content.map(q=>q.text??"").join("").trim();F&&v.handleSubmit({text:F,files:[],modelContext:R.modelContext})},[v.handleSubmit]),U=wo(R=>{G.clear(),v.handleSubmit({text:R,files:[]})},[G.clear,v.handleSubmit]);Mm(a,()=>({sendMessage:R=>{v.handleSubmit({text:R,files:[]}),J()},sendMessageAndWait:R=>v.sendMessageAndWait(R),reset:v.reset,focus:J,get messages(){return v.messages},get sessionId(){return v.sessionId}}),[v.handleSubmit,v.sendMessageAndWait,v.reset,v.messages,v.sessionId,J]),St(()=>{if(!d)return;let R=F=>{let q=F.detail,se=typeof q?.message=="string"?q.message:void 0;se&&v.handleSubmit({text:se,files:[]}),J()};return window.addEventListener(d,R),()=>window.removeEventListener(d,R)},[d,v.handleSubmit,J]);let j=!g&&!!(x||h||L),$=b||!r;return Ke("div",{ref:z,style:{...E,maxHeight:"inherit",opacity:$?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":P==="auto"?"auto":void 0,...$?{"data-waniwani-initializing":""}:{},...y?{"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",n),children:[j&&Ke("div",{className:"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",style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[x&&de("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:x}),!x&&de("div",{className:"ww:flex-1"}),h&&de(ro,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:R=>{v.switchThread(R)},onDeleteThread:R=>{v.deleteThread(R)}}),L]}),Ke("div",{ref:re,className:T("ww:relative ww:flex-1 ww:min-h-0",ae?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[Ke("div",{ref:Le,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",ae&&"ww:!py-0"),children:[de(eo,{messages:v.messages,status:v.status,welcomeMessage:l,welcome:u,onSuggestionSelect:U,resourceEndpoint:M,chatSessionId:v.sessionId,isDark:y,onFollowUp:Z,onCallTool:S,fullscreenToolCallId:ae,debug:m,showToolCalls:w,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(R,F)=>{oe(R==="fullscreen"?F.toolCallId:null)}}),de("div",{ref:fe,"aria-hidden":!0,style:{height:1}})]}),!ce&&!ae&&de("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:de(Ae,{type:"button",onClick:()=>V("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:de(Je,{className:"ww:size-4"})})})]}),!C&&Ke("div",{className:"ww:shrink-0 ww:bg-background",style:ae?{display:"none"}:void 0,children:[de(oo,{suggestions:G.suggestions,isLoading:G.isLoading,onSelect:U}),de(xa,{queuedMessages:v.queuedMessages,onRemove:v.removeQueuedMessage}),de("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:Ke("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[de(ma,{onSubmit:v.handleSubmit,globalDrop:i,multiple:i,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:Ke("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[i&&de(wa,{}),de(ha,{onChange:v.handleTextChange,value:v.text,placeholder:X,className:"ww:min-h-0 ww:py-1 ww:px-0"}),de(ga,{status:v.status,disabled:v.queueFull})]})}),Ke("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center ww:items-center ww:gap-1.5",children:[de(to,{}),de(cl,{text:k})]})]})})]})]})});import{forwardRef as Gm,useEffect as Wm,useMemo as xl,useState as Ll}from"react";var Bm="https://app.waniwani.ai/api/mcp/chat",Dm={api:Bm};function Em(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelectorAll("script[src]");for(let t of e)if(t instanceof HTMLScriptElement&&/embed/i.test(t.src))return t;return null}function _m(){let e=Em();if(!e)return{};let t=A=>e.getAttribute(A)??void 0,a=A=>{let E=e.getAttribute(A);if(E==null)return;let B=E.trim().toLowerCase();if(B==="true"||B==="1"||B==="")return!0;if(B==="false"||B==="0")return!1},o={},r=t("data-api");r&&(o.api=r);let s=t("data-token");s&&(o.token=s);let n=t("data-title");n&&(o.title=n);let i=t("data-welcome-message");i&&(o.welcomeMessage=i);let l=t("data-placeholder");l&&(o.placeholder=l);let u=t("data-mcp-server-url");u&&(o.mcpServerUrl=u);let f=t("data-channel-id");if(f&&(o.channelId=f),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")o.showToolCalls="titles-only";else{let A=a("data-show-tool-calls");A!==void 0&&(o.showToolCalls=A)}let c=t("data-css");c&&(o.css=c);let p=t("data-suggestions");p&&(o.suggestions=p.split(",").map(A=>A.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let C=a("data-disable-page-view");C!==void 0&&(o.disablePageView=C);let x=a("data-hide-header");x!==void 0&&(o.hideHeader=x);let L=t("data-theme");(L==="light"||L==="dark"||L==="auto")&&(o.appearance={theme:L});let g=t("data-locale");(g==="en"||g==="fr"||g==="es")&&(o.locale=g);let h=t("data-mode");(h==="inline"||h==="floating")&&(o.mode=h);let w=t("data-position");(w==="bottom-center"||w==="bottom-right"||w==="bottom-left")&&(o.position=w);let b=t("data-height");b&&(o.height=b);let k=t("data-launcher-text");k&&(o.launcherText=k);let P=t("data-disclaimer");if(P!==void 0){let A=P.trim(),E=A.toLowerCase();E==="false"||E==="0"?o.disclaimer=!1:A&&(o.disclaimer=A)}return o}function Nr(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Or(e,t,a){let o=a??_m(),r=Nm(t,o,e),s={token:"",...Dm,...Nr(t),...Nr(o),...Nr(e),...r?{appearance:r}:{}};if(!s.token)throw new Error("[Waniwani] Missing required config: `token`. Set data-token on the script tag or pass it to Waniwani.chat.init().");return s}function Nm(e,t,a){let o=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,r={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},s=Object.keys(r).length>0;if(!o&&!s)return;let n={};return o&&(n.theme=o),s&&(n.variables=r),n}import{useEffect as ny,useState as iy}from"react";var Hr=new Set;function Om(e,t,a){return`${e}|${t}|${a??""}`}function Hm(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function Ur(e){let{api:t,token:a,channelId:o,mode:r,source:s}=e;if(typeof window>"u"||!t||!a||!s)return;let n=Om(t,a,o);if(!Hr.has(n)){Hr.add(n);try{let i=await ta(),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:s,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(Hm(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{Hr.delete(n)}}}var Um="waniwani:config:";function ml(e,t,a){return`${Um}${e}|${t}|${a??""}`}function hl(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(ml(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function gl(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(ml(e,t,a),JSON.stringify(o))}catch{}}async function wl(e,t,a,o){try{let r=`${e.replace(/\/$/,"")}/config`,s=o?`${r}?channel=${encodeURIComponent(o)}`:r,n=await fetch(s,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let i=await n.json(),l=i&&typeof i=="object"&&"data"in i&&i.data?i.data:i;return l?qm(l):{}}catch{return{}}}function qm(e){let t={};return 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),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),t}import{jsx as jm}from"react/jsx-runtime";var zm=600,Cl="https://app.waniwani.ai/api/mcp/chat",Vm=Gm(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=xl(()=>({token:o,channelId:r,api:n?.api,mcpServerUrl:n?.mcpServerUrl,title:n?.title,hideHeader:n?.hideHeader,welcomeMessage:n?.welcomeMessage,placeholder:n?.placeholder,suggestions:n?.suggestions,enableThreadHistory:n?.enableThreadHistory,showToolCalls:n?.showToolCalls,appearance:n?.appearance,disclaimer:n?.disclaimer,locale:n?.locale}),[o,r,n?.api,n?.mcpServerUrl,n?.title,n?.hideHeader,n?.welcomeMessage,n?.placeholder,n?.suggestions,n?.enableThreadHistory,n?.showToolCalls,n?.appearance,n?.disclaimer,n?.locale]),l=n?.api??Cl,[u,f]=Ll({}),[d,c]=Ll(!1),p=n?.disablePageView;Wm(()=>{if(!o){c(!0);return}let x=w=>{p||Ur({api:l,token:o,channelId:r,mode:"inline",source:w})},L=hl(l,o,r);L&&(f(L),c(!0),x(L.source));let g=new AbortController,h=setTimeout(()=>c(!0),zm);return wl(l,o,g.signal,r).then(w=>{g.signal.aborted||(Object.keys(w).length>0&&(gl(l,o,r,w),f(w)),c(!0),x(w.source))}).catch(w=>{console.error("[Waniwani] Remote config fetch failed:",w),c(!0)}).finally(()=>clearTimeout(h)),()=>{g.abort(),clearTimeout(h)}},[l,o,r,p]);let m=xl(()=>Or(i,u,void 0),[i,u]),C={};return m.mcpServerUrl&&(C.mcpServerUrl=m.mcpServerUrl),m.channelId&&(C.channelId=m.channelId),jm(_r,{ref:a,api:m.api??Cl,headers:{Authorization:`Bearer ${m.token}`},skipRemoteConfig:!0,body:Object.keys(C).length>0?C:void 0,appearance:m.appearance,title:m.title,hideHeader:m.hideHeader,welcomeMessage:m.welcomeMessage,welcome:n?.welcome,placeholder:m.placeholder,suggestions:m.suggestions?{initial:m.suggestions}:void 0,enableThreadHistory:m.enableThreadHistory,showToolCalls:m.showToolCalls,disclaimer:m.disclaimer,allowAttachments:n?.allowAttachments,locale:m.locale,messages:n?.messages,className:s,initializing:!d})});export{vm as ChatCard,_r as ChatEmbed,bm as DARK_THEME,ul as DEFAULT_THEME,yr as McpAppFrame,Vm as WaniwaniChat,Br as mergeTheme,aa as themeToCSSProperties};
15
+ ${R}`}]}}O.current({...j,...$?{modelContext:$}:{}})}_({jsonrpc:"2.0",id:U,result:{}});return}if(Z==="ui/update-model-context"&&U!=null){fe=Wi(fe,G.params),_({jsonrpc:"2.0",id:U,result:{}});return}if(Z==="tools/call"&&U!=null){let j=b.current;if(!j){_({jsonrpc:"2.0",id:U,error:{code:-32601,message:"tools/call not supported"}});return}let $=G.params?.name;j({name:$,arguments:G.params?.arguments??{}}).then(R=>{_({jsonrpc:"2.0",id:U,result:R});let F=R.content?.map(q=>q.text??"").join("").trim();F&&Fp($,R,M.current)&&(ce&&clearTimeout(ce.timer),ce={text:F,timer:setTimeout(()=>{if(re)return;let q=fe;fe=null,ce=null,O.current?.({role:"user",content:[{type:"text",text:F}],...q?{modelContext:q}:{}})},500)})}).catch(R=>{let F=R instanceof Error?R.message:"Tool call failed";_({jsonrpc:"2.0",id:U,error:{code:-32e3,message:F}})});return}if(Z==="ui/request-display-mode"&&U!=null){let j=G.params?.mode,$=j==="fullscreen"||j==="inline"||j==="pip"?j:"inline";S.current=$,_({jsonrpc:"2.0",id:U,result:{mode:$}}),_({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),v.current?.($);return}if(Z==="ui/resource-teardown"&&U!=null){_({jsonrpc:"2.0",id:U,result:{}});return}Z==="ping"&&U!=null&&_({jsonrpc:"2.0",id:U,result:{}})};return window.addEventListener("message",J),()=>{re=!0,clearTimeout(Ee),ce&&clearTimeout(ce.timer),window.removeEventListener("message",J)}},[i,X]),Bp("iframe",{ref:m,src:ae,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:T(!c&&"ww:rounded-md ww:border ww:border-border",n),style:{height:c?"100%":k,minWidth:c||!P?void 0:`min(${P}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as ea,jsxs as Dp}from"react/jsx-runtime";function ji({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Dp("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&&ea("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}),ea("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&ea("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&ea("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:o.map((s,n)=>ea("button",{type:"button",onClick:()=>r?.(s),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:`${n*50}ms`},children:s},s))})]})}import{Component as Ep}from"react";import{jsx as br,jsxs as Np}from"react/jsx-runtime";function _p({onRetry:e}){let{t}=H();return Np("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:[br("span",{children:t.widgetErrorBoundary.failedToLoad}),br("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Ya=class extends Ep{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?br(_p,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Hp,jsx as K,jsxs as Qe}from"react/jsx-runtime";function $i(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Op(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?vt:Ye}function eo({messages:e,status:t,welcomeMessage:a,welcome:o,onSuggestionSelect:r,resourceEndpoint:s,chatSessionId:n,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:f,fullscreenToolCallId:d,debug:c,showToolCalls:p=!0,toolDefinitions:m}){let{t:C}=H(),w=e[e.length-1],x=e.length>0,g=d!=null,h=!g&&qi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return Qe(Hp,{children:[!g&&(!x&&o?K(ji,{...o,onSuggestionSelect:r}):a&&K(hr,{from:"assistant",children:K(gr,{children:K(Za,{children:a})})})),e.map(L=>{let S=L.parts.filter(y=>y.type==="text"),k=L.parts.filter(y=>y.type==="reasoning"),A=L.parts.filter(y=>y.type==="file"),P=L.parts.filter(y=>"toolCallId"in y),E=L.parts.filter(y=>y.type==="reasoning"||"toolCallId"in y),B=L===w&&L.role==="assistant",O=S.length>0,b=g?P.some(y=>y.toolCallId===d):!1,v=p!==!1&&!b&&E.length>=2;return g&&!b?K("div",{style:{display:"none"}},L.id):L.role==="assistant"&&!Ui(L)?K("div",{style:{display:"none"}},L.id):p===!1&&L.role==="assistant"&&!O&&A.length===0&&P.every(y=>{let M="output"in y?y.output:void 0;return M===void 0||!s||!Yt(y.toolName,M,m)})?K("div",{style:{display:"none"}},L.id):Qe(hr,{from:L.role,children:[p!==!1&&!b&&!v&&k.map((y,M)=>Qe(Nt,{isStreaming:y.state==="streaming",children:[K(Ot,{}),K(Ht,{children:y.text})]},`reasoning-${L.id}-${M}`)),v&&Qe(Gs,{isWorking:B&&(t==="streaming"||t==="submitted"),children:[K(Ws,{workingLabel:C.chainOfThought.working,label:C.chainOfThought.done}),K(Vs,{children:E.map((y,M)=>{let X=M===E.length-1;if(y.type==="reasoning")return K(js,{isStreaming:y.state==="streaming",isLast:X,children:y.text},`reasoning-${L.id}-${M}`);let ae=y.title??$i(y.toolName),oe=Op(y.toolName);if(p==="titles-only")return K(Eo,{icon:oe,title:ae,state:y.state,isLast:X},y.toolCallId);let V="output"in y?y.output:void 0;return Qe(Eo,{icon:oe,title:ae,state:y.state,isLast:X,children:[K(Ir,{input:y.input,debug:c}),V!==void 0&&K(Sr,{output:V,errorText:"errorText"in y?y.errorText:void 0,debug:c})]},y.toolCallId)})})]}),p!==!1&&!b&&!v&&P.length===1&&(()=>{let y=P[0],M=y.title??$i(y.toolName);if(p==="titles-only")return K(Bi,{title:M,state:y.state});let X="output"in y?y.output:void 0;return Qe(Mi,{children:[K(Fi,{title:M,state:y.state}),Qe(Di,{children:[K(Ir,{input:y.input,debug:c}),X!==void 0&&K(Sr,{output:X,errorText:"errorText"in y?y.errorText:void 0,debug:c})]})]})})(),P.map(y=>{let M="output"in y?y.output:void 0,X=Yt(y.toolName,M,m),ae=Ni(y.toolName,M,m),oe=y.toolCallId===d;return X&&s&&M!==void 0?K("div",{style:oe?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:X&&s&&M!==void 0&&K(Ya,{children:K(yr,{isFullscreen:oe,resourceUri:X,toolInput:y.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:ae,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?V=>f(V,{toolCallId:y.toolCallId,resourceUri:X,toolInput:y.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},autoHeight:ae}):void 0})})},y.toolCallId):null}),!b&&K("div",{children:Qe(gr,{children:[A.length>0&&K(Es,{files:A}),O?S.map((y,M)=>{let X=B&&t==="streaming"&&M===S.length-1;return K(Za,{isStreaming:X,children:y.type==="text"?y.text:""},`${L.id}-${M}`)}):null]})})]},L.id)}),h&&K(Gi,{})]})}import{jsx as Xi,jsxs as Gp}from"react/jsx-runtime";var Up="https://app.waniwani.ai/assets/waniwani-logo.svg",qp="https://waniwani.ai";function to(){let{t:e}=H();return Gp("a",{href:qp,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Xi("span",{children:e.poweredBy.label}),Xi("img",{src:Up,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as ao}from"react/jsx-runtime";function oo({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:ao("div",{className:T("ww:px-4 ww:py-2",o),...r,children:ao("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(s=>ao("div",{className:"ww:h-7 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+s*20}px`}},s)):e.map((s,n)=>ao("button",{type:"button",onClick:()=>a(s),className:T("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3 ww:py-1 ww:text-xs","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:`${n*50}ms`},children:s},s))})})}import{useEffect as Wp,useRef as Vp,useState as zp}from"react";import{jsx as te,jsxs as ut}from"react/jsx-runtime";var Qi=20;function jp({label:e}){return ut("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:[te("title",{children:e}),te("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),te("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function $p({label:e}){return ut("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:[te("title",{children:e}),te("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),te("polyline",{points:"3 4 3 9 8 9"}),te("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),te("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function Xp({label:e}){return ut("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:[te("title",{children:e}),te("polyline",{points:"3 6 5 6 21 6"}),te("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),te("path",{d:"M10 11v6"}),te("path",{d:"M14 11v6"})]})}function ro({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=H(),[i,l]=zp(!1),u=Vp(null);Wp(()=>{if(!i)return;let c=p=>{let m=u.current;m&&(p.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)},[i]);let f=e.slice(0,Qi),d=Math.max(0,e.length-Qi);return ut("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[te("button",{type:"button",onClick:a,title:n.threadMenu.newChat,"aria-label":n.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:te(jp,{label:n.threadMenu.newChat})}),te("button",{type:"button",onClick:()=>l(c=>!c),title:n.threadMenu.threadHistory,"aria-label":n.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:te($p,{label:n.threadMenu.threadHistory})}),i&&ut("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:[f.length===0&&te("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:n.threadMenu.noPreviousChats}),f.map(c=>{let p=c.threadId===t,m=Date.parse(c.updatedAt);return ut("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:[ut("button",{type:"button",onClick:()=>{o(c.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[te("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:c.title}),te("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Ao(m,s)})]}),te("button",{type:"button",onClick:C=>{C.stopPropagation(),r(c.threadId)},title:n.threadMenu.deleteThread,"aria-label":n.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:te(Xp,{label:n.threadMenu.deleteThread})})]},c.threadId)}),d>0&&te("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:n.threadMenu.hiddenThreads(d)})]})]})}import{useCallback as Qp,useRef as Kp}from"react";function so(e){let t=Kp(e);return t.current=e,Qp(async a=>{let{api:o,headers:r,onCallTool:s,sessionId:n}=t.current;if(s)return s(a);let i=`${o??"/api/waniwani"}/tool`,l=typeof n=="string"&&n.trim().length>0?n.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...r},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as pm}from"@ai-sdk/react";import{useCallback as we,useEffect as Re,useRef as ue,useState as dt}from"react";import{DefaultChatTransport as Jp,uiMessageChunkSchema as Zp}from"ai";function Yp(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let o=a.find(r=>r.code==="invalid_union");if(!o?.errors)return null;for(let r of o.errors){if(!Array.isArray(r)||r.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let n=r.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(n.length>0)return n}return null}var no=class extends Jp{processResponseStream(t){let a="",o=Zp(),r=o.validate?.bind(o);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(s,n){a+=s;let i=a.split(`
16
+ `);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let f=u.slice(5).trim();if(f!=="[DONE]")try{let d=JSON.parse(f);if(!r){n.enqueue(d);continue}let c=await r(d);if(c.success){n.enqueue(c.value);continue}let p=Yp(c.error);if(p?.length){let m={...d};for(let w of p)delete m[w];let C=await r(m);C.success&&n.enqueue(C.value)}}catch{}}}}))}};var em="waniwani-memory";var Te="threads",io="by_memoryUserId",tm="by_updatedAt";var Ji="memoryUserId",Ki="waniwani-memory-user-id",kr=null;function Tr(){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 am(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Te)){let a=e.createObjectStore(Te,{keyPath:"threadId"});a.createIndex(io,"memoryUserId",{unique:!1}),a.createIndex(tm,"updatedAt",{unique:!1})}}async function Pr(){return new Promise((e,t)=>{let a=indexedDB.open(em,2);a.onupgradeneeded=o=>{am(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function om(){return Pr()}async function rm(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(Ji);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function sm(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,Ji);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function nm(){if(typeof indexedDB>"u")return null;try{let e=await om();try{let t=await rm(e);if(t)return t;let a=Tr();return await sm(e,a),a}finally{e.close()}}catch{return null}}function im(){try{let e=localStorage.getItem(Ki);if(e)return e;let t=Tr();return localStorage.setItem(Ki,t),t}catch{return null}}async function Zi(){let e=await nm();if(e)return e;let t=im();return t||(kr||(kr=Tr()),kr)}var Yi=50,el=1e3;function lo(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 uo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Pr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Ar(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function vr(e){return await uo(async a=>{let s=a.transaction(Te,"readonly").objectStore(Te).index(io),i=(await Ar(s.getAll(e))??[]).filter(lo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function fo(e){return await uo(async a=>{let r=a.transaction(Te,"readonly").objectStore(Te),s=await Ar(r.get(e));return lo(s)?s:null})??null}async function Rr(e){if(!lo(e))return;let t=e.messages.length>el?{...e,messages:e.messages.slice(e.messages.length-el)}:e;await uo(async a=>{await new Promise((l,u)=>{let f=a.transaction(Te,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(Te).put(t)});let o=a.transaction(Te,"readwrite"),r=o.objectStore(Te),s=r.index(io),i=(await Ar(s.getAll(t.memoryUserId))??[]).filter(lo);if(i.length>Yi){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-Yi);for(let u of l)r.delete(u.threadId)}return await new Promise((l,u)=>{o.oncomplete=()=>l(),o.onerror=()=>u(o.error),o.onabort=()=>u(o.error)}),null})}async function tl(e){await uo(async t=>(await new Promise((a,o)=>{let r=t.transaction(Te,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Te).delete(e)}),null))}async function Mr(e){return(await vr(e))[0]?.threadId??null}function al(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 ol="waniwani-visitor-id";function rl(e,t){return e.match(t)?.[1]??null}function lm(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,o]of t){let r=rl(e,o);if(r)return{name:a,version:r}}return null}function um(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,o]of t){let r=rl(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function dm(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"}async function fm(e){let t=new TextEncoder().encode(e),a=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(a)).map(o=>o.toString(16).padStart(2,"0")).join("")}async function cm(){try{let a=localStorage.getItem(ol);if(a)return a}catch{}let e=[navigator.userAgent,screen.width,screen.height,screen.colorDepth,Intl.DateTimeFormat().resolvedOptions().timeZone,navigator.language,navigator.hardwareConcurrency??"",navigator.platform??""].join("|"),t=await fm(e);try{localStorage.setItem(ol,t)}catch{}return t}async function ta(){let e=navigator.userAgent,[t,a]=await Promise.all([cm(),Zi()]);return{userAgent:e,browser:lm(e),os:um(e),deviceType:dm(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 mm="x-session-id",hm=250;function sl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Et()}function co(){return new Date().toISOString()}function nl(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function gm(e,t){let a=`${e.replace(/\/$/,"")}/tools`,o=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!o.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${o.status} ${o.statusText}`);let r=await o.json();if(!r||!Array.isArray(r.tools))return{};let s={};for(let n of r.tools)n&&typeof n.name=="string"&&(s[n.name]=n);return s}function po(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=ue(a),f=ue(o),d=ue(n);Re(()=>{d.current=n},[n]);let c=ue(void 0),p=ue(null),[m,C]=dt(void 0),w=ue(m),[x,g]=dt(i),h=ue(x),[L,S]=dt([]),[k,A]=dt(!n),P=ue(void 0),E=ue(void 0),B=ue(void 0),O=ue(void 0),b=ue(0),v=ue(l);Re(()=>{v.current=l},[l]);let y=we(I=>{h.current=I,g(I),I&&v.current?.(I)},[]),M=we(async()=>{if(!n)return;let I=p.current?.memoryUserId;if(!I)return;let D=await vr(I);S(D)},[n]),X=we(()=>w.current,[]),ae=we(I=>{let D=nl(I);D&&w.current!==D&&(w.current=D,C(D))},[]),oe=we(()=>{w.current=void 0,C(void 0)},[]);Re(()=>{u.current=a},[a]),Re(()=>{f.current=o},[o]),Re(()=>{let I=!1,D=b.current;return(async()=>{try{let Ie=await ta();if(I)return;p.current=Ie}catch{}if(!n)return;let N=p.current?.memoryUserId;if(!N){A(!0);return}try{let Ie=i??await Mr(N);if(I||D!==b.current)return;if(Ie){let pe=await fo(Ie);if(I||D!==b.current)return;pe&&pe.memoryUserId===N&&(h.current=pe.threadId,g(pe.threadId),P.current=pe.createdAt,E.current=pe.title,pe.sessionId&&(w.current=pe.sessionId,C(pe.sessionId)),Z(pe.messages))}await M()}finally{I||A(!0)}})(),()=>{I=!0}},[]);let V=ue(new no({api:t,headers:()=>({...u.current}),body:()=>{let I={...f.current??{}},D=Object.hasOwn(I,"sessionId"),N=nl(I.sessionId);if(N)ae(N),I.sessionId=N;else if(D)oe(),delete I.sessionId;else{let Pe=X();Pe&&(I.sessionId=Pe)}if(It(c.current)&&(I.modelContext=c.current),p.current){let Pe=p.current;I.visitorContext={timezone:Pe.timezone,language:Pe.language,languages:Pe.languages,deviceType:Pe.deviceType,referrer:Pe.referrer,visitorId:Pe.visitorId};let He=typeof I.visitor=="object"&&I.visitor!==null?I.visitor:{},El=typeof He.client=="object"&&He.client!==null?He.client:{};I.visitor={...He,id:Pe.visitorId,client:{...El,memoryUserId:Pe.memoryUserId}}}let Ie=typeof I.extra=="object"&&I.extra!==null&&!Array.isArray(I.extra)?I.extra:void 0,pe=p.current?.memoryUserId,ie=p.current?.language,ia={};if(pe&&(ia.memoryUserId=pe),ie&&(ia.locale=ie),(Object.keys(ia).length>0||Ie)&&(I.extra={...ia,...Ie??{}}),d.current)if(Object.hasOwn(I,"threadId"))typeof I.threadId=="string"&&(h.current=I.threadId);else{let He=h.current;He||(He=sl(),P.current=co(),E.current=void 0,y(He)),I.threadId=He}return I},fetch:(async(I,D)=>{let N=await fetch(I,D);return c.current=void 0,ae(N.headers.get(mm)),N})})),re=ue(null),Le=ue(null),fe=ue({}),[ce,Ee]=dt(0),_=e.skipRemoteConfig===!0,J=we(async()=>{if(!_)try{let I=await gm(t,u.current);fe.current=I,Ee(D=>D+1)}catch(I){console.warn("[Waniwani] Failed to fetch tool definitions:",I instanceof Error?I.message:I)}},[t,_]);Re(()=>{J()},[J]);let{messages:z,sendMessage:G,setMessages:Z,status:U}=pm({messages:e.initialMessages,transport:V.current,onFinish({message:I}){s?.(),re.current&&(Le.current=I)},onError(I){console.warn("[Waniwani] Chat error:",I.message),re.current&&(re.current.reject(I),re.current=null)}}),j=ue(z);Re(()=>{j.current=z},[z]);let $=ue(n);Re(()=>{if(!n||$.current||($.current=!0,j.current.length>0))return;let I=!1,D=b.current;return A(!1),(async()=>{try{let N=p.current;if(!N)try{N=await ta(),p.current=N}catch{}let Ie=N?.memoryUserId;if(!Ie||I||D!==b.current){I||A(!0);return}let pe=i??await Mr(Ie);if(I||D!==b.current)return;if(pe){let ie=await fo(pe);if(I||D!==b.current)return;ie&&ie.memoryUserId===Ie&&(h.current=ie.threadId,g(ie.threadId),P.current=ie.createdAt,E.current=ie.title,ie.sessionId&&(w.current=ie.sessionId,C(ie.sessionId)),Z(ie.messages))}await M()}finally{I||A(!0)}})(),()=>{I=!0}},[n]),Re(()=>{if(U==="ready"&&re.current&&Le.current){let I=re.current,D=Le.current;re.current=null,Le.current=null,I.resolve(D)}},[U]);let[R,F]=dt(""),[q,se]=dt([]),Ce=U==="submitted"||U==="streaming",Me=we(I=>{se(D=>D.filter(N=>N.id!==I))},[]),Ge=Ce&&q.length>0,Pl=we(I=>{let D=!!I.text?.trim(),N=!!I.files?.length;if(D||N){if(Ce){if(q.length>0)return;se(Ie=>[...Ie,{id:Et(),text:I.text||"",files:I.files??[],modelContext:I.modelContext}]),F("");return}c.current=I.modelContext,G({text:I.text||"",files:I.files}),r?.(I.text||""),F("")}},[G,r,Ce,q.length]),Al=we(I=>new Promise((D,N)=>{re.current={resolve:D,reject:N},G({text:I}),r?.(I)}),[G,r]);Re(()=>{if(U!=="ready"||q.length===0)return;let[I,...D]=q;se(D),c.current=I.modelContext,G({text:I.text,files:I.files.length>0?I.files:void 0}),r?.(I.text)},[U,G,r,q]);let vl=we(()=>{Z([]),se([]),oe(),F(""),fe.current={},Ee(I=>I+1),J()},[Z,oe,J]),sa=we(()=>{if(!d.current)return;let I=p.current?.memoryUserId,D=h.current,N=j.current;if(!(!I||!D||N.length===0)){if(P.current||(P.current=co()),!E.current){let Ie=N.find(ie=>ie.role==="user"),pe=Ie?Ie.parts.map(ie=>"text"in ie&&typeof ie.text=="string"?ie.text:"").join(" "):"";E.current=al(pe)}return{threadId:D,memoryUserId:I,title:E.current,messages:N,sessionId:w.current,createdAt:P.current,updatedAt:co()}}},[]),Wr=we(async()=>{let I=sa();I&&(await Rr(I),await M())},[sa,M]);Re(()=>{if(n&&k&&!(U==="submitted"||U==="streaming")&&z.length!==0)return B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=void 0;let I=Wr().finally(()=>{O.current===I&&(O.current=void 0)});O.current=I},hm),()=>{B.current&&clearTimeout(B.current)}},[n,k,z,U,Wr]);let na=we(()=>{let I=O.current,D=B.current,N=D?sa():void 0;return D&&(clearTimeout(D),B.current=void 0),(async()=>{I&&await I,N&&(await Rr(N),await M())})()},[sa,M]),Rl=we(()=>{b.current+=1,na(),Z([]),se([]),oe(),F("");let I=sl();return P.current=co(),E.current=void 0,y(I),M(),I},[Z,oe,y,M,na]),xo=we(async I=>{b.current+=1;let D=b.current;if(await na(),D!==b.current)return;let N=await fo(I);D===b.current&&N&&(y(N.threadId),P.current=N.createdAt,E.current=N.title,N.sessionId?(w.current=N.sessionId,C(N.sessionId)):oe(),Z(N.messages),se([]),F(""))},[Z,oe,y,na]),Ml=we(async I=>{if(h.current===I){b.current+=1,B.current&&(clearTimeout(B.current),B.current=void 0);let D=O.current;D&&await D}await tl(I),await M(),h.current===I&&(Z([]),se([]),oe(),F(""),h.current=void 0,g(void 0),P.current=void 0,E.current=void 0)},[Z,oe,M]);Re(()=>{n&&k&&i!==void 0&&i!==h.current&&xo(i)},[i,n,k,xo]);let Fl=we(I=>{F(I.target.value)},[]),Vr=z[z.length-1],zr=z.length>0,Bl=Ce&&(!zr||Vr.role==="user"),Dl=fe.current;return{messages:z,status:U,text:R,setText:F,handleSubmit:Pl,handleTextChange:Fl,isLoading:Ce,showLoaderBubble:Bl,lastMessage:Vr,hasMessages:zr,sendMessage:G,sendMessageAndWait:Al,reset:vl,queuedMessages:q,queueFull:Ge,removeQueuedMessage:Me,sessionId:m,toolDefinitions:Dl,refreshToolDefinitions:J,threads:L,activeThreadId:x,isThreadHistoryReady:k,startNewThread:Rl,switchThread:xo,deleteThread:Ml}}import{useEffect as il,useRef as wm,useState as xm}from"react";var Lm={debug:!1,eval:!1};function ll(e="/api/waniwani",t,a=!1){let[o,r]=xm(Lm),s=wm(t);return il(()=>{s.current=t},[t]),il(()=>{a||(async()=>{try{let n=s.current,l=await(await fetch(`${e}/config`,{headers:n?{...n}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}import{useCallback as Cm,useEffect as Fr,useRef as Im,useState as Sm}from"react";function ym(e){for(let t of e.parts){let a=t;if(a.type==="data"||a.type==="data-suggestions"){let o=a.data;if(o&&Array.isArray(o.suggestions))return o.suggestions}}return null}function ul(e){return typeof e=="object"&&e!==null&&"initial"in e}function mo(e){let{messages:t,status:a,config:o}=e,r=ul(o)&&o.initial?o.initial:void 0,[s,n]=Sm(r??[]),i=Im(a),l=o===!0||ul(o)&&o.dynamic!==!1,u=Cm(()=>{n([])},[]),f=t.length>0;Fr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return Fr(()=>{d?.role==="user"&&u()},[d,u]),Fr(()=>{let c=i.current;if(i.current=a,c==="streaming"&&a==="ready"&&l){let p=[...t].reverse().find(C=>C.role==="assistant");if(!p)return;let m=ym(p);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as bm,useRef as km,useState as Tm}from"react";var Pm=50,Am=30,vm=2e3,dl=500;function ho(e,t=!0){let[a,o]=Tm(""),r=km(void 0);return bm(()=>{if(!t){o("");return}let s=0,n=!1,i=!1,l=()=>{i||(n?(s--,o(e.slice(0,s)),s<=0?(n=!1,r.current=setTimeout(l,dl)):r.current=setTimeout(l,Am)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,vm)):r.current=setTimeout(l,Pm)))};return r.current=setTimeout(l,dl),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function go(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return o?`${e}/resource?token=${encodeURIComponent(o)}`:`${e}/resource`}var fl={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:12,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5"},Rm={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"},Mm={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"]};function Br(e){return{...fl,...e}}function aa(e){let t={};for(let[a,o]of Object.entries(Mm)){let r=e[a];if(r===void 0)continue;let s=typeof r=="number"?`${r}px`:String(r);for(let n of o)t[n]=s}return t}import{jsx as xe,jsxs as oa}from"react/jsx-runtime";var Em=Fm(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:c="triggerDemoRequest",api:p,debug:m,enableThreadHistory:C=!1,showToolCalls:w=!0}=t,x=p??"/api/waniwani",g=go(x,t.headers),h=Br(o),L=aa(h),S=h.backgroundColor.replace("#",""),k=parseInt(S.substring(0,2),16),A=parseInt(S.substring(2,4),16),P=parseInt(S.substring(4,6),16),E=(k*299+A*587+P*114)/1e3<128,B=ll(x,t.headers,t.skipRemoteConfig),O=m??B.debug,b=po({...t,api:x}),v=so({...t,api:x,sessionId:b.sessionId}),y=ho(d,!b.text),[M,X]=pl(!1),[ae,oe]=pl(null),V=cl(null),re=cl(void 0),Le=Dr(()=>{let _=V.current;if(!_)return;_.scrollIntoView({behavior:"smooth",block:"center"});let J=_.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),X(!0),clearTimeout(re.current),re.current=setTimeout(()=>X(!1),2e3)},[]),fe=mo({messages:b.messages,status:b.status,config:t.suggestions}),ce=Dr(_=>{let J=_.content.map(z=>z.text??"").join("").trim();J&&b.handleSubmit({text:J,files:[],modelContext:_.modelContext})},[b.handleSubmit]),Ee=Dr(_=>{fe.clear(),b.handleSubmit({text:_,files:[]})},[fe.clear,b.handleSubmit]);return Dm(a,()=>({sendMessage:_=>{b.handleSubmit({text:_,files:[]}),Le()},sendMessageAndWait:_=>b.sendMessageAndWait(_),reset:b.reset,focus:Le,get messages(){return b.messages},get sessionId(){return b.sessionId}}),[b.handleSubmit,b.sendMessageAndWait,b.reset,b.messages,b.sessionId,Le]),Bm(()=>{if(!c)return;let _=J=>{let z=J.detail,G=typeof z?.message=="string"?z.message:void 0;G&&b.handleSubmit({text:G,files:[]}),Le()};return window.addEventListener(c,_),()=>window.removeEventListener(c,_)},[c,b.handleSubmit,Le]),oa("div",{ref:V,style:{...L,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...E?{"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",M&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[oa("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:[xe("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),xe(Ds,{messages:b.messages,evalEnabled:B.eval,api:x}),C&&xe(ro,{threads:b.threads,activeThreadId:b.activeThreadId,onNewThread:b.startNewThread,onSelectThread:_=>{b.switchThread(_)},onDeleteThread:_=>{b.deleteThread(_)}})]}),oa(fs,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[xe(cs,{scrollClassName:ae?"ww:!relative ww:!overflow-hidden":void 0,children:xe(eo,{messages:b.messages,status:b.status,welcomeMessage:u,welcome:f,onSuggestionSelect:Ee,resourceEndpoint:g,chatSessionId:b.sessionId,isDark:E,onFollowUp:ce,onCallTool:v,fullscreenToolCallId:ae,debug:O,showToolCalls:w,toolDefinitions:b.toolDefinitions,onWidgetDisplayModeChange:(_,J)=>{oe(_==="fullscreen"?J.toolCallId:null)}})}),xe(ps,{})]}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(oo,{suggestions:fe.suggestions,isLoading:fe.isLoading,onSelect:Ee})}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(xa,{queuedMessages:b.queuedMessages,onRemove:b.removeQueuedMessage})}),xe("div",{style:ae?{display:"none"}:void 0,children:xe("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:oa("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[xe(ma,{onSubmit:b.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:oa("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&xe(wa,{}),xe(ha,{onChange:b.handleTextChange,value:b.text,placeholder:y,className:"ww:min-h-0 ww:py-1 ww:px-0"}),xe(ga,{status:b.status,disabled:b.queueFull})]})}),xe(to,{})]})})})]})});import{forwardRef as hl,useCallback as wo,useEffect as St,useImperativeHandle as Nm,useRef as ra,useState as Er}from"react";import{jsx as _m}from"react/jsx-runtime";function ml({text:e}){let{t}=H();return e===!1?null:_m("span",{className:"ww:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as de,jsxs as Ke}from"react/jsx-runtime";var _r=hl(function(t,a){let{locale:o,messages:r}=t;return de(Po,{locale:o,messages:r,children:de(Om,{...t,ref:a})})}),Om=hl(function(t,a){let{t:o,ready:r}=H(),{appearance:s,className:n,allowAttachments:i=!1,welcomeMessage:l,welcome:u,placeholder:f=o.promptInput.placeholder,triggerEvent:d="triggerDemoRequest",api:c,mcp:p,debug:m=!1,readOnly:C=!1,title:w,headerActions:x,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:L=!0,initializing:S=!1,disclaimer:k}=t,A=s?.theme,P=s?.variables,E=P?aa(P):{},[B,O]=Er(!1);St(()=>{if(A!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");O(R.matches);let F=()=>O(R.matches);return R.addEventListener("change",F),()=>R.removeEventListener("change",F)},[A]);let b=A==="dark"||A==="auto"&&B,v=po({...t,api:c}),y=so({...t,api:c,sessionId:v.sessionId,onCallTool:p?.onCallTool}),M=p?.resourceEndpoint??go(c,t.headers),X=ho(f,!v.text),[ae,oe]=Er(null),V=ra(null),re=ra(null),Le=ra(null),fe=ra(null),[ce,Ee]=Er(!0),_=ra(ce);_.current=ce;let J=wo(()=>{let R=V.current;if(!R)return;let F=R.querySelector("textarea");F&&F.focus()},[]),z=wo((R="smooth")=>{let F=re.current;F&&F.scrollTo({top:F.scrollHeight,behavior:R})},[]);St(()=>{let R=fe.current,F=re.current;if(!R||!F)return;let q=new IntersectionObserver(([se])=>Ee(se.isIntersecting),{root:F,rootMargin:"0px 0px 200px 0px",threshold:0});return q.observe(R),()=>q.disconnect()},[]),St(()=>{(v.messages[v.messages.length-1]?.role==="user"||_.current)&&z("smooth")},[v.messages.length,v.messages[v.messages.length-1]]),St(()=>{z("auto")},[z]),St(()=>{if(typeof ResizeObserver>"u")return;let R=re.current,F=Le.current;if(!R&&!F)return;let q=R?.scrollHeight??0,se=R?.clientHeight??0,Ce=new ResizeObserver(()=>{let Me=re.current;if(!Me)return;let Ge=Me.scrollTop+se>=q-5;q=Me.scrollHeight,se=Me.clientHeight,Ge&&z("auto")});return R&&Ce.observe(R),F&&Ce.observe(F),()=>Ce.disconnect()},[z]);let G=mo({messages:v.messages,status:v.status,config:t.suggestions}),Z=wo(R=>{let F=R.content.map(q=>q.text??"").join("").trim();F&&v.handleSubmit({text:F,files:[],modelContext:R.modelContext})},[v.handleSubmit]),U=wo(R=>{G.clear(),v.handleSubmit({text:R,files:[]})},[G.clear,v.handleSubmit]);Nm(a,()=>({sendMessage:R=>{v.handleSubmit({text:R,files:[]}),J()},sendMessageAndWait:R=>v.sendMessageAndWait(R),reset:v.reset,focus:J,get messages(){return v.messages},get sessionId(){return v.sessionId}}),[v.handleSubmit,v.sendMessageAndWait,v.reset,v.messages,v.sessionId,J]),St(()=>{if(!d)return;let R=F=>{let q=F.detail,se=typeof q?.message=="string"?q.message:void 0;se&&v.handleSubmit({text:se,files:[]}),J()};return window.addEventListener(d,R),()=>window.removeEventListener(d,R)},[d,v.handleSubmit,J]);let j=!g&&!!(w||h||x),$=S||!r;return Ke("div",{ref:V,style:{...E,maxHeight:"inherit",opacity:$?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":A==="auto"?"auto":void 0,...$?{"data-waniwani-initializing":""}:{},...b?{"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",A==="dark"&&"dark",n),children:[j&&Ke("div",{className:"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",style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[w&&de("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:w}),!w&&de("div",{className:"ww:flex-1"}),h&&de(ro,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:R=>{v.switchThread(R)},onDeleteThread:R=>{v.deleteThread(R)}}),x]}),Ke("div",{ref:re,className:T("ww:relative ww:flex-1 ww:min-h-0",ae?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[Ke("div",{ref:Le,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",ae&&"ww:!py-0"),children:[de(eo,{messages:v.messages,status:v.status,welcomeMessage:l,welcome:u,onSuggestionSelect:U,resourceEndpoint:M,chatSessionId:v.sessionId,isDark:b,onFollowUp:Z,onCallTool:y,fullscreenToolCallId:ae,debug:m,showToolCalls:L,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(R,F)=>{oe(R==="fullscreen"?F.toolCallId:null)}}),de("div",{ref:fe,"aria-hidden":!0,style:{height:1}})]}),!ce&&!ae&&de("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:de(Ae,{type:"button",onClick:()=>z("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:de(Je,{className:"ww:size-4"})})})]}),!C&&Ke("div",{className:"ww:shrink-0 ww:bg-background",style:ae?{display:"none"}:void 0,children:[de(oo,{suggestions:G.suggestions,isLoading:G.isLoading,onSelect:U}),de(xa,{queuedMessages:v.queuedMessages,onRemove:v.removeQueuedMessage}),de("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:Ke("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[de(ma,{onSubmit:v.handleSubmit,globalDrop:i,multiple:i,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:Ke("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[i&&de(wa,{}),de(ha,{onChange:v.handleTextChange,value:v.text,placeholder:X,className:"ww:min-h-0 ww:py-1 ww:px-0"}),de(ga,{status:v.status,disabled:v.queueFull})]})}),Ke("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center ww:items-center ww:gap-1.5",children:[de(to,{}),de(ml,{text:k})]})]})})]})]})});import{forwardRef as sh,useEffect as nh,useMemo as bl,useState as kl}from"react";var Hm="https://app.waniwani.ai/api/mcp/chat",Um={api:Hm};function qm(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelectorAll("script[src]");for(let t of e)if(t instanceof HTMLScriptElement&&/embed/i.test(t.src))return t;return null}function Gm(){let e=qm();if(!e)return{};let t=P=>e.getAttribute(P)??void 0,a=P=>{let E=e.getAttribute(P);if(E==null)return;let B=E.trim().toLowerCase();if(B==="true"||B==="1"||B==="")return!0;if(B==="false"||B==="0")return!1},o={},r=t("data-api");r&&(o.api=r);let s=t("data-token");s&&(o.token=s);let n=t("data-title");n&&(o.title=n);let i=t("data-welcome-message");i&&(o.welcomeMessage=i);let l=t("data-placeholder");l&&(o.placeholder=l);let u=t("data-mcp-server-url");u&&(o.mcpServerUrl=u);let f=t("data-channel-id");if(f&&(o.channelId=f),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")o.showToolCalls="titles-only";else{let P=a("data-show-tool-calls");P!==void 0&&(o.showToolCalls=P)}let c=t("data-css");c&&(o.css=c);let p=t("data-suggestions");p&&(o.suggestions=p.split(",").map(P=>P.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let C=a("data-disable-page-view");C!==void 0&&(o.disablePageView=C);let w=a("data-hide-header");w!==void 0&&(o.hideHeader=w);let x=t("data-theme");(x==="light"||x==="dark"||x==="auto")&&(o.appearance={theme:x});let g=t("data-locale");(g==="en"||g==="fr"||g==="es")&&(o.locale=g);let h=t("data-mode");(h==="inline"||h==="floating")&&(o.mode=h);let L=t("data-height");L&&(o.height=L);let S=t("data-launcher-text");S&&(o.launcherText=S);let k=t("data-appear-delay");if(k!==void 0){let P=Number.parseInt(k.trim(),10);Number.isFinite(P)&&P>=0&&(o.appearDelay=P)}let A=t("data-disclaimer");if(A!==void 0){let P=A.trim(),E=P.toLowerCase();E==="false"||E==="0"?o.disclaimer=!1:P&&(o.disclaimer=P)}return o}function Nr(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Or(e,t,a){let o=a??Gm(),r=Wm(t,o,e),s={token:"",...Um,...Nr(t),...Nr(o),...Nr(e),...r?{appearance:r}:{}};if(!s.token)throw new Error("[Waniwani] Missing required config: `token`. Set data-token on the script tag or pass it to Waniwani.chat.init().");return s}function Wm(e,t,a){let o=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,r={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},s=Object.keys(r).length>0;if(!o&&!s)return;let n={};return o&&(n.theme=o),s&&(n.variables=r),n}import{useEffect as by,useState as ky}from"react";function Vm(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function Hr(...e){Vm()&&console.log("[Waniwani]",...e)}var Ur=new Set;function zm(e,t,a){return`${e}|${t}|${a??""}`}function jm(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function qr(e){let{api:t,token:a,channelId:o,mode:r,source:s}=e;if(typeof window>"u"||!t||!a||!s)return;let n=zm(t,a,o);if(!Ur.has(n)){Ur.add(n);try{let i=await ta(),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:s,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(jm(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{Ur.delete(n)}}}var $m="waniwani:config:";function gl(e,t,a){return`${$m}${e}|${t}|${a??""}`}function wl(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(gl(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function xl(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(gl(e,t,a),JSON.stringify(o))}catch{}}async function Ll(e,t,a,o){try{let r=`${e.replace(/\/$/,"")}/config`,s=o?`${r}?channel=${encodeURIComponent(o)}`:r,n=await fetch(s,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let i=await n.json(),l=i&&typeof i=="object"&&"data"in i&&i.data?i.data:i;return l?Xm(l):{}}catch{return{}}}function Xm(e){let t={};return 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),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}import{useEffect as Zm,useSyncExternalStore as Ym}from"react";function Qm(e){return e?.patterns??e?.rules??[]}var Cl="\0\0";function Km(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Cl).replace(/\\\*/g,"[^/]*").split(Cl).join(".*");return new RegExp(`^${a}$`)}function Jm(e,t){try{return Km(e).test(t)}catch{return!1}}function Il(e,t){if(!e)return!0;let a=!1;for(let o of Qm(e))if(Jm(o.glob,t)){if(o.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var Gr="waniwani:locationchange",Sl=!1;function eh(){if(!(Sl||typeof history>"u")){Sl=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...o){let r=t.apply(this,o);return window.dispatchEvent(new Event(Gr)),r}}}}function th(e){return eh(),window.addEventListener(Gr,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(Gr,e),window.removeEventListener("popstate",e)}}function ah(){return window.location.pathname}function oh(){return"/"}function rh(){return Ym(th,ah,oh)}function yl(e,t){let a=rh(),o=t&&Il(e,a);return Zm(()=>{Hr("visibility gate",{pathname:a,ready:t,visible:o,rules:e})},[a,t,o]),o}import{jsx as uh}from"react/jsx-runtime";var ih=600,Tl="https://app.waniwani.ai/api/mcp/chat",lh=sh(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=bl(()=>({token:o,channelId:r,api:n?.api,mcpServerUrl:n?.mcpServerUrl,title:n?.title,hideHeader:n?.hideHeader,welcomeMessage:n?.welcomeMessage,placeholder:n?.placeholder,suggestions:n?.suggestions,enableThreadHistory:n?.enableThreadHistory,showToolCalls:n?.showToolCalls,appearance:n?.appearance,disclaimer:n?.disclaimer,locale:n?.locale}),[o,r,n?.api,n?.mcpServerUrl,n?.title,n?.hideHeader,n?.welcomeMessage,n?.placeholder,n?.suggestions,n?.enableThreadHistory,n?.showToolCalls,n?.appearance,n?.disclaimer,n?.locale]),l=n?.api??Tl,[u,f]=kl({}),[d,c]=kl(!1),p=n?.disablePageView;nh(()=>{if(!o){c(!0);return}let x=S=>{p||qr({api:l,token:o,channelId:r,mode:"inline",source:S})},g=wl(l,o,r);g&&(f(g),c(!0),x(g.source));let h=new AbortController,L=setTimeout(()=>c(!0),ih);return Ll(l,o,h.signal,r).then(S=>{h.signal.aborted||(Object.keys(S).length>0&&(xl(l,o,r,S),f(S)),c(!0),x(S.source))}).catch(S=>{console.error("[Waniwani] Remote config fetch failed:",S),c(!0)}).finally(()=>clearTimeout(L)),()=>{h.abort(),clearTimeout(L)}},[l,o,r,p]);let m=bl(()=>Or(i,u,void 0),[i,u]),C=yl(m.visibility,d),w={};return m.mcpServerUrl&&(w.mcpServerUrl=m.mcpServerUrl),m.channelId&&(w.channelId=m.channelId),C?uh(_r,{ref:a,api:m.api??Tl,headers:{Authorization:`Bearer ${m.token}`},skipRemoteConfig:!0,body:Object.keys(w).length>0?w:void 0,appearance:m.appearance,title:m.title,hideHeader:m.hideHeader,welcomeMessage:m.welcomeMessage,welcome:n?.welcome,placeholder:m.placeholder,suggestions:m.suggestions?{initial:m.suggestions}:void 0,enableThreadHistory:m.enableThreadHistory,showToolCalls:m.showToolCalls,disclaimer:m.disclaimer,allowAttachments:n?.allowAttachments,locale:m.locale,messages:n?.messages,className:s,initializing:!d}):null});export{Em as ChatCard,_r as ChatEmbed,Rm as DARK_THEME,fl as DEFAULT_THEME,yr as McpAppFrame,lh as WaniwaniChat,Br as mergeTheme,aa as themeToCSSProperties};
17
17
  /*! Bundled license information:
18
18
 
19
19
  lucide-react/dist/esm/shared/src/utils/mergeClasses.js: