@waniwani/sdk 0.14.3 → 0.14.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  "use client";
2
- import{a as Wr,b as zr,c as Vr,d as jr,e as $r,f as la,g as Xr,h as Qr,i as Kr,j as Jr,k as xo,l as Zr,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 ll,useState as ul}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 Yr=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var es=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Lo=e=>{let t=es(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Rl,createElement as os}from"react";var ts={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 as=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var rs=Rl(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>os("svg",{ref:l,...ts,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:da("lucide",r),...!s&&!as(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>os(u,f)),...Array.isArray(s)?s:[s]]));var W=(e,t)=>{let a=Ml(({className:o,...r},s)=>Fl(rs,{ref:s,iconNode:t,className:da(`lucide-${Yr(Lo(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Lo(e),a};var Bl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ze=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"}]],ze=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"}]],Ye=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"}]],Ue=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 Ve,useMemo as Xl,useRef as Ql,useState as Co}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 ns=(e={})=>{let[t,a]=Co(!1),[o,r]=Co(e.initial!==!1),[s,n]=Co(!1),i=Ql(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(x.current)||x.current?.contains(h.commonAncestorContainer)},[]),u=Ve(g=>{d.isAtBottom=g,r(g)},[]),f=Ve(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||!w.current?0:x.current.scrollHeight-1-x.current.clientHeight},get calculatedTargetScrollTop(){if(!x.current||!w.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let C=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:x.current,contentElement:w.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:C},requestAnimationFrame(()=>{g=void 0}),C},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Jl}}},[]),c=Ve((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),C=So(i.current,g.animation),{ignoreEscapes:P=!1}=g,y,k=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{y=Date.now()}):y=h+(g.duration??0);let A=async()=>{let _=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:B}=d,N=performance.now(),b=(N-(d.lastTick??N))/Zl;if(d.animation||(d.animation={behavior:C,promise:_,ignoreEscapes:P}),d.animation.behavior===C&&(d.lastTick=N),l()||h>Date.now())return A();if(B<Math.min(k,d.calculatedTargetScrollTop)){if(d.animation?.behavior===C){if(C==="instant")return d.scrollTop=d.calculatedTargetScrollTop,A();d.velocity=(C.damping*d.velocity+C.stiffness*d.scrollDifference)/C.mass,d.accumulated+=d.velocity*b,d.scrollTop+=d.accumulated,d.scrollTop!==B&&(d.accumulated=0)}return A()}return y>Date.now()?(k=d.calculatedTargetScrollTop,A()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:So(i.current,i.current.resize),ignoreEscapes:P,duration:Math.max(0,y-Date.now())||void 0}):d.isAtBottom)});return _.then(B=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),B))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===C?d.animation.promise:A()},[u,l,d]),p=Ve(()=>{f(!0),u(!1)},[f,u]),m=Ve(({target:g})=>{if(g!==x.current)return;let{scrollTop:h,ignoreScrollToTop:C}=d,{lastScrollTop:P=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,C&&C>h&&(P=C),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===C)return;if(l()){f(!0),u(!1);return}let y=h>P,k=h<P;if(d.animation?.ignoreEscapes){d.scrollTop=P;return}k&&(f(!0),u(!1)),y&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),L=Ve(({target:g,deltaY:h})=>{let C=g;for(;!["scroll","auto"].includes(getComputedStyle(C).overflow);){if(!C.parentElement)return;C=C.parentElement}C===x.current&&h<0&&x.current.scrollHeight>x.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),x=ss(g=>{x.current?.removeEventListener("scroll",m),x.current?.removeEventListener("wheel",L),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",L,{passive:!0})},[]),w=ss(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([C])=>{let{height:P}=C.contentRect,y=P-(h??P);if(d.resizeDifference=y,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),y>=0){let k=So(i.current,h?i.current.resize:i.current.initial);c({animation:k,wait:!0,preserveScrollPosition:!0,duration:k==="instant"?void 0:Yl})}else d.isNearBottom&&(f(!1),u(!0));h=P,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===y&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:w,scrollRef:x,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function ss(e,t){let a=Ve(o=>(a.current=o,e(o)),t);return a}var Io=new Map;function So(...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 Io.has(o)||Io.set(o,Object.freeze(t)),a?"instant":Io.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 is=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((P,y)=>(C?.targetScrollTop??i)?.(P,y)??P,[i]),c=ns({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:L,stopScroll:x,isAtBottom:w,escapedFromLock:g,state:h}=e??c,C=su(()=>({scrollToBottom:L,stopScroll:x,scrollRef:p,isAtBottom:w,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(P){f.current=P}}),[L,w,m,p,x,g,h]);return ou(l,()=>C,[C]),iu(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),tt.createElement(is.Provider,{value:C},tt.createElement("div",{...u},typeof t=="function"?t(C):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=yo();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 yo(){let e=tu(is);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var lu=zr({prefix:"ww"});function T(...e){return lu(Wr(e))}import{jsx as uu}from"react/jsx-runtime";var Pe=({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 ls=({className:e,...t})=>ca(Dt,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),us=({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}),ds=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=yo(),r=du(()=>{o()},[o]);return!a&&ca(Pe,{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(Ze,{className:"ww:size-4"})})};import cs from"crypto";var fs="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var fu=128,at,mt,cu=e=>{!at||at.length<e?(at=Buffer.allocUnsafe(e*fu),cs.randomFillSync(at),mt=0):mt+e>at.length&&(cs.randomFillSync(at),mt=0),mt+=e};var Et=(e=21)=>{cu(e|=0);let t="";for(let a=mt-e;a<mt;a++)t+=fs[at[a]&63];return t};import{createContext as Cu,useCallback as qe,useContext as Iu,useEffect as Ao,useMemo as Su,useRef as vo,useState as xs}from"react";import{createContext as pu,useContext as mu,useEffect as hu,useMemo as gu,useState as gs}from"react";var ps=["en","fr","es"];function ht(e){return ps.includes(e)}function bo(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"}`},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 ms={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"}`},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 hs={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"}`},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 ko={en:pa,fr:hs,es:ms};import{jsx as Lu}from"react/jsx-runtime";var ws=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 To({children:e,locale:t,messages:a}){let o=!!(t&&xu(t)),r=o?t:"en",[s,n]=gs(r),[i,l]=gs(o);hu(()=>{n(bo(t)),l(!0)},[t]);let u=gu(()=>{let f=ko[s]??ko["en"];return{locale:s,t:wu(f,a),ready:i}},[s,a,i]);return Lu(ws.Provider,{value:u,children:e})}function xu(e){return e==="en"||e==="fr"||e==="es"}function q(){let e=mu(ws);return e||{locale:"en",t:pa,ready:!0}}function Po(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 Is}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}},Ls=Cu(null),Cs=()=>{let e=Iu(Ls);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}=q(),f=vo(null),d=vo(null),[c,p]=xs([]),m=vo(c);Ao(()=>{m.current=c},[c]);let L=qe(()=>{f.current?.click()},[]),x=qe(y=>{let k=[...y];if(k.length===0)return;let A=B=>s?B.size<=s:!0,_=k.filter(A);p(B=>{let N=typeof r=="number"?Math.max(0,r-B.length):void 0,b=typeof N=="number"?_.slice(0,N):_;return[...B,...b.map(v=>({filename:v.name,id:Et(),mediaType:v.type,type:"file",url:URL.createObjectURL(v)}))]})},[r,s]),w=qe(y=>{p(k=>{let A=k.find(_=>_.id===y);return A?.url&&URL.revokeObjectURL(A.url),k.filter(_=>_.id!==y)})},[]),g=qe(()=>{p(y=>{for(let k of y)k.url&&URL.revokeObjectURL(k.url);return[]})},[]);Ao(()=>()=>{for(let y of m.current)y.url&&URL.revokeObjectURL(y.url)},[]);let h=qe(y=>{y.currentTarget.files&&x(y.currentTarget.files),y.currentTarget.value=""},[x]);Ao(()=>{if(!o)return;let y=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault()},k=A=>{A.dataTransfer?.types?.includes("Files")&&A.preventDefault(),A.dataTransfer?.files&&A.dataTransfer.files.length>0&&x(A.dataTransfer.files)};return document.addEventListener("dragover",y),document.addEventListener("drop",k),()=>{document.removeEventListener("dragover",y),document.removeEventListener("drop",k)}},[x,o]);let C=qe(async y=>{y.preventDefault();let k=y.currentTarget,_=new FormData(k).get("message")||"";k.reset();let B=await Promise.all(c.map(async({id:N,...b})=>{if(b.url?.startsWith("blob:")){let v=await yu(b.url);return{...b,url:v??b.url}}return b}));try{let N=n({files:B,text:_},y);N instanceof Promise&&await N,g()}catch{}},[c,n,g]),P=Su(()=>({add:x,clear:g,files:c,openFileDialog:L,remove:w}),[c,x,w,g,L]);return Is(Ls.Provider,{value:P,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:C,ref:d,...l,children:i})]})};var ha=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=q(),n=Cs(),[i,l]=xs(!1),u=o??s.promptInput.placeholder,f=qe(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=qe(c=>{let p=c.clipboardData?.items;if(!p)return;let m=[];for(let L of p)if(L.kind==="file"){let x=L.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}=q(),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=qe(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return Fe(Pe,{"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}=q(),r=Cs();return r.files.length>0?Is(Pe,{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(Pe,{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 Ss=({className:e,...t})=>wt("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),ys=({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}),bs=({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}),ks=({className:e,...t})=>wt("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Ts=({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}),Ps=({className:e,...t})=>wt(Pe,{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 je,jsxs as vs}from"react/jsx-runtime";var As=bu(({message:e,onRemove:t})=>{let{t:a}=q(),o=ku(()=>t(e.id),[t,e.id]);return vs(ys,{children:[je(bs,{}),je(ks,{children:e.text||a.chatQueue.attachmentFallback}),je(Ts,{children:je(Ps,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:je(et,{className:"ww:size-3"})})})]})});As.displayName="ChatQueueItem";function xa({queuedMessages:e,onRemove:t,className:a}){let{t:o}=q();return e.length===0?null:vs(Ss,{className:T("ww:border-t ww:border-border",a),children:[je("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),je("ul",{children:e.map(r=>je(As,{message:r,onRemove:t},r.id))})]})}import{useState as Rs}from"react";import{jsx as Tu}from"react/jsx-runtime";function Ms({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=q(),[r,s]=Rs(!1),[n,i]=Rs(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 Fs=({files:e,className:t,...a})=>e.length===0?null:_t("div",{className:T("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>_t(Pu,{file:o},r))});function Pu({file:e}){let{t}=q();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 _s,useMemo as Wu,useRef as zu,useState as Bo}from"react";import{createContext as Fu,memo as Fo,useCallback as Bu,useContext as Du,useEffect as Ro,useMemo as Eu,useRef as Bs,useState as Mo}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 Ds=Fu(null);function Es(){let e=Du(Ds);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var _u=1e3,Nu=1e3,Nt=Fo(({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]=Mo(l),p=f?a:d,m=Bu(k=>{f||c(k),r?.(k)},[f,r]),[L,x]=Mo(void 0),w=s??L,g=Bs(t),[h,C]=Mo(!1),P=Bs(null);Ro(()=>{t?(g.current=!0,P.current===null&&(P.current=Date.now())):P.current!==null&&(x(Math.ceil((Date.now()-P.current)/Nu)),P.current=null)},[t]),Ro(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Ro(()=>{if(g.current&&!t&&p&&!h){let k=setTimeout(()=>{m(!1),C(!0)},_u);return()=>clearTimeout(k)}},[t,p,h,m]);let y=Eu(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:w}),[t,p,m,w]);return De(Ds.Provider,{value:y,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=Fo(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...s})=>{let{t:n}=q(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:f}=Es(),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(Ye,{className:"ww:size-4 ww:shrink-0"}),c(i,u)]})})});Ot.displayName="ReasoningTrigger";var Ht=Fo(({className:e,children:t,...a})=>{let{isOpen:o}=Es();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 Z,jsxs as ot}from"react/jsx-runtime";var Vu=1e3,Ns=Uu(null);function Os(){let e=Gu(Ns);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Hs({className:e,isWorking:t=!1,open:a,defaultOpen:o,onOpenChange:r,children:s,...n}){let i=o??t,l=a!==void 0,[u,f]=Bo(i),d=l?a:u,c=qu(w=>{l||f(w),r?.(w)},[l,r]),p=zu(t),[m,L]=Bo(!1);_s(()=>{t&&(p.current=!0,L(!1),l||f(!0))},[t,l]),_s(()=>{if(p.current&&!t&&d&&!m){let w=setTimeout(()=>{c(!1),L(!0)},Vu);return()=>clearTimeout(w)}},[t,d,m,c]);let x=Wu(()=>({open:d,setOpen:c,isWorking:t}),[d,c,t]);return Z(Ns.Provider,{value:x,children:Z("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 Us({className:e,label:t,children:a,...o}){let{open:r,setOpen:s,isWorking:n}=Os(),i=a??(n?Z(Be,{duration:1.6,children:t??""}):t);return ot("button",{type:"button",onClick:()=>s(!r),"aria-expanded":r,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),...o,children:[Z(Ue,{className:"ww:size-4 ww:shrink-0"}),Z("span",{className:"ww:truncate",children:i}),Z(ze,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function qs({className:e,children:t,...a}){let{open:o}=Os();return Z("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:Z("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Z("div",{className:T("ww:flex ww:flex-col",e),...a,children:t})})})}function Gs({icon:e,isLast:t,running:a,error:o}){return ot("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Z("span",{className:"ww:flex ww:h-5 ww:items-center",children:Z(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&&Z("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Do({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]=Bo(!1),c=a??"",p=i?Z(Be,{duration:1.6,children:c}):Z("span",{className:"ww:truncate",children:c});return ot("div",{className:T("ww:flex ww:gap-2",e),...n,children:[Z(Gs,{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,Z(ze,{className:T("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",f&&"ww:rotate-180")})]}):Z("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&Z("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:Z("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Z("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 Ws({isStreaming:e=!1,isLast:t=!1,children:a}){return ot("div",{className:"ww:flex ww:gap-2",children:[Z(Gs,{icon:Ye,isLast:t,running:e}),Z("div",{className:T("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:ot(Nt,{isStreaming:e,className:"ww:mb-0",children:[Z(Ot,{hideIcon:!0}),Z(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 zs(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 Vs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function js(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 $s(e){return zs(e)?"ambiguous":Vs(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":js(e)?"wide":"neutral"}function ju(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Xs(e){return ju(e),$s(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(Xs(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=Qs(/\p{P}|\p{S}/u),td=Qs(/\s/);function Qs(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 $e(e){if(e===he.eof||Zr(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 La(e,t,a){if(!od(e))return e;let o=t(),r=$e(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 Ks(e){return e===ke.ivs}function Js(e){return!!(e&ke.cjkOrIvs)}function od(e){return e===ke.nonEmojiGeneralUseVS}function Eo(e){return!!(e&ke.spaceOrPunctuation)}function Ca(e){return!!(e&&e>=55296&&e<=56319)}function Ia(e){return!!(e&&e>=56320&&e<=57343)}function Sa(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 ya=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 ba(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var _o={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};Zs(d,-l),Zs(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=Ia(s)?Sa(s,o(),r):s,i=$e(n),l=new ya(n,o(),r),u=La(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"),L=Ca(p)?ba(p,o(),r):p,x=$e(L);let w=xt(u),g=w||rt(u),h=xt(x),C=h||rt(x),P=Js(u),y=!C||h&&(g||P)||a.includes(p),k=!g||w&&(C||Ut(x))||a.includes(n);return m._open=!!(f===he.asterisk?y:y&&(Eo(u)||!k)),m._close=!!(f===he.asterisk?k:k&&(Eo(x)||!y)),t(p)}}function Zs(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Ys(){return{text:{[he.asterisk]:_o,[he.underscore]:_o},insideSpan:{null:[_o]}}}function en(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Ys())}function tn(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=Ia(d)?Sa(d,u(),f):d,p=$e(c),m=new ya(c,u(),f),L=La(p,m.value.bind(m),c),x=this.events,w=0;return g;function g(C){return he.tilde,c===he.tilde&&x[x.length-1][1].type!==be.characterEscape?l(C):(n.enter("strikethroughSequenceTemporary"),h(C))}function h(C){let P=$e(c);if(C===he.tilde)return w>1?l(C):(n.consume(C),w++,h);if(w<2&&!a)return l(C);let y=n.exit("strikethroughSequenceTemporary"),k=Ca(C)?ba(C,u(),f):C,A=$e(k),B=xt(L)||rt(L),b=xt(A)||rt(A),v=Ut(L)||Ks(P);return y._open=!b||A===_e.attentionSideAfter&&(B||v),y._close=!B||P===_e.attentionSideAfter&&(b||Ut(A)),i(C)}}}function an(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(tn(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=>{Vr(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=[en],t=[pd,an],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var No=md();var ee=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function hd(e){return $o(e)}function $o(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]=$o(e[a]);return t}function wd(e){let t={};for(let a in e)t[a]=$o(e[a]);return t}function cn(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function pn(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?pn(e.substring(0,e.length-1)):e.substr(~t+1)}var Oo=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,ka=class{static hasCaptures(e){return e===null?!1:(Oo.lastIndex=0,Oo.test(e))}static replaceCaptures(e,t,a){return e.replace(Oo,(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 mn(e,t){return e<t?-1:e>t?1:0}function hn(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=mn(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function on(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 gn(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var wn=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 wn(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 xn(o.fontStyle,o.foreground,o.background):null}},Ho=class Ta{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Ta(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Ta(a,t[o]);return a}push(t){return new Ta(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 xn=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"&&on(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&on(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),L=m[m.length-1],x=null;m.length>1&&(x=m.slice(0,m.length-1),x.reverse()),a[o++]=new Id(L,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=mn(l.scope,u.scope);return f!==0||(f=hn(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 xn(a,s.getId(o),s.getId(r)),i=new kd(new qo(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([]),qo=class Ln{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 Ln(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 Go{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(Go._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 Go(this._mainRule.clone(),qo.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(hn(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 qo(t,a,o,r,s))}},nt=class Ae{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Ae.getLanguageId(t),o=Ae.getTokenType(t),r=Ae.getFontStyle(t),s=Ae.getForeground(t),n=Ae.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=Ae.getLanguageId(t),u=Ae.getTokenType(t),f=Ae.containsBalancedBrackets(t)?1:0,d=Ae.getFontStyle(t),c=Ae.getForeground(t),p=Ae.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 Aa(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(rn(r)){let l=[];do l.push(r),r=o.next();while(rn(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 rn(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 Cn(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?Pa({baseGrammar:s,selfGrammar:r},o):Wo(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 Wo(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];va([o],t,a)}}function Pa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&va(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&va(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function va(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?cn({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&va(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=In(s);switch(n.kind){case 0:Pa({...t,selfGrammar:t.baseGrammar},a);break;case 1:Pa(t,a);break;case 2:Wo(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?Wo(n.ruleName,l,a):Pa(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 In(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+)/,sn=/\\(\d+)/g;var Nd=-1,Sn=-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=ka.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=ka.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${pn(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:ka.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:ka.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}},nn=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 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}},Ra=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,Sn),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}},yn=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=cn({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new nn(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(s,a,o))}return t.while?new Ra(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=In(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 nn||u instanceof zo||u instanceof Ra)&&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 bn{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 bn(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 sn.lastIndex=0,this.source.replace(sn,(r,s)=>gn(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 ln(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 ln(e,o,this._items.map(r=>r.ruleId))}},ln=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}},Uo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Ud=class Vo{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Uo(t,8),this._embeddedLanguagesMatcher=new qd(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?Vo._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Uo(0,0);_getBasicScopeAttributes=new wn(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Uo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(Vo.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])=>gn(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])}},vx={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},kn=!1,un=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function Tn(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 un(r,!0);c()}return new un(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,L=p.matchedRuleId,x=m&&m.length>0?m[0].end>o:!1;if(L===Nd){let w=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),qt(e,t,a,r,s,w.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 w=e.getRule(L);s.produce(r,m[0].start);let g=r,h=w.getName(t.content,m),C=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(L,o,f,m[0].end===l,null,C,C),w instanceof zo){let P=w;qt(e,t,a,r,s,P.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let y=P.getContentName(t.content,m),k=C.pushAttributed(y,e);if(r=r.withContentNameScopesList(k),P.endHasBackReferences&&(r=r.withEndRule(P.getEndWithResolvedBackReferences(t.content,m))),!x&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(w instanceof Ra){let P=w;qt(e,t,a,r,s,P.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let y=P.getContentName(t.content,m),k=C.pushAttributed(y,e);if(r=r.withContentNameScopesList(k),P.whileHasBackReferences&&(r=r.withEndRule(P.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,w.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 Ra&&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!==Sn){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}=Pn(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 L=t.getRule(m.ruleId),{ruleScanner:x,findOptions:w}=Pn(L,t,null,o,r===n),g=x.findNextMatchSync(a,r,w);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 Pn(e,t,a,o,r){if(kn){let n=e.compile(t,a),i=An(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(kn){let n=e.compileWhile(t,a),i=An(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function An(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 L=c.getName(i,n),x=o.contentNameScopesList.pushAttributed(L,e),w=c.getContentName(i,n),g=x.pushAttributed(w,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,x,g),C=e.createOnigString(i.substring(0,p.end));Tn(e,C,a&&p.start===0,p.start,h,r,!1,0),Cn(C);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 dn(e,t,a,o,r){let s=Aa(t,Ma),n=yn.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 Ma(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=fn(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=Aa(l,Ma);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)dn(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&&dn(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]=fn(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=yn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===jo.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 jo(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=Tn(this,s,r,0,t,i,!0,o);return Cn(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function fn(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=Ho.push(r,s.scopeNames),o=new Ne(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Ne(null,new Ho(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Ho(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}},jo=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,[]):Aa(a,Ma).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Aa(a,Ma).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)}},vn=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)}},Fa=jo.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,Rn=new WeakMap;function Mn(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=Rn.get(e);return t||(t=sf(e),Rn.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 Fn(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!nf.test(String.fromCharCode(t))?o:o+";"}var lf=/\d/;function Bn(e,t,a){let o="&#"+String(e);return a&&t&&!lf.test(String.fromCharCode(t))?o:o+";"}var Dn=["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 Ba={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 En=["cent","copy","divide","gt","lt","not","para","times"];var _n={}.hasOwnProperty,Xo={},Da;for(Da in Ba)_n.call(Ba,Da)&&(Xo[Ba[Da]]=Da);var uf=/[^\dA-Za-z]/;function Nn(e,t,a,o){let r=String.fromCharCode(e);if(_n.call(Xo,r)){let s=Xo[r],n="&"+s;return a&&Dn.includes(s)&&!En.includes(s)&&(!o||t&&t!==61&&uf.test(String.fromCharCode(t)))?n:n+";"}return""}function On(e,t,a){let o=Fn(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Nn(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Bn(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function Ge(e,t){return Mn(e,Object.assign({format:On},t))}var df=/^>|^->|<!--|-->|--!>|<!-$/g,ff=[">"],cf=["<",">"];function Hn(e,t,a,o){return o.settings.bogusComments?"<?"+Ge(e.value,Object.assign({},o.settings.characterReferences,{subset:ff}))+">":"<!--"+e.value.replace(df,r)+"-->";function r(s){return Ge(s,Object.assign({},o.settings.characterReferences,{subset:cf}))}}function Un(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ne=qn(1),Qo=qn(-1),pf=[];function qn(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 Ea(e){return t;function t(a,o,r){return mf.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Xt=Ea({body:gf,caption:Ko,colgroup:Ko,dd:Cf,dt:Lf,head:Ko,html:hf,li:xf,optgroup:If,option:Sf,p:wf,rp:Gn,rt:Gn,tbody:bf,td:Wn,tfoot:kf,th:Wn,thead:yf,tr:Tf});function Ko(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 Gn(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 Wn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var zn=Ea({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=Qo(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=Qo(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 _a={name:[[`
2
+ import{a as Gr,b as Wr,c as zr,d as Vr,e as jr,f as la,g as $r,h as Xr,i as Qr,j as Kr,k as xo,l as Jr,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 Br,useEffect as Pm,useImperativeHandle as Am,useRef as ll,useState as ul}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 Zr=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var Yr=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Lo=e=>{let t=Yr(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Rl,createElement as as}from"react";var es={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 ts=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var os=Rl(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>as("svg",{ref:l,...es,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:da("lucide",r),...!s&&!ts(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>as(u,f)),...Array.isArray(s)?s:[s]]));var V=(e,t)=>{let a=Ml(({className:o,...r},s)=>Fl(os,{ref:s,iconNode:t,className:da(`lucide-${Zr(Lo(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Lo(e),a};var Bl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Je=V("arrow-down",Bl);var Dl=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],bt=V("arrow-up",Dl);var El=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],kt=V("check",El);var _l=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],We=V("chevron-down",_l);var Nl=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Tt=V("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=V("clipboard-copy",Ol);var Hl=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ze=V("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=V("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=V("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=V("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=V("paperclip",Wl);var zl=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Ft=V("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=V("wrench",Vl);var jl=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],et=V("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=V("zap",$l);import{useCallback as du}from"react";import{useCallback as ze,useMemo as Xl,useRef as Ql,useState as Co}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 ss=(e={})=>{let[t,a]=Co(!1),[o,r]=Co(e.initial!==!1),[s,n]=Co(!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||!w.current?0:x.current.scrollHeight-1-x.current.clientHeight},get calculatedTargetScrollTop(){if(!x.current||!w.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:x.current,contentElement:w.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<=Jl}}},[]),c=ze((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),L=So(i.current,g.animation),{ignoreEscapes:k=!1}=g,b,A=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{b=Date.now()}):b=h+(g.duration??0);let P=async()=>{let D=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:F}=d,O=performance.now(),y=(O-(d.lastTick??O))/Zl;if(d.animation||(d.animation={behavior:L,promise:D,ignoreEscapes:k}),d.animation.behavior===L&&(d.lastTick=O),l()||h>Date.now())return P();if(F<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*y,d.scrollTop+=d.accumulated,d.scrollTop!==F&&(d.accumulated=0)}return P()}return b>Date.now()?(A=d.calculatedTargetScrollTop,P()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:So(i.current,i.current.resize),ignoreEscapes:k,duration:Math.max(0,b-Date.now())||void 0}):d.isAtBottom)});return D.then(F=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),F))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===L?d.animation.promise:P()},[u,l,d]),p=ze(()=>{f(!0),u(!1)},[f,u]),m=ze(({target:g})=>{if(g!==x.current)return;let{scrollTop:h,ignoreScrollToTop:L}=d,{lastScrollTop:k=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,L&&L>h&&(k=L),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===L)return;if(l()){f(!0),u(!1);return}let b=h>k,A=h<k;if(d.animation?.ignoreEscapes){d.scrollTop=k;return}A&&(f(!0),u(!1)),b&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),C=ze(({target:g,deltaY:h})=>{let L=g;for(;!["scroll","auto"].includes(getComputedStyle(L).overflow);){if(!L.parentElement)return;L=L.parentElement}L===x.current&&h<0&&x.current.scrollHeight>x.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),x=rs(g=>{x.current?.removeEventListener("scroll",m),x.current?.removeEventListener("wheel",C),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",C,{passive:!0})},[]),w=rs(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([L])=>{let{height:k}=L.contentRect,b=k-(h??k);if(d.resizeDifference=b,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),b>=0){let A=So(i.current,h?i.current.resize:i.current.initial);c({animation:A,wait:!0,preserveScrollPosition:!0,duration:A==="instant"?void 0:Yl})}else d.isNearBottom&&(f(!1),u(!0));h=k,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===b&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:w,scrollRef:x,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function rs(e,t){let a=ze(o=>(a.current=o,e(o)),t);return a}var Io=new Map;function So(...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 Io.has(o)||Io.set(o,Object.freeze(t)),a?"instant":Io.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 ns=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((k,b)=>(L?.targetScrollTop??i)?.(k,b)??k,[i]),c=ss({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:C,stopScroll:x,isAtBottom:w,escapedFromLock:g,state:h}=e??c,L=su(()=>({scrollToBottom:C,stopScroll:x,scrollRef:p,isAtBottom:w,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(k){f.current=k}}),[C,w,m,p,x,g,h]);return ou(l,()=>L,[L]),iu(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),tt.createElement(ns.Provider,{value:L},tt.createElement("div",{...u},typeof t=="function"?t(L):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=yo();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 yo(){let e=tu(ns);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var lu=Wr({prefix:"ww"});function T(...e){return lu(Gr(e))}import{jsx as uu}from"react/jsx-runtime";var Pe=({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 is=({className:e,...t})=>ca(Dt,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),ls=({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}),us=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=yo(),r=du(()=>{o()},[o]);return!a&&ca(Pe,{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 fs from"crypto";var ds="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var fu=128,at,mt,cu=e=>{!at||at.length<e?(at=Buffer.allocUnsafe(e*fu),fs.randomFillSync(at),mt=0):mt+e>at.length&&(fs.randomFillSync(at),mt=0),mt+=e};var Et=(e=21)=>{cu(e|=0);let t="";for(let a=mt-e;a<mt;a++)t+=ds[at[a]&63];return t};import{createContext as Cu,useCallback as Ue,useContext as Iu,useEffect as Ao,useMemo as Su,useRef as vo,useState as ws}from"react";import{createContext as pu,useContext as mu,useEffect as hu,useMemo as gu,useState as hs}from"react";var cs=["en","fr","es"];function ht(e){return cs.includes(e)}function bo(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:"Steps"},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 ps={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:"Pasos"},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 ms={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:"\xC9tapes"},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 ko={en:pa,fr:ms,es:ps};import{jsx as Lu}from"react/jsx-runtime";var gs=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 To({children:e,locale:t,messages:a}){let o=!!(t&&xu(t)),r=o?t:"en",[s,n]=hs(r),[i,l]=hs(o);hu(()=>{n(bo(t)),l(!0)},[t]);let u=gu(()=>{let f=ko[s]??ko["en"];return{locale:s,t:wu(f,a),ready:i}},[s,a,i]);return Lu(gs.Provider,{value:u,children:e})}function xu(e){return e==="en"||e==="fr"||e==="es"}function H(){let e=mu(gs);return e||{locale:"en",t:pa,ready:!0}}function Po(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 Cs}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}},xs=Cu(null),Ls=()=>{let e=Iu(xs);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=vo(null),d=vo(null),[c,p]=ws([]),m=vo(c);Ao(()=>{m.current=c},[c]);let C=Ue(()=>{f.current?.click()},[]),x=Ue(b=>{let A=[...b];if(A.length===0)return;let P=F=>s?F.size<=s:!0,D=A.filter(P);p(F=>{let O=typeof r=="number"?Math.max(0,r-F.length):void 0,y=typeof O=="number"?D.slice(0,O):D;return[...F,...y.map(v=>({filename:v.name,id:Et(),mediaType:v.type,type:"file",url:URL.createObjectURL(v)}))]})},[r,s]),w=Ue(b=>{p(A=>{let P=A.find(D=>D.id===b);return P?.url&&URL.revokeObjectURL(P.url),A.filter(D=>D.id!==b)})},[]),g=Ue(()=>{p(b=>{for(let A of b)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);Ao(()=>()=>{for(let b of m.current)b.url&&URL.revokeObjectURL(b.url)},[]);let h=Ue(b=>{b.currentTarget.files&&x(b.currentTarget.files),b.currentTarget.value=""},[x]);Ao(()=>{if(!o)return;let b=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&&x(P.dataTransfer.files)};return document.addEventListener("dragover",b),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",b),document.removeEventListener("drop",A)}},[x,o]);let L=Ue(async b=>{b.preventDefault();let A=b.currentTarget,D=new FormData(A).get("message")||"";A.reset();let F=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:F,text:D},b);O instanceof Promise&&await O,g()}catch{}},[c,n,g]),k=Su(()=>({add:x,clear:g,files:c,openFileDialog:C,remove:w}),[c,x,w,g,C]);return Cs(xs.Provider,{value:k,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=Ls(),[i,l]=ws(!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(Pe,{"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=Ls();return r.files.length>0?Cs(Pe,{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(Pe,{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 Is=({className:e,...t})=>wt("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Ss=({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}),ys=({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}),bs=({className:e,...t})=>wt("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),ks=({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}),Ts=({className:e,...t})=>wt(Pe,{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 As}from"react/jsx-runtime";var Ps=bu(({message:e,onRemove:t})=>{let{t:a}=H(),o=ku(()=>t(e.id),[t,e.id]);return As(Ss,{children:[Ve(ys,{}),Ve(bs,{children:e.text||a.chatQueue.attachmentFallback}),Ve(ks,{children:Ve(Ts,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:Ve(et,{className:"ww:size-3"})})})]})});Ps.displayName="ChatQueueItem";function xa({queuedMessages:e,onRemove:t,className:a}){let{t:o}=H();return e.length===0?null:As(Is,{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(Ps,{message:r,onRemove:t},r.id))})]})}import{useState as vs}from"react";import{jsx as Tu}from"react/jsx-runtime";function Rs({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=H(),[r,s]=vs(!1),[n,i]=vs(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 Ms=({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 Es,useMemo as Wu,useRef as zu,useState as Bo}from"react";import{createContext as Fu,memo as Fo,useCallback as Bu,useContext as Du,useEffect as Ro,useMemo as Eu,useRef as Fs,useState as Mo}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 Bs=Fu(null);function Ds(){let e=Du(Bs);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var _u=1e3,Nu=1e3,Nt=Fo(({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]=Mo(l),p=f?a:d,m=Bu(A=>{f||c(A),r?.(A)},[f,r]),[C,x]=Mo(void 0),w=s??C,g=Fs(t),[h,L]=Mo(!1),k=Fs(null);Ro(()=>{t?(g.current=!0,k.current===null&&(k.current=Date.now())):k.current!==null&&(x(Math.ceil((Date.now()-k.current)/Nu)),k.current=null)},[t]),Ro(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Ro(()=>{if(g.current&&!t&&p&&!h){let A=setTimeout(()=>{m(!1),L(!0)},_u);return()=>clearTimeout(A)}},[t,p,h,m]);let b=Eu(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:w}),[t,p,m,w]);return De(Bs.Provider,{value:b,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=Fo(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...s})=>{let{t:n}=H(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:f}=Ds(),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=Fo(({className:e,children:t,...a})=>{let{isOpen:o}=Ds();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 te,jsxs as ot}from"react/jsx-runtime";var Vu=1e3,_s=Uu(null);function Ns(){let e=Gu(_s);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Os({className:e,isWorking:t=!1,open:a,defaultOpen:o,onOpenChange:r,children:s,...n}){let i=o??t,l=a!==void 0,[u,f]=Bo(i),d=l?a:u,c=qu(w=>{l||f(w),r?.(w)},[l,r]),p=zu(t),[m,C]=Bo(!1);Es(()=>{t&&(p.current=!0,C(!1),l||f(!0))},[t,l]),Es(()=>{if(p.current&&!t&&d&&!m){let w=setTimeout(()=>{c(!1),C(!0)},Vu);return()=>clearTimeout(w)}},[t,d,m,c]);let x=Wu(()=>({open:d,setOpen:c,isWorking:t}),[d,c,t]);return te(_s.Provider,{value:x,children:te("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 Hs({className:e,label:t,workingLabel:a,children:o,...r}){let{open:s,setOpen:n,isWorking:i}=Ns(),l=o??(i?te(Be,{duration:1.6,children:a??t??""}):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:[te("span",{className:"ww:truncate",children:l}),te(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",s&&"ww:rotate-180")})]})}function Us({className:e,children:t,...a}){let{open:o}=Ns();return te("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:te("div",{className:"ww:min-h-0 ww:overflow-hidden",children:te("div",{className:T("ww:flex ww:flex-col",e),...a,children:t})})})}function qs({icon:e,isLast:t,running:a,error:o}){return ot("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[te("span",{className:"ww:flex ww:h-5 ww:items-center",children:te(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&&te("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Do({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]=Bo(!1),c=a??"",p=i?te(Be,{duration:1.6,children:c}):te("span",{className:"ww:truncate",children:c});return ot("div",{className:T("ww:flex ww:gap-2",e),...n,children:[te(qs,{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,te(We,{className:T("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",f&&"ww:rotate-180")})]}):te("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&te("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:te("div",{className:"ww:min-h-0 ww:overflow-hidden",children:te("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 Gs({isStreaming:e=!1,isLast:t=!1,children:a}){return ot("div",{className:"ww:flex ww:gap-2",children:[te(qs,{icon:Ze,isLast:t,running:e}),te("div",{className:T("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:ot(Nt,{isStreaming:e,className:"ww:mb-0",children:[te(Ot,{hideIcon:!0}),te(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 Ws(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 zs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Vs(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 js(e){return Ws(e)?"ambiguous":zs(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":Vs(e)?"wide":"neutral"}function ju(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function $s(e){return ju(e),js(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($s(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=Xs(/\p{P}|\p{S}/u),td=Xs(/\s/);function Xs(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||Jr(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 La(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 Qs(e){return e===ke.ivs}function Ks(e){return!!(e&ke.cjkOrIvs)}function od(e){return e===ke.nonEmojiGeneralUseVS}function Eo(e){return!!(e&ke.spaceOrPunctuation)}function Ca(e){return!!(e&&e>=55296&&e<=56319)}function Ia(e){return!!(e&&e>=56320&&e<=57343)}function Sa(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 ya=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 ba(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var _o={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};Js(d,-l),Js(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=Ia(s)?Sa(s,o(),r):s,i=je(n),l=new ya(n,o(),r),u=La(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=Ca(p)?ba(p,o(),r):p,x=je(C);let w=xt(u),g=w||rt(u),h=xt(x),L=h||rt(x),k=Ks(u),b=!L||h&&(g||k)||a.includes(p),A=!g||w&&(L||Ut(x))||a.includes(n);return m._open=!!(f===he.asterisk?b:b&&(Eo(u)||!A)),m._close=!!(f===he.asterisk?A:A&&(Eo(x)||!b)),t(p)}}function Js(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Zs(){return{text:{[he.asterisk]:_o,[he.underscore]:_o},insideSpan:{null:[_o]}}}function Ys(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Zs())}function en(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=Ia(d)?Sa(d,u(),f):d,p=je(c),m=new ya(c,u(),f),C=La(p,m.value.bind(m),c),x=this.events,w=0;return g;function g(L){return he.tilde,c===he.tilde&&x[x.length-1][1].type!==be.characterEscape?l(L):(n.enter("strikethroughSequenceTemporary"),h(L))}function h(L){let k=je(c);if(L===he.tilde)return w>1?l(L):(n.consume(L),w++,h);if(w<2&&!a)return l(L);let b=n.exit("strikethroughSequenceTemporary"),A=Ca(L)?ba(L,u(),f):L,P=je(A),F=xt(C)||rt(C),y=xt(P)||rt(P),v=Ut(C)||Qs(k);return b._open=!y||P===_e.attentionSideAfter&&(F||v),b._close=!F||k===_e.attentionSideAfter&&(y||Ut(P)),i(L)}}}function tn(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(en(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=>{zr(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=[Ys],t=[pd,tn],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var No=md();var ae=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function hd(e){return $o(e)}function $o(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]=$o(e[a]);return t}function wd(e){let t={};for(let a in e)t[a]=$o(e[a]);return t}function fn(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function cn(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?cn(e.substring(0,e.length-1)):e.substr(~t+1)}var Oo=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,ka=class{static hasCaptures(e){return e===null?!1:(Oo.lastIndex=0,Oo.test(e))}static replaceCaptures(e,t,a){return e.replace(Oo,(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 pn(e,t){return e<t?-1:e>t?1:0}function mn(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=pn(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function an(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 hn(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var gn=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 gn(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 wn(o.fontStyle,o.foreground,o.background):null}},Ho=class Ta{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Ta(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Ta(a,t[o]);return a}push(t){return new Ta(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 wn=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"&&an(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&an(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=pn(l.scope,u.scope);return f!==0||(f=mn(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 wn(a,s.getId(o),s.getId(r)),i=new kd(new qo(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([]),qo=class xn{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 xn(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 Go{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(Go._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 Go(this._mainRule.clone(),qo.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(mn(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 qo(t,a,o,r,s))}},nt=class Ae{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Ae.getLanguageId(t),o=Ae.getTokenType(t),r=Ae.getFontStyle(t),s=Ae.getForeground(t),n=Ae.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=Ae.getLanguageId(t),u=Ae.getTokenType(t),f=Ae.containsBalancedBrackets(t)?1:0,d=Ae.getFontStyle(t),c=Ae.getForeground(t),p=Ae.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 Aa(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(on(r)){let l=[];do l.push(r),r=o.next();while(on(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 on(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 Ln(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?Pa({baseGrammar:s,selfGrammar:r},o):Wo(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 Wo(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];va([o],t,a)}}function Pa(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&va(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&va(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function va(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?fn({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&va(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=Cn(s);switch(n.kind){case 0:Pa({...t,selfGrammar:t.baseGrammar},a);break;case 1:Pa(t,a);break;case 2:Wo(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?Wo(n.ruleName,l,a):Pa(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 Cn(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+)/,rn=/\\(\d+)/g;var Nd=-1,In=-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=ka.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=ka.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${cn(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:ka.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:ka.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}},sn=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 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}},Ra=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,In),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}},Sn=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=fn({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new sn(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(s,a,o))}return t.while?new Ra(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=Cn(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 sn||u instanceof zo||u instanceof Ra)&&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 yn{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 yn(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 rn.lastIndex=0,this.source.replace(rn,(r,s)=>hn(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 nn(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 nn(e,o,this._items.map(r=>r.ruleId))}},nn=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}},Uo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Ud=class Vo{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Uo(t,8),this._embeddedLanguagesMatcher=new qd(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?Vo._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Uo(0,0);_getBasicScopeAttributes=new gn(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Uo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(Vo.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])=>hn(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])}},vx={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},bn=!1,ln=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function kn(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 ln(r,!0);c()}return new ln(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 w=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),qt(e,t,a,r,s,w.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 w=e.getRule(C);s.produce(r,m[0].start);let g=r,h=w.getName(t.content,m),L=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(C,o,f,m[0].end===l,null,L,L),w instanceof zo){let k=w;qt(e,t,a,r,s,k.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let b=k.getContentName(t.content,m),A=L.pushAttributed(b,e);if(r=r.withContentNameScopesList(A),k.endHasBackReferences&&(r=r.withEndRule(k.getEndWithResolvedBackReferences(t.content,m))),!x&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(w instanceof Ra){let k=w;qt(e,t,a,r,s,k.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let b=k.getContentName(t.content,m),A=L.pushAttributed(b,e);if(r=r.withContentNameScopesList(A),k.whileHasBackReferences&&(r=r.withEndRule(k.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,w.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 Ra&&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!==In){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}=Tn(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:w}=Tn(C,t,null,o,r===n),g=x.findNextMatchSync(a,r,w);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 Tn(e,t,a,o,r){if(bn){let n=e.compile(t,a),i=Pn(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(bn){let n=e.compileWhile(t,a),i=Pn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function Pn(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),w=c.getContentName(i,n),g=x.pushAttributed(w,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,x,g),L=e.createOnigString(i.substring(0,p.end));kn(e,L,a&&p.start===0,p.start,h,r,!1,0),Ln(L);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 un(e,t,a,o,r){let s=Aa(t,Ma),n=Sn.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 Ma(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=dn(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=Aa(l,Ma);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)un(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&&un(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]=dn(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=Sn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===jo.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 jo(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=kn(this,s,r,0,t,i,!0,o);return Ln(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function dn(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=Ho.push(r,s.scopeNames),o=new Ne(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Ne(null,new Ho(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Ho(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}},jo=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,[]):Aa(a,Ma).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Aa(a,Ma).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)}},An=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)}},Fa=jo.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,vn=new WeakMap;function Rn(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=vn.get(e);return t||(t=sf(e),vn.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 Mn(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!nf.test(String.fromCharCode(t))?o:o+";"}var lf=/\d/;function Fn(e,t,a){let o="&#"+String(e);return a&&t&&!lf.test(String.fromCharCode(t))?o:o+";"}var Bn=["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 Ba={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 Dn=["cent","copy","divide","gt","lt","not","para","times"];var En={}.hasOwnProperty,Xo={},Da;for(Da in Ba)En.call(Ba,Da)&&(Xo[Ba[Da]]=Da);var uf=/[^\dA-Za-z]/;function _n(e,t,a,o){let r=String.fromCharCode(e);if(En.call(Xo,r)){let s=Xo[r],n="&"+s;return a&&Bn.includes(s)&&!Dn.includes(s)&&(!o||t&&t!==61&&uf.test(String.fromCharCode(t)))?n:n+";"}return""}function Nn(e,t,a){let o=Mn(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=_n(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Fn(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 Rn(e,Object.assign({format:Nn},t))}var df=/^>|^->|<!--|-->|--!>|<!-$/g,ff=[">"],cf=["<",">"];function On(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 Hn(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ne=Un(1),Qo=Un(-1),pf=[];function Un(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 Ea(e){return t;function t(a,o,r){return mf.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Xt=Ea({body:gf,caption:Ko,colgroup:Ko,dd:Cf,dt:Lf,head:Ko,html:hf,li:xf,optgroup:If,option:Sf,p:wf,rp:qn,rt:qn,tbody:bf,td:Gn,tfoot:kf,th:Gn,thead:yf,tr:Tf});function Ko(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 qn(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 Gn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var Wn=Ea({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=Qo(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=Qo(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 _a={name:[[`
5
5
  \f\r &/=>`.split(""),`
6
6
  \f\r "&'/=>\``.split("")],[`\0
7
7
  \f\r "&'/<=>`.split(""),`\0
@@ -9,11 +9,11 @@ import{a as Wr,b as zr,c as Vr,d as jr,e as $r,f as la,g as Xr,h as Qr,i as Kr,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 Vn(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||!zn(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=jr(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=Ge(o.attribute,Object.assign({},e.settings.characterReferences,{subset:_a.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Xr:Qr)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=Ge(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:_a.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&xo(a,n)>xo(a,e.alternative)&&(n=e.alternative),i=n+Ge(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?_a.single:_a.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var Df=["<","&"];function Na(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:Ge(e.value,Object.assign({},o.settings.characterReferences,{subset:Df}))}function jn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Na(e,t,a,o)}function $n(e,t,a,o){return o.all(e)}var Xn=Kr("type",{invalid:Ef,unknown:_f,handlers:{comment:Hn,doctype:Un,element:Vn,raw:jn,root:$n,text:Na}});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 Jo(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||Jr,characterReferences:a.characterReferences||Of,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?la:$r,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Uf(e,t,a){return Xn(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 Oa(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 Qe(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Gf(e){return Array.isArray(e)?e:[e]}async function ti(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function or(e){return!e||["plaintext","txt","text","plain"].includes(e)}function ai(e){return e==="ansi"||or(e)}function rr(e){return e==="none"}function oi(e){return rr(e)}function ri(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 Wa(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=Wa(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 si(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 sr="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=>Ha(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===sr&&n.length>1){let m=t.findIndex(g=>g==="light"),L=t.findIndex(g=>g==="dark");if(m===-1||L===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let x=n[m][c]||"inherit",w=n[L][c]||"inherit";l[c]=`light-dark(${x}, ${w})`,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 Ha(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 er(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ni=new WeakMap;function za(e,t){ni.set(e,t)}function Kt(e){return ni.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,Fa])),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],L="",x=-1,w=-1;if(d===0&&(x=0),c===0&&(w=0),c===Number.POSITIVE_INFINITY&&(w=m.children.length),x===-1||w===-1)for(let h=0;h<m.children.length;h++)L+=ii(m.children[h]),x===-1&&L.length===d&&(x=h+1),w===-1&&L.length===c&&(w=h+1);if(x===-1)throw new ee(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(w===-1)throw new ee(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(x,w);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(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||(L=>L);return f.tagName=d.tagName||"span",f.properties={...f.properties,...p,class:f.properties.class},d.properties?.class&&ri(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 ii(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(ii).join(""):""}var Zf=[Kf()];function Ua(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"],Zo={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 Qn(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)Zo[o]&&t.push({type:"setDecoration",value:Zo[o]});else if(o<=29){let r=Zo[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=Qn(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=Qn(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=Oa(e,a),r=Wa(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=Qe(f,o),d=Qe(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 nr(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(or(r)||rr(o))return Wa(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(or(r)||rr(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(ir(a,l,n,i,o).stateStack,l.name,n.name)}function uc(e,t,a,o,r){let s=ir(e,t,a,o,r),n=new Lt(s.stateStack,t.name,a.name);return za(s.tokens,n),s.tokens}function ir(e,t,a,o,r){let s=Oa(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=Wa(e),u=r.grammarState?Qf(r.grammarState,a.name)??Fa:r.grammarContextCode!=null?ir(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Fa,f=[],d=[];for(let c=0,p=l.length;c<p;c++){let[m,L]=l[c];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:L,color:"",fontStyle:0}]);continue}let x,w,g;r.includeExplanation&&(x=t.tokenizeLine(m,u,i),w=x.tokens,g=0);let h=t.tokenizeLine2(m,u,i),C=h.tokens.length/2;for(let P=0;P<C;P++){let y=h.tokens[2*P],k=P+1<C?h.tokens[2*P+2]:m.length;if(y===k)continue;let A=h.tokens[2*P+1],_=Qe(o[nt.getForeground(A)],s),B=nt.getFontStyle(A),N={content:m.substring(y,k),offset:L+y,color:_,fontStyle:B};if(r.includeExplanation){let b=[];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}b.push({settings:S,selectors:M.map(X=>X.split(/ /))})}N.explanation=[];let v=0;for(;y+v<k;){let S=w[g],M=m.substring(S.startIndex,S.endIndex);v+=M.length,N.explanation.push({content:M,scopes:r.includeExplanation==="scopeName"?dc(S.scopes):fc(b,S.scopes)}),g+=1}}f.push(N)}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 Kn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function cc(e,t,a){if(!Kn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Kn(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 li(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=nr(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:L,explanation:x,offset:w,...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 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 qa(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(w=>w[1]).map(w=>({color:w[0],theme:w[1]})).sort((w,g)=>w.color===u?-1:g.color===u?1:0);if(c.length===0)throw new ee("`themes` option must not be empty");let p=li(e,t,a);if(l=Kt(p),u&&sr!==u&&!c.find(w=>w.color===u))throw new ee(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(w=>e.getTheme(w.theme)),L=c.map(w=>w.color);s=p.map(w=>w.map(g=>$f(g,L,f,u,d))),l&&za(s,l);let x=c.map(w=>Oa(w.theme,a));r=Jn(c,m,x,f,u,"fg",d),o=Jn(c,m,x,f,u,"bg",d),n=`shiki-themes ${m.map(w=>w.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Oa(a.theme,a);s=nr(e,t,a);let f=e.getTheme(a.theme);o=Qe(f.bg,u),r=Qe(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 Jn(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=Qe(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===sr&&e.length>1){let d=e.findIndex(L=>L.color==="light"),c=e.findIndex(L=>L.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=Qe(t[d][s],a[d])||"inherit",m=Qe(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 Ga(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Ga(e,r,s),codeToTokens:(r,s)=>qa(e,r,s)}){let r=t;for(let m of Ua(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=qa(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 Ua(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=Ua(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[L,x]of Object.entries(t.meta||{}))L.startsWith("_")||(u[L]=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:ri,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((L,x)=>{x&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
13
- `}));let w={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of L){let C={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},P=er(h.htmlStyle||Ha(h));P&&(C.properties.style=P);for(let y of r)C=y?.span?.call(p,C,x+1,g,w,h)||C;i==="inline"?n.children.push(C):i==="classic"&&w.children.push(C),g+=h.content.length}if(i==="classic"){for(let h of r)w=h?.line?.call(p,w,x+1)||w;c.push(w),s.push(w)}else i==="inline"&&c.push(w)}),i==="classic"){for(let L of r)d=L?.code?.call(p,d)||d;f.children.push(d);for(let L of r)f=L?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let L=[],x={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(L.push(x),x={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&x.children.push(h);L.push(x);let g={type:"element",tagName:"code",properties:{},children:L};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 C=g.children[h];C.type==="element"&&n.children.push(...C.children)}}let m=n;for(let L of r)m=L?.root?.call(p,m)||m;return o&&za(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=er(r.htmlStyle||Ha(r)),n=er(o.htmlStyle||Ha(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=Jo;function Cc(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Ga(e,s,n),codeToTokens:(s,n)=>qa(e,s,n)},r=Lc(Ga(e,t,a,o));for(let s of Ua(a))r=s.postprocess?.call(o,r,a)||r;return r}var Zn={light:"#333333",dark:"#bbbbbb"},Yn={light:"#fffffe",dark:"#1e1e1e"},ei="__shiki_resolved";function lr(e){if(e?.[ei])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"?Zn.light:Zn.dark),a||(a=t.type==="light"?Yn.light:Yn.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,ei,{enumerable:!1,writable:!1,value:!0}),t}async function ui(e){return Array.from(new Set((await Promise.all(e.filter(t=>!ai(t)).map(async t=>await ti(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function di(e){return(await Promise.all(e.map(async a=>oi(a)?null:lr(await ti(a))))).filter(a=>!!a)}var Yo=3,Ic=!1;function Sc(e,t=3){if(Yo&&!(typeof Yo=="number"&&t>Yo)){if(Ic)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var Xe=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function fi(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 Xe(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var tr=class extends vn{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=lr(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=fi(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 Xe(`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))}},ar=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 Xe("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(lr),r=new ar(e.engine,a),s=new tr(r,o,a,e.langAlias),n;function i(h){return fi(h,e.langAlias)}function l(h){w();let C=s.getGrammar(typeof h=="string"?h:h.name);if(!C)throw new Xe(`Language \`${h}\` not found, you may need to load it first`);return C}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};w();let C=s.getTheme(h);if(!C)throw new Xe(`Theme \`${h}\` not found, you may need to load it first`);return C}function f(h){w();let C=u(h);n!==h&&(s.setTheme(C),n=h);let P=s.getColorMap();return{theme:C,colorMap:P}}function d(){return w(),s.getLoadedThemes()}function c(){return w(),s.getLoadedLanguages()}function p(...h){w(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await ui(h))}function L(...h){w();for(let C of h.flat(1))s.loadTheme(C)}async function x(...h){return w(),L(await di(h))}function w(){if(t)throw new Xe("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:L,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([di(e.themes||[]),ui(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)=>nr(t,a,o),codeToTokensWithThemes:(a,o)=>li(t,a,o),codeToTokens:(a,o)=>qa(t,a,o),codeToHast:(a,o)=>Ga(t,a,o),codeToHtml:(a,o)=>Cc(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function ci(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,ai(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(oi(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 pi(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 ur=[{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"))}],mi=Object.fromEntries(ur.map(e=>[e.id,e.import])),hi=Object.fromEntries(ur.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Jt={...mi,...hi};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"))}],gi=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,L){o.HEAPU8.copyWithin(p,m,m+L)}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 L=Ac();if(p>L)return!1;for(let x=1;x<=4;x*=2){let w=m*(1+.2/x);w=Math.min(w,p+100663296);let g=Math.min(L,Rc(Math.max(p,w),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,L=1024){let x=m+L,w=m;for(;p[w]&&!(w>=x);)++w;if(w-m>16&&p.buffer&&l)return l.decode(p.subarray(m,w));let g="";for(;m<w;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let C=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|C);continue}let P=p[m++]&63;if((h&240)===224?h=(h&15)<<12|C<<6|P:h=(h&7)<<18|C<<12|P<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let y=h-65536;g+=String.fromCharCode(55296|y>>10,56320|y&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 ja=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}},$a=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 ja(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($a,"LAST_ID",0);le($a,"_sharedPtr",0);le($a,"_sharedPtrInUse",!1);var wi=$a,fr=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 ja(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 wi(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 Va;function Uc(e){if(Va)return Va;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 dr(o)(a):o instanceof WebAssembly.Module?o=await dr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await dr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return Va=t(),Va}function dr(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 xi(e){return e&&await Uc(e),{createScanner(t){return new fr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new wi(t)}}}var Xa=ci({langs:Jt,themes:gi,engine:()=>xi(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Wc,codeToHast:zc,codeToTokens:Vc,codeToTokensBase:jc,codeToTokensWithThemes:$c,getSingletonHighlighter:Xc,getLastGrammarState:Qc}=pi(Xa,{guessEmbeddedLanguages:si});var Li=new Set(Object.keys(Jt)),cr=new Map,pr=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(cr.has(a))return cr.get(a);let o=Xa({themes:t,langs:[e]});return cr.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 Li.has(o)},getSupportedLanguages(){return Array.from(Li)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=Jc(o,r,s);return pr.has(i)?pr.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]}});pr.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 Ci=Yc();import{memo as op}from"react";import{useEffect as ep,useRef as Qa,useState as tp}from"react";var ap=5,Ii=400;function Si(e,t,a={}){let{msPerChar:o=ap}=a,[r,s]=tp(t?"":e),n=Qa(e),i=Qa(t?0:e.length),l=Qa(0),u=Qa(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>Ii&&(i.current=n.current.length-Ii),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 L=Math.min(Math.floor(m/o),p.length-i.current);i.current+=L,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 Ka}from"react/jsx-runtime";var mr=({className:e,from:t,children:a,...o})=>Ka("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:Ka("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),hr=({children:e,className:t,...a})=>Ka("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:No,code:Ci},sp={cjk:No},np={enabled:!1};function ip({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=Si(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Ka(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 Ja=op(ip,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Ja.displayName="MessageResponse";import{createContext as lp,useCallback as up,useContext as Ti,useEffect as dp,useMemo as wr,useRef as fp,useState as xr}from"react";import{Fragment as ki,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}=q(),[o,r]=xr(!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(Pe,{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(ki,{children:[Q(kt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copied})]}):lt(ki,{children:[Q(Pt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copy})]})})}function Pi({data:e,label:t,className:a,...o}){let[r,s]=xr(!1),n=wr(()=>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 Lr=lp({open:!1,toggle:()=>{}});function Ai({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=xr(t);return Q(Lr.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 vi({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=Ti(Lr),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(Ue,{className:"ww:size-4 ww:shrink-0"}),Q("span",{className:"ww:truncate",children:n?Q(Be,{duration:1.6,children:i}):i}),Q(ze,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Ri({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 Mi({className:e,children:t,...a}){let{open:o}=Ti(Lr);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 Cr({className:e,input:t,debug:a,...o}){let{t:r}=q(),s=wr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return Q(Pi,{data:s,label:r.tool.request,className:e,...o})}function gr(e){if(!(typeof e!="object"||e===null))return e}function Fi(e){return gr(e?.ui)}function Bi(e){return gr(gr(e)?._meta)}function yi(e){if(!e)return;let t=Fi(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 bi(e){return Fi(e)?.autoHeight===!0}function Yt(e,t,a){if(e){let o=yi(a?.[e]?._meta);if(o)return o}return yi(Bi(t))}function Di(e,t,a){return e&&bi(a?.[e]?._meta)?!0:bi(Bi(t))}function Ir({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=q(),n=wr(()=>{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(Pi,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as Ei,jsxs as mp}from"react/jsx-runtime";function _i(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Ni(e){return e.parts.some(_i)}function Oi(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=>!(!_i(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function Hi({className:e,...t}){let{t:a}=q();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:[Ei(Bt,{className:"ww:size-4 ww:shrink-0"}),Ei(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as hp,useEffect as qi,useMemo as gp,useRef as ye,useState as Gi}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 Ui(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 Sr({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),L=ye(t),x=ye(a),w=ye({width:0,height:0}),g=ye(null),h=ye(!1),C=ye(0),P=ye("inline"),[y,k]=Gi(Lp),[A,_]=Gi(void 0),B=ye(l),N=ye(u),b=ye(f),v=ye(d),S=ye(r),M=ye(p);L.current=t,x.current=a,B.current=l,N.current=u,b.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,qi(()=>{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]),qi(()=>{let z=m.current;if(!z)return;let re=!1,Le=!1,fe=null,ce=null,Ee=setTimeout(()=>{if(re||Le||C.current>=bp)return;C.current+=1;let V=new URL(z.src);V.searchParams.set("_retry",String(C.current)),z.src=V.toString()},yp),E=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 Y=G.method,H=G.id;if(Y==="ui/initialize"&&H!=null){Le=!0,clearTimeout(Ee),E({jsonrpc:"2.0",id:H,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:P.current}}});return}if(Y==="ui/notifications/initialized"){h.current=!0;let j=L.current,$=x.current,R=$._meta&&typeof $._meta=="object"?$._meta:null,F=kp(S.current),U=R&&typeof R.waniwani=="object"&&R.waniwani!==null?R.waniwani:null,se=U||F?{...U??{},...F?{sessionId:F}:{}}:void 0,Ce=R||se?{...R??{},...se?{waniwani:se}:{}}:void 0;E({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:j}});let Re=$.content??[{type:"text",text:JSON.stringify($)}];E({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Re,structuredContent:$.structuredContent,_meta:Ce,meta:Ce}});return}if(Y==="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=w.current,U=$!==void 0&&$!==F.height,se=R!==void 0&&R!==F.width;if(!U&&!se)return;if(U&&$!==void 0){F.height=$;let Ce=X($),Re=z.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),k(Ce),z.animate&&Math.abs(Re-Ce)>2){let We=z.animate([{height:`${Re}px`},{height:`${Ce}px`}],{duration:Sp,easing:"ease-out",fill:"forwards"});g.current=We,We.onfinish=()=>{g.current===We&&(We.cancel(),g.current=null)}}}se&&i&&R!==void 0&&(F.width=R,_(R));return}if(Y==="ui/open-link"&&H!=null){let j=G.params?.url;typeof j=="string"&&(B.current?B.current(j):window.open(j,"_blank","noopener,noreferrer")),E({jsonrpc:"2.0",id:H,result:{}});return}if(Y==="ui/message"&&H!=null){if(N.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(U=>U.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 zn(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||!Wn(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=Vr(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:_a.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?$r:Xr)(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:_a.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&xo(a,n)>xo(a,e.alternative)&&(n=e.alternative),i=n+qe(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?_a.single:_a.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var Df=["<","&"];function Na(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 Vn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Na(e,t,a,o)}function jn(e,t,a,o){return o.all(e)}var $n=Qr("type",{invalid:Ef,unknown:_f,handlers:{comment:On,doctype:Hn,element:zn,raw:Vn,root:jn,text:Na}});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 Jo(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||Kr,characterReferences:a.characterReferences||Of,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?la:jr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Uf(e,t,a){return $n(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 Oa(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 ei(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function or(e){return!e||["plaintext","txt","text","plain"].includes(e)}function ti(e){return e==="ansi"||or(e)}function rr(e){return e==="none"}function ai(e){return rr(e)}function oi(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 Wa(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=Wa(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 ri(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 sr="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=>Ha(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===sr&&n.length>1){let m=t.findIndex(g=>g==="light"),C=t.findIndex(g=>g==="dark");if(m===-1||C===-1)throw new ae('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let x=n[m][c]||"inherit",w=n[C][c]||"inherit";l[c]=`light-dark(${x}, ${w})`,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 Ha(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 er(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var si=new WeakMap;function za(e,t){si.set(e,t)}function Kt(e){return si.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,Fa])),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 ae("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 ae(`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 ae(`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 ae(`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 ae(`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,w=-1;if(d===0&&(x=0),c===0&&(w=0),c===Number.POSITIVE_INFINITY&&(w=m.children.length),x===-1||w===-1)for(let h=0;h<m.children.length;h++)C+=ni(m.children[h]),x===-1&&C.length===d&&(x=h+1),w===-1&&C.length===c&&(w=h+1);if(x===-1)throw new ae(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(w===-1)throw new ae(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(x,w);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(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&&oi(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 ae(`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 ae(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function ni(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(ni).join(""):""}var Zf=[Kf()];function Ua(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"],Zo={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 Xn(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)Zo[o]&&t.push({type:"setDecoration",value:Zo[o]});else if(o<=29){let r=Zo[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=Xn(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=Xn(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=Oa(e,a),r=Wa(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 nr(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(or(r)||rr(o))return Wa(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 ae(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new ae(`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(or(r)||rr(s))throw new ae("Plain language does not have grammar state");if(r==="ansi")throw new ae("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new Lt(ir(a,l,n,i,o).stateStack,l.name,n.name)}function uc(e,t,a,o,r){let s=ir(e,t,a,o,r),n=new Lt(s.stateStack,t.name,a.name);return za(s.tokens,n),s.tokens}function ir(e,t,a,o,r){let s=Oa(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=Wa(e),u=r.grammarState?Qf(r.grammarState,a.name)??Fa:r.grammarContextCode!=null?ir(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Fa,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,w,g;r.includeExplanation&&(x=t.tokenizeLine(m,u,i),w=x.tokens,g=0);let h=t.tokenizeLine2(m,u,i),L=h.tokens.length/2;for(let k=0;k<L;k++){let b=h.tokens[2*k],A=k+1<L?h.tokens[2*k+2]:m.length;if(b===A)continue;let P=h.tokens[2*k+1],D=Xe(o[nt.getForeground(P)],s),F=nt.getFontStyle(P),O={content:m.substring(b,A),offset:C+b,color:D,fontStyle:F};if(r.includeExplanation){let y=[];if(r.includeExplanation!=="scopeName")for(let J of a.settings){let S;switch(typeof J.scope){case"string":S=J.scope.split(/,/).map(_=>_.trim());break;case"object":S=J.scope;break;default:continue}y.push({settings:J,selectors:S.map(_=>_.split(/ /))})}O.explanation=[];let v=0;for(;b+v<A;){let J=w[g],S=m.substring(J.startIndex,J.endIndex);v+=S.length,O.explanation.push({content:S,scopes:r.includeExplanation==="scopeName"?dc(J.scopes):fc(y,J.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 Qn(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function cc(e,t,a){if(!Qn(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)Qn(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 ii(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=nr(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:w,...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 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 qa(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(w=>w[1]).map(w=>({color:w[0],theme:w[1]})).sort((w,g)=>w.color===u?-1:g.color===u?1:0);if(c.length===0)throw new ae("`themes` option must not be empty");let p=ii(e,t,a);if(l=Kt(p),u&&sr!==u&&!c.find(w=>w.color===u))throw new ae(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(w=>e.getTheme(w.theme)),C=c.map(w=>w.color);s=p.map(w=>w.map(g=>$f(g,C,f,u,d))),l&&za(s,l);let x=c.map(w=>Oa(w.theme,a));r=Kn(c,m,x,f,u,"fg",d),o=Kn(c,m,x,f,u,"bg",d),n=`shiki-themes ${m.map(w=>w.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Oa(a.theme,a);s=nr(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 ae("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function Kn(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===sr&&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 ae('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 Ga(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Ga(e,r,s),codeToTokens:(r,s)=>qa(e,r,s)}){let r=t;for(let m of Ua(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=qa(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 Ua(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=Ua(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:oi,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 w={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}]},k=er(h.htmlStyle||Ha(h));k&&(L.properties.style=k);for(let b of r)L=b?.span?.call(p,L,x+1,g,w,h)||L;i==="inline"?n.children.push(L):i==="classic"&&w.children.push(L),g+=h.content.length}if(i==="classic"){for(let h of r)w=h?.line?.call(p,w,x+1)||w;c.push(w),s.push(w)}else i==="inline"&&c.push(w)}),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 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 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=er(r.htmlStyle||Ha(r)),n=er(o.htmlStyle||Ha(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=Jo;function Cc(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Ga(e,s,n),codeToTokens:(s,n)=>qa(e,s,n)},r=Lc(Ga(e,t,a,o));for(let s of Ua(a))r=s.postprocess?.call(o,r,a)||r;return r}var Jn={light:"#333333",dark:"#bbbbbb"},Zn={light:"#fffffe",dark:"#1e1e1e"},Yn="__shiki_resolved";function lr(e){if(e?.[Yn])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"?Jn.light:Jn.dark),a||(a=t.type==="light"?Zn.light:Zn.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,Yn,{enumerable:!1,writable:!1,value:!0}),t}async function li(e){return Array.from(new Set((await Promise.all(e.filter(t=>!ti(t)).map(async t=>await ei(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function ui(e){return(await Promise.all(e.map(async a=>ai(a)?null:lr(await ei(a))))).filter(a=>!!a)}var Yo=3,Ic=!1;function Sc(e,t=3){if(Yo&&!(typeof Yo=="number"&&t>Yo)){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 di(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 tr=class extends An{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=lr(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=di(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))}},ar=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(lr),r=new ar(e.engine,a),s=new tr(r,o,a,e.langAlias),n;function i(h){return di(h,e.langAlias)}function l(h){w();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"};w();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){w();let L=u(h);n!==h&&(s.setTheme(L),n=h);let k=s.getColorMap();return{theme:L,colorMap:k}}function d(){return w(),s.getLoadedThemes()}function c(){return w(),s.getLoadedLanguages()}function p(...h){w(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await li(h))}function C(...h){w();for(let L of h.flat(1))s.loadTheme(L)}async function x(...h){return w(),C(await ui(h))}function w(){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([ui(e.themes||[]),li(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)=>nr(t,a,o),codeToTokensWithThemes:(a,o)=>ii(t,a,o),codeToTokens:(a,o)=>qa(t,a,o),codeToHast:(a,o)=>Ga(t,a,o),codeToHtml:(a,o)=>Cc(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function fi(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,ti(d))return[];let c=t[d];if(!c)throw new ae(`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(ai(d))return"none";if(typeof d=="string"){let c=a[d];if(!c)throw new ae(`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 ci(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 ur=[{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"))}],pi=Object.fromEntries(ur.map(e=>[e.id,e.import])),mi=Object.fromEntries(ur.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Jt={...pi,...mi};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"))}],hi=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 w=m*(1+.2/x);w=Math.min(w,p+100663296);let g=Math.min(C,Rc(Math.max(p,w),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,w=m;for(;p[w]&&!(w>=x);)++w;if(w-m>16&&p.buffer&&l)return l.decode(p.subarray(m,w));let g="";for(;m<w;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let L=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|L);continue}let k=p[m++]&63;if((h&240)===224?h=(h&15)<<12|L<<6|k:h=(h&7)<<18|L<<12|k<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let b=h-65536;g+=String.fromCharCode(55296|b>>10,56320|b&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 ja=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}},$a=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 ja(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($a,"LAST_ID",0);le($a,"_sharedPtr",0);le($a,"_sharedPtrInUse",!1);var gi=$a,fr=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 ja(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 gi(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 Va;function Uc(e){if(Va)return Va;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 dr(o)(a):o instanceof WebAssembly.Module?o=await dr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await dr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return Va=t(),Va}function dr(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 wi(e){return e&&await Uc(e),{createScanner(t){return new fr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new gi(t)}}}var Xa=fi({langs:Jt,themes:hi,engine:()=>wi(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Wc,codeToHast:zc,codeToTokens:Vc,codeToTokensBase:jc,codeToTokensWithThemes:$c,getSingletonHighlighter:Xc,getLastGrammarState:Qc}=ci(Xa,{guessEmbeddedLanguages:ri});var xi=new Set(Object.keys(Jt)),cr=new Map,pr=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(cr.has(a))return cr.get(a);let o=Xa({themes:t,langs:[e]});return cr.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 xi.has(o)},getSupportedLanguages(){return Array.from(xi)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=Jc(o,r,s);return pr.has(i)?pr.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]}});pr.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 Li=Yc();import{memo as op}from"react";import{useEffect as ep,useRef as Qa,useState as tp}from"react";var ap=5,Ci=400;function Ii(e,t,a={}){let{msPerChar:o=ap}=a,[r,s]=tp(t?"":e),n=Qa(e),i=Qa(t?0:e.length),l=Qa(0),u=Qa(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>Ci&&(i.current=n.current.length-Ci),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 Ka}from"react/jsx-runtime";var mr=({className:e,from:t,children:a,...o})=>Ka("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:Ka("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),hr=({children:e,className:t,...a})=>Ka("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:No,code:Li},sp={cjk:No},np={enabled:!1};function ip({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=Ii(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Ka(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 Ja=op(ip,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Ja.displayName="MessageResponse";import{createContext as lp,useCallback as up,useContext as ki,useEffect as dp,useMemo as wr,useRef as fp,useState as xr}from"react";import{Fragment as bi,jsx as K,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]=xr(!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 K(Pe,{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(bi,{children:[K(kt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):lt(bi,{children:[K(Pt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function Ti({data:e,label:t,className:a,...o}){let[r,s]=xr(!1),n=wr(()=>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:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K(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:[K(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?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:n})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var Lr=lp({open:!1,toggle:()=>{}});function Pi({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=xr(t);return K(Lr.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:K("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 Ai({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=ki(Lr),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:[K(Ye,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:n?K(Be,{duration:1.6,children:i}):i}),K(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function vi({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",s=t??"";return K("div",{className:T("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...o,children:K("span",{className:"ww:truncate",children:r?K(Be,{duration:1.6,children:s}):s})})}function Ri({className:e,children:t,...a}){let{open:o}=ki(Lr);return K("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:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:T("ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",e),...a,children:t})})})}function Cr({className:e,input:t,debug:a,...o}){let{t:r}=H(),s=wr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return K(Ti,{data:s,label:r.tool.request,className:e,...o})}function gr(e){if(!(typeof e!="object"||e===null))return e}function Mi(e){return gr(e?.ui)}function Fi(e){return gr(gr(e)?._meta)}function Si(e){if(!e)return;let t=Mi(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 yi(e){return Mi(e)?.autoHeight===!0}function Yt(e,t,a){if(e){let o=Si(a?.[e]?._meta);if(o)return o}return Si(Fi(t))}function Bi(e,t,a){return e&&yi(a?.[e]?._meta)?!0:yi(Fi(t))}function Ir({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=H(),n=wr(()=>{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:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:s.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(Ti,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as Di,jsxs as mp}from"react/jsx-runtime";function Ei(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function _i(e){return e.parts.some(Ei)}function Ni(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=>!(!Ei(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function Oi({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:[Di(Bt,{className:"ww:size-4 ww:shrink-0"}),Di(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as hp,useEffect as Ui,useMemo as gp,useRef as ye,useState as qi}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 Hi(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 Sr({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),w=ye({width:0,height:0}),g=ye(null),h=ye(!1),L=ye(0),k=ye("inline"),[b,A]=qi(Lp),[P,D]=qi(void 0),F=ye(l),O=ye(u),y=ye(f),v=ye(d),J=ye(r),S=ye(p);C.current=t,x.current=a,F.current=l,O.current=u,y.current=f,v.current=d,J.current=r,S.current=p;let _=hp(W=>i?Math.max(W+Cp,0):Math.min(Math.max(W,50),xp),[i]),G=gp(()=>{let W=o.includes("?")?"&":"?";return`${o}${W}uri=${encodeURIComponent(e)}`},[o,e]),re=ye(s);return re.current=s,Ui(()=>{if(!h.current)return;let W=m.current;W?.contentWindow&&W.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),Ui(()=>{let W=m.current;if(!W)return;let Q=!1,Le=!1,fe=null,ce=null,Ee=setTimeout(()=>{if(Q||Le||L.current>=bp)return;L.current+=1;let j=new URL(W.src);j.searchParams.set("_retry",String(L.current)),W.src=j.toString()},yp),E=j=>{W.contentWindow?.postMessage(j,"*")},Y=j=>{if(Q||j.source!==W.contentWindow)return;let z=j.data;if(!z||typeof z!="object"||z.jsonrpc!=="2.0")return;let ee=z.method,U=z.id;if(ee==="ui/initialize"&&U!=null){Le=!0,clearTimeout(Ee),E({jsonrpc:"2.0",id:U,result:{protocolVersion:z.params?.protocolVersion??Ip,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:re.current?"dark":"light",displayMode:k.current}}});return}if(ee==="ui/notifications/initialized"){h.current=!0;let $=C.current,X=x.current,R=X._meta&&typeof X._meta=="object"?X._meta:null,M=kp(J.current),q=R&&typeof R.waniwani=="object"&&R.waniwani!==null?R.waniwani:null,se=q||M?{...q??{},...M?{sessionId:M}:{}}:void 0,Ce=R||se?{...R??{},...se?{waniwani:se}:{}}:void 0;E({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:$}});let Re=X.content??[{type:"text",text:JSON.stringify(X)}];E({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Re,structuredContent:X.structuredContent,_meta:Ce,meta:Ce}});return}if(ee==="ui/notifications/size-changed"){let $=z.params,X=typeof $?.height=="number"?$.height:void 0,R=typeof $?.width=="number"?$.width:void 0,M=w.current,q=X!==void 0&&X!==M.height,se=R!==void 0&&R!==M.width;if(!q&&!se)return;if(q&&X!==void 0){M.height=X;let Ce=_(X),Re=W.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),A(Ce),W.animate&&Math.abs(Re-Ce)>2){let Ge=W.animate([{height:`${Re}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&&(M.width=R,D(R));return}if(ee==="ui/open-link"&&U!=null){let $=z.params?.url;typeof $=="string"&&(F.current?F.current($):window.open($,"_blank","noopener,noreferrer")),E({jsonrpc:"2.0",id:U,result:{}});return}if(ee==="ui/message"&&U!=null){if(O.current&&z.params){let $=z.params,X=fe;if(fe=null,ce){clearTimeout(ce.timer);let R=ce.text;ce=null;let M=($.content??[]).map(q=>q.text??"").join("").trim();$={...$,content:[{type:"text",text:`${M}
14
14
 
15
- ${R}`}]}}N.current({...j,...$?{modelContext:$}:{}})}E({jsonrpc:"2.0",id:H,result:{}});return}if(Y==="ui/update-model-context"&&H!=null){fe=Ui(fe,G.params),E({jsonrpc:"2.0",id:H,result:{}});return}if(Y==="tools/call"&&H!=null){let j=b.current;if(!j){E({jsonrpc:"2.0",id:H,error:{code:-32601,message:"tools/call not supported"}});return}let $=G.params?.name;j({name:$,arguments:G.params?.arguments??{}}).then(R=>{E({jsonrpc:"2.0",id:H,result:R});let F=R.content?.map(U=>U.text??"").join("").trim();F&&Tp($,R,M.current)&&(ce&&clearTimeout(ce.timer),ce={text:F,timer:setTimeout(()=>{if(re)return;let U=fe;fe=null,ce=null,N.current?.({role:"user",content:[{type:"text",text:F}],...U?{modelContext:U}:{}})},500)})}).catch(R=>{let F=R instanceof Error?R.message:"Tool call failed";E({jsonrpc:"2.0",id:H,error:{code:-32e3,message:F}})});return}if(Y==="ui/request-display-mode"&&H!=null){let j=G.params?.mode,$=j==="fullscreen"||j==="inline"||j==="pip"?j:"inline";P.current=$,E({jsonrpc:"2.0",id:H,result:{mode:$}}),E({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),v.current?.($);return}if(Y==="ui/resource-teardown"&&H!=null){E({jsonrpc:"2.0",id:H,result:{}});return}Y==="ping"&&H!=null&&E({jsonrpc:"2.0",id:H,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%":y,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 Wi({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 yr,jsxs as Mp}from"react/jsx-runtime";function Rp({onRetry:e}){let{t}=q();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:[yr("span",{children:t.widgetErrorBoundary.failedToLoad}),yr("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Za=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?yr(Rp,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Bp,jsx as K,jsxs as Ke}from"react/jsx-runtime";function br(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:Ue}function Ya({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 L=e[e.length-1],x=e.length>0,w=d!=null,g=!w&&Oi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return Ke(Bp,{children:[!w&&(!x&&o?K(Wi,{...o,onSuggestionSelect:r}):a&&K(mr,{from:"assistant",children:K(hr,{children:K(Ja,{children:a})})})),e.map(h=>{let C=h.parts.filter(S=>S.type==="text"),P=h.parts.filter(S=>S.type==="reasoning"),y=h.parts.filter(S=>S.type==="file"),k=h.parts.filter(S=>"toolCallId"in S),A=h.parts.filter(S=>S.type==="reasoning"||"toolCallId"in S),_=h===L&&h.role==="assistant",B=C.length>0,N=w?k.some(S=>S.toolCallId===d):!1,b=k.some(S=>S.state==="input-available"||S.state==="input-streaming"),v=p!==!1&&!N&&k.length>=1&&A.length>=2;return w&&!N?K("div",{style:{display:"none"}},h.id):h.role==="assistant"&&!Ni(h)?K("div",{style:{display:"none"}},h.id):p===!1&&h.role==="assistant"&&!B&&y.length===0&&k.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"}},h.id):Ke(mr,{from:h.role,children:[p!==!1&&!N&&!v&&P.map((S,M)=>Ke(Nt,{isStreaming:S.state==="streaming",children:[K(Ot,{}),K(Ht,{children:S.text})]},`reasoning-${h.id}-${M}`)),v&&Ke(Hs,{isWorking:b||P.some(S=>S.state==="streaming"),children:[K(Us,{label:k[k.length-1].title??br(k[k.length-1].toolName)}),K(qs,{children:A.map((S,M)=>{let X=M===A.length-1;if(S.type==="reasoning")return K(Ws,{isStreaming:S.state==="streaming",isLast:X,children:S.text},`reasoning-${h.id}-${M}`);let ae=S.title??br(S.toolName),oe=Fp(S.toolName);if(p==="titles-only")return K(Do,{icon:oe,title:ae,state:S.state,isLast:X},S.toolCallId);let z="output"in S?S.output:void 0;return Ke(Do,{icon:oe,title:ae,state:S.state,isLast:X,children:[K(Cr,{input:S.input,debug:c}),z!==void 0&&K(Ir,{output:z,errorText:"errorText"in S?S.errorText:void 0,debug:c})]},S.toolCallId)})})]}),p!==!1&&!N&&!v&&k.length===1&&(()=>{let S=k[0],M=S.title??br(S.toolName);if(p==="titles-only")return K(Ri,{title:M,state:S.state});let X="output"in S?S.output:void 0;return Ke(Ai,{children:[K(vi,{title:M,state:S.state}),Ke(Mi,{children:[K(Cr,{input:S.input,debug:c}),X!==void 0&&K(Ir,{output:X,errorText:"errorText"in S?S.errorText:void 0,debug:c})]})]})})(),k.map(S=>{let M="output"in S?S.output:void 0,X=Yt(S.toolName,M,m),ae=Di(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(Za,{children:K(Sr,{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}),!N&&K("div",{children:Ke(hr,{children:[y.length>0&&K(Fs,{files:y}),B?C.map((S,M)=>{let X=_&&t==="streaming"&&M===C.length-1;return K(Ja,{isStreaming:X,children:S.type==="text"?S.text:""},`${h.id}-${M}`)}):null]})})]},h.id)}),g&&K(Hi,{})]})}import{jsx as zi,jsxs as _p}from"react/jsx-runtime";var Dp="https://app.waniwani.ai/assets/waniwani-logo.svg",Ep="https://waniwani.ai";function eo(){let{t:e}=q();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:[zi("span",{children:e.poweredBy.label}),zi("img",{src:Dp,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as to}from"react/jsx-runtime";function ao({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:to("div",{className:T("ww:px-4 ww:py-2",o),...r,children:to("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=>to("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)=>to("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 Vi=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 oo({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=q(),[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,Vi),d=Math.max(0,e.length-Vi);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)?"":Po(m,s)})]}),te("button",{type:"button",onClick:L=>{L.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 ro(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 ve,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 so=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 L=await r(m);L.success&&n.enqueue(L.value)}}catch{}}}}))}};var Xp="waniwani-memory";var Te="threads",no="by_memoryUserId",Qp="by_updatedAt";var $i="memoryUserId",ji="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(no,"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($i);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,$i);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(ji);if(e)return e;let t=Tr();return localStorage.setItem(ji,t),t}catch{return null}}async function Xi(){let e=await em();if(e)return e;let t=tm();return t||(kr||(kr=Tr()),kr)}var Qi=50,Ki=1e3;function io(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 lo(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 lo(async a=>{let s=a.transaction(Te,"readonly").objectStore(Te).index(no),i=(await Ar(s.getAll(e))??[]).filter(io);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function uo(e){return await lo(async a=>{let r=a.transaction(Te,"readonly").objectStore(Te),s=await Ar(r.get(e));return io(s)?s:null})??null}async function Rr(e){if(!io(e))return;let t=e.messages.length>Ki?{...e,messages:e.messages.slice(e.messages.length-Ki)}:e;await lo(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(no),i=(await Ar(s.getAll(t.memoryUserId))??[]).filter(io);if(i.length>Qi){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-Qi);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 Ji(e){await lo(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 Zi(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 Yi="waniwani-visitor-id";function el(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=el(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=el(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(Yi);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(Yi,t)}catch{}return t}async function ta(){let e=navigator.userAgent,[t,a]=await Promise.all([nm(),Xi()]);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 tl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Et()}function fo(){return new Date().toISOString()}function al(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 co(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);ve(()=>{d.current=n},[n]);let c=ue(void 0),p=ue(null),[m,L]=dt(void 0),x=ue(m),[w,g]=dt(i),h=ue(w),[C,P]=dt([]),[y,k]=dt(!n),A=ue(void 0),_=ue(void 0),B=ue(void 0),N=ue(void 0),b=ue(0),v=ue(l);ve(()=>{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);P(D)},[n]),X=we(()=>x.current,[]),ae=we(I=>{let D=al(I);D&&x.current!==D&&(x.current=D,L(D))},[]),oe=we(()=>{x.current=void 0,L(void 0)},[]);ve(()=>{u.current=a},[a]),ve(()=>{f.current=o},[o]),ve(()=>{let I=!1,D=b.current;return(async()=>{try{let Ie=await ta();if(I)return;p.current=Ie}catch{}if(!n)return;let O=p.current?.memoryUserId;if(!O){k(!0);return}try{let Ie=i??await Mr(O);if(I||D!==b.current)return;if(Ie){let pe=await uo(Ie);if(I||D!==b.current)return;pe&&pe.memoryUserId===O&&(h.current=pe.threadId,g(pe.threadId),A.current=pe.createdAt,_.current=pe.title,pe.sessionId&&(x.current=pe.sessionId,L(pe.sessionId)),Y(pe.messages))}await M()}finally{I||k(!0)}})(),()=>{I=!0}},[]);let z=ue(new so({api:t,headers:()=>({...u.current}),body:()=>{let I={...f.current??{}},D=Object.hasOwn(I,"sessionId"),O=al(I.sessionId);if(O)ae(O),I.sessionId=O;else if(D)oe(),delete I.sessionId;else{let Me=X();Me&&(I.sessionId=Me)}if(It(c.current)&&(I.modelContext=c.current),p.current){let Me=p.current;I.visitorContext={timezone:Me.timezone,language:Me.language,languages:Me.languages,deviceType:Me.deviceType,referrer:Me.referrer,visitorId:Me.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,client:{...vl,memoryUserId:Me.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=tl(),A.current=fo(),_.current=void 0,S(He)),I.threadId=He}return I},fetch:(async(I,D)=>{let O=await fetch(I,D);return c.current=void 0,ae(O.headers.get(lm)),O})})),re=ue(null),Le=ue(null),fe=ue({}),[ce,Ee]=dt(0),E=e.skipRemoteConfig===!0,J=we(async()=>{if(!E)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,E]);ve(()=>{J()},[J]);let{messages:V,sendMessage:G,setMessages:Y,status:H}=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);ve(()=>{j.current=V},[V]);let $=ue(n);ve(()=>{if(!n||$.current||($.current=!0,j.current.length>0))return;let I=!1,D=b.current;return k(!1),(async()=>{try{let O=p.current;if(!O)try{O=await ta(),p.current=O}catch{}let Ie=O?.memoryUserId;if(!Ie||I||D!==b.current){I||k(!0);return}let pe=i??await Mr(Ie);if(I||D!==b.current)return;if(pe){let ie=await uo(pe);if(I||D!==b.current)return;ie&&ie.memoryUserId===Ie&&(h.current=ie.threadId,g(ie.threadId),A.current=ie.createdAt,_.current=ie.title,ie.sessionId&&(x.current=ie.sessionId,L(ie.sessionId)),Y(ie.messages))}await M()}finally{I||k(!0)}})(),()=>{I=!0}},[n]),ve(()=>{if(H==="ready"&&re.current&&Le.current){let I=re.current,D=Le.current;re.current=null,Le.current=null,I.resolve(D)}},[H]);let[R,F]=dt(""),[U,se]=dt([]),Ce=H==="submitted"||H==="streaming",Re=we(I=>{se(D=>D.filter(O=>O.id!==I))},[]),We=Ce&&U.length>0,Il=we(I=>{let D=!!I.text?.trim(),O=!!I.files?.length;if(D||O){if(Ce){if(U.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,U.length]),Sl=we(I=>new Promise((D,O)=>{re.current={resolve:D,reject:O},G({text:I}),r?.(I)}),[G,r]);ve(()=>{if(H!=="ready"||U.length===0)return;let[I,...D]=U;se(D),c.current=I.modelContext,G({text:I.text,files:I.files.length>0?I.files:void 0}),r?.(I.text)},[H,G,r,U]);let yl=we(()=>{Y([]),se([]),oe(),F(""),fe.current={},Ee(I=>I+1),J()},[Y,oe,J]),sa=we(()=>{if(!d.current)return;let I=p.current?.memoryUserId,D=h.current,O=j.current;if(!(!I||!D||O.length===0)){if(A.current||(A.current=fo()),!_.current){let Ie=O.find(ie=>ie.role==="user"),pe=Ie?Ie.parts.map(ie=>"text"in ie&&typeof ie.text=="string"?ie.text:"").join(" "):"";_.current=Zi(pe)}return{threadId:D,memoryUserId:I,title:_.current,messages:O,sessionId:x.current,createdAt:A.current,updatedAt:fo()}}},[]),Ur=we(async()=>{let I=sa();I&&(await Rr(I),await M())},[sa,M]);ve(()=>{if(n&&y&&!(H==="submitted"||H==="streaming")&&V.length!==0)return B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=void 0;let I=Ur().finally(()=>{N.current===I&&(N.current=void 0)});N.current=I},um),()=>{B.current&&clearTimeout(B.current)}},[n,y,V,H,Ur]);let na=we(()=>{let I=N.current,D=B.current,O=D?sa():void 0;return D&&(clearTimeout(D),B.current=void 0),(async()=>{I&&await I,O&&(await Rr(O),await M())})()},[sa,M]),bl=we(()=>{b.current+=1,na(),Y([]),se([]),oe(),F("");let I=tl();return A.current=fo(),_.current=void 0,S(I),M(),I},[Y,oe,S,M,na]),wo=we(async I=>{b.current+=1;let D=b.current;if(await na(),D!==b.current)return;let O=await uo(I);D===b.current&&O&&(S(O.threadId),A.current=O.createdAt,_.current=O.title,O.sessionId?(x.current=O.sessionId,L(O.sessionId)):oe(),Y(O.messages),se([]),F(""))},[Y,oe,S,na]),kl=we(async I=>{if(h.current===I){b.current+=1,B.current&&(clearTimeout(B.current),B.current=void 0);let D=N.current;D&&await D}await Ji(I),await M(),h.current===I&&(Y([]),se([]),oe(),F(""),h.current=void 0,g(void 0),A.current=void 0,_.current=void 0)},[Y,oe,M]);ve(()=>{n&&y&&i!==void 0&&i!==h.current&&wo(i)},[i,n,y,wo]);let Tl=we(I=>{F(I.target.value)},[]),qr=V[V.length-1],Gr=V.length>0,Pl=Ce&&(!Gr||qr.role==="user"),Al=fe.current;return{messages:V,status:H,text:R,setText:F,handleSubmit:Il,handleTextChange:Tl,isLoading:Ce,showLoaderBubble:Pl,lastMessage:qr,hasMessages:Gr,sendMessage:G,sendMessageAndWait:Sl,reset:yl,queuedMessages:U,queueFull:We,removeQueuedMessage:Re,sessionId:m,toolDefinitions:Al,refreshToolDefinitions:J,threads:C,activeThreadId:w,isThreadHistoryReady:y,startNewThread:bl,switchThread:wo,deleteThread:kl}}import{useEffect as ol,useRef as fm,useState as cm}from"react";var pm={debug:!1,eval:!1};function rl(e="/api/waniwani",t,a=!1){let[o,r]=cm(pm),s=fm(t);return ol(()=>{s.current=t},[t]),ol(()=>{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 sl(e){return typeof e=="object"&&e!==null&&"initial"in e}function po(e){let{messages:t,status:a,config:o}=e,r=sl(o)&&o.initial?o.initial:void 0,[s,n]=gm(r??[]),i=hm(a),l=o===!0||sl(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(L=>L.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,nl=500;function mo(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,nl)):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,nl),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function ho(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 il={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{...il,...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:L=!1,showToolCalls:x=!0}=t,w=p??"/api/waniwani",g=ho(w,t.headers),h=Br(o),C=aa(h),P=h.backgroundColor.replace("#",""),y=parseInt(P.substring(0,2),16),k=parseInt(P.substring(2,4),16),A=parseInt(P.substring(4,6),16),_=(y*299+k*587+A*114)/1e3<128,B=rl(w,t.headers,t.skipRemoteConfig),N=m??B.debug,b=co({...t,api:w}),v=ro({...t,api:w,sessionId:b.sessionId}),S=mo(d,!b.text),[M,X]=ul(!1),[ae,oe]=ul(null),z=ll(null),re=ll(void 0),Le=Dr(()=>{let E=z.current;if(!E)return;E.scrollIntoView({behavior:"smooth",block:"center"});let J=E.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),X(!0),clearTimeout(re.current),re.current=setTimeout(()=>X(!1),2e3)},[]),fe=po({messages:b.messages,status:b.status,config:t.suggestions}),ce=Dr(E=>{let J=E.content.map(V=>V.text??"").join("").trim();J&&b.handleSubmit({text:J,files:[],modelContext:E.modelContext})},[b.handleSubmit]),Ee=Dr(E=>{fe.clear(),b.handleSubmit({text:E,files:[]})},[fe.clear,b.handleSubmit]);return Am(a,()=>({sendMessage:E=>{b.handleSubmit({text:E,files:[]}),Le()},sendMessageAndWait:E=>b.sendMessageAndWait(E),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]),Pm(()=>{if(!c)return;let E=J=>{let V=J.detail,G=typeof V?.message=="string"?V.message:void 0;G&&b.handleSubmit({text:G,files:[]}),Le()};return window.addEventListener(c,E),()=>window.removeEventListener(c,E)},[c,b.handleSubmit,Le]),oa("div",{ref:z,style:{...C,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",..._?{"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(Ms,{messages:b.messages,evalEnabled:B.eval,api:w}),L&&xe(oo,{threads:b.threads,activeThreadId:b.activeThreadId,onNewThread:b.startNewThread,onSelectThread:E=>{b.switchThread(E)},onDeleteThread:E=>{b.deleteThread(E)}})]}),oa(ls,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[xe(us,{scrollClassName:ae?"ww:!relative ww:!overflow-hidden":void 0,children:xe(Ya,{messages:b.messages,status:b.status,welcomeMessage:u,welcome:f,onSuggestionSelect:Ee,resourceEndpoint:g,chatSessionId:b.sessionId,isDark:_,onFollowUp:ce,onCallTool:v,fullscreenToolCallId:ae,debug:N,showToolCalls:x,toolDefinitions:b.toolDefinitions,onWidgetDisplayModeChange:(E,J)=>{oe(E==="fullscreen"?J.toolCallId:null)}})}),xe(ds,{})]}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(ao,{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:S,className:"ww:min-h-0 ww:py-1 ww:px-0"}),xe(ga,{status:b.status,disabled:b.queueFull})]})}),xe(eo,{})]})})})]})});import{forwardRef as fl,useCallback as go,useEffect as St,useImperativeHandle as Mm,useRef as ra,useState as Er}from"react";import{jsx as Rm}from"react/jsx-runtime";function dl({text:e}){let{t}=q();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 Je}from"react/jsx-runtime";var _r=fl(function(t,a){let{locale:o,messages:r}=t;return de(To,{locale:o,messages:r,children:de(Fm,{...t,ref:a})})}),Fm=fl(function(t,a){let{t:o,ready:r}=q(),{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:L=!1,title:x,headerActions:w,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:C=!0,initializing:P=!1,disclaimer:y}=t,k=s?.theme,A=s?.variables,_=A?aa(A):{},[B,N]=Er(!1);St(()=>{if(k!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");N(R.matches);let F=()=>N(R.matches);return R.addEventListener("change",F),()=>R.removeEventListener("change",F)},[k]);let b=k==="dark"||k==="auto"&&B,v=co({...t,api:c}),S=ro({...t,api:c,sessionId:v.sessionId,onCallTool:p?.onCallTool}),M=p?.resourceEndpoint??ho(c,t.headers),X=mo(f,!v.text),[ae,oe]=Er(null),z=ra(null),re=ra(null),Le=ra(null),fe=ra(null),[ce,Ee]=Er(!0),E=ra(ce);E.current=ce;let J=go(()=>{let R=z.current;if(!R)return;let F=R.querySelector("textarea");F&&F.focus()},[]),V=go((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 U=new IntersectionObserver(([se])=>Ee(se.isIntersecting),{root:F,rootMargin:"0px 0px 200px 0px",threshold:0});return U.observe(R),()=>U.disconnect()},[]),St(()=>{(v.messages[v.messages.length-1]?.role==="user"||E.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 U=R?.scrollHeight??0,se=R?.clientHeight??0,Ce=new ResizeObserver(()=>{let Re=re.current;if(!Re)return;let We=Re.scrollTop+se>=U-5;U=Re.scrollHeight,se=Re.clientHeight,We&&V("auto")});return R&&Ce.observe(R),F&&Ce.observe(F),()=>Ce.disconnect()},[V]);let G=po({messages:v.messages,status:v.status,config:t.suggestions}),Y=go(R=>{let F=R.content.map(U=>U.text??"").join("").trim();F&&v.handleSubmit({text:F,files:[],modelContext:R.modelContext})},[v.handleSubmit]),H=go(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 U=F.detail,se=typeof U?.message=="string"?U.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||w),$=P||!r;return Je("div",{ref:z,style:{..._,maxHeight:"inherit",opacity:$?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":k==="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",k==="dark"&&"dark",n),children:[j&&Je("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(oo,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:R=>{v.switchThread(R)},onDeleteThread:R=>{v.deleteThread(R)}}),w]}),Je("div",{ref:re,className:T("ww:relative ww:flex-1 ww:min-h-0",ae?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[Je("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(Ya,{messages:v.messages,status:v.status,welcomeMessage:l,welcome:u,onSuggestionSelect:H,resourceEndpoint:M,chatSessionId:v.sessionId,isDark:b,onFollowUp:Y,onCallTool:S,fullscreenToolCallId:ae,debug:m,showToolCalls:C,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(Pe,{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(Ze,{className:"ww:size-4"})})})]}),!L&&Je("div",{className:"ww:shrink-0 ww:bg-background",style:ae?{display:"none"}:void 0,children:[de(ao,{suggestions:G.suggestions,isLoading:G.isLoading,onSelect:H}),de(xa,{queuedMessages:v.queuedMessages,onRemove:v.removeQueuedMessage}),de("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:Je("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:Je("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})]})}),Je("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:justify-center ww:items-center ww:gap-1.5",children:[de(eo,{}),de(dl,{text:y})]})]})})]})]})});import{forwardRef as Gm,useEffect as wl,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.getAttribute(A);if(_==null)return;let B=_.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 L=a("data-disable-page-view");L!==void 0&&(o.disablePageView=L);let x=a("data-hide-header");x!==void 0&&(o.hideHeader=x);let w=t("data-theme");(w==="light"||w==="dark"||w==="auto")&&(o.appearance={theme:w});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 C=t("data-position");(C==="bottom-center"||C==="bottom-right"||C==="bottom-left")&&(o.position=C);let P=t("data-height");P&&(o.height=P);let y=t("data-launcher-text");y&&(o.launcherText=y);let k=t("data-disclaimer");if(k!==void 0){let A=k.trim(),_=A.toLowerCase();_==="false"||_==="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 ay,useState as oy}from"react";var Om="waniwani:config:";function cl(e,t,a){return`${Om}${e}|${t}|${a??""}`}function pl(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(cl(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function ml(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(cl(e,t,a),JSON.stringify(o))}catch{}}async function hl(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?Hm(l):{}}catch{return{}}}function Hm(e){let t={};return 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}var Hr=new Set;function Um(e,t,a){return`${e}|${t}|${a??""}`}function qm(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function gl(e){let{api:t,token:a,channelId:o,mode:r}=e;if(typeof window>"u"||!t||!a)return;let s=Um(t,a,o);if(!Hr.has(s)){Hr.add(s);try{let n=await ta(),i=new Date().toISOString(),l=JSON.stringify({sentAt:i,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:"widget",timestamp:i,correlation:{externalUserId:n.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:n.referrer,deviceType:n.deviceType,language:n.language,timezone:n.timezone},metadata:{}}]});await fetch(qm(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:l,keepalive:!0})}catch{Hr.delete(s)}}}import{jsx as Vm}from"react/jsx-runtime";var Wm=600,Cl="https://app.waniwani.ai/api/mcp/chat",zm=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);wl(()=>{if(!o){c(!0);return}let x=pl(l,o,r);x&&(f(x),c(!0));let w=new AbortController,g=setTimeout(()=>c(!0),Wm);return hl(l,o,w.signal,r).then(h=>{w.signal.aborted||(Object.keys(h).length>0&&(ml(l,o,r,h),f(h)),c(!0))}).catch(h=>{console.error("[Waniwani] Remote config fetch failed:",h),c(!0)}).finally(()=>clearTimeout(g)),()=>{w.abort(),clearTimeout(g)}},[l,o,r]);let p=n?.disablePageView;wl(()=>{!o||p||gl({api:l,token:o,channelId:r,mode:"inline"})},[l,o,r,p]);let m=xl(()=>Or(i,u,void 0),[i,u]),L={};return m.mcpServerUrl&&(L.mcpServerUrl=m.mcpServerUrl),m.channelId&&(L.channelId=m.channelId),Vm(_r,{ref:a,api:m.api??Cl,headers:{Authorization:`Bearer ${m.token}`},skipRemoteConfig:!0,body:Object.keys(L).length>0?L: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,il as DEFAULT_THEME,Sr as McpAppFrame,zm as WaniwaniChat,Br as mergeTheme,aa as themeToCSSProperties};
15
+ ${R}`}]}}O.current({...$,...X?{modelContext:X}:{}})}E({jsonrpc:"2.0",id:U,result:{}});return}if(ee==="ui/update-model-context"&&U!=null){fe=Hi(fe,z.params),E({jsonrpc:"2.0",id:U,result:{}});return}if(ee==="tools/call"&&U!=null){let $=y.current;if(!$){E({jsonrpc:"2.0",id:U,error:{code:-32601,message:"tools/call not supported"}});return}let X=z.params?.name;$({name:X,arguments:z.params?.arguments??{}}).then(R=>{E({jsonrpc:"2.0",id:U,result:R});let M=R.content?.map(q=>q.text??"").join("").trim();M&&Tp(X,R,S.current)&&(ce&&clearTimeout(ce.timer),ce={text:M,timer:setTimeout(()=>{if(Q)return;let q=fe;fe=null,ce=null,O.current?.({role:"user",content:[{type:"text",text:M}],...q?{modelContext:q}:{}})},500)})}).catch(R=>{let M=R instanceof Error?R.message:"Tool call failed";E({jsonrpc:"2.0",id:U,error:{code:-32e3,message:M}})});return}if(ee==="ui/request-display-mode"&&U!=null){let $=z.params?.mode,X=$==="fullscreen"||$==="inline"||$==="pip"?$:"inline";k.current=X,E({jsonrpc:"2.0",id:U,result:{mode:X}}),E({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:X}}),v.current?.(X);return}if(ee==="ui/resource-teardown"&&U!=null){E({jsonrpc:"2.0",id:U,result:{}});return}ee==="ping"&&U!=null&&E({jsonrpc:"2.0",id:U,result:{}})};return window.addEventListener("message",Y),()=>{Q=!0,clearTimeout(Ee),ce&&clearTimeout(ce.timer),window.removeEventListener("message",Y)}},[i,_]),Pp("iframe",{ref:m,src:G,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%":b,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 Ap}from"react/jsx-runtime";function Gi({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 yr,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:[yr("span",{children:t.widgetErrorBoundary.failedToLoad}),yr("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Za=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?yr(Rp,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Bp,jsx as Z,jsxs as Qe}from"react/jsx-runtime";function Wi(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 Ya({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],w=e.length>0,g=d!=null,h=!g&&Ni(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return Qe(Bp,{children:[!g&&(!w&&o?Z(Gi,{...o,onSuggestionSelect:r}):a&&Z(mr,{from:"assistant",children:Z(hr,{children:Z(Ja,{children:a})})})),e.map(L=>{let k=L.parts.filter(S=>S.type==="text"),b=L.parts.filter(S=>S.type==="reasoning"),A=L.parts.filter(S=>S.type==="file"),P=L.parts.filter(S=>"toolCallId"in S),D=L.parts.filter(S=>S.type==="reasoning"||"toolCallId"in S),F=L===x&&L.role==="assistant",O=k.length>0,y=g?P.some(S=>S.toolCallId===d):!1,v=P.some(S=>S.state==="input-available"||S.state==="input-streaming"),J=p!==!1&&!y&&D.length>=2;return g&&!y?Z("div",{style:{display:"none"}},L.id):L.role==="assistant"&&!_i(L)?Z("div",{style:{display:"none"}},L.id):p===!1&&L.role==="assistant"&&!O&&A.length===0&&P.every(S=>{let _="output"in S?S.output:void 0;return _===void 0||!s||!Yt(S.toolName,_,m)})?Z("div",{style:{display:"none"}},L.id):Qe(mr,{from:L.role,children:[p!==!1&&!y&&!J&&b.map((S,_)=>Qe(Nt,{isStreaming:S.state==="streaming",children:[Z(Ot,{}),Z(Ht,{children:S.text})]},`reasoning-${L.id}-${_}`)),J&&Qe(Os,{isWorking:v||b.some(S=>S.state==="streaming"),children:[Z(Hs,{workingLabel:C.chainOfThought.working,label:C.chainOfThought.done}),Z(Us,{children:D.map((S,_)=>{let G=_===D.length-1;if(S.type==="reasoning")return Z(Gs,{isStreaming:S.state==="streaming",isLast:G,children:S.text},`reasoning-${L.id}-${_}`);let re=S.title??Wi(S.toolName),W=Fp(S.toolName);if(p==="titles-only")return Z(Do,{icon:W,title:re,state:S.state,isLast:G},S.toolCallId);let Q="output"in S?S.output:void 0;return Qe(Do,{icon:W,title:re,state:S.state,isLast:G,children:[Z(Cr,{input:S.input,debug:c}),Q!==void 0&&Z(Ir,{output:Q,errorText:"errorText"in S?S.errorText:void 0,debug:c})]},S.toolCallId)})})]}),p!==!1&&!y&&!J&&P.length===1&&(()=>{let S=P[0],_=S.title??Wi(S.toolName);if(p==="titles-only")return Z(vi,{title:_,state:S.state});let G="output"in S?S.output:void 0;return Qe(Pi,{children:[Z(Ai,{title:_,state:S.state}),Qe(Ri,{children:[Z(Cr,{input:S.input,debug:c}),G!==void 0&&Z(Ir,{output:G,errorText:"errorText"in S?S.errorText:void 0,debug:c})]})]})})(),P.map(S=>{let _="output"in S?S.output:void 0,G=Yt(S.toolName,_,m),re=Bi(S.toolName,_,m),W=S.toolCallId===d;return G&&s&&_!==void 0?Z("div",{style:W?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:G&&s&&_!==void 0&&Z(Za,{children:Z(Sr,{isFullscreen:W,resourceUri:G,toolInput:S.input??{},toolResult:{content:_.content,structuredContent:_.structuredContent,_meta:_._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:re,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?Q=>f(Q,{toolCallId:S.toolCallId,resourceUri:G,toolInput:S.input??{},toolResult:{content:_.content,structuredContent:_.structuredContent,_meta:_._meta},autoHeight:re}):void 0})})},S.toolCallId):null}),!y&&Z("div",{children:Qe(hr,{children:[A.length>0&&Z(Ms,{files:A}),O?k.map((S,_)=>{let G=F&&t==="streaming"&&_===k.length-1;return Z(Ja,{isStreaming:G,children:S.type==="text"?S.text:""},`${L.id}-${_}`)}):null]})})]},L.id)}),h&&Z(Oi,{})]})}import{jsx as zi,jsxs as _p}from"react/jsx-runtime";var Dp="https://app.waniwani.ai/assets/waniwani-logo.svg",Ep="https://waniwani.ai";function eo(){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:[zi("span",{children:e.poweredBy.label}),zi("img",{src:Dp,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as to}from"react/jsx-runtime";function ao({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:to("div",{className:T("ww:px-4 ww:py-2",o),...r,children:to("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=>to("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)=>to("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 oe,jsxs as ut}from"react/jsx-runtime";var Vi=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:[oe("title",{children:e}),oe("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),oe("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:[oe("title",{children:e}),oe("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),oe("polyline",{points:"3 4 3 9 8 9"}),oe("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),oe("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:[oe("title",{children:e}),oe("polyline",{points:"3 6 5 6 21 6"}),oe("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),oe("path",{d:"M10 11v6"}),oe("path",{d:"M14 11v6"})]})}function oo({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,Vi),d=Math.max(0,e.length-Vi);return ut("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[oe("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:oe(Up,{label:n.threadMenu.newChat})}),oe("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:oe(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&&oe("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:[oe("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:c.title}),oe("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Po(m,s)})]}),oe("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:oe(Gp,{label:n.threadMenu.deleteThread})})]},c.threadId)}),d>0&&oe("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 ro(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 ve,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 so=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",no="by_memoryUserId",Qp="by_updatedAt";var $i="memoryUserId",ji="waniwani-memory-user-id",br=null;function kr(){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(no,"memoryUserId",{unique:!1}),a.createIndex(Qp,"updatedAt",{unique:!1})}}async function Tr(){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 Tr()}async function Zp(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get($i);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,$i);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=kr();return await Yp(e,a),a}finally{e.close()}}catch{return null}}function tm(){try{let e=localStorage.getItem(ji);if(e)return e;let t=kr();return localStorage.setItem(ji,t),t}catch{return null}}async function Xi(){let e=await em();if(e)return e;let t=tm();return t||(br||(br=kr()),br)}var Qi=50,Ki=1e3;function io(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 lo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Tr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Pr(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function Ar(e){return await lo(async a=>{let s=a.transaction(Te,"readonly").objectStore(Te).index(no),i=(await Pr(s.getAll(e))??[]).filter(io);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function uo(e){return await lo(async a=>{let r=a.transaction(Te,"readonly").objectStore(Te),s=await Pr(r.get(e));return io(s)?s:null})??null}async function vr(e){if(!io(e))return;let t=e.messages.length>Ki?{...e,messages:e.messages.slice(e.messages.length-Ki)}:e;await lo(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(no),i=(await Pr(s.getAll(t.memoryUserId))??[]).filter(io);if(i.length>Qi){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-Qi);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 Ji(e){await lo(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 Rr(e){return(await Ar(e))[0]?.threadId??null}function Zi(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 Yi="waniwani-visitor-id";function el(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=el(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=el(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(Yi);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(Yi,t)}catch{}return t}async function ta(){let e=navigator.userAgent,[t,a]=await Promise.all([nm(),Xi()]);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 tl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Et()}function fo(){return new Date().toISOString()}function al(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 co(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);ve(()=>{d.current=n},[n]);let c=ue(void 0),p=ue(null),[m,C]=dt(void 0),x=ue(m),[w,g]=dt(i),h=ue(w),[L,k]=dt([]),[b,A]=dt(!n),P=ue(void 0),D=ue(void 0),F=ue(void 0),O=ue(void 0),y=ue(0),v=ue(l);ve(()=>{v.current=l},[l]);let J=we(I=>{h.current=I,g(I),I&&v.current?.(I)},[]),S=we(async()=>{if(!n)return;let I=p.current?.memoryUserId;if(!I)return;let B=await Ar(I);k(B)},[n]),_=we(()=>x.current,[]),G=we(I=>{let B=al(I);B&&x.current!==B&&(x.current=B,C(B))},[]),re=we(()=>{x.current=void 0,C(void 0)},[]);ve(()=>{u.current=a},[a]),ve(()=>{f.current=o},[o]),ve(()=>{let I=!1,B=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){A(!0);return}try{let Ie=i??await Rr(N);if(I||B!==y.current)return;if(Ie){let pe=await uo(Ie);if(I||B!==y.current)return;pe&&pe.memoryUserId===N&&(h.current=pe.threadId,g(pe.threadId),P.current=pe.createdAt,D.current=pe.title,pe.sessionId&&(x.current=pe.sessionId,C(pe.sessionId)),ee(pe.messages))}await S()}finally{I||A(!0)}})(),()=>{I=!0}},[]);let W=ue(new so({api:t,headers:()=>({...u.current}),body:()=>{let I={...f.current??{}},B=Object.hasOwn(I,"sessionId"),N=al(I.sessionId);if(N)G(N),I.sessionId=N;else if(B)re(),delete I.sessionId;else{let Me=_();Me&&(I.sessionId=Me)}if(It(c.current)&&(I.modelContext=c.current),p.current){let Me=p.current;I.visitorContext={timezone:Me.timezone,language:Me.language,languages:Me.languages,deviceType:Me.deviceType,referrer:Me.referrer,visitorId:Me.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,client:{...vl,memoryUserId:Me.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=tl(),P.current=fo(),D.current=void 0,J(He)),I.threadId=He}return I},fetch:(async(I,B)=>{let N=await fetch(I,B);return c.current=void 0,G(N.headers.get(lm)),N})})),Q=ue(null),Le=ue(null),fe=ue({}),[ce,Ee]=dt(0),E=e.skipRemoteConfig===!0,Y=we(async()=>{if(!E)try{let I=await dm(t,u.current);fe.current=I,Ee(B=>B+1)}catch(I){console.warn("[Waniwani] Failed to fetch tool definitions:",I instanceof Error?I.message:I)}},[t,E]);ve(()=>{Y()},[Y]);let{messages:j,sendMessage:z,setMessages:ee,status:U}=im({messages:e.initialMessages,transport:W.current,onFinish({message:I}){s?.(),Q.current&&(Le.current=I)},onError(I){console.warn("[Waniwani] Chat error:",I.message),Q.current&&(Q.current.reject(I),Q.current=null)}}),$=ue(j);ve(()=>{$.current=j},[j]);let X=ue(n);ve(()=>{if(!n||X.current||(X.current=!0,$.current.length>0))return;let I=!1,B=y.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||B!==y.current){I||A(!0);return}let pe=i??await Rr(Ie);if(I||B!==y.current)return;if(pe){let ie=await uo(pe);if(I||B!==y.current)return;ie&&ie.memoryUserId===Ie&&(h.current=ie.threadId,g(ie.threadId),P.current=ie.createdAt,D.current=ie.title,ie.sessionId&&(x.current=ie.sessionId,C(ie.sessionId)),ee(ie.messages))}await S()}finally{I||A(!0)}})(),()=>{I=!0}},[n]),ve(()=>{if(U==="ready"&&Q.current&&Le.current){let I=Q.current,B=Le.current;Q.current=null,Le.current=null,I.resolve(B)}},[U]);let[R,M]=dt(""),[q,se]=dt([]),Ce=U==="submitted"||U==="streaming",Re=we(I=>{se(B=>B.filter(N=>N.id!==I))},[]),Ge=Ce&&q.length>0,Il=we(I=>{let B=!!I.text?.trim(),N=!!I.files?.length;if(B||N){if(Ce){if(q.length>0)return;se(Ie=>[...Ie,{id:Et(),text:I.text||"",files:I.files??[],modelContext:I.modelContext}]),M("");return}c.current=I.modelContext,z({text:I.text||"",files:I.files}),r?.(I.text||""),M("")}},[z,r,Ce,q.length]),Sl=we(I=>new Promise((B,N)=>{Q.current={resolve:B,reject:N},z({text:I}),r?.(I)}),[z,r]);ve(()=>{if(U!=="ready"||q.length===0)return;let[I,...B]=q;se(B),c.current=I.modelContext,z({text:I.text,files:I.files.length>0?I.files:void 0}),r?.(I.text)},[U,z,r,q]);let yl=we(()=>{ee([]),se([]),re(),M(""),fe.current={},Ee(I=>I+1),Y()},[ee,re,Y]),sa=we(()=>{if(!d.current)return;let I=p.current?.memoryUserId,B=h.current,N=$.current;if(!(!I||!B||N.length===0)){if(P.current||(P.current=fo()),!D.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(" "):"";D.current=Zi(pe)}return{threadId:B,memoryUserId:I,title:D.current,messages:N,sessionId:x.current,createdAt:P.current,updatedAt:fo()}}},[]),Hr=we(async()=>{let I=sa();I&&(await vr(I),await S())},[sa,S]);ve(()=>{if(n&&b&&!(U==="submitted"||U==="streaming")&&j.length!==0)return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{F.current=void 0;let I=Hr().finally(()=>{O.current===I&&(O.current=void 0)});O.current=I},um),()=>{F.current&&clearTimeout(F.current)}},[n,b,j,U,Hr]);let na=we(()=>{let I=O.current,B=F.current,N=B?sa():void 0;return B&&(clearTimeout(B),F.current=void 0),(async()=>{I&&await I,N&&(await vr(N),await S())})()},[sa,S]),bl=we(()=>{y.current+=1,na(),ee([]),se([]),re(),M("");let I=tl();return P.current=fo(),D.current=void 0,J(I),S(),I},[ee,re,J,S,na]),wo=we(async I=>{y.current+=1;let B=y.current;if(await na(),B!==y.current)return;let N=await uo(I);B===y.current&&N&&(J(N.threadId),P.current=N.createdAt,D.current=N.title,N.sessionId?(x.current=N.sessionId,C(N.sessionId)):re(),ee(N.messages),se([]),M(""))},[ee,re,J,na]),kl=we(async I=>{if(h.current===I){y.current+=1,F.current&&(clearTimeout(F.current),F.current=void 0);let B=O.current;B&&await B}await Ji(I),await S(),h.current===I&&(ee([]),se([]),re(),M(""),h.current=void 0,g(void 0),P.current=void 0,D.current=void 0)},[ee,re,S]);ve(()=>{n&&b&&i!==void 0&&i!==h.current&&wo(i)},[i,n,b,wo]);let Tl=we(I=>{M(I.target.value)},[]),Ur=j[j.length-1],qr=j.length>0,Pl=Ce&&(!qr||Ur.role==="user"),Al=fe.current;return{messages:j,status:U,text:R,setText:M,handleSubmit:Il,handleTextChange:Tl,isLoading:Ce,showLoaderBubble:Pl,lastMessage:Ur,hasMessages:qr,sendMessage:z,sendMessageAndWait:Sl,reset:yl,queuedMessages:q,queueFull:Ge,removeQueuedMessage:Re,sessionId:m,toolDefinitions:Al,refreshToolDefinitions:Y,threads:L,activeThreadId:w,isThreadHistoryReady:b,startNewThread:bl,switchThread:wo,deleteThread:kl}}import{useEffect as ol,useRef as fm,useState as cm}from"react";var pm={debug:!1,eval:!1};function rl(e="/api/waniwani",t,a=!1){let[o,r]=cm(pm),s=fm(t);return ol(()=>{s.current=t},[t]),ol(()=>{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 Mr,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 sl(e){return typeof e=="object"&&e!==null&&"initial"in e}function po(e){let{messages:t,status:a,config:o}=e,r=sl(o)&&o.initial?o.initial:void 0,[s,n]=gm(r??[]),i=hm(a),l=o===!0||sl(o)&&o.dynamic!==!1,u=mm(()=>{n([])},[]),f=t.length>0;Mr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return Mr(()=>{d?.role==="user"&&u()},[d,u]),Mr(()=>{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,nl=500;function mo(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,nl)):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,nl),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function ho(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 il={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 Fr(e){return{...il,...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,w=p??"/api/waniwani",g=ho(w,t.headers),h=Fr(o),L=aa(h),k=h.backgroundColor.replace("#",""),b=parseInt(k.substring(0,2),16),A=parseInt(k.substring(2,4),16),P=parseInt(k.substring(4,6),16),D=(b*299+A*587+P*114)/1e3<128,F=rl(w,t.headers,t.skipRemoteConfig),O=m??F.debug,y=co({...t,api:w}),v=ro({...t,api:w,sessionId:y.sessionId}),J=mo(d,!y.text),[S,_]=ul(!1),[G,re]=ul(null),W=ll(null),Q=ll(void 0),Le=Br(()=>{let E=W.current;if(!E)return;E.scrollIntoView({behavior:"smooth",block:"center"});let Y=E.querySelector("textarea");Y&&setTimeout(()=>Y.focus(),300),_(!0),clearTimeout(Q.current),Q.current=setTimeout(()=>_(!1),2e3)},[]),fe=po({messages:y.messages,status:y.status,config:t.suggestions}),ce=Br(E=>{let Y=E.content.map(j=>j.text??"").join("").trim();Y&&y.handleSubmit({text:Y,files:[],modelContext:E.modelContext})},[y.handleSubmit]),Ee=Br(E=>{fe.clear(),y.handleSubmit({text:E,files:[]})},[fe.clear,y.handleSubmit]);return Am(a,()=>({sendMessage:E=>{y.handleSubmit({text:E,files:[]}),Le()},sendMessageAndWait:E=>y.sendMessageAndWait(E),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 E=Y=>{let j=Y.detail,z=typeof j?.message=="string"?j.message:void 0;z&&y.handleSubmit({text:z,files:[]}),Le()};return window.addEventListener(c,E),()=>window.removeEventListener(c,E)},[c,y.handleSubmit,Le]),oa("div",{ref:W,style:{...L,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...D?{"data-waniwani-dark":""}:{},className:T("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",S&&"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(Rs,{messages:y.messages,evalEnabled:F.eval,api:w}),C&&xe(oo,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:E=>{y.switchThread(E)},onDeleteThread:E=>{y.deleteThread(E)}})]}),oa(is,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[xe(ls,{scrollClassName:G?"ww:!relative ww:!overflow-hidden":void 0,children:xe(Ya,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:f,onSuggestionSelect:Ee,resourceEndpoint:g,chatSessionId:y.sessionId,isDark:D,onFollowUp:ce,onCallTool:v,fullscreenToolCallId:G,debug:O,showToolCalls:x,toolDefinitions:y.toolDefinitions,onWidgetDisplayModeChange:(E,Y)=>{re(E==="fullscreen"?Y.toolCallId:null)}})}),xe(us,{})]}),xe("div",{style:G?{display:"none"}:void 0,children:xe(ao,{suggestions:fe.suggestions,isLoading:fe.isLoading,onSelect:Ee})}),xe("div",{style:G?{display:"none"}:void 0,children:xe(xa,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage})}),xe("div",{style:G?{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:J,className:"ww:min-h-0 ww:py-1 ww:px-0"}),xe(ga,{status:y.status,disabled:y.queueFull})]})}),xe(eo,{})]})})})]})});import{forwardRef as fl,useCallback as go,useEffect as St,useImperativeHandle as Mm,useRef as ra,useState as Dr}from"react";import{jsx as Rm}from"react/jsx-runtime";function dl({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 Er=fl(function(t,a){let{locale:o,messages:r}=t;return de(To,{locale:o,messages:r,children:de(Fm,{...t,ref:a})})}),Fm=fl(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:w,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:L=!0,initializing:k=!1,disclaimer:b}=t,A=s?.theme,P=s?.variables,D=P?aa(P):{},[F,O]=Dr(!1);St(()=>{if(A!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");O(R.matches);let M=()=>O(R.matches);return R.addEventListener("change",M),()=>R.removeEventListener("change",M)},[A]);let y=A==="dark"||A==="auto"&&F,v=co({...t,api:c}),J=ro({...t,api:c,sessionId:v.sessionId,onCallTool:p?.onCallTool}),S=p?.resourceEndpoint??ho(c,t.headers),_=mo(f,!v.text),[G,re]=Dr(null),W=ra(null),Q=ra(null),Le=ra(null),fe=ra(null),[ce,Ee]=Dr(!0),E=ra(ce);E.current=ce;let Y=go(()=>{let R=W.current;if(!R)return;let M=R.querySelector("textarea");M&&M.focus()},[]),j=go((R="smooth")=>{let M=Q.current;M&&M.scrollTo({top:M.scrollHeight,behavior:R})},[]);St(()=>{let R=fe.current,M=Q.current;if(!R||!M)return;let q=new IntersectionObserver(([se])=>Ee(se.isIntersecting),{root:M,rootMargin:"0px 0px 200px 0px",threshold:0});return q.observe(R),()=>q.disconnect()},[]),St(()=>{(v.messages[v.messages.length-1]?.role==="user"||E.current)&&j("smooth")},[v.messages.length,v.messages[v.messages.length-1]]),St(()=>{j("auto")},[j]),St(()=>{if(typeof ResizeObserver>"u")return;let R=Q.current,M=Le.current;if(!R&&!M)return;let q=R?.scrollHeight??0,se=R?.clientHeight??0,Ce=new ResizeObserver(()=>{let Re=Q.current;if(!Re)return;let Ge=Re.scrollTop+se>=q-5;q=Re.scrollHeight,se=Re.clientHeight,Ge&&j("auto")});return R&&Ce.observe(R),M&&Ce.observe(M),()=>Ce.disconnect()},[j]);let z=po({messages:v.messages,status:v.status,config:t.suggestions}),ee=go(R=>{let M=R.content.map(q=>q.text??"").join("").trim();M&&v.handleSubmit({text:M,files:[],modelContext:R.modelContext})},[v.handleSubmit]),U=go(R=>{z.clear(),v.handleSubmit({text:R,files:[]})},[z.clear,v.handleSubmit]);Mm(a,()=>({sendMessage:R=>{v.handleSubmit({text:R,files:[]}),Y()},sendMessageAndWait:R=>v.sendMessageAndWait(R),reset:v.reset,focus:Y,get messages(){return v.messages},get sessionId(){return v.sessionId}}),[v.handleSubmit,v.sendMessageAndWait,v.reset,v.messages,v.sessionId,Y]),St(()=>{if(!d)return;let R=M=>{let q=M.detail,se=typeof q?.message=="string"?q.message:void 0;se&&v.handleSubmit({text:se,files:[]}),Y()};return window.addEventListener(d,R),()=>window.removeEventListener(d,R)},[d,v.handleSubmit,Y]);let $=!g&&!!(x||h||w),X=k||!r;return Ke("div",{ref:W,style:{...D,maxHeight:"inherit",opacity:X?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":A==="auto"?"auto":void 0,...X?{"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",A==="dark"&&"dark",n),children:[$&&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(oo,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:R=>{v.switchThread(R)},onDeleteThread:R=>{v.deleteThread(R)}}),w]}),Ke("div",{ref:Q,className:T("ww:relative ww:flex-1 ww:min-h-0",G?"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",G&&"ww:!py-0"),children:[de(Ya,{messages:v.messages,status:v.status,welcomeMessage:l,welcome:u,onSuggestionSelect:U,resourceEndpoint:S,chatSessionId:v.sessionId,isDark:y,onFollowUp:ee,onCallTool:J,fullscreenToolCallId:G,debug:m,showToolCalls:L,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(R,M)=>{re(R==="fullscreen"?M.toolCallId:null)}}),de("div",{ref:fe,"aria-hidden":!0,style:{height:1}})]}),!ce&&!G&&de("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:de(Pe,{type:"button",onClick:()=>j("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:G?{display:"none"}:void 0,children:[de(ao,{suggestions:z.suggestions,isLoading:z.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:_,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(eo,{}),de(dl,{text:b})]})]})})]})]})});import{forwardRef as Gm,useEffect as wl,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=P=>e.getAttribute(P)??void 0,a=P=>{let D=e.getAttribute(P);if(D==null)return;let F=D.trim().toLowerCase();if(F==="true"||F==="1"||F==="")return!0;if(F==="false"||F==="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 x=a("data-hide-header");x!==void 0&&(o.hideHeader=x);let w=t("data-theme");(w==="light"||w==="dark"||w==="auto")&&(o.appearance={theme:w});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-position");(L==="bottom-center"||L==="bottom-right"||L==="bottom-left")&&(o.position=L);let k=t("data-height");k&&(o.height=k);let b=t("data-launcher-text");b&&(o.launcherText=b);let A=t("data-disclaimer");if(A!==void 0){let P=A.trim(),D=P.toLowerCase();D==="false"||D==="0"?o.disclaimer=!1:P&&(o.disclaimer=P)}return o}function _r(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Nr(e,t,a){let o=a??_m(),r=Nm(t,o,e),s={token:"",...Dm,..._r(t),..._r(o),..._r(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 oy,useState as ry}from"react";var Om="waniwani:config:";function cl(e,t,a){return`${Om}${e}|${t}|${a??""}`}function pl(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(cl(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function ml(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(cl(e,t,a),JSON.stringify(o))}catch{}}async function hl(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?Hm(l):{}}catch{return{}}}function Hm(e){let t={};return 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}var Or=new Set;function Um(e,t,a){return`${e}|${t}|${a??""}`}function qm(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function gl(e){let{api:t,token:a,channelId:o,mode:r}=e;if(typeof window>"u"||!t||!a)return;let s=Um(t,a,o);if(!Or.has(s)){Or.add(s);try{let n=await ta(),i=new Date().toISOString(),l=JSON.stringify({sentAt:i,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:"widget",timestamp:i,correlation:{externalUserId:n.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:n.referrer,deviceType:n.deviceType,language:n.language,timezone:n.timezone},metadata:{}}]});await fetch(qm(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:l,keepalive:!0})}catch{Or.delete(s)}}}import{jsx as Vm}from"react/jsx-runtime";var Wm=600,Cl="https://app.waniwani.ai/api/mcp/chat",zm=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);wl(()=>{if(!o){c(!0);return}let x=pl(l,o,r);x&&(f(x),c(!0));let w=new AbortController,g=setTimeout(()=>c(!0),Wm);return hl(l,o,w.signal,r).then(h=>{w.signal.aborted||(Object.keys(h).length>0&&(ml(l,o,r,h),f(h)),c(!0))}).catch(h=>{console.error("[Waniwani] Remote config fetch failed:",h),c(!0)}).finally(()=>clearTimeout(g)),()=>{w.abort(),clearTimeout(g)}},[l,o,r]);let p=n?.disablePageView;wl(()=>{!o||p||gl({api:l,token:o,channelId:r,mode:"inline"})},[l,o,r,p]);let m=xl(()=>Nr(i,u,void 0),[i,u]),C={};return m.mcpServerUrl&&(C.mcpServerUrl=m.mcpServerUrl),m.channelId&&(C.channelId=m.channelId),Vm(Er,{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,Er as ChatEmbed,bm as DARK_THEME,il as DEFAULT_THEME,Sr as McpAppFrame,zm as WaniwaniChat,Fr as mergeTheme,aa as themeToCSSProperties};
17
17
  /*! Bundled license information:
18
18
 
19
19
  lucide-react/dist/esm/shared/src/utils/mergeClasses.js: