@waniwani/sdk 0.14.16 → 0.14.18

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 $r,b as Xr,c as Qr,d as Kr,e as Jr,f as ua,g as Zr,h as Yr,i as es,j as ts,k as Co,l as as,m as ct,n as pt,o as da,p as mt,u as bt}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Bm,useCallback as Er,useEffect as Dm,useImperativeHandle as Em,useRef as pl,useState as ml}from"react";import{forwardRef as Ol,createElement as Ul}from"react";var fa=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var os=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var rs=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var Io=e=>{let t=rs(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as Nl,createElement as is}from"react";var ss={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 ns=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var ls=Nl(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>is("svg",{ref:l,...ss,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:fa("lucide",r),...!s&&!ns(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>is(u,f)),...Array.isArray(s)?s:[s]]));var W=(e,t)=>{let a=Ol(({className:o,...r},s)=>Ul(ls,{ref:s,iconNode:t,className:fa(`lucide-${os(Io(e))}`,`lucide-${e}`,o),...r}));return a.displayName=Io(e),a};var Hl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ze=W("arrow-down",Hl);var ql=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],kt=W("arrow-up",ql);var Gl=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Tt=W("check",Gl);var Wl=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],We=W("chevron-down",Wl);var Vl=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Pt=W("chevron-right",Vl);var zl=[["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"}]],At=W("clipboard-copy",zl);var jl=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ye=W("clock",jl);var $l=[["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"}]],vt=W("file",$l);var Xl=[["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"}]],Rt=W("globe",Xl);var Ql=[["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"}]],Mt=W("loader",Ql);var Kl=[["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"}]],Ft=W("paperclip",Kl);var Jl=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Bt=W("square",Jl);var Zl=[["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"}]],et=W("wrench",Zl);var Yl=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],tt=W("x",Yl);var eu=[["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"}]],Dt=W("zap",eu);import{useCallback as wu}from"react";import{useCallback as Ve,useMemo as tu,useRef as au,useState as So}from"react";var ou={damping:.7,stiffness:.05,mass:1.25},ru=70,su=1e3/60,nu=350,ca=!1;globalThis.document?.addEventListener("mousedown",()=>{ca=!0});globalThis.document?.addEventListener("mouseup",()=>{ca=!1});globalThis.document?.addEventListener("click",()=>{ca=!1});var ds=(e={})=>{let[t,a]=So(!1),[o,r]=So(e.initial!==!1),[s,n]=So(!1),i=au(null);i.current=e;let l=Ve(()=>{if(!ca)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(w.current)||w.current?.contains(h.commonAncestorContainer)},[]),u=Ve(g=>{d.isAtBottom=g,r(g)},[]),f=Ve(g=>{d.escapedFromLock=g,a(g)},[]),d=tu(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return w.current?.scrollTop??0},set scrollTop(h){w.current&&(w.current.scrollTop=h,d.ignoreScrollToTop=w.current.scrollTop)},get targetScrollTop(){return!w.current||!x.current?0:w.current.scrollHeight-1-w.current.clientHeight},get calculatedTargetScrollTop(){if(!w.current||!x.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let L=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:w.current,contentElement:x.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:L},requestAnimationFrame(()=>{g=void 0}),L},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=ru}}},[]),c=Ve((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),L=bo(i.current,g.animation),{ignoreEscapes:S=!1}=g,k,A=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{k=Date.now()}):k=h+(g.duration??0);let P=async()=>{let E=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:B}=d,O=performance.now(),b=(O-(d.lastTick??O))/su;if(d.animation||(d.animation={behavior:L,promise:E,ignoreEscapes:S}),d.animation.behavior===L&&(d.lastTick=O),l()||h>Date.now())return P();if(B<Math.min(A,d.calculatedTargetScrollTop)){if(d.animation?.behavior===L){if(L==="instant")return d.scrollTop=d.calculatedTargetScrollTop,P();d.velocity=(L.damping*d.velocity+L.stiffness*d.scrollDifference)/L.mass,d.accumulated+=d.velocity*b,d.scrollTop+=d.accumulated,d.scrollTop!==B&&(d.accumulated=0)}return P()}return k>Date.now()?(A=d.calculatedTargetScrollTop,P()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:bo(i.current,i.current.resize),ignoreEscapes:S,duration:Math.max(0,k-Date.now())||void 0}):d.isAtBottom)});return E.then(B=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),B))};return g.wait!==!0&&(d.animation=void 0),d.animation?.behavior===L?d.animation.promise:P()},[u,l,d]),p=Ve(()=>{f(!0),u(!1)},[f,u]),m=Ve(({target:g})=>{if(g!==w.current)return;let{scrollTop:h,ignoreScrollToTop:L}=d,{lastScrollTop:S=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,L&&L>h&&(S=L),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===L)return;if(l()){f(!0),u(!1);return}let k=h>S,A=h<S;if(d.animation?.ignoreEscapes){d.scrollTop=S;return}A&&(f(!0),u(!1)),k&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),C=Ve(({target:g,deltaY:h})=>{let L=g;for(;!["scroll","auto"].includes(getComputedStyle(L).overflow);){if(!L.parentElement)return;L=L.parentElement}L===w.current&&h<0&&w.current.scrollHeight>w.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),w=us(g=>{w.current?.removeEventListener("scroll",m),w.current?.removeEventListener("wheel",C),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",C,{passive:!0})},[]),x=us(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([L])=>{let{height:S}=L.contentRect,k=S-(h??S);if(d.resizeDifference=k,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),k>=0){let A=bo(i.current,h?i.current.resize:i.current.initial);c({animation:A,wait:!0,preserveScrollPosition:!0,duration:A==="instant"?void 0:nu})}else d.isNearBottom&&(f(!1),u(!0));h=S,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===k&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:x,scrollRef:w,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function us(e,t){let a=Ve(o=>(a.current=o,e(o)),t);return a}var yo=new Map;function bo(...e){let t={...ou},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 yo.has(o)||yo.set(o,Object.freeze(t)),a?"instant":yo.get(o)}import*as at from"react";import{createContext as iu,useContext as lu,useEffect as uu,useImperativeHandle as du,useLayoutEffect as fu,useMemo as cu,useRef as pu}from"react";var fs=iu(null),mu=typeof window<"u"?fu:uu;function Et({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=pu(null),d=at.useCallback((S,k)=>(L?.targetScrollTop??i)?.(S,k)??S,[i]),c=ds({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:C,stopScroll:w,isAtBottom:x,escapedFromLock:g,state:h}=e??c,L=cu(()=>({scrollToBottom:C,stopScroll:w,scrollRef:p,isAtBottom:x,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(S){f.current=S}}),[C,x,m,p,w,g,h]);return du(l,()=>L,[L]),mu(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),at.createElement(fs.Provider,{value:L},at.createElement("div",{...u},typeof t=="function"?t(L):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=ko();return at.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},at.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(Et||(Et={}));function ko(){let e=lu(fs);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var hu=Xr({prefix:"ww"});function T(...e){return hu($r(e))}import{jsx as gu}from"react/jsx-runtime";var Ae=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>gu("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 pa}from"react/jsx-runtime";var cs=({className:e,...t})=>pa(Et,{className:T("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),ps=({className:e,...t})=>pa(Et.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}),ms=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=ko(),r=wu(()=>{o()},[o]);return!a&&pa(Ae,{className:T("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:pa(Ze,{className:"ww:size-4"})})};import gs from"crypto";var hs="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var xu=128,ot,ht,Lu=e=>{!ot||ot.length<e?(ot=Buffer.allocUnsafe(e*xu),gs.randomFillSync(ot),ht=0):ht+e>ot.length&&(gs.randomFillSync(ot),ht=0),ht+=e};var _t=(e=21)=>{Lu(e|=0);let t="";for(let a=ht-e;a<ht;a++)t+=hs[ot[a]&63];return t};import{createContext as Pu,useCallback as He,useContext as Au,useEffect as Ro,useMemo as vu,useRef as Mo,useState as Ss}from"react";import{createContext as Cu,useContext as Iu,useEffect as Su,useMemo as yu,useState as Cs}from"react";var ws=["en","fr","es"];function gt(e){return ws.includes(e)}function To(e){if(e&&gt(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&gt(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(gt(o))return o;let r=o.split("-")[0];if(r&&gt(r))return r}return"en"}var ma={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},chainOfThought:{working:"Working on it\u2026",done:"Thought process"},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to Waniwani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};var xs={promptInput:{placeholder:"\xBFQu\xE9 te gustar\xEDa saber?",uploadFiles:"Subir archivos",stop:"Detener",submit:"Enviar",removeAttachments:"Eliminar todos los archivos adjuntos"},workingIndicator:{default:"Un momento\u2026"},reasoning:{thinking:"Pensando\u2026",thoughtBrief:"Pensado durante unos segundos",thoughtForSeconds:e=>`Pensado durante ${e} segundo${e===1?"":"s"}`},chainOfThought:{working:"Estoy en ello\u2026",done:"Razonamiento"},tool:{copy:"Copiar",copied:"Copiado",request:"Solicitud",response:"Respuesta",error:"Error"},attachments:{attachmentFallback:"adjunto",fileFallback:"archivo"},threadMenu:{newChat:"Nueva conversaci\xF3n",threadHistory:"Historial",deleteThread:"Eliminar conversaci\xF3n",noPreviousChats:"A\xFAn no hay conversaciones anteriores.",hiddenThreads:e=>`${e} conversaci\xF3n${e===1?"":"es"} anterior${e===1?"":"es"} oculta${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(adjunto)",removeFromQueue:"Quitar de la cola",queued:e=>`${e} en cola`},poweredBy:{label:"Agente IA con tecnolog\xEDa de"},aiDisclaimer:{default:"puede cometer errores"},exportSession:{saving:"guardando...",saved:"guardado",error:"error",export:"exportar",tooltip:"Guardar escenario en Waniwani"},widgetErrorBoundary:{failedToLoad:"No se pudo cargar el widget",retry:"Reintentar"},launcher:{prompt:"Pregunta lo que quieras\u2026",open:"Abrir chat",close:"Cerrar chat",minimize:"Minimizar"}};var Ls={promptInput:{placeholder:"Que souhaitez-vous savoir ?",uploadFiles:"Importer des fichiers",stop:"Arr\xEAter",submit:"Envoyer",removeAttachments:"Supprimer toutes les pi\xE8ces jointes"},workingIndicator:{default:"Un instant\u2026"},reasoning:{thinking:"R\xE9flexion\u2026",thoughtBrief:"R\xE9flexion pendant quelques secondes",thoughtForSeconds:e=>`R\xE9flexion pendant ${e} seconde${e===1?"":"s"}`},chainOfThought:{working:"Je m'en occupe\u2026",done:"Raisonnement"},tool:{copy:"Copier",copied:"Copi\xE9",request:"Requ\xEAte",response:"R\xE9ponse",error:"Erreur"},attachments:{attachmentFallback:"pi\xE8ce jointe",fileFallback:"fichier"},threadMenu:{newChat:"Nouvelle conversation",threadHistory:"Historique",deleteThread:"Supprimer la conversation",noPreviousChats:"Aucune conversation pr\xE9c\xE9dente.",hiddenThreads:e=>`${e} conversation${e===1?"":"s"} plus ancienne${e===1?"":"s"} masqu\xE9e${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(pi\xE8ce jointe)",removeFromQueue:"Retirer de la file",queued:e=>`${e} en attente`},poweredBy:{label:"Agent IA propuls\xE9 par"},aiDisclaimer:{default:"peut faire des erreurs"},exportSession:{saving:"enregistrement...",saved:"enregistr\xE9",error:"erreur",export:"exporter",tooltip:"Enregistrer le sc\xE9nario dans Waniwani"},widgetErrorBoundary:{failedToLoad:"\xC9chec du chargement du widget",retry:"R\xE9essayer"},launcher:{prompt:"Posez votre question\u2026",open:"Ouvrir le chat",close:"Fermer le chat",minimize:"R\xE9duire"}};var Po={en:ma,fr:Ls,es:xs};import{jsx as Tu}from"react/jsx-runtime";var Is=Cu(null);function bu(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 Ao({children:e,locale:t,messages:a}){let o=!!(t&&ku(t)),r=o?t:"en",[s,n]=Cs(r),[i,l]=Cs(o);Su(()=>{n(To(t)),l(!0)},[t]);let u=yu(()=>{let f=Po[s]??Po["en"];return{locale:s,t:bu(f,a),ready:i}},[s,a,i]);return Tu(Is.Provider,{value:u,children:e})}function ku(e){return e==="en"||e==="fr"||e==="es"}function U(){let e=Iu(Is);return e||{locale:"en",t:ma,ready:!0}}function vo(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 ks}from"react/jsx-runtime";var Ru=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}},ys=Pu(null),bs=()=>{let e=Au(ys);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ha=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let{t:u}=U(),f=Mo(null),d=Mo(null),[c,p]=Ss([]),m=Mo(c);Ro(()=>{m.current=c},[c]);let C=He(()=>{f.current?.click()},[]),w=He(k=>{let A=[...k];if(A.length===0)return;let P=B=>s?B.size<=s:!0,E=A.filter(P);p(B=>{let O=typeof r=="number"?Math.max(0,r-B.length):void 0,b=typeof O=="number"?E.slice(0,O):E;return[...B,...b.map(v=>({filename:v.name,id:_t(),mediaType:v.type,type:"file",url:URL.createObjectURL(v)}))]})},[r,s]),x=He(k=>{p(A=>{let P=A.find(E=>E.id===k);return P?.url&&URL.revokeObjectURL(P.url),A.filter(E=>E.id!==k)})},[]),g=He(()=>{p(k=>{for(let A of k)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);Ro(()=>()=>{for(let k of m.current)k.url&&URL.revokeObjectURL(k.url)},[]);let h=He(k=>{k.currentTarget.files&&w(k.currentTarget.files),k.currentTarget.value=""},[w]);Ro(()=>{if(!o)return;let k=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault()},A=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault(),P.dataTransfer?.files&&P.dataTransfer.files.length>0&&w(P.dataTransfer.files)};return document.addEventListener("dragover",k),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",k),document.removeEventListener("drop",A)}},[w,o]);let L=He(async k=>{k.preventDefault();let A=k.currentTarget,E=new FormData(A).get("message")||"";A.reset();let B=await Promise.all(c.map(async({id:O,...b})=>{if(b.url?.startsWith("blob:")){let v=await Ru(b.url);return{...b,url:v??b.url}}return b}));try{let O=n({files:B,text:E},k);O instanceof Promise&&await O,g()}catch{}},[c,n,g]),S=vu(()=>({add:w,clear:g,files:c,openFileDialog:C,remove:x}),[c,w,x,g,C]);return ks(ys.Provider,{value:S,children:[Fe("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:f,title:u.promptInput.uploadFiles,type:"file"}),Fe("form",{className:T("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:L,ref:d,...l,children:i})]})};var ga=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=U(),n=bs(),[i,l]=Ss(!1),u=o??s.promptInput.placeholder,f=He(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=He(c=>{let p=c.clipboardData?.items;if(!p)return;let m=[];for(let C of p)if(C.kind==="file"){let w=C.getAsFile();w&&m.push(w)}m.length>0&&(c.preventDefault(),n.add(m))},[n]);return Fe("textarea",{className:T("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:f,onPaste:d,placeholder:u,onChange:e,...r})},wa=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let{t:n}=U(),i=t==="submitted"||t==="streaming",l=Fe(kt,{className:"ww:size-4"});t==="submitted"?l=Fe(Mt,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Fe(Bt,{className:"ww:size-4"}));let u=He(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return Fe(Ae,{"aria-label":i?n.promptInput.stop:n.promptInput.submit,className:T("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...s,children:r??l})},xa=({className:e,children:t,...a})=>{let{t:o}=U(),r=bs();return r.files.length>0?ks(Ae,{className:T("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[Fe("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:r.files.length}),Fe(tt,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Fe(Ae,{className:T(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Fe(Ft,{className:"ww:size-4"})})};import{memo as Mu,useCallback as Fu}from"react";import{jsx as xt}from"react/jsx-runtime";var Ts=({className:e,...t})=>xt("div",{className:T("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Ps=({className:e,...t})=>xt("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}),As=({className:e,...t})=>xt("span",{className:T("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),vs=({className:e,...t})=>xt("span",{className:T("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Rs=({className:e,...t})=>xt("div",{className:T("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Ms=({className:e,...t})=>xt(Ae,{className:T("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as ze,jsxs as Bs}from"react/jsx-runtime";var Fs=Mu(({message:e,onRemove:t})=>{let{t:a}=U(),o=Fu(()=>t(e.id),[t,e.id]);return Bs(Ps,{children:[ze(As,{}),ze(vs,{children:e.text||a.chatQueue.attachmentFallback}),ze(Rs,{children:ze(Ms,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:ze(tt,{className:"ww:size-3"})})})]})});Fs.displayName="ChatQueueItem";function La({queuedMessages:e,onRemove:t,className:a}){let{t:o}=U();return e.length===0?null:Bs(Ts,{className:T("ww:border-t ww:border-border",a),children:[ze("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),ze("ul",{children:e.map(r=>ze(Fs,{message:r,onRemove:t},r.id))})]})}import{useState as Ds}from"react";import{jsx as Bu}from"react/jsx-runtime";function Es({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=U(),[r,s]=Ds(!1),[n,i]=Ds(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 Bu("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 Nt,jsxs as Eu}from"react/jsx-runtime";var _s=({files:e,className:t,...a})=>e.length===0?null:Nt("div",{className:T("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>Nt(Du,{file:o},r))});function Du({file:e}){let{t}=U();return e.mediaType?.startsWith("image/")&&e.url?Nt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Eu("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:[Nt(vt,{className:"ww:size-3 ww:shrink-0"}),Nt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as $u,useCallback as Xu,useContext as Qu,useEffect as Eo,useMemo as Ku,useRef as Ju,useState as Ca}from"react";import{createContext as Uu,memo as Do,useCallback as Hu,useContext as qu,useEffect as Fo,useMemo as Gu,useRef as Ns,useState as Bo}from"react";import{memo as _u}from"react";import{jsx as Ou}from"react/jsx-runtime";var Nu=({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 Ou(e,{"data-waniwani-shimmer":"",className:T("ww:inline-block",t),style:n,...s,children:r})},Be=_u(Nu);Be.displayName="Shimmer";import{Fragment as zu,jsx as De,jsxs as ju}from"react/jsx-runtime";var Os=Uu(null);function Us(){let e=qu(Os);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Wu=1e3,Vu=1e3,Ot=Do(({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]=Bo(l),p=f?a:d,m=Hu(A=>{f||c(A),r?.(A)},[f,r]),[C,w]=Bo(void 0),x=s??C,g=Ns(t),[h,L]=Bo(!1),S=Ns(null);Fo(()=>{t?(g.current=!0,S.current===null&&(S.current=Date.now())):S.current!==null&&(w(Math.ceil((Date.now()-S.current)/Vu)),S.current=null)},[t]),Fo(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Fo(()=>{if(g.current&&!t&&p&&!h){let A=setTimeout(()=>{m(!1),L(!0)},Wu);return()=>clearTimeout(A)}},[t,p,h,m]);let k=Gu(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:x}),[t,p,m,x]);return De(Os.Provider,{value:k,children:De("div",{className:T("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":p?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:n})})});Ot.displayName="Reasoning";var Ut=Do(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...s})=>{let{t:n}=U(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:f}=Us(),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??ju(zu,{children:[!o&&De(Ye,{className:"ww:size-4 ww:shrink-0"}),c(i,u)]})})});Ut.displayName="ReasoningTrigger";var Ht=Do(({className:e,children:t,...a})=>{let{isOpen:o}=Us();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(bt,{children:t})})})})});Ht.displayName="ReasoningContent";import{jsx as Y,jsxs as rt}from"react/jsx-runtime";var Hs=1e3,Zu=240,qs=$u(null);function Gs(){let e=Qu(qs);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function Ws({className:e,isWorking:t=!1,open:a,defaultOpen:o,onOpenChange:r,children:s,...n}){let i=o??t,l=a!==void 0,[u,f]=Ca(i),d=l?a:u,c=Xu(h=>{l||f(h),r?.(h)},[l,r]),p=Ju(t),[m,C]=Ca(!1),[w,x]=Ca(!t);Eo(()=>{t&&(p.current=!0,C(!1),x(!1),l||f(!0))},[t,l]),Eo(()=>{if(p.current&&!t&&d&&!m){let h=setTimeout(()=>{c(!1),C(!0)},Hs);return()=>clearTimeout(h)}},[t,d,m,c]),Eo(()=>{if(p.current&&!t&&!w){let h=setTimeout(()=>x(!0),Hs+Zu);return()=>clearTimeout(h)}},[t,w]);let g=Ku(()=>({open:d,setOpen:c,isWorking:t,settled:w}),[d,c,t,w]);return Y(qs.Provider,{value:g,children:Y("div",{className:T("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":d?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...n,children:s})})}function Vs({className:e,label:t,workingLabel:a,children:o,...r}){let{open:s,setOpen:n,isWorking:i,settled:l}=Gs(),u=o??(l?t:i?Y(Be,{duration:1.6,children:a??t??""}):a??t);return rt("button",{type:"button",onClick:()=>n(!s),"aria-expanded":s,className:T("ww:flex ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...r,children:[Y("span",{className:"ww:truncate",children:u}),Y(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",s&&"ww:rotate-180")})]})}function zs({className:e,children:t,...a}){let{open:o}=Gs();return Y("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",o?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:T("ww:flex ww:flex-col",e),...a,children:t})})})}function js({icon:e,isLast:t,running:a,error:o}){return rt("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Y("span",{className:"ww:flex ww:h-5 ww:items-center",children:Y(e,{className:T("ww:size-4 ww:shrink-0",o?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Y("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function _o({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]=Ca(!1),c=a??"",p=i?Y(Be,{duration:1.6,children:c}):Y("span",{className:"ww:truncate",children:c});return rt("div",{className:T("ww:flex ww:gap-2",e),...n,children:[Y(js,{icon:t,isLast:r,running:i,error:l}),rt("div",{className:T("ww:min-w-0 ww:flex-1",!r&&"ww:pb-3"),children:[u?rt("button",{type:"button",onClick:()=>d(m=>!m),"aria-expanded":f,className:"ww:flex ww:w-full ww:items-center ww:gap-1.5 ww:text-left ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",children:[p,Y(We,{className:T("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",f&&"ww:rotate-180")})]}):Y("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&Y("div",{className:T("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",f?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Y("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Y("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:s})})})]})]})}function $s({isStreaming:e=!1,isLast:t=!1,children:a}){return rt("div",{className:"ww:flex ww:gap-2",children:[Y(js,{icon:Ye,isLast:t,running:e}),Y("div",{className:T("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:rt(Ot,{isStreaming:e,className:"ww:mb-0",children:[Y(Ut,{hideIcon:!0}),Y(Ht,{children:a})]})})]})}var he={carriageReturn:-5,lineFeed:-4,carriageReturnLineFeed:-3,horizontalTab:-2,virtualSpace:-1,eof:null,nul:0,soh:1,stx:2,etx:3,eot:4,enq:5,ack:6,bel:7,bs:8,ht:9,lf:10,vt:11,ff:12,cr:13,so:14,si:15,dle:16,dc1:17,dc2:18,dc3:19,dc4:20,nak:21,syn:22,etb:23,can:24,em:25,sub:26,esc:27,fs:28,gs:29,rs:30,us:31,space:32,exclamationMark:33,quotationMark:34,numberSign:35,dollarSign:36,percentSign:37,ampersand:38,apostrophe:39,leftParenthesis:40,rightParenthesis:41,asterisk:42,plusSign:43,comma:44,dash:45,dot:46,slash:47,digit0:48,digit1:49,digit2:50,digit3:51,digit4:52,digit5:53,digit6:54,digit7:55,digit8:56,digit9:57,colon:58,semicolon:59,lessThan:60,equalsTo:61,greaterThan:62,questionMark:63,atSign:64,uppercaseA:65,uppercaseB:66,uppercaseC:67,uppercaseD:68,uppercaseE:69,uppercaseF:70,uppercaseG:71,uppercaseH:72,uppercaseI:73,uppercaseJ:74,uppercaseK:75,uppercaseL:76,uppercaseM:77,uppercaseN:78,uppercaseO:79,uppercaseP:80,uppercaseQ:81,uppercaseR:82,uppercaseS:83,uppercaseT:84,uppercaseU:85,uppercaseV:86,uppercaseW:87,uppercaseX:88,uppercaseY:89,uppercaseZ:90,leftSquareBracket:91,backslash:92,rightSquareBracket:93,caret:94,underscore:95,graveAccent:96,lowercaseA:97,lowercaseB:98,lowercaseC:99,lowercaseD:100,lowercaseE:101,lowercaseF:102,lowercaseG:103,lowercaseH:104,lowercaseI:105,lowercaseJ:106,lowercaseK:107,lowercaseL:108,lowercaseM:109,lowercaseN:110,lowercaseO:111,lowercaseP:112,lowercaseQ:113,lowercaseR:114,lowercaseS:115,lowercaseT:116,lowercaseU:117,lowercaseV:118,lowercaseW:119,lowercaseX:120,lowercaseY:121,lowercaseZ:122,leftCurlyBrace:123,verticalBar:124,rightCurlyBrace:125,tilde:126,del:127,byteOrderMarker:65279,replacementCharacter:65533};var _e={attentionSideAfter:2,attentionSideBefore:1,atxHeadingOpeningFenceSizeMax:6,autolinkDomainSizeMax:63,autolinkSchemeSizeMax:32,cdataOpeningString:"CDATA[",characterGroupPunctuation:2,characterGroupWhitespace:1,characterReferenceDecimalSizeMax:7,characterReferenceHexadecimalSizeMax:6,characterReferenceNamedSizeMax:31,codeFencedSequenceSizeMin:3,contentTypeContent:"content",contentTypeDocument:"document",contentTypeFlow:"flow",contentTypeString:"string",contentTypeText:"text",hardBreakPrefixSizeMin:2,htmlBasic:6,htmlCdata:5,htmlComment:2,htmlComplete:7,htmlDeclaration:4,htmlInstruction:3,htmlRawSizeMax:8,htmlRaw:1,linkResourceDestinationBalanceMax:32,linkReferenceSizeMax:999,listItemValueSizeMax:10,numericBaseDecimal:10,numericBaseHexadecimal:16,tabSize:4,thematicBreakMarkerCountMin:3,v8MaxSafeChunkSize:1e4};var be={data:"data",whitespace:"whitespace",lineEnding:"lineEnding",lineEndingBlank:"lineEndingBlank",linePrefix:"linePrefix",lineSuffix:"lineSuffix",atxHeading:"atxHeading",atxHeadingSequence:"atxHeadingSequence",atxHeadingText:"atxHeadingText",autolink:"autolink",autolinkEmail:"autolinkEmail",autolinkMarker:"autolinkMarker",autolinkProtocol:"autolinkProtocol",characterEscape:"characterEscape",characterEscapeValue:"characterEscapeValue",characterReference:"characterReference",characterReferenceMarker:"characterReferenceMarker",characterReferenceMarkerNumeric:"characterReferenceMarkerNumeric",characterReferenceMarkerHexadecimal:"characterReferenceMarkerHexadecimal",characterReferenceValue:"characterReferenceValue",codeFenced:"codeFenced",codeFencedFence:"codeFencedFence",codeFencedFenceSequence:"codeFencedFenceSequence",codeFencedFenceInfo:"codeFencedFenceInfo",codeFencedFenceMeta:"codeFencedFenceMeta",codeFlowValue:"codeFlowValue",codeIndented:"codeIndented",codeText:"codeText",codeTextData:"codeTextData",codeTextPadding:"codeTextPadding",codeTextSequence:"codeTextSequence",content:"content",definition:"definition",definitionDestination:"definitionDestination",definitionDestinationLiteral:"definitionDestinationLiteral",definitionDestinationLiteralMarker:"definitionDestinationLiteralMarker",definitionDestinationRaw:"definitionDestinationRaw",definitionDestinationString:"definitionDestinationString",definitionLabel:"definitionLabel",definitionLabelMarker:"definitionLabelMarker",definitionLabelString:"definitionLabelString",definitionMarker:"definitionMarker",definitionTitle:"definitionTitle",definitionTitleMarker:"definitionTitleMarker",definitionTitleString:"definitionTitleString",emphasis:"emphasis",emphasisSequence:"emphasisSequence",emphasisText:"emphasisText",escapeMarker:"escapeMarker",hardBreakEscape:"hardBreakEscape",hardBreakTrailing:"hardBreakTrailing",htmlFlow:"htmlFlow",htmlFlowData:"htmlFlowData",htmlText:"htmlText",htmlTextData:"htmlTextData",image:"image",label:"label",labelText:"labelText",labelLink:"labelLink",labelImage:"labelImage",labelMarker:"labelMarker",labelImageMarker:"labelImageMarker",labelEnd:"labelEnd",link:"link",paragraph:"paragraph",reference:"reference",referenceMarker:"referenceMarker",referenceString:"referenceString",resource:"resource",resourceDestination:"resourceDestination",resourceDestinationLiteral:"resourceDestinationLiteral",resourceDestinationLiteralMarker:"resourceDestinationLiteralMarker",resourceDestinationRaw:"resourceDestinationRaw",resourceDestinationString:"resourceDestinationString",resourceMarker:"resourceMarker",resourceTitle:"resourceTitle",resourceTitleMarker:"resourceTitleMarker",resourceTitleString:"resourceTitleString",setextHeading:"setextHeading",setextHeadingText:"setextHeadingText",setextHeadingLine:"setextHeadingLine",setextHeadingLineSequence:"setextHeadingLineSequence",strong:"strong",strongSequence:"strongSequence",strongText:"strongText",thematicBreak:"thematicBreak",thematicBreakSequence:"thematicBreakSequence",blockQuote:"blockQuote",blockQuotePrefix:"blockQuotePrefix",blockQuoteMarker:"blockQuoteMarker",blockQuotePrefixWhitespace:"blockQuotePrefixWhitespace",listOrdered:"listOrdered",listUnordered:"listUnordered",listItemIndent:"listItemIndent",listItemMarker:"listItemMarker",listItemPrefix:"listItemPrefix",listItemPrefixWhitespace:"listItemPrefixWhitespace",listItemValue:"listItemValue",chunkDocument:"chunkDocument",chunkContent:"chunkContent",chunkFlow:"chunkFlow",chunkText:"chunkText",chunkString:"chunkString"};function Xs(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 Qs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Ks(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e>=94192&&e<=94198||e>=94208&&e<=101589||e>=101631&&e<=101662||e>=101760&&e<=101874||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128728||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129674||e>=129678&&e<=129734||e===129736||e>=129741&&e<=129756||e>=129759&&e<=129770||e>=129775&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function Js(e){return Xs(e)?"ambiguous":Qs(e)?"fullwidth":e===8361||e>=65377&&e<=65470||e>=65474&&e<=65479||e>=65482&&e<=65487||e>=65490&&e<=65495||e>=65498&&e<=65500||e>=65512&&e<=65518?"halfwidth":e>=32&&e<=126||e===162||e===163||e===165||e===166||e===172||e===175||e>=10214&&e<=10221||e===10629||e===10630?"narrow":Ks(e)?"wide":"neutral"}function Yu(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Zs(e){return Yu(e),Js(e)}var ed=Object.defineProperty,td=(e,t,a)=>t in e?ed(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ad=(e,t,a)=>td(e,typeof t!="symbol"?t+"":t,a);function od(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function rd(e){if(!e||e<4352)return!1;switch(Zs(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!od(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 sd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function nd(e){return e!==null&&e>=65024&&e<=65038}var id=Ys(/\p{P}|\p{S}/u),ld=Ys(/\s/);function Ys(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||as(e)||ld(e))return _e.characterGroupWhitespace;let t=0;if(e>=4352){if(nd(e))return ke.nonEmojiGeneralUseVS;switch(rd(e)){case null:return ke.ivs;case!0:t|=ke.cjk;break}}return id(e)&&(t|=_e.characterGroupPunctuation),t}function Ia(e,t,a){if(!dd(e))return e;let o=t(),r=je(o);return!o||st(r)?e:sd(o,a)?ke.cjkPunctuation:ud(r)}function ud(e){return e&~ke.ivs}function st(e){return!!(e&_e.characterGroupWhitespace)}function Lt(e){return(e&ke.cjkPunctuation)===_e.characterGroupPunctuation}function qt(e){return!!(e&ke.cjk)}function en(e){return e===ke.ivs}function tn(e){return!!(e&ke.cjkOrIvs)}function dd(e){return e===ke.nonEmojiGeneralUseVS}function No(e){return!!(e&ke.spaceOrPunctuation)}function Sa(e){return!!(e&&e>=55296&&e<=56319)}function ya(e){return!!(e&&e>=56320&&e<=57343)}function ba(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 fd(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 ka=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,ad(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=fd(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Ta(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var Oo={name:"attention",resolveAll:cd,tokenize:pd};function cd(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};an(d,-l),an(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=pt(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=pt(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=pt(u,da(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=pt(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=pt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,ct(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 pd(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=ya(s)?ba(s,o(),r):s,i=je(n),l=new ka(n,o(),r),u=Ia(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=Sa(p)?Ta(p,o(),r):p,w=je(C);let x=Lt(u),g=x||st(u),h=Lt(w),L=h||st(w),S=tn(u),k=!L||h&&(g||S)||a.includes(p),A=!g||x&&(L||qt(w))||a.includes(n);return m._open=!!(f===he.asterisk?k:k&&(No(u)||!A)),m._close=!!(f===he.asterisk?A:A&&(No(w)||!k)),t(p)}}function an(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function on(){return{text:{[he.asterisk]:Oo,[he.underscore]:Oo},insideSpan:{null:[Oo]}}}function rn(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(on())}function sn(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&&ct(c,c.length,0,da(p,n.slice(u+1,l),i)),ct(c,c.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),ct(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=ya(d)?ba(d,u(),f):d,p=je(c),m=new ka(c,u(),f),C=Ia(p,m.value.bind(m),c),w=this.events,x=0;return g;function g(L){return he.tilde,c===he.tilde&&w[w.length-1][1].type!==be.characterEscape?l(L):(n.enter("strikethroughSequenceTemporary"),h(L))}function h(L){let S=je(c);if(L===he.tilde)return x>1?l(L):(n.consume(L),x++,h);if(x<2&&!a)return l(L);let k=n.exit("strikethroughSequenceTemporary"),A=Sa(L)?Ta(L,u(),f):L,P=je(A),B=Lt(C)||st(C),b=Lt(P)||st(P),v=qt(C)||en(S);return k._open=!b||P===_e.attentionSideAfter&&(B||v),k._close=!B||S===_e.attentionSideAfter&&(b||qt(P)),i(L)}}}function nn(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(sn(e))}var md=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),hd=/^(https?:\/\/|mailto:|www\.)/i,gd=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},wd=e=>{let t=0;for(let a of e){if(md.has(a))return t;t+=a.length}return null},xd=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),Ld=e=>({type:"text",value:e}),Cd=()=>e=>{Qr(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!gd(t)||!hd.test(t.url))return;let r=wd(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=xd(s,t),l=Ld(n);return o.children.splice(a,1,i,l),a+1})};function Id(){let e=[rn],t=[Cd,nn],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Uo=Id();var ee=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Sd(e){return Qo(e)}function Qo(e){return Array.isArray(e)?yd(e):e instanceof RegExp?e:typeof e=="object"?bd(e):e}function yd(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=Qo(e[a]);return t}function bd(e){let t={};for(let a in e)t[a]=Qo(e[a]);return t}function gn(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function wn(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?wn(e.substring(0,e.length-1)):e.substr(~t+1)}var Ho=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Pa=class{static hasCaptures(e){return e===null?!1:(Ho.lastIndex=0,Ho.test(e))}static replaceCaptures(e,t,a){return e.replace(Ho,(o,r,s,n)=>{let i=a[parseInt(r||s,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(n){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return o})}};function xn(e,t){return e<t?-1:e>t?1:0}function Ln(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=xn(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function ln(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 Cn(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var In=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}},Vt=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Pd(e),t)}static createFromParsedTheme(e,t){return vd(e,t)}_cachedMatchRoot=new In(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=>kd(e.parent,r.parentScopes));return o?new Sn(o.fontStyle,o.foreground,o.background):null}},qo=class Aa{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Aa(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Aa(a,t[o]);return a}push(t){return new Aa(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 kd(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&&!Td(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Td(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Sn=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Pd(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"&&ln(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&ln(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),C=m[m.length-1],w=null;m.length>1&&(w=m.slice(0,m.length-1),w.reverse()),a[o++]=new Ad(C,w,r,l,u,f)}}return a}var Ad=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 vd(e,t){e.sort((l,u)=>{let f=xn(l.scope,u.scope);return f!==0||(f=Ln(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 Rd(t),n=new Sn(a,s.getId(o),s.getId(r)),i=new Fd(new Wo(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 Vt(s,n,i)}var Rd=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)}},Md=Object.freeze([]),Wo=class yn{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||Md,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new yn(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)}},Fd=class Vo{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(Vo._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 Vo(this._mainRule.clone(),Wo.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(Ln(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 Wo(t,a,o,r,s))}},it=class ve{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=ve.getLanguageId(t),o=ve.getTokenType(t),r=ve.getFontStyle(t),s=ve.getForeground(t),n=ve.getBackground(t);console.log({languageId:a,tokenType:o,fontStyle:r,foreground:s,background:n})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,o,r,s,n,i){let l=ve.getLanguageId(t),u=ve.getTokenType(t),f=ve.containsBalancedBrackets(t)?1:0,d=ve.getFontStyle(t),c=ve.getForeground(t),p=ve.getBackground(t);return a!==0&&(l=a),o!==8&&(u=o),r!==null&&(f=r?1:0),s!==-1&&(d=s),n!==0&&(c=n),i!==0&&(p=i),(l<<0|u<<8|f<<10|d<<11|c<<15|p<<24)>>>0}};function Ra(e,t){let a=[],o=Bd(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(un(r)){let l=[];do l.push(r),r=o.next();while(un(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 un(e){return!!e&&!!e.match(/[\w\.:]+/)}function Bd(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 bn(e){typeof e.dispose=="function"&&e.dispose()}var zt=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Dd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Ed=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))}},_d=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 Ed;for(let a of e)Nd(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 Nd(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?va({baseGrammar:s,selfGrammar:r},o):zo(e.ruleName,{baseGrammar:s,selfGrammar:r,repository:r.repository},o);let n=a.injections(e.scopeName);if(n)for(let i of n)o.add(new zt(i))}function zo(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Ma([o],t,a)}}function va(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ma(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ma(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ma(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?gn({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Ma(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=kn(s);switch(n.kind){case 0:va({...t,selfGrammar:t.baseGrammar},a);break;case 1:va(t,a);break;case 2:zo(n.ruleName,{...t,repository:r},a);break;case 3:case 4:let i=n.scopeName===t.selfGrammar.scopeName?t.selfGrammar:n.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:r};n.kind===4?zo(n.ruleName,l,a):va(l,a)}else n.kind===4?a.add(new Dd(n.scopeName,n.ruleName)):a.add(new zt(n.scopeName));break}}}var Od=class{kind=0},Ud=class{kind=1},Hd=class{constructor(e){this.ruleName=e}kind=2},qd=class{constructor(e){this.scopeName=e}kind=3},Gd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function kn(e){if(e==="$base")return new Od;if(e==="$self")return new Ud;let t=e.indexOf("#");if(t===-1)return new qd(e);if(t===0)return new Hd(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new Gd(a,o)}}var Wd=/\\(\d+)/,dn=/\\(\d+)/g;var Vd=-1,Tn=-2;var Xt=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=Pa.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=Pa.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${wn(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:Pa.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Pa.replaceCaptures(this._contentName,e,t)}},zd=class extends Xt{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!")}},jd=class extends Xt{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new jt(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 $t,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},fn=class extends Xt{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 $t,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},jo=class extends Xt{_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 jt(r,this.id),this.beginCaptures=s,this._end=new jt(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 $t;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}},Fa=class extends Xt{_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 jt(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new jt(n,Tn),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 $t;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 $t,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Pn=class Se{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new zd(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new jd(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=gn({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new fn(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(s,a,o))}return t.while?new Fa(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 jo(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=kn(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 fn||u instanceof jo||u instanceof Fa)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},jt=class An{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=Wd.test(this.source):this.hasBackReferences=!1}clone(){return new An(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 dn.lastIndex=0,this.source.replace(dn,(r,s)=>Cn(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}},$t=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 cn(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 cn(e,o,this._items.map(r=>r.ruleId))}},cn=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}},Go=class{constructor(e,t){this.languageId=e,this.tokenType=t}},$d=class $o{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Go(t,8),this._embeddedLanguagesMatcher=new Xd(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?$o._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Go(0,0);_getBasicScopeAttributes=new In(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Go(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match($o.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/},Xd=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])=>Cn(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])}},Xx={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},vn=!1,pn=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function Rn(e,t,a,o,r,s,n,i){let l=t.content.length,u=!1,f=-1;if(n){let p=Qd(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 pn(r,!0);c()}return new pn(r,!1);function c(){let p=Kd(e,t,a,o,r,f);if(!p){s.produce(r,l),u=!0;return}let m=p.captureIndices,C=p.matchedRuleId,w=m&&m.length>0?m[0].end>o:!1;if(C===Vd){let x=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),Gt(e,t,a,r,s,x.endCaptures,m),s.produce(r,m[0].end);let g=r;if(r=r.parent,f=g.getAnchorPos(),!w&&g.getEnterPos()===o){r=g,s.produce(r,l),u=!0;return}}else{let x=e.getRule(C);s.produce(r,m[0].start);let g=r,h=x.getName(t.content,m),L=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(C,o,f,m[0].end===l,null,L,L),x instanceof jo){let S=x;Gt(e,t,a,r,s,S.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=S.getContentName(t.content,m),A=L.pushAttributed(k,e);if(r=r.withContentNameScopesList(A),S.endHasBackReferences&&(r=r.withEndRule(S.getEndWithResolvedBackReferences(t.content,m))),!w&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(x instanceof Fa){let S=x;Gt(e,t,a,r,s,S.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=S.getContentName(t.content,m),A=L.pushAttributed(k,e);if(r=r.withContentNameScopesList(A),S.whileHasBackReferences&&(r=r.withEndRule(S.getWhileWithResolvedBackReferences(t.content,m))),!w&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(Gt(e,t,a,r,s,x.captures,m),s.produce(r,m[0].end),r=r.pop(),!w){r=r.safePop(),s.produce(r,l),u=!0;return}}m[0].end>o&&(o=m[0].end,a=!1)}}function Qd(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 Fa&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:f}=Yd(l.rule,e,l.stack.endRule,a,o===n),d=u.findNextMatchSync(t,o,f);if(d){if(d.ruleId!==Tn){r=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(s.produce(l.stack,d.captureIndices[0].start),Gt(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 Kd(e,t,a,o,r,s){let n=Jd(e,t,a,o,r,s),i=e.getInjections();if(i.length===0)return n;let l=Zd(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 Jd(e,t,a,o,r,s){let n=r.getRule(e),{ruleScanner:i,findOptions:l}=Mn(n,e,r.endRule,a,o===s),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Zd(e,t,a,o,r,s,n){let i=Number.MAX_VALUE,l=null,u,f=0,d=s.contentNameScopesList.getScopeNames();for(let c=0,p=e.length;c<p;c++){let m=e[c];if(!m.matcher(d))continue;let C=t.getRule(m.ruleId),{ruleScanner:w,findOptions:x}=Mn(C,t,null,o,r===n),g=w.findNextMatchSync(a,r,x);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,f=m.priority,i===r))break}return l?{priorityMatch:f===-1,captureIndices:l,matchedRuleId:u}:null}function Mn(e,t,a,o,r){if(vn){let n=e.compile(t,a),i=Fn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function Yd(e,t,a,o,r){if(vn){let n=e.compileWhile(t,a),i=Fn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function Fn(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Gt(e,t,a,o,r,s,n){if(s.length===0)return;let i=t.content,l=Math.min(s.length,n.length),u=[],f=n[0].end;for(let d=0;d<l;d++){let c=s[d];if(c===null)continue;let p=n[d];if(p.length===0)continue;if(p.start>f)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?r.produceFromScopes(u[u.length-1].scopes,p.start):r.produce(o,p.start),c.retokenizeCapturedWithRuleId){let C=c.getName(i,n),w=o.contentNameScopesList.pushAttributed(C,e),x=c.getContentName(i,n),g=w.pushAttributed(x,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,w,g),L=e.createOnigString(i.substring(0,p.end));Rn(e,L,a&&p.start===0,p.start,h,r,!1,0),bn(L);continue}let m=c.getName(i,n);if(m!==null){let w=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(m,e);u.push(new ef(w,p.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var ef=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function tf(e,t,a,o,r,s,n,i){return new of(e,t,a,o,r,s,n,i)}function mn(e,t,a,o,r){let s=Ra(t,Ba),n=Pn.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 Ba(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(af(t[r],o))return a=r+1,!0;return!1})}function af(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 of=class{constructor(e,t,a,o,r,s,n,i){if(this._rootScopeName=e,this.balancedBracketSelectors=s,this._onigLib=i,this._basicScopeAttributesProvider=new $d(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=n,this._grammar=hn(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=Ra(l,Ba);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)mn(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&&mn(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]=hn(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=Pn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===Xo.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),f=this.themeProvider.getDefaults(),d=it.set(0,u.languageId,u.tokenType,null,f.fontStyle,f.foregroundId,f.backgroundId),c=this.getRule(this._rootId).getName(null,null),p;c?p=Wt.createRootAndLookUpScopeName(c,d,this):p=Wt.createRoot("unknown",d),t=new Xo(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 sf(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=Rn(this,s,r,0,t,i,!0,o);return bn(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function hn(e,t){return e=Sd(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 Wt=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=qo.push(r,s.scopeNames),o=new Ne(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new Ne(null,new qo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new qo(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),it.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}},Xo=class nt{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 nt(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:nt._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Wt.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(){nt._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new nt(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 nt(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=Wt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new nt(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,Wt.fromExtension(o,a.contentNameScopesList))}},rf=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Ra(a,Ba).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Ra(a,Ba).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}},sf=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=it.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=it.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}},nf=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,tf(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},Bn=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new nf(Vt.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(Vt.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 rf(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new _d(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)}},Da=Xo.NULL;var lf=/["&'<>`]/g,uf=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,df=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,ff=/[|\\{}()[\]^$+*?.]/g,Dn=new WeakMap;function En(e,t){if(e=e.replace(t.subset?cf(t.subset):lf,o),t.subset||t.escapeOnly)return e;return e.replace(uf,a).replace(df,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 cf(e){let t=Dn.get(e);return t||(t=pf(e),Dn.set(e,t)),t}function pf(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(ff,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var mf=/[\dA-Fa-f]/;function _n(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!mf.test(String.fromCharCode(t))?o:o+";"}var hf=/\d/;function Nn(e,t,a){let o="&#"+String(e);return a&&t&&!hf.test(String.fromCharCode(t))?o:o+";"}var On=["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 Ea={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 Un=["cent","copy","divide","gt","lt","not","para","times"];var Hn={}.hasOwnProperty,Ko={},_a;for(_a in Ea)Hn.call(Ea,_a)&&(Ko[Ea[_a]]=_a);var gf=/[^\dA-Za-z]/;function qn(e,t,a,o){let r=String.fromCharCode(e);if(Hn.call(Ko,r)){let s=Ko[r],n="&"+s;return a&&On.includes(s)&&!Un.includes(s)&&(!o||t&&t!==61&&gf.test(String.fromCharCode(t)))?n:n+";"}return""}function Gn(e,t,a){let o=_n(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=qn(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Nn(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 En(e,Object.assign({format:Gn},t))}var wf=/^>|^->|<!--|-->|--!>|<!-$/g,xf=[">"],Lf=["<",">"];function Wn(e,t,a,o){return o.settings.bogusComments?"<?"+qe(e.value,Object.assign({},o.settings.characterReferences,{subset:xf}))+">":"<!--"+e.value.replace(wf,r)+"-->";function r(s){return qe(s,Object.assign({},o.settings.characterReferences,{subset:Lf}))}}function Vn(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ne=zn(1),Jo=zn(-1),Cf=[];function zn(e){return t;function t(a,o,r){let s=a?a.children:Cf,n=(o||0)+e,i=s[n];if(!r)for(;i&&mt(i);)n+=e,i=s[n];return i}}var If={}.hasOwnProperty;function Na(e){return t;function t(a,o,r){return If.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Qt=Na({body:yf,caption:Zo,colgroup:Zo,dd:Pf,dt:Tf,head:Zo,html:Sf,li:kf,optgroup:Af,option:vf,p:bf,rp:jn,rt:jn,tbody:Mf,td:$n,tfoot:Ff,th:$n,thead:Rf,tr:Bf});function Zo(e,t,a){let o=ne(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&mt(o.value.charAt(0)))}function Sf(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function yf(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function bf(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 kf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="li"}function Tf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function Pf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function jn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function Af(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function vf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function Rf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function Mf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function Ff(e,t,a){return!ne(a,t)}function Bf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function $n(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var Xn=Na({body:_f,colgroup:Nf,head:Ef,html:Df,tbody:Of});function Df(e){let t=ne(e,-1);return!t||t.type!=="comment"}function Ef(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 _f(e){let t=ne(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&mt(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function Nf(e,t,a){let o=Jo(a,t),r=ne(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&Qt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Of(e,t,a){let o=Jo(a,t),r=ne(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&Qt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Oa={name:[[`
2
+ import{a as Kr,b as Jr,c as Zr,d as Yr,e as es,f as da,g as ts,h as as,i as os,j as rs,k as So,l as ss,m as pt,n as mt,o as fa,p as ht,u as kt}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{forwardRef as Mm,useCallback as Hr,useEffect as Fm,useImperativeHandle as Bm,useRef as ml,useState as hl}from"react";import{forwardRef as Nl,createElement as Ol}from"react";var ca=(...e)=>e.filter((t,a,o)=>!!t&&t.trim()!==""&&o.indexOf(t)===a).join(" ").trim();var ns=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var is=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,o)=>o?o.toUpperCase():a.toLowerCase());var yo=e=>{let t=is(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as _l,createElement as ds}from"react";var ls={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 us=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var fs=_l(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:r="",children:s,iconNode:n,...i},l)=>ds("svg",{ref:l,...ls,width:t,height:t,stroke:e,strokeWidth:o?Number(a)*24/Number(t):a,className:ca("lucide",r),...!s&&!us(i)&&{"aria-hidden":"true"},...i},[...n.map(([u,f])=>ds(u,f)),...Array.isArray(s)?s:[s]]));var z=(e,t)=>{let a=Nl(({className:o,...r},s)=>Ol(fs,{ref:s,iconNode:t,className:ca(`lucide-${ns(yo(e))}`,`lucide-${e}`,o),...r}));return a.displayName=yo(e),a};var Hl=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],tt=z("arrow-down",Hl);var Ul=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Tt=z("arrow-up",Ul);var ql=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Pt=z("check",ql);var Gl=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],ze=z("chevron-down",Gl);var Wl=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],At=z("chevron-right",Wl);var Vl=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]],vt=z("clipboard-copy",Vl);var zl=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ge=z("clock",zl);var jl=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],Rt=z("file",jl);var $l=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Mt=z("globe",$l);var Xl=[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]],Ft=z("loader",Xl);var Ql=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],Bt=z("paperclip",Ql);var Kl=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Dt=z("square",Kl);var Jl=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],at=z("wrench",Jl);var Zl=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],ot=z("x",Zl);var Yl=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Et=z("zap",Yl);import{useCallback as gu}from"react";import{useCallback as je,useMemo as eu,useRef as tu,useState as bo}from"react";var au={damping:.7,stiffness:.05,mass:1.25},ou=70,ru=1e3/60,su=350,pa=!1;globalThis.document?.addEventListener("mousedown",()=>{pa=!0});globalThis.document?.addEventListener("mouseup",()=>{pa=!1});globalThis.document?.addEventListener("click",()=>{pa=!1});var ps=(e={})=>{let[t,a]=bo(!1),[o,r]=bo(e.initial!==!1),[s,n]=bo(!1),i=tu(null);i.current=e;let l=je(()=>{if(!pa)return!1;let g=window.getSelection();if(!g||!g.rangeCount)return!1;let h=g.getRangeAt(0);return h.commonAncestorContainer.contains(w.current)||w.current?.contains(h.commonAncestorContainer)},[]),u=je(g=>{d.isAtBottom=g,r(g)},[]),f=je(g=>{d.escapedFromLock=g,a(g)},[]),d=eu(()=>{let g;return{escapedFromLock:t,isAtBottom:o,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return w.current?.scrollTop??0},set scrollTop(h){w.current&&(w.current.scrollTop=h,d.ignoreScrollToTop=w.current.scrollTop)},get targetScrollTop(){return!w.current||!x.current?0:w.current.scrollHeight-1-w.current.clientHeight},get calculatedTargetScrollTop(){if(!w.current||!x.current)return 0;let{targetScrollTop:h}=this;if(!e.targetScrollTop)return h;if(g?.targetScrollTop===h)return g.calculatedScrollTop;let L=Math.max(Math.min(e.targetScrollTop(h,{scrollElement:w.current,contentElement:x.current}),h),0);return g={targetScrollTop:h,calculatedScrollTop:L},requestAnimationFrame(()=>{g=void 0}),L},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=ou}}},[]),c=je((g={})=>{typeof g=="string"&&(g={animation:g}),g.preserveScrollPosition||u(!0);let h=Date.now()+(Number(g.wait)||0),L=To(i.current,g.animation),{ignoreEscapes:S=!1}=g,k,A=d.calculatedTargetScrollTop;g.duration instanceof Promise?g.duration.finally(()=>{k=Date.now()}):k=h+(g.duration??0);let T=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))/ru;if(d.animation||(d.animation={behavior:L,promise:D,ignoreEscapes:S}),d.animation.behavior===L&&(d.lastTick=O),l()||h>Date.now())return T();if(F<Math.min(A,d.calculatedTargetScrollTop)){if(d.animation?.behavior===L){if(L==="instant")return d.scrollTop=d.calculatedTargetScrollTop,T();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 T()}return k>Date.now()?(A=d.calculatedTargetScrollTop,T()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?c({animation:To(i.current,i.current.resize),ignoreEscapes:S,duration:Math.max(0,k-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:T()},[u,l,d]),p=je(()=>{f(!0),u(!1)},[f,u]),m=je(({target:g})=>{if(g!==w.current)return;let{scrollTop:h,ignoreScrollToTop:L}=d,{lastScrollTop:S=h}=d;d.lastScrollTop=h,d.ignoreScrollToTop=void 0,L&&L>h&&(S=L),n(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||h===L)return;if(l()){f(!0),u(!1);return}let k=h>S,A=h<S;if(d.animation?.ignoreEscapes){d.scrollTop=S;return}A&&(f(!0),u(!1)),k&&f(!1),!d.escapedFromLock&&d.isNearBottom&&u(!0)},1)},[f,u,l,d]),C=je(({target:g,deltaY:h})=>{let L=g;for(;!["scroll","auto"].includes(getComputedStyle(L).overflow);){if(!L.parentElement)return;L=L.parentElement}L===w.current&&h<0&&w.current.scrollHeight>w.current.clientHeight&&!d.animation?.ignoreEscapes&&(f(!0),u(!1))},[f,u,d]),w=cs(g=>{w.current?.removeEventListener("scroll",m),w.current?.removeEventListener("wheel",C),g?.addEventListener("scroll",m,{passive:!0}),g?.addEventListener("wheel",C,{passive:!0})},[]),x=cs(g=>{if(d.resizeObserver?.disconnect(),!g)return;let h;d.resizeObserver=new ResizeObserver(([L])=>{let{height:S}=L.contentRect,k=S-(h??S);if(d.resizeDifference=k,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),n(d.isNearBottom),k>=0){let A=To(i.current,h?i.current.resize:i.current.initial);c({animation:A,wait:!0,preserveScrollPosition:!0,duration:A==="instant"?void 0:su})}else d.isNearBottom&&(f(!1),u(!0));h=S,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===k&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(g)},[]);return{contentRef:x,scrollRef:w,scrollToBottom:c,stopScroll:p,isAtBottom:o||s,isNearBottom:s,escapedFromLock:t,state:d}};function cs(e,t){let a=je(o=>(a.current=o,e(o)),t);return a}var ko=new Map;function To(...e){let t={...au},a=!1;for(let r of e){if(r==="instant"){a=!0;continue}typeof r=="object"&&(a=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let o=JSON.stringify(t);return ko.has(o)||ko.set(o,Object.freeze(t)),a?"instant":ko.get(o)}import*as rt from"react";import{createContext as nu,useContext as iu,useEffect as lu,useImperativeHandle as uu,useLayoutEffect as du,useMemo as fu,useRef as cu}from"react";var ms=nu(null),pu=typeof window<"u"?du:lu;function _t({instance:e,children:t,resize:a,initial:o,mass:r,damping:s,stiffness:n,targetScrollTop:i,contextRef:l,...u}){let f=cu(null),d=rt.useCallback((S,k)=>(L?.targetScrollTop??i)?.(S,k)??S,[i]),c=ps({mass:r,damping:s,stiffness:n,resize:a,initial:o,targetScrollTop:d}),{scrollRef:p,contentRef:m,scrollToBottom:C,stopScroll:w,isAtBottom:x,escapedFromLock:g,state:h}=e??c,L=fu(()=>({scrollToBottom:C,stopScroll:w,scrollRef:p,isAtBottom:x,escapedFromLock:g,contentRef:m,state:h,get targetScrollTop(){return f.current},set targetScrollTop(S){f.current=S}}),[C,x,m,p,w,g,h]);return uu(l,()=>L,[L]),pu(()=>{p.current&&getComputedStyle(p.current).overflow==="visible"&&(p.current.style.overflow="auto")},[]),rt.createElement(ms.Provider,{value:L},rt.createElement("div",{...u},typeof t=="function"?t(L):t))}(function(e){function t({children:a,scrollClassName:o,...r}){let s=Po();return rt.createElement("div",{ref:s.scrollRef,style:{height:"100%",width:"100%",scrollbarGutter:"stable both-edges"},className:o},rt.createElement("div",{...r,ref:s.contentRef},typeof a=="function"?a(s):a))}e.Content=t})(_t||(_t={}));function Po(){let e=iu(ms);if(!e)throw new Error("use-stick-to-bottom component context must be used within a StickToBottom component");return e}var mu=Jr({prefix:"ww"});function b(...e){return mu(Kr(e))}import{jsx as hu}from"react/jsx-runtime";var Re=({className:e,variant:t="default",size:a="default",type:o="button",...r})=>hu("button",{type:o,className:b("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 ma}from"react/jsx-runtime";var hs=({className:e,...t})=>ma(_t,{className:b("ww:relative ww:flex-1 ww:overflow-y-hidden",e),initial:"smooth",resize:"smooth",role:"log",...t}),gs=({className:e,...t})=>ma(_t.Content,{className:b("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}),ws=({className:e,...t})=>{let{isAtBottom:a,scrollToBottom:o}=Po(),r=gu(()=>{o()},[o]);return!a&&ma(Re,{className:b("ww:absolute ww:bottom-4 ww:left-[50%] ww:translate-x-[-50%] ww:rounded-full",e),onClick:r,size:"icon",variant:"outline",...t,children:ma(tt,{className:"ww:size-4"})})};import Ls from"crypto";var xs="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var wu=128,st,gt,xu=e=>{!st||st.length<e?(st=Buffer.allocUnsafe(e*wu),Ls.randomFillSync(st),gt=0):gt+e>st.length&&(Ls.randomFillSync(st),gt=0),gt+=e};var Nt=(e=21)=>{xu(e|=0);let t="";for(let a=gt-e;a<gt;a++)t+=xs[st[a]&63];return t};import{createContext as Tu,useCallback as We,useContext as Pu,useEffect as Fo,useMemo as Au,useRef as Bo,useState as ks}from"react";import{createContext as Lu,useContext as Cu,useEffect as Iu,useMemo as Su,useState as ys}from"react";var Cs=["en","fr","es"];function wt(e){return Cs.includes(e)}function Ao(e){if(e&&wt(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&wt(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(wt(o))return o;let r=o.split("-")[0];if(r&&wt(r))return r}return"en"}var ha={promptInput:{placeholder:"What would you like to know?",uploadFiles:"Upload files",stop:"Stop",submit:"Submit",removeAttachments:"Remove all attachments"},workingIndicator:{default:"On it\u2026"},reasoning:{thinking:"Thinking\u2026",thoughtBrief:"Thought for a few seconds",thoughtForSeconds:e=>`Thought for ${e} second${e===1?"":"s"}`},chainOfThought:{working:"Working on it\u2026",done:"Thought process"},tool:{copy:"Copy",copied:"Copied",request:"Request",response:"Response",error:"Error"},attachments:{attachmentFallback:"attachment",fileFallback:"file"},threadMenu:{newChat:"New chat",threadHistory:"Thread history",deleteThread:"Delete thread",noPreviousChats:"No previous chats yet.",hiddenThreads:e=>`${e} older thread${e===1?"":"s"} hidden`},chatQueue:{attachmentFallback:"(attachment)",removeFromQueue:"Remove from queue",queued:e=>`${e} queued`},poweredBy:{label:"AI agent powered by"},aiDisclaimer:{default:"can make mistakes"},exportSession:{saving:"saving...",saved:"saved",error:"error",export:"export",tooltip:"Save scenario to Waniwani"},widgetErrorBoundary:{failedToLoad:"Widget failed to load",retry:"Retry"},launcher:{prompt:"Ask anything\u2026",open:"Open chat",close:"Close chat",minimize:"Minimize"}};var Is={promptInput:{placeholder:"\xBFQu\xE9 te gustar\xEDa saber?",uploadFiles:"Subir archivos",stop:"Detener",submit:"Enviar",removeAttachments:"Eliminar todos los archivos adjuntos"},workingIndicator:{default:"Un momento\u2026"},reasoning:{thinking:"Pensando\u2026",thoughtBrief:"Pensado durante unos segundos",thoughtForSeconds:e=>`Pensado durante ${e} segundo${e===1?"":"s"}`},chainOfThought:{working:"Estoy en ello\u2026",done:"Razonamiento"},tool:{copy:"Copiar",copied:"Copiado",request:"Solicitud",response:"Respuesta",error:"Error"},attachments:{attachmentFallback:"adjunto",fileFallback:"archivo"},threadMenu:{newChat:"Nueva conversaci\xF3n",threadHistory:"Historial",deleteThread:"Eliminar conversaci\xF3n",noPreviousChats:"A\xFAn no hay conversaciones anteriores.",hiddenThreads:e=>`${e} conversaci\xF3n${e===1?"":"es"} anterior${e===1?"":"es"} oculta${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(adjunto)",removeFromQueue:"Quitar de la cola",queued:e=>`${e} en cola`},poweredBy:{label:"Agente IA con tecnolog\xEDa de"},aiDisclaimer:{default:"puede cometer errores"},exportSession:{saving:"guardando...",saved:"guardado",error:"error",export:"exportar",tooltip:"Guardar escenario en Waniwani"},widgetErrorBoundary:{failedToLoad:"No se pudo cargar el widget",retry:"Reintentar"},launcher:{prompt:"Pregunta lo que quieras\u2026",open:"Abrir chat",close:"Cerrar chat",minimize:"Minimizar"}};var Ss={promptInput:{placeholder:"Que souhaitez-vous savoir ?",uploadFiles:"Importer des fichiers",stop:"Arr\xEAter",submit:"Envoyer",removeAttachments:"Supprimer toutes les pi\xE8ces jointes"},workingIndicator:{default:"Un instant\u2026"},reasoning:{thinking:"R\xE9flexion\u2026",thoughtBrief:"R\xE9flexion pendant quelques secondes",thoughtForSeconds:e=>`R\xE9flexion pendant ${e} seconde${e===1?"":"s"}`},chainOfThought:{working:"Je m'en occupe\u2026",done:"Raisonnement"},tool:{copy:"Copier",copied:"Copi\xE9",request:"Requ\xEAte",response:"R\xE9ponse",error:"Erreur"},attachments:{attachmentFallback:"pi\xE8ce jointe",fileFallback:"fichier"},threadMenu:{newChat:"Nouvelle conversation",threadHistory:"Historique",deleteThread:"Supprimer la conversation",noPreviousChats:"Aucune conversation pr\xE9c\xE9dente.",hiddenThreads:e=>`${e} conversation${e===1?"":"s"} plus ancienne${e===1?"":"s"} masqu\xE9e${e===1?"":"s"}`},chatQueue:{attachmentFallback:"(pi\xE8ce jointe)",removeFromQueue:"Retirer de la file",queued:e=>`${e} en attente`},poweredBy:{label:"Agent IA propuls\xE9 par"},aiDisclaimer:{default:"peut faire des erreurs"},exportSession:{saving:"enregistrement...",saved:"enregistr\xE9",error:"erreur",export:"exporter",tooltip:"Enregistrer le sc\xE9nario dans Waniwani"},widgetErrorBoundary:{failedToLoad:"\xC9chec du chargement du widget",retry:"R\xE9essayer"},launcher:{prompt:"Posez votre question\u2026",open:"Ouvrir le chat",close:"Fermer le chat",minimize:"R\xE9duire"}};var vo={en:ha,fr:Ss,es:Is};import{jsx as ku}from"react/jsx-runtime";var bs=Lu(null);function yu(e,t){if(!t)return e;let a={...e};for(let o of Object.keys(e)){let r=e[o],s=t[o];s&&typeof r=="object"&&(a[o]={...r,...s})}return a}function Ro({children:e,locale:t,messages:a}){let o=!!(t&&bu(t)),r=o?t:"en",[s,n]=ys(r),[i,l]=ys(o);Iu(()=>{n(Ao(t)),l(!0)},[t]);let u=Su(()=>{let f=vo[s]??vo["en"];return{locale:s,t:yu(f,a),ready:i}},[s,a,i]);return ku(bs.Provider,{value:u,children:e})}function bu(e){return e==="en"||e==="fr"||e==="es"}function q(){let e=Cu(bs);return e||{locale:"en",t:ha,ready:!0}}function Mo(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 De,jsxs as As}from"react/jsx-runtime";var vu=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(o=>{let r=new FileReader;r.onloadend=()=>o(r.result),r.onerror=()=>o(null),r.readAsDataURL(a)})}catch{return null}},Ts=Tu(null),Ps=()=>{let e=Pu(Ts);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},ga=({className:e,accept:t,multiple:a,globalDrop:o,maxFiles:r,maxFileSize:s,onSubmit:n,children:i,...l})=>{let{t:u}=q(),f=Bo(null),d=Bo(null),[c,p]=ks([]),m=Bo(c);Fo(()=>{m.current=c},[c]);let C=We(()=>{f.current?.click()},[]),w=We(k=>{let A=[...k];if(A.length===0)return;let T=F=>s?F.size<=s:!0,D=A.filter(T);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:Nt(),mediaType:v.type,type:"file",url:URL.createObjectURL(v)}))]})},[r,s]),x=We(k=>{p(A=>{let T=A.find(D=>D.id===k);return T?.url&&URL.revokeObjectURL(T.url),A.filter(D=>D.id!==k)})},[]),g=We(()=>{p(k=>{for(let A of k)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);Fo(()=>()=>{for(let k of m.current)k.url&&URL.revokeObjectURL(k.url)},[]);let h=We(k=>{k.currentTarget.files&&w(k.currentTarget.files),k.currentTarget.value=""},[w]);Fo(()=>{if(!o)return;let k=T=>{T.dataTransfer?.types?.includes("Files")&&T.preventDefault()},A=T=>{T.dataTransfer?.types?.includes("Files")&&T.preventDefault(),T.dataTransfer?.files&&T.dataTransfer.files.length>0&&w(T.dataTransfer.files)};return document.addEventListener("dragover",k),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",k),document.removeEventListener("drop",A)}},[w,o]);let L=We(async k=>{k.preventDefault();let A=k.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 vu(y.url);return{...y,url:v??y.url}}return y}));try{let O=n({files:F,text:D},k);O instanceof Promise&&await O,g()}catch{}},[c,n,g]),S=Au(()=>({add:w,clear:g,files:c,openFileDialog:C,remove:x}),[c,w,x,g,C]);return As(Ts.Provider,{value:S,children:[De("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:h,ref:f,title:u.promptInput.uploadFiles,type:"file"}),De("form",{className:b("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 wa=({onChange:e,onKeyDown:t,className:a,placeholder:o,...r})=>{let{t:s}=q(),n=Ps(),[i,l]=ks(!1),u=o??s.promptInput.placeholder,f=We(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=We(c=>{let p=c.clipboardData?.items;if(!p)return;let m=[];for(let C of p)if(C.kind==="file"){let w=C.getAsFile();w&&m.push(w)}m.length>0&&(c.preventDefault(),n.add(m))},[n]);return De("textarea",{className:b("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})},xa=({className:e,status:t,onStop:a,onClick:o,children:r,...s})=>{let{t:n}=q(),i=t==="submitted"||t==="streaming",l=De(Tt,{className:"ww:size-4"});t==="submitted"?l=De(Ft,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=De(Dt,{className:"ww:size-4"}));let u=We(f=>{if(i&&a){f.preventDefault(),a();return}o?.(f)},[i,a,o]);return De(Re,{"aria-label":i?n.promptInput.stop:n.promptInput.submit,className:b("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})},La=({className:e,children:t,...a})=>{let{t:o}=q(),r=Ps();return r.files.length>0?As(Re,{className:b("ww:group ww:relative",e),onClick:()=>r.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":o.promptInput.removeAttachments,...a,children:[De("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}),De(ot,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):De(Re,{className:b(e),onClick:()=>r.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??De(Bt,{className:"ww:size-4"})})};import{memo as Ru,useCallback as Mu}from"react";import{jsx as Lt}from"react/jsx-runtime";var vs=({className:e,...t})=>Lt("div",{className:b("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),Rs=({className:e,...t})=>Lt("li",{className:b("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}),Ms=({className:e,...t})=>Lt("span",{className:b("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),Fs=({className:e,...t})=>Lt("span",{className:b("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Bs=({className:e,...t})=>Lt("div",{className:b("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Ds=({className:e,...t})=>Lt(Re,{className:b("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 $e,jsxs as _s}from"react/jsx-runtime";var Es=Ru(({message:e,onRemove:t})=>{let{t:a}=q(),o=Mu(()=>t(e.id),[t,e.id]);return _s(Rs,{children:[$e(Ms,{}),$e(Fs,{children:e.text||a.chatQueue.attachmentFallback}),$e(Bs,{children:$e(Ds,{"aria-label":a.chatQueue.removeFromQueue,onClick:o,children:$e(ot,{className:"ww:size-3"})})})]})});Es.displayName="ChatQueueItem";function Ca({queuedMessages:e,onRemove:t,className:a}){let{t:o}=q();return e.length===0?null:_s(vs,{className:b("ww:border-t ww:border-border",a),children:[$e("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:o.chatQueue.queued(e.length)}),$e("ul",{children:e.map(r=>$e(Es,{message:r,onRemove:t},r.id))})]})}import{useState as Ns}from"react";import{jsx as Fu}from"react/jsx-runtime";function Os({messages:e,evalEnabled:t,api:a="/api/waniwani"}){let{t:o}=q(),[r,s]=Ns(!1),[n,i]=Ns(null),l=async()=>{let f={name:`session-${new Date().toISOString().slice(0,19)}`,type:"functional",messages:e,mode:"manual"};s(!0),i(null);try{let d=await fetch(`${a}/scenarios`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)});if(!d.ok)throw new Error(`${d.status}`);i("saved")}catch{i("error")}finally{s(!1),setTimeout(()=>i(null),2e3)}};if(!t||e.length===0)return null;let u=r?o.exportSession.saving:n==="saved"?o.exportSession.saved:n==="error"?o.exportSession.error:o.exportSession.export;return Fu("button",{type:"button",onClick:l,disabled:r,title:o.exportSession.tooltip,className:"ww:ml-auto ww:text-[10px] ww:font-mono ww:uppercase ww:tracking-wider ww:text-muted-foreground hover:ww:text-foreground ww:cursor-pointer ww:transition-colors ww:disabled:opacity-40",children:u})}import{jsx as Ot,jsxs as Du}from"react/jsx-runtime";var Hs=({files:e,className:t,...a})=>e.length===0?null:Ot("div",{className:b("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((o,r)=>Ot(Bu,{file:o},r))});function Bu({file:e}){let{t}=q();return e.mediaType?.startsWith("image/")&&e.url?Ot("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):Du("span",{className:"ww:inline-flex ww:items-center ww:gap-1.5 ww:rounded ww:bg-background/20 ww:px-2 ww:py-1 ww:text-xs",children:[Ot(Rt,{className:"ww:size-3 ww:shrink-0"}),Ot("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as ju,useCallback as $u,useContext as Xu,useEffect as Qu,useMemo as Ku,useState as No}from"react";import{createContext as Ou,memo as _o,useCallback as Hu,useContext as Uu,useEffect as Do,useMemo as qu,useRef as Us,useState as Eo}from"react";import{memo as Eu}from"react";import{jsx as Nu}from"react/jsx-runtime";var _u=({as:e="span",className:t,duration:a=2,style:o,children:r,...s})=>{let n={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...o};return Nu(e,{"data-waniwani-shimmer":"",className:b("ww:inline-block",t),style:n,...s,children:r})},Ee=Eu(_u);Ee.displayName="Shimmer";import{Fragment as Vu,jsx as _e,jsxs as zu}from"react/jsx-runtime";var qs=Ou(null);function Gs(){let e=Uu(qs);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Gu=1e3,Wu=1e3,Ht=_o(({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]=Eo(l),p=f?a:d,m=Hu(A=>{f||c(A),r?.(A)},[f,r]),[C,w]=Eo(void 0),x=s??C,g=Us(t),[h,L]=Eo(!1),S=Us(null);Do(()=>{t?(g.current=!0,S.current===null&&(S.current=Date.now())):S.current!==null&&(w(Math.ceil((Date.now()-S.current)/Wu)),S.current=null)},[t]),Do(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Do(()=>{if(g.current&&!t&&p&&!h){let A=setTimeout(()=>{m(!1),L(!0)},Gu);return()=>clearTimeout(A)}},[t,p,h,m]);let k=qu(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:x}),[t,p,m,x]);return _e(qs.Provider,{value:k,children:_e("div",{className:b("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})})});Ht.displayName="Reasoning";var Ut=_o(({className:e,children:t,getThinkingMessage:a,hideIcon:o=!1,onClick:r,...s})=>{let{t:n}=q(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:f}=Gs(),c=a??((p,m)=>p||m===0?_e(Ee,{duration:1.6,children:n.reasoning.thinking}):m===void 0?_e("span",{children:n.reasoning.thoughtBrief}):_e("span",{children:n.reasoning.thoughtForSeconds(m)}));return _e("button",{type:"button","aria-expanded":l,onClick:p=>{f(!l),r?.(p)},className:b("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...s,children:t??zu(Vu,{children:[!o&&_e(Ge,{className:"ww:size-4 ww:shrink-0"}),c(i,u)]})})});Ut.displayName="ReasoningTrigger";var qt=_o(({className:e,children:t,...a})=>{let{isOpen:o}=Gs();return _e("div",{className:b("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:_e("div",{className:"ww:min-h-0 ww:overflow-hidden",children:_e("div",{className:b("ww:text-sm ww:text-muted-foreground",e),...a,children:_e(kt,{children:t})})})})});qt.displayName="ReasoningContent";import{jsx as J,jsxs as Xe}from"react/jsx-runtime";var Ju=500,Ws=ju(null);function Vs(){let e=Xu(Ws);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function zs({className:e,isWorking:t=!1,activeStep:a,open:o,defaultOpen:r=!1,onOpenChange:s,children:n,...i}){let l=o!==void 0,[u,f]=No(r),d=l?o:u,c=$u(w=>{l||f(w),s?.(w)},[l,s]),[p,m]=No(!t);Qu(()=>{if(t){m(!1);return}let w=setTimeout(()=>m(!0),Ju);return()=>clearTimeout(w)},[t]);let C=Ku(()=>({open:d,setOpen:c,isWorking:t,settled:p,activeStep:a}),[d,c,t,p,a]);return J(Ws.Provider,{value:C,children:J("div",{className:b("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":d?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:n})})}function js({className:e,label:t,workingLabel:a,children:o,...r}){let{open:s,setOpen:n,isWorking:i,settled:l,activeStep:u}=Vs();if(!l){let f=u?.icon,d=u?.label??a??t??"";return J("div",{className:b("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:Xe("span",{className:"ww:flex ww:min-w-0 ww:items-center ww:gap-1.5",style:{animation:"ww-fade-in 0.25s ease-out"},children:[f&&J(f,{className:b("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),J("span",{className:"ww:truncate",children:i?J(Ee,{duration:2.6,children:d}):d})]},d)})}return Xe("button",{type:"button",onClick:()=>n(!s),"aria-expanded":s,className:b("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...r,children:[J("span",{className:"ww:truncate",children:o??t}),J(ze,{className:b("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",s&&"ww:rotate-180")})]})}function $s({className:e,children:t,...a}){let{open:o}=Vs();return J("div",{className:b("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:J("div",{className:"ww:min-h-0 ww:overflow-hidden",children:J("div",{className:b("ww:flex ww:flex-col",e),...a,children:t})})})}function Xs({icon:e,isLast:t,running:a,error:o}){return Xe("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[J("span",{className:"ww:flex ww:h-5 ww:items-center",children:J(e,{className:b("ww:size-4 ww:shrink-0",o?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&J("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Oo({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]=No(!1),c=a??"",p=i?J(Ee,{duration:1.6,children:c}):J("span",{className:"ww:truncate",children:c});return Xe("div",{className:b("ww:flex ww:gap-2",e),...n,children:[J(Xs,{icon:t,isLast:r,running:i,error:l}),Xe("div",{className:b("ww:min-w-0 ww:flex-1",!r&&"ww:pb-3"),children:[u?Xe("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,J(ze,{className:b("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",f&&"ww:rotate-180")})]}):J("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&J("div",{className:b("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:J("div",{className:"ww:min-h-0 ww:overflow-hidden",children:J("div",{className:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:s})})})]})]})}function Qs({isStreaming:e=!1,isLast:t=!1,children:a}){return Xe("div",{className:"ww:flex ww:gap-2",children:[J(Xs,{icon:Ge,isLast:t,running:e}),J("div",{className:b("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:Xe(Ht,{isStreaming:e,className:"ww:mb-0",children:[J(Ut,{hideIcon:!0}),J(qt,{children:a})]})})]})}var ge={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 Oe={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 Te={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 Ks(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function Js(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Zs(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 Ys(e){return Ks(e)?"ambiguous":Js(e)?"fullwidth":e===8361||e>=65377&&e<=65470||e>=65474&&e<=65479||e>=65482&&e<=65487||e>=65490&&e<=65495||e>=65498&&e<=65500||e>=65512&&e<=65518?"halfwidth":e>=32&&e<=126||e===162||e===163||e===165||e===166||e===172||e===175||e>=10214&&e<=10221||e===10629||e===10630?"narrow":Zs(e)?"wide":"neutral"}function Zu(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function en(e){return Zu(e),Ys(e)}var Yu=Object.defineProperty,ed=(e,t,a)=>t in e?Yu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,td=(e,t,a)=>ed(e,typeof t!="symbol"?t+"":t,a);function ad(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function od(e){if(!e||e<4352)return!1;switch(en(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!ad(e);case"narrow":return!1;case"ambiguous":return 917760<=e&&e<=917999?null:!1;case"neutral":return/^\p{sc=Hangul}/u.test(String.fromCodePoint(e))}}function rd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function sd(e){return e!==null&&e>=65024&&e<=65038}var nd=tn(/\p{P}|\p{S}/u),id=tn(/\s/);function tn(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCodePoint(a))}}var Pe;(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})(Pe||(Pe={}));function Qe(e){if(e===ge.eof||ss(e)||id(e))return Oe.characterGroupWhitespace;let t=0;if(e>=4352){if(sd(e))return Pe.nonEmojiGeneralUseVS;switch(od(e)){case null:return Pe.ivs;case!0:t|=Pe.cjk;break}}return nd(e)&&(t|=Oe.characterGroupPunctuation),t}function Ia(e,t,a){if(!ud(e))return e;let o=t(),r=Qe(o);return!o||nt(r)?e:rd(o,a)?Pe.cjkPunctuation:ld(r)}function ld(e){return e&~Pe.ivs}function nt(e){return!!(e&Oe.characterGroupWhitespace)}function Ct(e){return(e&Pe.cjkPunctuation)===Oe.characterGroupPunctuation}function Gt(e){return!!(e&Pe.cjk)}function an(e){return e===Pe.ivs}function on(e){return!!(e&Pe.cjkOrIvs)}function ud(e){return e===Pe.nonEmojiGeneralUseVS}function Ho(e){return!!(e&Pe.spaceOrPunctuation)}function Sa(e){return!!(e&&e>=55296&&e<=56319)}function ya(e){return!!(e&&e>=56320&&e<=57343)}function ba(e,t,a){if(t._bufferIndex<2)return e;let r=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return r&&r>=65536?r:e}function dd(e,t,a){let o=e>=65536?2:1;if(t._bufferIndex<1+o)return null;let r=t._bufferIndex-o-2,s=a({start:{...t,_bufferIndex:r>=0?r:0},end:{...t,_bufferIndex:t._bufferIndex-o}}),n=s.charCodeAt(s.length-1);if(Number.isNaN(n))return null;if(s.length<2||n<56320||57343<n)return n;let i=s.codePointAt(0);return i&&i>=65536?i:n}var ka=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,td(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=dd(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function Ta(e,t,a){let o=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return o&&o>=65536?o:e}var Uo={name:"attention",resolveAll:fd,tokenize:cd};function fd(e,t){let a=-1,o,r,s,n,i,l,u,f;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(o=a;o--;)if(e[o][0]==="exit"&&e[o][1].type==="attentionSequence"&&e[o][1]._open&&t.sliceSerialize(e[o][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[o][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[o][1].end.offset-e[o][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[o][1].end.offset-e[o][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let d={...e[o][1].end},c={...e[a][1].start};rn(d,-l),rn(c,l),n={type:l>1?Te.strongSequence:Te.emphasisSequence,start:d,end:{...e[o][1].end}},i={type:l>1?Te.strongSequence:Te.emphasisSequence,start:{...e[a][1].start},end:c},s={type:l>1?Te.strongText:Te.emphasisText,start:{...e[o][1].end},end:{...e[a][1].start}},r={type:l>1?Te.strong:Te.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=mt(u,[["enter",e[o][1],t],["exit",e[o][1],t]])),u=mt(u,[["enter",r,t],["enter",n,t],["exit",n,t],["enter",s,t]]),t.parser.constructs.insideSpan.null,u=mt(u,fa(t.parser.constructs.insideSpan.null,e.slice(o+1,a),t)),u=mt(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=mt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):f=0,pt(e,o-1,a-o+3,u),a=o+u.length-f-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function cd(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:o,sliceSerialize:r,previous:s}=this,n=ya(s)?ba(s,o(),r):s,i=Qe(n),l=new ka(n,o(),r),u=Ia(i,l.value.bind(l),n),f;return d;function d(p){return p===ge.asterisk||ge.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=Sa(p)?Ta(p,o(),r):p,w=Qe(C);let x=Ct(u),g=x||nt(u),h=Ct(w),L=h||nt(w),S=on(u),k=!L||h&&(g||S)||a.includes(p),A=!g||x&&(L||Gt(w))||a.includes(n);return m._open=!!(f===ge.asterisk?k:k&&(Ho(u)||!A)),m._close=!!(f===ge.asterisk?A:A&&(Ho(w)||!k)),t(p)}}function rn(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function sn(){return{text:{[ge.asterisk]:Uo,[ge.underscore]:Uo},insideSpan:{null:[Uo]}}}function nn(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(sn())}function ln(e){let a=(e||{}).singleTilde,o={name:"strikethrough",tokenize:s,resolveAll:r};return a==null&&(a=!0),{text:{[ge.tilde]:o},insideSpan:{null:[o]},attentionMarkers:{null:[ge.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&&pt(c,c.length,0,fa(p,n.slice(u+1,l),i)),pt(c,c.length,0,[["exit",d,i],["enter",n[l][1],i],["exit",n[l][1],i],["exit",f,i]]),pt(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=Te.data);return n}function s(n,i,l){let{now:u,sliceSerialize:f,previous:d}=this,c=ya(d)?ba(d,u(),f):d,p=Qe(c),m=new ka(c,u(),f),C=Ia(p,m.value.bind(m),c),w=this.events,x=0;return g;function g(L){return ge.tilde,c===ge.tilde&&w[w.length-1][1].type!==Te.characterEscape?l(L):(n.enter("strikethroughSequenceTemporary"),h(L))}function h(L){let S=Qe(c);if(L===ge.tilde)return x>1?l(L):(n.consume(L),x++,h);if(x<2&&!a)return l(L);let k=n.exit("strikethroughSequenceTemporary"),A=Sa(L)?Ta(L,u(),f):L,T=Qe(A),F=Ct(C)||nt(C),y=Ct(T)||nt(T),v=Gt(C)||an(S);return k._open=!y||T===Oe.attentionSideAfter&&(F||v),k._close=!F||S===Oe.attentionSideAfter&&(y||Gt(T)),i(L)}}}function un(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(ln(e))}var pd=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),md=/^(https?:\/\/|mailto:|www\.)/i,hd=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},gd=e=>{let t=0;for(let a of e){if(pd.has(a))return t;t+=a.length}return null},wd=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),xd=e=>({type:"text",value:e}),Ld=()=>e=>{Zr(e,"link",(t,a,o)=>{if(!o||typeof a!="number"||!hd(t)||!md.test(t.url))return;let r=gd(t.url);if(r===null||r===0)return;let s=t.url.slice(0,r),n=t.url.slice(r),i=wd(s,t),l=xd(n);return o.children.splice(a,1,i,l),a+1})};function Cd(){let e=[nn],t=[Ld,un],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var qo=Cd();var oe=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Id(e){return Jo(e)}function Jo(e){return Array.isArray(e)?Sd(e):e instanceof RegExp?e:typeof e=="object"?yd(e):e}function Sd(e){let t=[];for(let a=0,o=e.length;a<o;a++)t[a]=Jo(e[a]);return t}function yd(e){let t={};for(let a in e)t[a]=Jo(e[a]);return t}function xn(e,...t){return t.forEach(a=>{for(let o in a)e[o]=a[o]}),e}function Ln(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?Ln(e.substring(0,e.length-1)):e.substr(~t+1)}var Go=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Pa=class{static hasCaptures(e){return e===null?!1:(Go.lastIndex=0,Go.test(e))}static replaceCaptures(e,t,a){return e.replace(Go,(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 Cn(e,t){return e<t?-1:e>t?1:0}function In(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=Cn(e[r],t[r]);if(s!==0)return s}return 0}return a-o}function dn(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 Sn(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var yn=class{constructor(e){this.fn=e}cache=new Map;get(e){if(this.cache.has(e))return this.cache.get(e);let t=this.fn(e);return this.cache.set(e,t),t}},zt=class{constructor(e,t,a){this._colorMap=e,this._defaults=t,this._root=a}static createFromRawTheme(e,t){return this.createFromParsedTheme(Td(e),t)}static createFromParsedTheme(e,t){return Ad(e,t)}_cachedMatchRoot=new yn(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,o=this._cachedMatchRoot.get(t).find(r=>bd(e.parent,r.parentScopes));return o?new bn(o.fontStyle,o.foreground,o.background):null}},Wo=class Aa{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let o of a)t=new Aa(t,o);return t}static from(...t){let a=null;for(let o=0;o<t.length;o++)a=new Aa(a,t[o]);return a}push(t){return new Aa(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],o=this;for(;o&&o!==t;)a.push(o.scopeName),o=o.parent;return o===t?a.reverse():void 0}};function bd(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let o=t[a],r=!1;if(o===">"){if(a===t.length-1)return!1;o=t[++a],r=!0}for(;e&&!kd(e.scopeName,o);){if(r)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function kd(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var bn=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function Td(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],o=0;for(let r=0,s=t.length;r<s;r++){let n=t[r];if(!n.settings)continue;let i;if(typeof n.scope=="string"){let d=n.scope;d=d.replace(/^[,]+/,""),d=d.replace(/[,]+$/,""),i=d.split(",")}else Array.isArray(n.scope)?i=n.scope:i=[""];let l=-1;if(typeof n.settings.fontStyle=="string"){l=0;let d=n.settings.fontStyle.split(" ");for(let c=0,p=d.length;c<p;c++)switch(d[c]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof n.settings.foreground=="string"&&dn(n.settings.foreground)&&(u=n.settings.foreground);let f=null;typeof n.settings.background=="string"&&dn(n.settings.background)&&(f=n.settings.background);for(let d=0,c=i.length;d<c;d++){let m=i[d].trim().split(" "),C=m[m.length-1],w=null;m.length>1&&(w=m.slice(0,m.length-1),w.reverse()),a[o++]=new Pd(C,w,r,l,u,f)}}return a}var Pd=class{constructor(e,t,a,o,r,s){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=o,this.foreground=r,this.background=s}},we=(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))(we||{});function Ad(e,t){e.sort((l,u)=>{let f=Cn(l.scope,u.scope);return f!==0||(f=In(l.parentScopes,u.parentScopes),f!==0)?f:l.index-u.index});let a=0,o="#000000",r="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(o=l.foreground),l.background!==null&&(r=l.background)}let s=new vd(t),n=new bn(a,s.getId(o),s.getId(r)),i=new Md(new zo(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 zt(s,n,i)}var vd=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(e){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(e)){this._isFrozen=!0;for(let t=0,a=e.length;t<a;t++)this._color2id[e[t]]=t,this._id2color[t]=e[t]}else this._isFrozen=!1}getId(e){if(e===null)return 0;e=e.toUpperCase();let t=this._color2id[e];if(t)return t;if(this._isFrozen)throw new Error(`Missing color in color map - ${e}`);return t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t}getColorMap(){return this._id2color.slice(0)}},Rd=Object.freeze([]),zo=class kn{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,o,r,s){this.scopeDepth=t,this.parentScopes=a||Rd,this.fontStyle=o,this.foreground=r,this.background=s}clone(){return new kn(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let o=0,r=t.length;o<r;o++)a[o]=t[o].clone();return a}acceptOverwrite(t,a,o,r){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),o!==0&&(this.foreground=o),r!==0&&(this.background=r)}},Md=class jo{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(jo._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 jo(this._mainRule.clone(),zo.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(In(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 zo(t,a,o,r,s))}},lt=class Me{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Me.getLanguageId(t),o=Me.getTokenType(t),r=Me.getFontStyle(t),s=Me.getForeground(t),n=Me.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=Me.getLanguageId(t),u=Me.getTokenType(t),f=Me.containsBalancedBrackets(t)?1:0,d=Me.getFontStyle(t),c=Me.getForeground(t),p=Me.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 Ra(e,t){let a=[],o=Fd(e),r=o.next();for(;r!==null;){let l=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=o.next()}let u=n();if(a.push({matcher:u,priority:l}),r!==",")break;r=o.next()}return a;function s(){if(r==="-"){r=o.next();let l=s();return u=>!!l&&!l(u)}if(r==="("){r=o.next();let l=i();return r===")"&&(r=o.next()),l}if(fn(r)){let l=[];do l.push(r),r=o.next();while(fn(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 fn(e){return!!e&&!!e.match(/[\w\.:]+/)}function Fd(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let o=a[0];return a=t.exec(e),o}}}function Tn(e){typeof e.dispose=="function"&&e.dispose()}var jt=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},Bd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Dd=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){let t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},Ed=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new jt(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new Dd;for(let a of e)_d(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof jt){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function _d(e,t,a,o){let r=a.lookup(e.scopeName);if(!r){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let s=a.lookup(t);e instanceof jt?va({baseGrammar:s,selfGrammar:r},o):$o(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 jt(i))}function $o(e,t,a){if(t.repository&&t.repository[e]){let o=t.repository[e];Ma([o],t,a)}}function va(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Ma(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Ma(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Ma(e,t,a){for(let o of e){if(a.visitedRule.has(o))continue;a.visitedRule.add(o);let r=o.repository?xn({},t.repository,o.repository):t.repository;Array.isArray(o.patterns)&&Ma(o.patterns,{...t,repository:r},a);let s=o.include;if(!s)continue;let n=Pn(s);switch(n.kind){case 0:va({...t,selfGrammar:t.baseGrammar},a);break;case 1:va(t,a);break;case 2:$o(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?$o(n.ruleName,l,a):va(l,a)}else n.kind===4?a.add(new Bd(n.scopeName,n.ruleName)):a.add(new jt(n.scopeName));break}}}var Nd=class{kind=0},Od=class{kind=1},Hd=class{constructor(e){this.ruleName=e}kind=2},Ud=class{constructor(e){this.scopeName=e}kind=3},qd=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Pn(e){if(e==="$base")return new Nd;if(e==="$self")return new Od;let t=e.indexOf("#");if(t===-1)return new Ud(e);if(t===0)return new Hd(e.substring(1));{let a=e.substring(0,t),o=e.substring(t+1);return new qd(a,o)}}var Gd=/\\(\d+)/,cn=/\\(\d+)/g;var Wd=-1,An=-2;var Qt=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,o){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=Pa.hasCaptures(this._name),this._contentName=o||null,this._contentNameIsCapturing=Pa.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${Ln(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:Pa.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Pa.replaceCaptures(this._contentName,e,t)}},Vd=class extends Qt{retokenizeCapturedWithRuleId;constructor(e,t,a,o,r){super(e,t,a,o),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,o){throw new Error("Not supported!")}},zd=class extends Qt{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,o,r){super(e,t,a,null),this._match=new $t(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 Xt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},pn=class extends Qt{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 Xt,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Xo=class extends Qt{_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 $t(r,this.id),this.beginCaptures=s,this._end=new $t(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 Xt;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}},Fa=class extends Qt{_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 $t(r,this.id),this.beginCaptures=s,this.whileCaptures=i,this._while=new $t(n,An),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 Xt;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 Xt,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},vn=class Se{static createCaptureRule(t,a,o,r,s){return t.registerRule(n=>new Vd(a,n,o,r,s))}static getCompiledRuleId(t,a,o){return t.id||a.registerRule(r=>{if(t.id=r,t.match)return new zd(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,o));if(typeof t.begin>"u"){t.repository&&(o=xn({},o,t.repository));let s=t.patterns;return typeof s>"u"&&t.include&&(s=[{include:t.include}]),new pn(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(s,a,o))}return t.while?new Fa(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 Xo(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=Pn(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 pn||u instanceof Xo||u instanceof Fa)&&u.hasMissingPatterns&&u.patterns.length===0&&(f=!0),f)continue;r.push(l)}}return{patterns:r,hasMissingPatterns:(t?t.length:0)!==r.length}}},$t=class Rn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let o=t.length,r=0,s=[],n=!1;for(let i=0;i<o;i++)if(t.charAt(i)==="\\"&&i+1<o){let u=t.charAt(i+1);u==="z"?(s.push(t.substring(r,i)),s.push("$(?!\\n)(?<!\\n)"),r=i+2):(u==="A"||u==="G")&&(n=!0),i++}this.hasAnchor=n,r===0?this.source=t:(s.push(t.substring(r,o)),this.source=s.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Gd.test(this.source):this.hasBackReferences=!1}clone(){return new Rn(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 cn.lastIndex=0,this.source.replace(cn,(r,s)=>Sn(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}},Xt=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 mn(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 mn(e,o,this._items.map(r=>r.ruleId))}},mn=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}},Vo=class{constructor(e,t){this.languageId=e,this.tokenType=t}},jd=class Qo{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new Vo(t,8),this._embeddedLanguagesMatcher=new $d(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?Qo._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new Vo(0,0);_getBasicScopeAttributes=new yn(t=>{let a=this._scopeToLanguage(t),o=this._toStandardTokenType(t);return new Vo(a,o)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(Qo.STANDARD_TOKEN_TYPE_REGEXP);if(!a)return 8;switch(a[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},$d=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([a,o])=>Sn(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])}},jx={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},Mn=!1,hn=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function Fn(e,t,a,o,r,s,n,i){let l=t.content.length,u=!1,f=-1;if(n){let p=Xd(e,t,a,o,r,s);r=p.stack,o=p.linePos,a=p.isFirstLine,f=p.anchorPosition}let d=Date.now();for(;!u;){if(i!==0&&Date.now()-d>i)return new hn(r,!0);c()}return new hn(r,!1);function c(){let p=Qd(e,t,a,o,r,f);if(!p){s.produce(r,l),u=!0;return}let m=p.captureIndices,C=p.matchedRuleId,w=m&&m.length>0?m[0].end>o:!1;if(C===Wd){let x=r.getRule(e);s.produce(r,m[0].start),r=r.withContentNameScopesList(r.nameScopesList),Wt(e,t,a,r,s,x.endCaptures,m),s.produce(r,m[0].end);let g=r;if(r=r.parent,f=g.getAnchorPos(),!w&&g.getEnterPos()===o){r=g,s.produce(r,l),u=!0;return}}else{let x=e.getRule(C);s.produce(r,m[0].start);let g=r,h=x.getName(t.content,m),L=r.contentNameScopesList.pushAttributed(h,e);if(r=r.push(C,o,f,m[0].end===l,null,L,L),x instanceof Xo){let S=x;Wt(e,t,a,r,s,S.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=S.getContentName(t.content,m),A=L.pushAttributed(k,e);if(r=r.withContentNameScopesList(A),S.endHasBackReferences&&(r=r.withEndRule(S.getEndWithResolvedBackReferences(t.content,m))),!w&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(x instanceof Fa){let S=x;Wt(e,t,a,r,s,S.beginCaptures,m),s.produce(r,m[0].end),f=m[0].end;let k=S.getContentName(t.content,m),A=L.pushAttributed(k,e);if(r=r.withContentNameScopesList(A),S.whileHasBackReferences&&(r=r.withEndRule(S.getWhileWithResolvedBackReferences(t.content,m))),!w&&g.hasSameRuleAs(r)){r=r.pop(),s.produce(r,l),u=!0;return}}else if(Wt(e,t,a,r,s,x.captures,m),s.produce(r,m[0].end),r=r.pop(),!w){r=r.safePop(),s.produce(r,l),u=!0;return}}m[0].end>o&&(o=m[0].end,a=!1)}}function Xd(e,t,a,o,r,s){let n=r.beginRuleCapturedEOL?0:-1,i=[];for(let l=r;l;l=l.pop()){let u=l.getRule(e);u instanceof Fa&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:f}=Zd(l.rule,e,l.stack.endRule,a,o===n),d=u.findNextMatchSync(t,o,f);if(d){if(d.ruleId!==An){r=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(s.produce(l.stack,d.captureIndices[0].start),Wt(e,t,a,l.stack,s,l.rule.whileCaptures,d.captureIndices),s.produce(l.stack,d.captureIndices[0].end),n=d.captureIndices[0].end,d.captureIndices[0].end>o&&(o=d.captureIndices[0].end,a=!1))}else{r=l.stack.pop();break}}return{stack:r,linePos:o,anchorPosition:n,isFirstLine:a}}function Qd(e,t,a,o,r,s){let n=Kd(e,t,a,o,r,s),i=e.getInjections();if(i.length===0)return n;let l=Jd(i,e,t,a,o,r,s);if(!l)return n;if(!n)return l;let u=n.captureIndices[0].start,f=l.captureIndices[0].start;return f<u||l.priorityMatch&&f===u?l:n}function Kd(e,t,a,o,r,s){let n=r.getRule(e),{ruleScanner:i,findOptions:l}=Bn(n,e,r.endRule,a,o===s),u=i.findNextMatchSync(t,o,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Jd(e,t,a,o,r,s,n){let i=Number.MAX_VALUE,l=null,u,f=0,d=s.contentNameScopesList.getScopeNames();for(let c=0,p=e.length;c<p;c++){let m=e[c];if(!m.matcher(d))continue;let C=t.getRule(m.ruleId),{ruleScanner:w,findOptions:x}=Bn(C,t,null,o,r===n),g=w.findNextMatchSync(a,r,x);if(!g)continue;let h=g.captureIndices[0].start;if(!(h>=i)&&(i=h,l=g.captureIndices,u=g.ruleId,f=m.priority,i===r))break}return l?{priorityMatch:f===-1,captureIndices:l,matchedRuleId:u}:null}function Bn(e,t,a,o,r){if(Mn){let n=e.compile(t,a),i=Dn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileAG(t,a,o,r),findOptions:0}}function Zd(e,t,a,o,r){if(Mn){let n=e.compileWhile(t,a),i=Dn(o,r);return{ruleScanner:n,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,o,r),findOptions:0}}function Dn(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Wt(e,t,a,o,r,s,n){if(s.length===0)return;let i=t.content,l=Math.min(s.length,n.length),u=[],f=n[0].end;for(let d=0;d<l;d++){let c=s[d];if(c===null)continue;let p=n[d];if(p.length===0)continue;if(p.start>f)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?r.produceFromScopes(u[u.length-1].scopes,p.start):r.produce(o,p.start),c.retokenizeCapturedWithRuleId){let C=c.getName(i,n),w=o.contentNameScopesList.pushAttributed(C,e),x=c.getContentName(i,n),g=w.pushAttributed(x,e),h=o.push(c.retokenizeCapturedWithRuleId,p.start,-1,!1,null,w,g),L=e.createOnigString(i.substring(0,p.end));Fn(e,L,a&&p.start===0,p.start,h,r,!1,0),Tn(L);continue}let m=c.getName(i,n);if(m!==null){let w=(u.length>0?u[u.length-1].scopes:o.contentNameScopesList).pushAttributed(m,e);u.push(new Yd(w,p.end))}}for(;u.length>0;)r.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Yd=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function ef(e,t,a,o,r,s,n,i){return new af(e,t,a,o,r,s,n,i)}function gn(e,t,a,o,r){let s=Ra(t,Ba),n=vn.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 Ba(e,t){if(t.length<e.length)return!1;let a=0;return e.every(o=>{for(let r=a;r<t.length;r++)if(tf(t[r],o))return a=r+1,!0;return!1})}function tf(e,t){if(!e)return!1;if(e===t)return!0;let a=t.length;return e.length>a&&e.substr(0,a)===t&&e[a]==="."}var af=class{constructor(e,t,a,o,r,s,n,i){if(this._rootScopeName=e,this.balancedBracketSelectors=s,this._onigLib=i,this._basicScopeAttributesProvider=new jd(a,o),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=n,this._grammar=wn(t,null),this._injections=null,this._tokenTypeMatchers=[],r)for(let l of Object.keys(r)){let u=Ra(l,Ba);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)gn(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&&gn(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]=wn(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=vn.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!t||t===Ko.NULL){r=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),f=this.themeProvider.getDefaults(),d=lt.set(0,u.languageId,u.tokenType,null,f.fontStyle,f.foregroundId,f.backgroundId),c=this.getRule(this._rootId).getName(null,null),p;c?p=Vt.createRootAndLookUpScopeName(c,d,this):p=Vt.createRoot("unknown",d),t=new Ko(null,this._rootId,-1,-1,!1,null,p,p)}else r=!1,t.reset();e=e+`
4
+ `;let s=this.createOnigString(e),n=s.content.length,i=new rf(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=Fn(this,s,r,0,t,i,!0,o);return Tn(s),{lineLength:n,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function wn(e,t){return e=Id(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var Vt=class He{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=Wo.push(r,s.scopeNames),o=new He(o,r,s.encodedTokenAttributes);return o}static createRoot(t,a){return new He(null,new Wo(null,t),a)}static createRootAndLookUpScopeName(t,a,o){let r=o.getMetadataForScope(t),s=new Wo(null,t),n=o.themeProvider.themeMatch(s),i=He.mergeAttributes(a,r,n);return new He(null,s,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return He.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),lt.set(t,a.languageId,a.tokenType,null,r,s,n)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return He._pushAttributed(this,t,a);let o=t.split(/ /g),r=this;for(let s of o)r=He._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=He.mergeAttributes(t.tokenAttributes,r,n);return new He(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}},Ko=class it{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 it(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:it._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Vt.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(){it._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,o,r,s,n,i){return new it(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 it(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=Vt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new it(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,o,Vt.fromExtension(o,a.contentNameScopesList))}},of=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Ra(a,Ba).map(o=>o.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Ra(a,Ba).map(o=>o.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},rf=class{constructor(e,t,a,o){this.balancedBracketSelectors=o,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let o=e?.tokenAttributes??0,r=!1;if(this.balancedBracketSelectors?.matchesAlways&&(r=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let s=e?.getScopeNames()??[];for(let n of this._tokenTypeOverrides)n.matcher(s)&&(o=lt.set(o,0,n.type,null,-1,0,0));this.balancedBracketSelectors&&(r=this.balancedBracketSelectors.match(s))}if(r&&(o=lt.set(o,0,8,r,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===o){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(o),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let o=0,r=this._binaryTokens.length;o<r;o++)a[o]=this._binaryTokens[o];return a}},sf=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,o,r){if(!this._grammars.has(e)){let s=this._rawGrammars.get(e);if(!s)return null;this._grammars.set(e,ef(e,s,t,a,o,r,this,this._onigLib))}return this._grammars.get(e)}},En=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new sf(zt.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(zt.createFromRawTheme(e,t))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(e,t,a){return this.loadGrammarWithConfiguration(e,t,{embeddedLanguages:a})}loadGrammarWithConfiguration(e,t,a){return this._loadGrammar(e,t,a.embeddedLanguages,a.tokenTypes,new of(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,o,r){let s=new Ed(this._syncRegistry,e);for(;s.Q.length>0;)s.Q.map(n=>this._loadSingleGrammar(n.scopeName)),s.processQueue();return this._grammarForScopeName(e,t,a,o,r)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,o=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,o)}_grammarForScopeName(e,t=0,a=null,o=null,r=null){return this._syncRegistry.grammarForScopeName(e,t,a,o,r)}},Da=Ko.NULL;var nf=/["&'<>`]/g,lf=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,uf=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,df=/[|\\{}()[\]^$+*?.]/g,_n=new WeakMap;function Nn(e,t){if(e=e.replace(t.subset?ff(t.subset):nf,o),t.subset||t.escapeOnly)return e;return e.replace(lf,a).replace(uf,o);function a(r,s,n){return t.format((r.charCodeAt(0)-55296)*1024+r.charCodeAt(1)-56320+65536,n.charCodeAt(s+2),t)}function o(r,s,n){return t.format(r.charCodeAt(0),n.charCodeAt(s+1),t)}}function ff(e){let t=_n.get(e);return t||(t=cf(e),_n.set(e,t)),t}function cf(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(df,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var pf=/[\dA-Fa-f]/;function On(e,t,a){let o="&#x"+e.toString(16).toUpperCase();return a&&t&&!pf.test(String.fromCharCode(t))?o:o+";"}var mf=/\d/;function Hn(e,t,a){let o="&#"+String(e);return a&&t&&!mf.test(String.fromCharCode(t))?o:o+";"}var Un=["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 Ea={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 qn=["cent","copy","divide","gt","lt","not","para","times"];var Gn={}.hasOwnProperty,Zo={},_a;for(_a in Ea)Gn.call(Ea,_a)&&(Zo[Ea[_a]]=_a);var hf=/[^\dA-Za-z]/;function Wn(e,t,a,o){let r=String.fromCharCode(e);if(Gn.call(Zo,r)){let s=Zo[r],n="&"+s;return a&&Un.includes(s)&&!qn.includes(s)&&(!o||t&&t!==61&&hf.test(String.fromCharCode(t)))?n:n+";"}return""}function Vn(e,t,a){let o=On(e,t,a.omitOptionalSemicolons),r;if((a.useNamedReferences||a.useShortestReferences)&&(r=Wn(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!r)&&a.useShortestReferences){let s=Hn(e,t,a.omitOptionalSemicolons);s.length<o.length&&(o=s)}return r&&(!a.useShortestReferences||r.length<o.length)?r:o}function Ve(e,t){return Nn(e,Object.assign({format:Vn},t))}var gf=/^>|^->|<!--|-->|--!>|<!-$/g,wf=[">"],xf=["<",">"];function zn(e,t,a,o){return o.settings.bogusComments?"<?"+Ve(e.value,Object.assign({},o.settings.characterReferences,{subset:wf}))+">":"<!--"+e.value.replace(gf,r)+"-->";function r(s){return Ve(s,Object.assign({},o.settings.characterReferences,{subset:xf}))}}function jn(e,t,a,o){return"<!"+(o.settings.upperDoctype?"DOCTYPE":"doctype")+(o.settings.tightDoctype?"":" ")+"html>"}var ne=$n(1),Yo=$n(-1),Lf=[];function $n(e){return t;function t(a,o,r){let s=a?a.children:Lf,n=(o||0)+e,i=s[n];if(!r)for(;i&&ht(i);)n+=e,i=s[n];return i}}var Cf={}.hasOwnProperty;function Na(e){return t;function t(a,o,r){return Cf.call(e,a.tagName)&&e[a.tagName](a,o,r)}}var Kt=Na({body:Sf,caption:er,colgroup:er,dd:Tf,dt:kf,head:er,html:If,li:bf,optgroup:Pf,option:Af,p:yf,rp:Xn,rt:Xn,tbody:Rf,td:Qn,tfoot:Mf,th:Qn,thead:vf,tr:Ff});function er(e,t,a){let o=ne(a,t,!0);return!o||o.type!=="comment"&&!(o.type==="text"&&ht(o.value.charAt(0)))}function If(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function Sf(e,t,a){let o=ne(a,t);return!o||o.type!=="comment"}function yf(e,t,a){let o=ne(a,t);return o?o.type==="element"&&(o.tagName==="address"||o.tagName==="article"||o.tagName==="aside"||o.tagName==="blockquote"||o.tagName==="details"||o.tagName==="div"||o.tagName==="dl"||o.tagName==="fieldset"||o.tagName==="figcaption"||o.tagName==="figure"||o.tagName==="footer"||o.tagName==="form"||o.tagName==="h1"||o.tagName==="h2"||o.tagName==="h3"||o.tagName==="h4"||o.tagName==="h5"||o.tagName==="h6"||o.tagName==="header"||o.tagName==="hgroup"||o.tagName==="hr"||o.tagName==="main"||o.tagName==="menu"||o.tagName==="nav"||o.tagName==="ol"||o.tagName==="p"||o.tagName==="pre"||o.tagName==="section"||o.tagName==="table"||o.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function bf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="li"}function kf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd"))}function Tf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="dt"||o.tagName==="dd")}function Xn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="rp"||o.tagName==="rt")}function Pf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="optgroup"}function Af(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="option"||o.tagName==="optgroup")}function vf(e,t,a){let o=ne(a,t);return!!(o&&o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot"))}function Rf(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="tbody"||o.tagName==="tfoot")}function Mf(e,t,a){return!ne(a,t)}function Ff(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&o.tagName==="tr"}function Qn(e,t,a){let o=ne(a,t);return!o||o.type==="element"&&(o.tagName==="td"||o.tagName==="th")}var Kn=Na({body:Ef,colgroup:_f,head:Df,html:Bf,tbody:Nf});function Bf(e){let t=ne(e,-1);return!t||t.type!=="comment"}function Df(e){let t=new Set;for(let o of e.children)if(o.type==="element"&&(o.tagName==="base"||o.tagName==="title")){if(t.has(o.tagName))return!1;t.add(o.tagName)}let a=e.children[0];return!a||a.type==="element"}function Ef(e){let t=ne(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&ht(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function _f(e,t,a){let o=Yo(a,t),r=ne(e,-1,!0);return a&&o&&o.type==="element"&&o.tagName==="colgroup"&&Kt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Nf(e,t,a){let o=Yo(a,t),r=ne(e,-1);return a&&o&&o.type==="element"&&(o.tagName==="thead"||o.tagName==="tbody")&&Kt(o,a.children.indexOf(o),a)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}var Oa={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 $r,b as Xr,c as Qr,d as Kr,e as Jr,f as ua,g as Zr,h as Yr,i as es,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 Qn(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=ua);let u=Uf(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!Xn(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||!Qt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Uf(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=Hf(e,r,t[r]);s&&a.push(s)}}for(;++o<a.length;){let s=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&s!=='"'&&s!=="'"&&(a[o]+=" ")}return a.join("")}function Hf(e,t,a){let o=Kr(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:Oa.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?Zr:Yr)(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:Oa.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&Co(a,n)>Co(a,e.alternative)&&(n=e.alternative),i=n+qe(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?Oa.single:Oa.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var qf=["<","&"];function Ua(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:qf}))}function Kn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ua(e,t,a,o)}function Jn(e,t,a,o){return o.all(e)}var Zn=es("type",{invalid:Gf,unknown:Wf,handlers:{comment:Wn,doctype:Vn,element:Qn,raw:Kn,root:Jn,text:Ua}});function Gf(e){throw new Error("Expected node, not `"+e+"`")}function Wf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Vf={},zf={},jf=[];function Yo(e,t){let a=t||Vf,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:$f,all:Xf,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||ts,characterReferences:a.characterReferences||zf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?ua:Jr,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function $f(e,t,a){return Zn(e,t,a,this)}function Xf(e){let t=[],a=e&&e.children||jf,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ha(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},o=typeof e=="string"?e:e.name;for(let[r,s]of Object.entries(t?.colorReplacements||{}))typeof s=="string"?a[r]=s:r===o&&Object.assign(a,s);return a}function Xe(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Qf(e){return Array.isArray(e)?e:[e]}async function si(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function sr(e){return!e||["plaintext","txt","text","plain"].includes(e)}function ni(e){return e==="ansi"||sr(e)}function nr(e){return e==="none"}function ii(e){return nr(e)}function li(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let o of a)o&&!e.properties.class.includes(o)&&e.properties.class.push(o);return e}function za(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let s=0;s<a.length;s+=2){let n=t?a[s]+(a[s+1]||""):a[s];r.push([n,o]),o+=a[s].length,o+=a[s+1]?.length||0}return r}function Kf(e){let t=za(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let s=r,n=0;for(let i of t){if(s<i.length)break;s-=i.length,n++}return{line:n,character:s}}function o(r,s){let n=0;for(let i=0;i<r;i++)n+=t[i].length;return n+=s,n}return{lines:t,indexToPos:a,posToIndex:o}}function ui(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 ir="light-dark()",Jf=["color","background-color"];function Zf(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 Yf(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?Zf(r,s):r})):e}function ec(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>qa(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&&Jf.includes(c))if(o===ir&&n.length>1){let m=t.findIndex(g=>g==="light"),C=t.findIndex(g=>g==="dark");if(m===-1||C===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let w=n[m][c]||"inherit",x=n[C][c]||"inherit";l[c]=`light-dark(${w}, ${x})`,r==="css-vars"&&(l[u(d,c)]=p)}else l[c]=p;else r==="css-vars"&&(l[u(d,c)]=p)}}),s.htmlStyle=l,s}function qa(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 ar(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var di=new WeakMap;function ja(e,t){di.set(e,t)}function Jt(e){return di.get(e)}var Ct=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(Qf(a).map(o=>[o,Da])),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 tc(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function tc(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 ac(e,t){if(!(e instanceof Ct))throw new ee("Invalid grammar state");return e.getInternalStack(t)}function oc(){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=Kf(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));rc(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 Yf(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(f=>f.type==="element"&&f.tagName==="span");if(r.length!==o.converter.lines.length)throw new ee(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,c,p){let m=r[f],C="",w=-1,x=-1;if(d===0&&(w=0),c===0&&(x=0),c===Number.POSITIVE_INFINITY&&(x=m.children.length),w===-1||x===-1)for(let h=0;h<m.children.length;h++)C+=fi(m.children[h]),w===-1&&C.length===d&&(w=h+1),x===-1&&C.length===c&&(x=h+1);if(w===-1)throw new ee(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(x===-1)throw new ee(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(w,x);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(w,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,c){let p=d.properties||{},m=d.transform||(C=>C);return f.tagName=d.tagName||"span",f.properties={...f.properties,...p,class:f.properties.class},d.properties?.class&&li(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 rc(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 fi(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(fi).join(""):""}var sc=[oc()];function Ga(e){let t=nc(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...sc]}function nc(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 lt=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],er={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function ic(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 Yn(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 lc(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)er[o]&&t.push({type:"setDecoration",value:er[o]});else if(o<=29){let r=er[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:lt[o-30]}});else if(o===38){let r=Yn(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:lt[o-40]}});else if(o===48){let r=Yn(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:lt[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:lt[o-100+8]}})}return t}function uc(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=ic(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=lc(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 dc={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 fc(e=dc){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<lt.length;u++)o.push(t(lt[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 cc={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 pc(e,t,a){let o=Ha(e,a),r=za(t),s=Object.fromEntries(lt.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||cc[l]]})),n=fc(s),i=uc();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=mc(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 mc(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 lr(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(sr(r)||nr(o))return za(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return pc(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 gc(t,i,s,n,a)}function hc(...e){if(e.length===2)return Jt(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(sr(r)||nr(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 Ct(ur(a,l,n,i,o).stateStack,l.name,n.name)}function gc(e,t,a,o,r){let s=ur(e,t,a,o,r),n=new Ct(s.stateStack,t.name,a.name);return ja(s.tokens,n),s.tokens}function ur(e,t,a,o,r){let s=Ha(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=za(e),u=r.grammarState?ac(r.grammarState,a.name)??Da:r.grammarContextCode!=null?ur(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Da,f=[],d=[];for(let c=0,p=l.length;c<p;c++){let[m,C]=l[c];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:C,color:"",fontStyle:0}]);continue}let w,x,g;r.includeExplanation&&(w=t.tokenizeLine(m,u,i),x=w.tokens,g=0);let h=t.tokenizeLine2(m,u,i),L=h.tokens.length/2;for(let S=0;S<L;S++){let k=h.tokens[2*S],A=S+1<L?h.tokens[2*S+2]:m.length;if(k===A)continue;let P=h.tokens[2*S+1],E=Xe(o[it.getForeground(P)],s),B=it.getFontStyle(P),O={content:m.substring(k,A),offset:C+k,color:E,fontStyle:B};if(r.includeExplanation){let b=[];if(r.includeExplanation!=="scopeName")for(let y of a.settings){let M;switch(typeof y.scope){case"string":M=y.scope.split(/,/).map(X=>X.trim());break;case"object":M=y.scope;break;default:continue}b.push({settings:y,selectors:M.map(X=>X.split(/ /))})}O.explanation=[];let v=0;for(;k+v<A;){let y=x[g],M=m.substring(y.startIndex,y.endIndex);v+=M.length,O.explanation.push({content:M,scopes:r.includeExplanation==="scopeName"?wc(y.scopes):xc(b,y.scopes)}),g+=1}}f.push(O)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function wc(e){return e.map(t=>({scopeName:t}))}function xc(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:Cc(e,s,t.slice(0,o))}}return a}function ei(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function Lc(e,t,a){if(!ei(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)ei(e[o],a[r])&&(o-=1),r-=1;return o===-1}function Cc(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(Lc(n,t,a)){o.push(s);break}return o}function ci(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=lr(e,t,{...a,theme:l.theme}),f=Jt(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=Ic(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let c={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(c.explanation=f.explanation),s.forEach((p,m)=>{let{content:C,explanation:w,offset:x,...g}=p[u][d];c.variants[o[m].color]=g}),c})),i=r[0].state?new Ct(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&ja(n,i),n}function Ic(...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 Wa(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,c=Object.entries(a.themes).filter(x=>x[1]).map(x=>({color:x[0],theme:x[1]})).sort((x,g)=>x.color===u?-1:g.color===u?1:0);if(c.length===0)throw new ee("`themes` option must not be empty");let p=ci(e,t,a);if(l=Jt(p),u&&ir!==u&&!c.find(x=>x.color===u))throw new ee(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(x=>e.getTheme(x.theme)),C=c.map(x=>x.color);s=p.map(x=>x.map(g=>ec(g,C,f,u,d))),l&&ja(s,l);let w=c.map(x=>Ha(x.theme,a));r=ti(c,m,w,f,u,"fg",d),o=ti(c,m,w,f,u,"bg",d),n=`shiki-themes ${m.map(x=>x.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ha(a.theme,a);s=lr(e,t,a);let f=e.getTheme(a.theme);o=Xe(f.bg,u),r=Xe(f.fg,u),n=f.name,l=Jt(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 ti(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===ir&&e.length>1){let d=e.findIndex(C=>C.color==="light"),c=e.findIndex(C=>C.color==="dark");if(d===-1||c===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Xe(t[d][s],a[d])||"inherit",m=Xe(t[c][s],a[c])||"inherit";return`light-dark(${p}, ${m});${f}`}return u}return n==="css-vars"?f:null}).filter(i=>!!i).join(";")}function Va(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Va(e,r,s),codeToTokens:(r,s)=>Wa(e,r,s)}){let r=t;for(let m of Ga(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=Wa(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:c=!1}=a;d===!0?s=yc(s):d==="never"&&(s=bc(s)),c&&(s=kc(s));let p={...o,get source(){return r}};for(let m of Ga(a))s=m.tokens?.call(p,s)||s;return Sc(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,f)}function Sc(e,t,a,o=Jt(e)){let r=Ga(t),s=[],n={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[C,w]of Object.entries(t.meta||{}))C.startsWith("_")||(u[C]=w);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},c=[],p={...a,structure:i,addClassToHast:li,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return c}};if(e.forEach((C,w)=>{w&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
13
- `}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of C){let L={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},S=ar(h.htmlStyle||qa(h));S&&(L.properties.style=S);for(let k of r)L=k?.span?.call(p,L,w+1,g,x,h)||L;i==="inline"?n.children.push(L):i==="classic"&&x.children.push(L),g+=h.content.length}if(i==="classic"){for(let h of r)x=h?.line?.call(p,x,w+1)||x;c.push(x),s.push(x)}else i==="inline"&&c.push(x)}),i==="classic"){for(let C of r)d=C?.code?.call(p,d)||d;f.children.push(d);for(let C of r)f=C?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let C=[],w={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(C.push(w),w={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&w.children.push(h);C.push(w);let g={type:"element",tagName:"code",properties:{},children:C};for(let h of r)g=h?.code?.call(p,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let L=g.children[h];L.type==="element"&&n.children.push(...L.children)}}let m=n;for(let C of r)m=C?.root?.call(p,m)||m;return o&&ja(m,o),m}function yc(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 bc(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 kc(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=ar(r.htmlStyle||qa(r)),n=ar(o.htmlStyle||qa(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 Tc=Yo;function Pc(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Va(e,s,n),codeToTokens:(s,n)=>Wa(e,s,n)},r=Tc(Va(e,t,a,o));for(let s of Ga(a))r=s.postprocess?.call(o,r,a)||r;return r}var ai={light:"#333333",dark:"#bbbbbb"},oi={light:"#fffffe",dark:"#1e1e1e"},ri="__shiki_resolved";function dr(e){if(e?.[ri])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"?ai.light:ai.dark),a||(a=t.type==="light"?oi.light:oi.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,ri,{enumerable:!1,writable:!1,value:!0}),t}async function pi(e){return Array.from(new Set((await Promise.all(e.filter(t=>!ni(t)).map(async t=>await si(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function mi(e){return(await Promise.all(e.map(async a=>ii(a)?null:dr(await si(a))))).filter(a=>!!a)}var tr=3,Ac=!1;function vc(e,t=3){if(tr&&!(typeof tr=="number"&&t>tr)){if(Ac)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var $e=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function hi(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 or=class extends Bn{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=dr(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=Vt.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=hi(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))}},rr=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}},Kt=0;function Rc(e){Kt+=1,e.warnings!==!1&&Kt>=10&&Kt%10===0&&console.warn(`[Shiki] ${Kt} 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(dr),r=new rr(e.engine,a),s=new or(r,o,a,e.langAlias),n;function i(h){return hi(h,e.langAlias)}function l(h){x();let L=s.getGrammar(typeof h=="string"?h:h.name);if(!L)throw new $e(`Language \`${h}\` not found, you may need to load it first`);return L}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();let L=s.getTheme(h);if(!L)throw new $e(`Theme \`${h}\` not found, you may need to load it first`);return L}function f(h){x();let L=u(h);n!==h&&(s.setTheme(L),n=h);let S=s.getColorMap();return{theme:L,colorMap:S}}function d(){return x(),s.getLoadedThemes()}function c(){return x(),s.getLoadedLanguages()}function p(...h){x(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await pi(h))}function C(...h){x();for(let L of h.flat(1))s.loadTheme(L)}async function w(...h){return x(),C(await mi(h))}function x(){if(t)throw new $e("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Kt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:c,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:w,loadThemeSync:C,dispose:g,[Symbol.dispose]:g}}async function Mc(e){e.engine||vc("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([mi(e.themes||[]),pi(e.langs||[]),e.engine]);return Rc({...e,themes:t,langs:a,engine:o})}async function Fc(e){let t=await Mc(e);return{getLastGrammarState:(...a)=>hc(t,...a),codeToTokensBase:(a,o)=>lr(t,a,o),codeToTokensWithThemes:(a,o)=>ci(t,a,o),codeToTokens:(a,o)=>Wa(t,a,o),codeToHast:(a,o)=>Va(t,a,o),codeToHtml:(a,o)=>Pc(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function gi(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,ni(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(ii(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 Fc({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 Bc(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 wi(e,t){let a=Bc(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 fr=[{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"))}],xi=Object.fromEntries(fr.map(e=>[e.id,e.import])),Li=Object.fromEntries(fr.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Zt={...xi,...Li};var Dc=[{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"))}],Ci=Object.fromEntries(Dc.map(e=>[e.id,e.import]));var Yt=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ec(){return 2147483648}function _c(){return typeof performance<"u"?performance.now():Date.now()}var Nc=(e,t)=>e+(t-e%t)%t;async function Oc(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=Ec();if(p>C)return!1;for(let w=1;w<=4;w*=2){let x=m*(1+.2/w);x=Math.min(x,p+100663296);let g=Math.min(C,Nc(Math.max(p,x),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,C=1024){let w=m+C,x=m;for(;p[x]&&!(x>=w);)++x;if(x-m>16&&p.buffer&&l)return l.decode(p.subarray(m,x));let g="";for(;m<x;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let L=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|L);continue}let S=p[m++]&63;if((h&240)===224?h=(h&15)<<12|L<<6|S:h=(h&7)<<18|L<<12|S<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let k=h-65536;g+=String.fromCharCode(55296|k>>10,56320|k&1023)}}return g}function f(p,m){return p?u(o.HEAPU8,p,m):""}let d={emscripten_get_now:_c,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 Uc=Object.defineProperty,Hc=(e,t,a)=>t in e?Uc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,le=(e,t,a)=>Hc(e,typeof t!="symbol"?t+"":t,a),me=null;function qc(e){throw new Yt(e.UTF8ToString(e.getLastOnigError()))}var Xa=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}},Qa=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 Yt("Must invoke loadWasm first.");this._onigBinding=me,this.content=t;let a=new Xa(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(Qa,"LAST_ID",0);le(Qa,"_sharedPtr",0);le(Qa,"_sharedPtrInUse",!1);var Ii=Qa,pr=class{constructor(t){if(le(this,"_onigBinding"),le(this,"_ptr"),!me)throw new Yt("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new Xa(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&&qc(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 Ii(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 Gc(e){return typeof e.instantiator=="function"}function Wc(e){return typeof e.default=="function"}function Vc(e){return typeof e.data<"u"}function zc(e){return typeof Response<"u"&&e instanceof Response}function jc(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 $a;function $c(e){if($a)return $a;async function t(){me=await Oc(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),Gc(o)?o=await o.instantiator(a):Wc(o)?o=await o.default(a):(Vc(o)&&(o=o.data),zc(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await Xc(o)(a):o=await Qc(o)(a):jc(o)?o=await cr(o)(a):o instanceof WebAssembly.Module?o=await cr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await cr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return $a=t(),$a}function cr(e){return t=>WebAssembly.instantiate(e,t)}function Xc(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Qc(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Si(e){return e&&await $c(e),{createScanner(t){return new pr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new Ii(t)}}}var Ka=gi({langs:Zt,themes:Ci,engine:()=>Si(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Kc,codeToHast:Jc,codeToTokens:Zc,codeToTokensBase:Yc,codeToTokensWithThemes:ep,getSingletonHighlighter:tp,getLastGrammarState:ap}=wi(Ka,{guessEmbeddedLanguages:ui});var yi=new Set(Object.keys(Zt)),mr=new Map,hr=new Map,It=new Map,op=(e,t)=>`${e}-${t[0]}-${t[1]}`,rp=(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}`},sp=(e,t)=>{let a=op(e,t);if(mr.has(a))return mr.get(a);let o=Ka({themes:t,langs:[e]});return mr.set(a,o),o};function np(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return yi.has(o)},getSupportedLanguages(){return Array.from(yi)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=rp(o,r,s);return hr.has(i)?hr.get(i):(n&&(It.has(i)||It.set(i,new Set),It.get(i).add(n)),sp(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]}});hr.set(i,f);let d=It.get(i);if(d){for(let c of d)c(f);It.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),It.delete(i)}),null)}}}var bi=np();import{memo as dp}from"react";import{useEffect as ip,useRef as Ja,useState as lp}from"react";var up=5,ki=400;function Ti(e,t,a={}){let{msPerChar:o=up}=a,[r,s]=lp(t?"":e),n=Ja(e),i=Ja(t?0:e.length),l=Ja(0),u=Ja(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),n.current=e,ip(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,s(e);return}if(n.current.length-i.current>ki&&(i.current=n.current.length-ki),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 Za}from"react/jsx-runtime";var gr=({className:e,from:t,children:a,...o})=>Za("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:Za("div",{className:T("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),wr=({children:e,className:t,...a})=>Za("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}),fp={cjk:Uo,code:bi},cp={cjk:Uo},pp={enabled:!1};function mp({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=Ti(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Za(bt,{className:T("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??pp,plugins:a?cp:fp,...r,children:i})}var Ya=dp(mp,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Ya.displayName="MessageResponse";import{createContext as hp,useCallback as gp,useContext as Ri,useEffect as wp,useMemo as Lr,useRef as xp,useState as Cr}from"react";import{Fragment as vi,jsx as Q,jsxs as ut}from"react/jsx-runtime";function Lp(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 Cp({text:e,className:t}){let{t:a}=U(),[o,r]=Cr(!1),s=xp(null);wp(()=>()=>{s.current&&clearTimeout(s.current)},[]);let n=gp(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return Q(Ae,{variant:"ghost",size:"sm",onClick:n,className:T("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:o?ut(vi,{children:[Q(Tt,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copied})]}):ut(vi,{children:[Q(At,{className:"ww:size-3.5"}),Q("span",{children:a.tool.copy})]})})}function Mi({data:e,label:t,className:a,...o}){let[r,s]=Cr(!1),n=Lr(()=>JSON.stringify(e,null,2),[e]),i=Lp(e);return ut("div",{className:T("ww:rounded-lg ww:bg-tool-card",a),...o,children:[ut("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(Cp,{text:n})]}),ut("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(Pt,{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 Ir=hp({open:!1,toggle:()=>{}});function Fi({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=Cr(t);return Q(Ir.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 Bi({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=Ri(Ir),n=a==="input-available"||a==="input-streaming",i=t??"";return ut("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(et,{className:"ww:size-4 ww:shrink-0"}),Q("span",{className:"ww:truncate",children:n?Q(Be,{duration:1.6,children:i}):i}),Q(We,{className:T("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function Di({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 Ei({className:e,children:t,...a}){let{open:o}=Ri(Ir);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 Sr({className:e,input:t,debug:a,...o}){let{t:r}=U(),s=Lr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return Q(Mi,{data:s,label:r.tool.request,className:e,...o})}function xr(e){if(!(typeof e!="object"||e===null))return e}function _i(e){return xr(e?.ui)}function Ni(e){return xr(xr(e)?._meta)}function Pi(e){if(!e)return;let t=_i(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 Ai(e){return _i(e)?.autoHeight===!0}function ea(e,t,a){if(e){let o=Pi(a?.[e]?._meta);if(o)return o}return Pi(Ni(t))}function Oi(e,t,a){return e&&Ai(a?.[e]?._meta)?!0:Ai(Ni(t))}function yr({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=U(),n=Lr(()=>{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?ut("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(Mi,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as Ui,jsxs as Ip}from"react/jsx-runtime";function Hi(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function qi(e){return e.parts.some(Hi)}function Gi(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let o=e[e.length-1];return!o||o.role!=="assistant"?!0:!o.parts.some(s=>!(!Hi(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function Wi({className:e,...t}){let{t:a}=U();return Ip("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:[Ui(Dt,{className:"ww:size-4 ww:shrink-0"}),Ui(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as Sp,useEffect as zi,useMemo as yp,useRef as ye,useState as ji}from"react";function St(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 Vi(e,t){return!St(e)&&!St(t)?null:St(e)?St(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 Dp}from"react/jsx-runtime";var bp="/api/mcp/resource",kp=500,Tp=0,Pp=16,Ap="2026-01-26",vp=300,Rp=3e3,Mp=3;function Fp(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Bp(e,t,a){return ea(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function br({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=bp,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:c=!1,toolDefinitions:p}){let m=ye(null),C=ye(t),w=ye(a),x=ye({width:0,height:0}),g=ye(null),h=ye(!1),L=ye(0),S=ye("inline"),[k,A]=ji(Tp),[P,E]=ji(void 0),B=ye(l),O=ye(u),b=ye(f),v=ye(d),y=ye(r),M=ye(p);C.current=t,w.current=a,B.current=l,O.current=u,b.current=f,v.current=d,y.current=r,M.current=p;let X=Sp(V=>i?Math.max(V+Pp,0):Math.min(Math.max(V,50),kp),[i]),ae=yp(()=>{let V=o.includes("?")?"&":"?";return`${o}${V}uri=${encodeURIComponent(e)}`},[o,e]),oe=ye(s);return oe.current=s,zi(()=>{if(!h.current)return;let V=m.current;V?.contentWindow&&V.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),zi(()=>{let V=m.current;if(!V)return;let re=!1,Le=!1,fe=null,ce=null,Ee=setTimeout(()=>{if(re||Le||L.current>=Mp)return;L.current+=1;let z=new URL(V.src);z.searchParams.set("_retry",String(L.current)),V.src=z.toString()},Rp),_=z=>{V.contentWindow?.postMessage(z,"*")},J=z=>{if(re||z.source!==V.contentWindow)return;let G=z.data;if(!G||typeof G!="object"||G.jsonrpc!=="2.0")return;let Z=G.method,H=G.id;if(Z==="ui/initialize"&&H!=null){Le=!0,clearTimeout(Ee),_({jsonrpc:"2.0",id:H,result:{protocolVersion:G.params?.protocolVersion??Ap,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:oe.current?"dark":"light",displayMode:S.current}}});return}if(Z==="ui/notifications/initialized"){h.current=!0;let j=C.current,$=w.current,R=$._meta&&typeof $._meta=="object"?$._meta:null,F=Fp(y.current),q=R&&typeof R.waniwani=="object"&&R.waniwani!==null?R.waniwani:null,se=q||F?{...q??{},...F?{sessionId:F}:{}}:void 0,Ce=R||se?{...R??{},...se?{waniwani:se}:{}}:void 0;_({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:j}});let Me=$.content??[{type:"text",text:JSON.stringify($)}];_({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Me,structuredContent:$.structuredContent,_meta:Ce,meta:Ce}});return}if(Z==="ui/notifications/size-changed"){let j=G.params,$=typeof j?.height=="number"?j.height:void 0,R=typeof j?.width=="number"?j.width:void 0,F=x.current,q=$!==void 0&&$!==F.height,se=R!==void 0&&R!==F.width;if(!q&&!se)return;if(q&&$!==void 0){F.height=$;let Ce=X($),Me=V.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),A(Ce),V.animate&&Math.abs(Me-Ce)>2){let Ge=V.animate([{height:`${Me}px`},{height:`${Ce}px`}],{duration:vp,easing:"ease-out",fill:"forwards"});g.current=Ge,Ge.onfinish=()=>{g.current===Ge&&(Ge.cancel(),g.current=null)}}}se&&i&&R!==void 0&&(F.width=R,E(R));return}if(Z==="ui/open-link"&&H!=null){let j=G.params?.url;typeof j=="string"&&(B.current?B.current(j):window.open(j,"_blank","noopener,noreferrer")),_({jsonrpc:"2.0",id:H,result:{}});return}if(Z==="ui/message"&&H!=null){if(O.current&&G.params){let j=G.params,$=fe;if(fe=null,ce){clearTimeout(ce.timer);let R=ce.text;ce=null;let F=(j.content??[]).map(q=>q.text??"").join("").trim();j={...j,content:[{type:"text",text:`${F}
12
+ \f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Jn(e,t,a,o){let r=o.schema,s=r.space==="svg"?!1:o.settings.omitOptionalTags,n=r.space==="svg"?o.settings.closeEmptyElements:o.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;r.space==="html"&&e.tagName==="svg"&&(o.schema=da);let u=Of(o,e.properties),f=o.all(r.space==="html"&&e.tagName==="template"?e.content:e);return o.schema=r,f&&(n=!1),(u||!s||!Kn(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||!Kt(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function Of(e,t){let a=[],o=-1,r;if(t){for(r in t)if(t[r]!==null&&t[r]!==void 0){let s=Hf(e,r,t[r]);s&&a.push(s)}}for(;++o<a.length;){let s=e.settings.tightAttributes?a[o].charAt(a[o].length-1):void 0;o!==a.length-1&&s!=='"'&&s!=="'"&&(a[o]+=" ")}return a.join("")}function Hf(e,t,a){let o=Yr(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=Ve(o.attribute,Object.assign({},e.settings.characterReferences,{subset:Oa.name[r][s]}));return a===!0||(a=Array.isArray(a)?(o.commaSeparated?ts:as)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=Ve(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Oa.unquoted[r][s]}))),i!==a&&(e.settings.quoteSmart&&So(a,n)>So(a,e.alternative)&&(n=e.alternative),i=n+Ve(a,Object.assign({},e.settings.characterReferences,{subset:(n==="'"?Oa.single:Oa.double)[r][s],attribute:!0}))+n),l+(i&&"="+i))}var Uf=["<","&"];function Ha(e,t,a,o){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:Ve(e.value,Object.assign({},o.settings.characterReferences,{subset:Uf}))}function Zn(e,t,a,o){return o.settings.allowDangerousHtml?e.value:Ha(e,t,a,o)}function Yn(e,t,a,o){return o.all(e)}var ei=os("type",{invalid:qf,unknown:Gf,handlers:{comment:zn,doctype:jn,element:Jn,raw:Zn,root:Yn,text:Ha}});function qf(e){throw new Error("Expected node, not `"+e+"`")}function Gf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var Wf={},Vf={},zf=[];function tr(e,t){let a=t||Wf,o=a.quote||'"',r=o==='"'?"'":'"';if(o!=='"'&&o!=="'")throw new Error("Invalid quote `"+o+"`, expected `'` or `\"`");return{one:jf,all:$f,settings:{omitOptionalTags:a.omitOptionalTags||!1,allowParseErrors:a.allowParseErrors||!1,allowDangerousCharacters:a.allowDangerousCharacters||!1,quoteSmart:a.quoteSmart||!1,preferUnquoted:a.preferUnquoted||!1,tightAttributes:a.tightAttributes||!1,upperDoctype:a.upperDoctype||!1,tightDoctype:a.tightDoctype||!1,bogusComments:a.bogusComments||!1,tightCommaSeparatedLists:a.tightCommaSeparatedLists||!1,tightSelfClosing:a.tightSelfClosing||!1,collapseEmptyAttributes:a.collapseEmptyAttributes||!1,allowDangerousHtml:a.allowDangerousHtml||!1,voids:a.voids||rs,characterReferences:a.characterReferences||Vf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?da:es,quote:o,alternative:r}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function jf(e,t,a){return ei(e,t,a,this)}function $f(e){let t=[],a=e&&e.children||zf,o=-1;for(;++o<a.length;)t[o]=this.one(a[o],o,e);return t.join("")}function Ua(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 Je(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Xf(e){return Array.isArray(e)?e:[e]}async function ii(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function ir(e){return!e||["plaintext","txt","text","plain"].includes(e)}function li(e){return e==="ansi"||ir(e)}function lr(e){return e==="none"}function ui(e){return lr(e)}function di(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let o of a)o&&!e.properties.class.includes(o)&&e.properties.class.push(o);return e}function za(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),o=0,r=[];for(let s=0;s<a.length;s+=2){let n=t?a[s]+(a[s+1]||""):a[s];r.push([n,o]),o+=a[s].length,o+=a[s+1]?.length||0}return r}function Qf(e){let t=za(e,!0).map(([r])=>r);function a(r){if(r===e.length)return{line:t.length-1,character:t[t.length-1].length};let s=r,n=0;for(let i of t){if(s<i.length)break;s-=i.length,n++}return{line:n,character:s}}function o(r,s){let n=0;for(let i=0;i<r;i++)n+=t[i].length;return n+=s,n}return{lines:t,indexToPos:a,posToIndex:o}}function fi(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 ur="light-dark()",Kf=["color","background-color"];function Jf(e,t){let a=0,o=[];for(let r of t)r>a&&o.push({...e,content:e.content.slice(a,r),offset:e.offset+a}),a=r;return a<e.content.length&&o.push({...e,content:e.content.slice(a),offset:e.offset+a}),o}function Zf(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((o,r)=>o-r);return a.length?e.map(o=>o.flatMap(r=>{let s=a.filter(n=>r.offset<n&&n<r.offset+r.content.length).map(n=>n-r.offset).sort((n,i)=>n-i);return s.length?Jf(r,s):r})):e}function Yf(e,t,a,o,r="css-vars"){let s={content:e.content,explanation:e.explanation,offset:e.offset},n=t.map(f=>qa(e.variants[f])),i=new Set(n.flatMap(f=>Object.keys(f))),l={},u=(f,d)=>{let c=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return a+t[f]+(d==="color"?"":c)};return n.forEach((f,d)=>{for(let c of i){let p=f[c]||"inherit";if(d===0&&o&&Kf.includes(c))if(o===ur&&n.length>1){let m=t.findIndex(g=>g==="light"),C=t.findIndex(g=>g==="dark");if(m===-1||C===-1)throw new oe('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let w=n[m][c]||"inherit",x=n[C][c]||"inherit";l[c]=`light-dark(${w}, ${x})`,r==="css-vars"&&(l[u(d,c)]=p)}else l[c]=p;else r==="css-vars"&&(l[u(d,c)]=p)}}),s.htmlStyle=l,s}function qa(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&we.Italic&&(t["font-style"]="italic"),e.fontStyle&we.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&we.Underline&&a.push("underline"),e.fontStyle&we.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function rr(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ci=new WeakMap;function ja(e,t){ci.set(e,t)}function Zt(e){return ci.get(e)}var It=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,a){return new e(Object.fromEntries(Xf(a).map(o=>[o,Da])),t)}constructor(...t){if(t.length===2){let[a,o]=t;this.lang=o,this._stacks=a}else{let[a,o,r]=t;this.lang=o,this._stacks={[r]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return ec(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function ec(e){let t=[],a=new Set;function o(r){if(a.has(r))return;a.add(r);let s=r?.nameScopesList?.scopeName;s&&t.push(s),r.parent&&o(r.parent)}return o(e),t}function tc(e,t){if(!(e instanceof It))throw new oe("Invalid grammar state");return e.getInternalStack(t)}function ac(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let o=function(n){if(typeof n=="number"){if(n<0||n>a.source.length)throw new oe(`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 oe(`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 oe(`Invalid decoration position ${JSON.stringify(n)}. Line ${n.line} length: ${i.length}`);return{...n,character:l,offset:r.posToIndex(n.line,l)}}},r=Qf(a.source),s=(a.options.decorations||[]).map(n=>({...n,start:o(n.start),end:o(n.end)}));oc(s),e.set(a.meta,{decorations:s,converter:r,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let r=t(this).decorations.flatMap(n=>[n.start.offset,n.end.offset]);return Zf(a,r)},code(a){if(!this.options.decorations?.length)return;let o=t(this),r=Array.from(a.children).filter(f=>f.type==="element"&&f.tagName==="span");if(r.length!==o.converter.lines.length)throw new oe(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${o.converter.lines.length}). Failed to apply decorations.`);function s(f,d,c,p){let m=r[f],C="",w=-1,x=-1;if(d===0&&(w=0),c===0&&(x=0),c===Number.POSITIVE_INFINITY&&(x=m.children.length),w===-1||x===-1)for(let h=0;h<m.children.length;h++)C+=pi(m.children[h]),w===-1&&C.length===d&&(w=h+1),x===-1&&C.length===c&&(x=h+1);if(w===-1)throw new oe(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(x===-1)throw new oe(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let g=m.children.slice(w,x);if(!p.alwaysWrap&&g.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],p,"token");else{let h={type:"element",tagName:"span",properties:{},children:g};i(h,p,"wrapper"),m.children.splice(w,g.length,h)}}function n(f,d){r[f]=i(r[f],d,"line")}function i(f,d,c){let p=d.properties||{},m=d.transform||(C=>C);return f.tagName=d.tagName||"span",f.properties={...f.properties,...p,class:f.properties.class},d.properties?.class&&di(f,d.properties.class),f=m(f,c)||f,f}let l=[],u=o.decorations.sort((f,d)=>d.start.offset-f.start.offset||f.end.offset-d.end.offset);for(let f of u){let{start:d,end:c}=f;if(d.line===c.line)s(d.line,d.character,c.character,f);else if(d.line<c.line){s(d.line,d.character,Number.POSITIVE_INFINITY,f);for(let p=d.line+1;p<c.line;p++)l.unshift(()=>n(p,f));s(c.line,0,c.character,f)}}l.forEach(f=>f())}}}function oc(e){for(let t=0;t<e.length;t++){let a=e[t];if(a.start.offset>a.end.offset)throw new oe(`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 oe(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function pi(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(pi).join(""):""}var rc=[ac()];function Ga(e){let t=sc(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...rc]}function sc(e){let t=[],a=[],o=[];for(let r of e)switch(r.enforce){case"pre":t.push(r);break;case"post":a.push(r);break;default:o.push(r)}return{pre:t,post:a,normal:o}}var ut=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],ar={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function nc(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let o=e.indexOf("m",a);if(o!==-1)return{sequence:e.substring(a+2,o).split(";"),startPosition:a,position:o+1}}return{position:e.length}}function ti(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(o=>Number.parseInt(o));return a.length!==3||a.some(o=>Number.isNaN(o))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function ic(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let o=Number.parseInt(a);if(!Number.isNaN(o))if(o===0)t.push({type:"resetAll"});else if(o<=9)ar[o]&&t.push({type:"setDecoration",value:ar[o]});else if(o<=29){let r=ar[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:ut[o-30]}});else if(o===38){let r=ti(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:ut[o-40]}});else if(o===48){let r=ti(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:ut[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:ut[o-100+8]}})}return t}function lc(){let e=null,t=null,a=new Set;return{parse(o){let r=[],s=0;do{let n=nc(o,s),i=n.sequence?o.substring(s,n.startPosition):o.substring(s);if(i.length>0&&r.push({value:i,foreground:e,background:t,decorations:new Set(a)}),n.sequence){let l=ic(n.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}s=n.position}while(s<o.length);return r}}}var uc={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function dc(e=uc){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let o;function r(){if(o)return o;o=[];for(let u=0;u<ut.length;u++)o.push(t(ut[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let f=0;f<6;f++)for(let d=0;d<6;d++)o.push(a([i[u],i[f],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)o.push(a([l,l,l]));return o}function s(i){return r()[i]}function n(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return s(i.index)}}return{value:n}}var fc={black:"#000000",red:"#cd3131",green:"#0DBC79",yellow:"#E5E510",blue:"#2472C8",magenta:"#BC3FBC",cyan:"#11A8CD",white:"#E5E5E5",brightBlack:"#666666",brightRed:"#F14C4C",brightGreen:"#23D18B",brightYellow:"#F5F543",brightBlue:"#3B8EEA",brightMagenta:"#D670D6",brightCyan:"#29B8DB",brightWhite:"#FFFFFF"};function cc(e,t,a){let o=Ua(e,a),r=za(t),s=Object.fromEntries(ut.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,f=e.colors?.[u];return[l,f||fc[l]]})),n=dc(s),i=lc();return r.map(l=>i.parse(l[0]).map(u=>{let f,d;u.decorations.has("reverse")?(f=u.background?n.value(u.background):e.bg,d=u.foreground?n.value(u.foreground):e.fg):(f=u.foreground?n.value(u.foreground):e.fg,d=u.background?n.value(u.background):void 0),f=Je(f,o),d=Je(d,o),u.decorations.has("dim")&&(f=pc(f));let c=we.None;return u.decorations.has("bold")&&(c|=we.Bold),u.decorations.has("italic")&&(c|=we.Italic),u.decorations.has("underline")&&(c|=we.Underline),u.decorations.has("strikethrough")&&(c|=we.Strikethrough),{content:u.value,offset:l[1],color:f,bgColor:d,fontStyle:c}}))}function pc(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let o=t[1];if(o.length===8){let r=Math.round(Number.parseInt(o.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${o.slice(0,6)}${r}`}else{if(o.length===6)return`#${o}80`;if(o.length===4){let r=o[0],s=o[1],n=o[2],i=o[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${r}${r}${s}${s}${n}${n}${l}`}else if(o.length===3){let r=o[0],s=o[1],n=o[2];return`#${r}${r}${s}${s}${n}${n}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function dr(e,t,a={}){let{theme:o=e.getLoadedThemes()[0]}=a,r=e.resolveLangAlias(a.lang||"text");if(ir(r)||lr(o))return za(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:s,colorMap:n}=e.setTheme(o);if(r==="ansi")return cc(s,t,a);let i=e.getLanguage(a.lang||"text");if(a.grammarState){if(a.grammarState.lang!==i.name)throw new oe(`Grammar state language "${a.grammarState.lang}" does not match highlight language "${i.name}"`);if(!a.grammarState.themes.includes(s.name))throw new oe(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${s.name}"`)}return hc(t,i,s,n,a)}function mc(...e){if(e.length===2)return Zt(e[1]);let[t,a,o={}]=e,{lang:r="text",theme:s=t.getLoadedThemes()[0]}=o;if(ir(r)||lr(s))throw new oe("Plain language does not have grammar state");if(r==="ansi")throw new oe("ANSI language does not have grammar state");let{theme:n,colorMap:i}=t.setTheme(s),l=t.getLanguage(r);return new It(fr(a,l,n,i,o).stateStack,l.name,n.name)}function hc(e,t,a,o,r){let s=fr(e,t,a,o,r),n=new It(s.stateStack,t.name,a.name);return ja(s.tokens,n),s.tokens}function fr(e,t,a,o,r){let s=Ua(a,r),{tokenizeMaxLineLength:n=0,tokenizeTimeLimit:i=500}=r,l=za(e),u=r.grammarState?tc(r.grammarState,a.name)??Da:r.grammarContextCode!=null?fr(r.grammarContextCode,t,a,o,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Da,f=[],d=[];for(let c=0,p=l.length;c<p;c++){let[m,C]=l[c];if(m===""){f=[],d.push([]);continue}if(n>0&&m.length>=n){f=[],d.push([{content:m,offset:C,color:"",fontStyle:0}]);continue}let w,x,g;r.includeExplanation&&(w=t.tokenizeLine(m,u,i),x=w.tokens,g=0);let h=t.tokenizeLine2(m,u,i),L=h.tokens.length/2;for(let S=0;S<L;S++){let k=h.tokens[2*S],A=S+1<L?h.tokens[2*S+2]:m.length;if(k===A)continue;let T=h.tokens[2*S+1],D=Je(o[lt.getForeground(T)],s),F=lt.getFontStyle(T),O={content:m.substring(k,A),offset:C+k,color:D,fontStyle:F};if(r.includeExplanation){let y=[];if(r.includeExplanation!=="scopeName")for(let P of a.settings){let M;switch(typeof P.scope){case"string":M=P.scope.split(/,/).map(_=>_.trim());break;case"object":M=P.scope;break;default:continue}y.push({settings:P,selectors:M.map(_=>_.split(/ /))})}O.explanation=[];let v=0;for(;k+v<A;){let P=x[g],M=m.substring(P.startIndex,P.endIndex);v+=M.length,O.explanation.push({content:M,scopes:r.includeExplanation==="scopeName"?gc(P.scopes):wc(y,P.scopes)}),g+=1}}f.push(O)}d.push(f),f=[],u=h.ruleStack}return{tokens:d,stateStack:u}}function gc(e){return e.map(t=>({scopeName:t}))}function wc(e,t){let a=[];for(let o=0,r=t.length;o<r;o++){let s=t[o];a[o]={scopeName:s,themeMatches:Lc(e,s,t.slice(0,o))}}return a}function ai(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function xc(e,t,a){if(!ai(e[e.length-1],t))return!1;let o=e.length-2,r=a.length-1;for(;o>=0&&r>=0;)ai(e[o],a[r])&&(o-=1),r-=1;return o===-1}function Lc(e,t,a){let o=[];for(let{selectors:r,settings:s}of e)for(let n of r)if(xc(n,t,a)){o.push(s);break}return o}function mi(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=dr(e,t,{...a,theme:l.theme}),f=Zt(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:f,theme:d}}),s=Cc(...r.map(l=>l.tokens)),n=s[0].map((l,u)=>l.map((f,d)=>{let c={content:f.content,variants:{},offset:f.offset};return"includeExplanation"in a&&a.includeExplanation&&(c.explanation=f.explanation),s.forEach((p,m)=>{let{content:C,explanation:w,offset:x,...g}=p[u][d];c.variants[o[m].color]=g}),c})),i=r[0].state?new It(Object.fromEntries(r.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),r[0].state.lang):void 0;return i&&ja(n,i),n}function Cc(...e){let t=e.map(()=>[]),a=e.length;for(let o=0;o<e[0].length;o++){let r=e.map(l=>l[o]),s=t.map(()=>[]);t.forEach((l,u)=>l.push(s[u]));let n=r.map(()=>0),i=r.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let f=i[u];f.content.length===l?(s[u].push(f),n[u]+=1,i[u]=r[u][n[u]]):(s[u].push({...f,content:f.content.slice(0,l)}),i[u]={...f,content:f.content.slice(l),offset:f.offset+l})}}}return t}function Wa(e,t,a){let o,r,s,n,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:f="--shiki-",colorsRendering:d="css-vars"}=a,c=Object.entries(a.themes).filter(x=>x[1]).map(x=>({color:x[0],theme:x[1]})).sort((x,g)=>x.color===u?-1:g.color===u?1:0);if(c.length===0)throw new oe("`themes` option must not be empty");let p=mi(e,t,a);if(l=Zt(p),u&&ur!==u&&!c.find(x=>x.color===u))throw new oe(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=c.map(x=>e.getTheme(x.theme)),C=c.map(x=>x.color);s=p.map(x=>x.map(g=>Yf(g,C,f,u,d))),l&&ja(s,l);let w=c.map(x=>Ua(x.theme,a));r=oi(c,m,w,f,u,"fg",d),o=oi(c,m,w,f,u,"bg",d),n=`shiki-themes ${m.map(x=>x.name).join(" ")}`,i=u?void 0:[r,o].join(";")}else if("theme"in a){let u=Ua(a.theme,a);s=dr(e,t,a);let f=e.getTheme(a.theme);o=Je(f.bg,u),r=Je(f.fg,u),n=f.name,l=Zt(s)}else throw new oe("Invalid options, either `theme` or `themes` must be provided");return{tokens:s,fg:r,bg:o,themeName:n,rootStyle:i,grammarState:l}}function oi(e,t,a,o,r,s,n){return e.map((i,l)=>{let u=Je(t[l][s],a[l])||"inherit",f=`${o+i.color}${s==="bg"?"-bg":""}:${u}`;if(l===0&&r){if(r===ur&&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 oe('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=Je(t[d][s],a[d])||"inherit",m=Je(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 Va(e,t,a,o={meta:{},options:a,codeToHast:(r,s)=>Va(e,r,s),codeToTokens:(r,s)=>Wa(e,r,s)}){let r=t;for(let m of Ga(a))r=m.preprocess?.call(o,r,a)||r;let{tokens:s,fg:n,bg:i,themeName:l,rootStyle:u,grammarState:f}=Wa(e,r,a),{mergeWhitespaces:d=!0,mergeSameStyleTokens:c=!1}=a;d===!0?s=Sc(s):d==="never"&&(s=yc(s)),c&&(s=bc(s));let p={...o,get source(){return r}};for(let m of Ga(a))s=m.tokens?.call(p,s)||s;return Ic(s,{...a,fg:n,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,f)}function Ic(e,t,a,o=Zt(e)){let r=Ga(t),s=[],n={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[C,w]of Object.entries(t.meta||{}))C.startsWith("_")||(u[C]=w);let f={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:s},c=[],p={...a,structure:i,addClassToHast:di,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return n},get pre(){return f},get code(){return d},get lines(){return c}};if(e.forEach((C,w)=>{w&&(i==="inline"?n.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&s.push({type:"text",value:`
13
+ `}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},g=0;for(let h of C){let L={type:"element",tagName:"span",properties:{...h.htmlAttrs},children:[{type:"text",value:h.content}]},S=rr(h.htmlStyle||qa(h));S&&(L.properties.style=S);for(let k of r)L=k?.span?.call(p,L,w+1,g,x,h)||L;i==="inline"?n.children.push(L):i==="classic"&&x.children.push(L),g+=h.content.length}if(i==="classic"){for(let h of r)x=h?.line?.call(p,x,w+1)||x;c.push(x),s.push(x)}else i==="inline"&&c.push(x)}),i==="classic"){for(let C of r)d=C?.code?.call(p,d)||d;f.children.push(d);for(let C of r)f=C?.pre?.call(p,f)||f;n.children.push(f)}else if(i==="inline"){let C=[],w={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let h of n.children)h.type==="element"&&h.tagName==="br"?(C.push(w),w={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(h.type==="element"||h.type==="text")&&w.children.push(h);C.push(w);let g={type:"element",tagName:"code",properties:{},children:C};for(let h of r)g=h?.code?.call(p,g)||g;n.children=[];for(let h=0;h<g.children.length;h++){h>0&&n.children.push({type:"element",tagName:"br",properties:{},children:[]});let L=g.children[h];L.type==="element"&&n.children.push(...L.children)}}let m=n;for(let C of r)m=C?.root?.call(p,m)||m;return o&&ja(m,o),m}function Sc(e){return e.map(t=>{let a=[],o="",r;return t.forEach((s,n)=>{let l=!(s.fontStyle&&(s.fontStyle&we.Underline||s.fontStyle&we.Strikethrough));l&&s.content.match(/^\s+$/)&&t[n+1]?(r===void 0&&(r=s.offset),o+=s.content):o?(l?a.push({...s,offset:r,content:o+s.content}):a.push({content:o,offset:r},s),r=void 0,o=""):a.push(s)}),a})}function yc(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let o=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!o)return a;let[,r,s,n]=o;if(!r&&!n)return a;let i=[{...a,offset:a.offset+r.length,content:s}];return r&&i.unshift({content:r,offset:a.offset}),n&&i.push({content:n,offset:a.offset+r.length+s.length}),i}))}function bc(e){return e.map(t=>{let a=[];for(let o of t){if(a.length===0){a.push({...o});continue}let r=a[a.length-1],s=rr(r.htmlStyle||qa(r)),n=rr(o.htmlStyle||qa(o)),i=r.fontStyle&&(r.fontStyle&we.Underline||r.fontStyle&we.Strikethrough),l=o.fontStyle&&(o.fontStyle&we.Underline||o.fontStyle&we.Strikethrough);!i&&!l&&s===n?r.content+=o.content:a.push({...o})}return a})}var kc=tr;function Tc(e,t,a){let o={meta:{},options:a,codeToHast:(s,n)=>Va(e,s,n),codeToTokens:(s,n)=>Wa(e,s,n)},r=kc(Va(e,t,a,o));for(let s of Ga(a))r=s.postprocess?.call(o,r,a)||r;return r}var ri={light:"#333333",dark:"#bbbbbb"},si={light:"#fffffe",dark:"#1e1e1e"},ni="__shiki_resolved";function cr(e){if(e?.[ni])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"?ri.light:ri.dark),a||(a=t.type==="light"?si.light:si.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,ni,{enumerable:!1,writable:!1,value:!0}),t}async function hi(e){return Array.from(new Set((await Promise.all(e.filter(t=>!li(t)).map(async t=>await ii(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function gi(e){return(await Promise.all(e.map(async a=>ui(a)?null:cr(await ii(a))))).filter(a=>!!a)}var or=3,Pc=!1;function Ac(e,t=3){if(or&&!(typeof or=="number"&&t>or)){if(Pc)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var Ke=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function wi(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 Ke(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var sr=class extends En{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=cr(t);return a.name&&(this._resolvedThemes.set(a.name,a),this._loadedThemesCache=null),a}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let a=this._textmateThemeCache.get(t);a||(a=zt.createFromRawTheme(t),this._textmateThemeCache.set(t,a)),this._syncRegistry.setTheme(a)}getGrammar(t){return t=wi(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 Ke(`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))}},nr=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}},Jt=0;function vc(e){Jt+=1,e.warnings!==!1&&Jt>=10&&Jt%10===0&&console.warn(`[Shiki] ${Jt} 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 Ke("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),o=(e.themes||[]).flat(1).map(cr),r=new nr(e.engine,a),s=new sr(r,o,a,e.langAlias),n;function i(h){return wi(h,e.langAlias)}function l(h){x();let L=s.getGrammar(typeof h=="string"?h:h.name);if(!L)throw new Ke(`Language \`${h}\` not found, you may need to load it first`);return L}function u(h){if(h==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();let L=s.getTheme(h);if(!L)throw new Ke(`Theme \`${h}\` not found, you may need to load it first`);return L}function f(h){x();let L=u(h);n!==h&&(s.setTheme(L),n=h);let S=s.getColorMap();return{theme:L,colorMap:S}}function d(){return x(),s.getLoadedThemes()}function c(){return x(),s.getLoadedLanguages()}function p(...h){x(),s.loadLanguages(h.flat(1))}async function m(...h){return p(await hi(h))}function C(...h){x();for(let L of h.flat(1))s.loadTheme(L)}async function w(...h){return x(),C(await gi(h))}function x(){if(t)throw new Ke("Shiki instance has been disposed")}function g(){t||(t=!0,s.dispose(),Jt-=1)}return{setTheme:f,getTheme:u,getLanguage:l,getLoadedThemes:d,getLoadedLanguages:c,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:w,loadThemeSync:C,dispose:g,[Symbol.dispose]:g}}async function Rc(e){e.engine||Ac("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,o]=await Promise.all([gi(e.themes||[]),hi(e.langs||[]),e.engine]);return vc({...e,themes:t,langs:a,engine:o})}async function Mc(e){let t=await Rc(e);return{getLastGrammarState:(...a)=>mc(t,...a),codeToTokensBase:(a,o)=>dr(t,a,o),codeToTokensWithThemes:(a,o)=>mi(t,a,o),codeToTokens:(a,o)=>Wa(t,a,o),codeToHast:(a,o)=>Va(t,a,o),codeToHtml:(a,o)=>Tc(t,a,o),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function xi(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,li(d))return[];let c=t[d];if(!c)throw new oe(`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(ui(d))return"none";if(typeof d=="string"){let c=a[d];if(!c)throw new oe(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return c}return d}let l=(s.themes??[]).map(d=>i(d)),u=(s.langs??[]).map(d=>n(d)),f=await Mc({engine:s.engine??o(),...s,themes:l,langs:u});return{...f,loadLanguage(...d){return f.loadLanguage(...d.map(n))},loadTheme(...d){return f.loadTheme(...d.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return r}function Fc(e){let t;async function a(o={}){if(t){let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}else{t=e({...o,themes:[],langs:[]});let r=await t;return await Promise.all([r.loadTheme(...o.themes||[]),r.loadLanguage(...o.langs||[])]),r}}return a}function Li(e,t){let a=Fc(e);async function o(r,s){let n=await a({langs:[s.lang],themes:"theme"in s?[s.theme]:Object.values(s.themes)}),i=await t?.guessEmbeddedLanguages?.(r,s.lang,n);return i&&await n.loadLanguage(...i),n}return{getSingletonHighlighter(r){return a(r)},async codeToHtml(r,s){return(await o(r,s)).codeToHtml(r,s)},async codeToHast(r,s){return(await o(r,s)).codeToHast(r,s)},async codeToTokens(r,s){return(await o(r,s)).codeToTokens(r,s)},async codeToTokensBase(r,s){return(await o(r,s)).codeToTokensBase(r,s)},async codeToTokensWithThemes(r,s){return(await o(r,s)).codeToTokensWithThemes(r,s)},async getLastGrammarState(r,s){return(await a({langs:[s.lang],themes:[s.theme]})).getLastGrammarState(r,s)}}}var pr=[{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"))}],Ci=Object.fromEntries(pr.map(e=>[e.id,e.import])),Ii=Object.fromEntries(pr.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),Yt={...Ci,...Ii};var Bc=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-HAPOYWX3.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-R6WAWEBC.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-KMD4YO7F.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-2ATPDILG.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-LJ7PG5AM.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-Z4Y2POK6.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-4TQUIKX4.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-B7YYPERT.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-KX33VXKA.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-LNHXUR7U.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-T2CMBBQ5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-SMFRNKX2.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-DBZHIUAO.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-TDAGYJUK.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-3E25TTAN.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-KCBFVSS5.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-WRCBXEVS.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-ET7SAHAV.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-6FNTZH5H.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-GGTAKNM7.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-LHYKPR5E.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-IQWZCHF7.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-ARPWF4FS.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-ODS6FPID.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-KFA5YFDW.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-MMET4L3Y.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-DBZDERMK.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-FSOMPXNP.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-FAQBCORN.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-JNDVF5RJ.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-S7JK6TQ6.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-QJJIMVEV.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-YFP3EJVX.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-NGDHCPUZ.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-H2BHKUKX.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-VENCGWTB.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-SDMLS22W.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-UHDBRLVF.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-3TB2BEET.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-CQ5WKNT7.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-LZRD4NPR.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-WHRY6275.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-7PNEW2JB.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-GJUYOOJR.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-EVGUMUX2.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-PMTR3SA7.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-O7WH4N5X.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-FBVUW6NJ.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-WBB7GZAD.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-7KAMONOP.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-F2G5IHZD.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-ALZ7XGH2.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-D3K4SWUL.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-YFPJODWS.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-H67AWZOI.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-OUVS63VK.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-2RCAVEXJ.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-XFSENHTC.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-5XXB3K6S.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-CHJCCBJH.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-Y5GIEAN4.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-7TI33KHX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-FOB25MRB.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-4WCNCTCO.js"))}],Si=Object.fromEntries(Bc.map(e=>[e.id,e.import]));var ea=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Dc(){return 2147483648}function Ec(){return typeof performance<"u"?performance.now():Date.now()}var _c=(e,t)=>e+(t-e%t)%t;async function Nc(e){let t,a,o={};function r(p){a=p,o.HEAPU8=new Uint8Array(p),o.HEAPU32=new Uint32Array(p)}function s(p,m,C){o.HEAPU8.copyWithin(p,m,m+C)}function n(p){try{return t.grow(p-a.byteLength+65535>>>16),r(t.buffer),1}catch{}}function i(p){let m=o.HEAPU8.length;p=p>>>0;let C=Dc();if(p>C)return!1;for(let w=1;w<=4;w*=2){let x=m*(1+.2/w);x=Math.min(x,p+100663296);let g=Math.min(C,_c(Math.max(p,x),65536));if(n(g))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,C=1024){let w=m+C,x=m;for(;p[x]&&!(x>=w);)++x;if(x-m>16&&p.buffer&&l)return l.decode(p.subarray(m,x));let g="";for(;m<x;){let h=p[m++];if(!(h&128)){g+=String.fromCharCode(h);continue}let L=p[m++]&63;if((h&224)===192){g+=String.fromCharCode((h&31)<<6|L);continue}let S=p[m++]&63;if((h&240)===224?h=(h&15)<<12|L<<6|S:h=(h&7)<<18|L<<12|S<<6|p[m++]&63,h<65536)g+=String.fromCharCode(h);else{let k=h-65536;g+=String.fromCharCode(55296|k>>10,56320|k&1023)}}return g}function f(p,m){return p?u(o.HEAPU8,p,m):""}let d={emscripten_get_now:Ec,emscripten_memcpy_big:s,emscripten_resize_heap:i,fd_write:()=>0};async function c(){let m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,r(t.buffer),Object.assign(o,m),o.UTF8ToString=f}return await c(),o}var Oc=Object.defineProperty,Hc=(e,t,a)=>t in e?Oc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,de=(e,t,a)=>Hc(e,typeof t!="symbol"?t+"":t,a),me=null;function Uc(e){throw new ea(e.UTF8ToString(e.getLastOnigError()))}var Xa=class e{constructor(t){de(this,"utf16Length"),de(this,"utf8Length"),de(this,"utf16Value"),de(this,"utf8Value"),de(this,"utf16OffsetToUtf8"),de(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}},Qa=class Ue{constructor(t){if(de(this,"id",++Ue.LAST_ID),de(this,"_onigBinding"),de(this,"content"),de(this,"utf16Length"),de(this,"utf8Length"),de(this,"utf16OffsetToUtf8"),de(this,"utf8OffsetToUtf16"),de(this,"ptr"),!me)throw new ea("Must invoke loadWasm first.");this._onigBinding=me,this.content=t;let a=new Xa(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!Ue._sharedPtrInUse?(Ue._sharedPtr||(Ue._sharedPtr=me.omalloc(1e4)),Ue._sharedPtrInUse=!0,me.HEAPU8.set(a.utf8Value,Ue._sharedPtr),this.ptr=Ue._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===Ue._sharedPtr?Ue._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};de(Qa,"LAST_ID",0);de(Qa,"_sharedPtr",0);de(Qa,"_sharedPtrInUse",!1);var yi=Qa,hr=class{constructor(t){if(de(this,"_onigBinding"),de(this,"_ptr"),!me)throw new ea("Must invoke loadWasm first.");let a=[],o=[];for(let i=0,l=t.length;i<l;i++){let u=new Xa(t[i]);a[i]=u.createString(me),o[i]=u.utf8Length}let r=me.omalloc(4*t.length);me.HEAPU32.set(a,r/4);let s=me.omalloc(4*t.length);me.HEAPU32.set(o,s/4);let n=me.createOnigScanner(r,s,t.length);for(let i=0,l=t.length;i<l;i++)me.ofree(a[i]);me.ofree(s),me.ofree(r),n===0&&Uc(me),this._onigBinding=me,this._ptr=n}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,o){let r=0;if(typeof o=="number"&&(r=o),typeof t=="string"){t=new yi(t);let s=this._findNextMatchSync(t,a,!1,r);return t.dispose(),s}return this._findNextMatchSync(t,a,!1,r)}_findNextMatchSync(t,a,o,r){let s=this._onigBinding,n=s.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),r);if(n===0)return null;let i=s.HEAPU32,l=n/4,u=i[l++],f=i[l++],d=[];for(let c=0;c<f;c++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);d[c]={start:p,end:m,length:m-p}}return{index:u,captureIndices:d}}};function qc(e){return typeof e.instantiator=="function"}function Gc(e){return typeof e.default=="function"}function Wc(e){return typeof e.data<"u"}function Vc(e){return typeof Response<"u"&&e instanceof Response}function zc(e){return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&Buffer.isBuffer?.(e)||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}var $a;function jc(e){if($a)return $a;async function t(){me=await Nc(async a=>{let o=e;return o=await o,typeof o=="function"&&(o=await o(a)),typeof o=="function"&&(o=await o(a)),qc(o)?o=await o.instantiator(a):Gc(o)?o=await o.default(a):(Wc(o)&&(o=o.data),Vc(o)?typeof WebAssembly.instantiateStreaming=="function"?o=await $c(o)(a):o=await Xc(o)(a):zc(o)?o=await mr(o)(a):o instanceof WebAssembly.Module?o=await mr(o)(a):"default"in o&&o.default instanceof WebAssembly.Module&&(o=await mr(o.default)(a))),"instance"in o&&(o=o.instance),"exports"in o&&(o=o.exports),o})}return $a=t(),$a}function mr(e){return t=>WebAssembly.instantiate(e,t)}function $c(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Xc(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function bi(e){return e&&await jc(e),{createScanner(t){return new hr(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new yi(t)}}}var Ka=xi({langs:Yt,themes:Si,engine:()=>bi(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Qc,codeToHast:Kc,codeToTokens:Jc,codeToTokensBase:Zc,codeToTokensWithThemes:Yc,getSingletonHighlighter:ep,getLastGrammarState:tp}=Li(Ka,{guessEmbeddedLanguages:fi});var ki=new Set(Object.keys(Yt)),gr=new Map,wr=new Map,St=new Map,ap=(e,t)=>`${e}-${t[0]}-${t[1]}`,op=(e,t,a)=>{let o=e.slice(0,100),r=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${o}:${r}`},rp=(e,t)=>{let a=ap(e,t);if(gr.has(a))return gr.get(a);let o=Ka({themes:t,langs:[e]});return gr.set(a,o),o};function sp(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(o){return ki.has(o)},getSupportedLanguages(){return Array.from(ki)},getThemes(){return a},highlight({code:o,language:r,themes:s},n){let i=op(o,r,s);return wr.has(i)?wr.get(i):(n&&(St.has(i)||St.set(i,new Set),St.get(i).add(n)),rp(r,s).then(l=>{let u=l.getLoadedLanguages().includes(r)?r:"text",f=l.codeToTokens(o,{lang:u,themes:{light:s[0],dark:s[1]}});wr.set(i,f);let d=St.get(i);if(d){for(let c of d)c(f);St.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),St.delete(i)}),null)}}}var Ti=sp();import{memo as up}from"react";import{useEffect as np,useRef as Ja,useState as ip}from"react";var lp=5,Pi=400;function Ai(e,t,a={}){let{msPerChar:o=lp}=a,[r,s]=ip(t?"":e),n=Ja(e),i=Ja(t?0:e.length),l=Ja(0),u=Ja(null);return(e.length<i.current||!e.startsWith(r.slice(0,i.current)))&&(i.current=t?0:e.length),n.current=e,np(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,s(e);return}if(n.current.length-i.current>Pi&&(i.current=n.current.length-Pi),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 Za}from"react/jsx-runtime";var xr=({className:e,from:t,children:a,...o})=>Za("div",{className:b("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:Za("div",{className:b("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),Lr=({children:e,className:t,...a})=>Za("div",{className:b("ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden ww:text-base","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:rounded-lg ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:px-4 ww:group-[.is-user]:py-3 ww:group-[.is-user]:text-primary-foreground","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),dp={cjk:qo,code:Ti},fp={cjk:qo},cp={enabled:!1};function pp({className:e,linkSafety:t,isStreaming:a,children:o,...r}){let n=Ai(typeof o=="string"?o:"",!!a),i=typeof o=="string"?n:o;return Za(kt,{className:b("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??cp,plugins:a?fp:dp,...r,children:i})}var Ya=up(pp,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Ya.displayName="MessageResponse";import{createContext as mp,useCallback as hp,useContext as Fi,useEffect as gp,useMemo as Ir,useRef as wp,useState as Sr}from"react";import{Fragment as Mi,jsx as X,jsxs as dt}from"react/jsx-runtime";function xp(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let o=Object.entries(e),r=[],s=t-2;for(let[n,i]of o){if(s<=8)break;let l=n.length>4?`${n.slice(0,4)}\u2026`:n,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let f=`${l}\u2009${u}`;r.push(f),s-=f.length+3}return`{${r.join(", ")}}`}function Lp({text:e,className:t}){let{t:a}=q(),[o,r]=Sr(!1),s=wp(null);gp(()=>()=>{s.current&&clearTimeout(s.current)},[]);let n=hp(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),r(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>r(!1),2e3)}catch{}},[e]);return X(Re,{variant:"ghost",size:"sm",onClick:n,className:b("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?dt(Mi,{children:[X(Pt,{className:"ww:size-3.5"}),X("span",{children:a.tool.copied})]}):dt(Mi,{children:[X(vt,{className:"ww:size-3.5"}),X("span",{children:a.tool.copy})]})})}function Bi({data:e,label:t,className:a,...o}){let[r,s]=Sr(!1),n=Ir(()=>JSON.stringify(e,null,2),[e]),i=xp(e);return dt("div",{className:b("ww:rounded-lg ww:bg-tool-card",a),...o,children:[dt("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[X("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),X(Lp,{text:n})]}),dt("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:[X(At,{className:b("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?X("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:X("code",{children:n})}):X("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var yr=mp({open:!1,toggle:()=>{}});function Di({className:e,defaultOpen:t=!1,children:a,...o}){let[r,s]=Sr(t);return X(yr.Provider,{value:{open:r,toggle:()=>s(n=>!n)},children:X("div",{className:b("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 Ei({className:e,title:t,state:a,...o}){let{open:r,toggle:s}=Fi(yr),n=a==="input-available"||a==="input-streaming",i=t??"";return dt("button",{type:"button",onClick:s,className:b("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:[X(at,{className:"ww:size-4 ww:shrink-0"}),X("span",{className:"ww:truncate",children:n?X(Ee,{duration:1.6,children:i}):i}),X(ze,{className:b("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",r&&"ww:rotate-180")})]})}function _i({className:e,title:t,state:a,...o}){let r=a==="input-available"||a==="input-streaming",s=t??"";return X("div",{className:b("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:X("span",{className:"ww:truncate",children:r?X(Ee,{duration:1.6,children:s}):s})})}function Ni({className:e,children:t,...a}){let{open:o}=Fi(yr);return X("div",{className:b("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:X("div",{className:"ww:min-h-0 ww:overflow-hidden",children:X("div",{className:b("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 br({className:e,input:t,debug:a,...o}){let{t:r}=q(),s=Ir(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:n,...i}=t;return i}return t},[t,a]);return X(Bi,{data:s,label:r.tool.request,className:e,...o})}function Cr(e){if(!(typeof e!="object"||e===null))return e}function Oi(e){return Cr(e?.ui)}function Hi(e){return Cr(Cr(e)?._meta)}function vi(e){if(!e)return;let t=Oi(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 Ri(e){return Oi(e)?.autoHeight===!0}function ta(e,t,a){if(e){let o=vi(a?.[e]?._meta);if(o)return o}return vi(Hi(t))}function Ui(e,t,a){return e&&Ri(a?.[e]?._meta)?!0:Ri(Hi(t))}function kr({className:e,output:t,errorText:a,debug:o,...r}){let{t:s}=q(),n=Ir(()=>{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?dt("div",{className:b("ww:space-y-2",e),...r,children:[X("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:s.tool.error}),X("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):X(Bi,{data:n,label:s.tool.response,className:e,...r}):null}import{jsx as qi,jsxs as Cp}from"react/jsx-runtime";function Gi(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Wi(e){return e.parts.some(Gi)}function Vi(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=>!(!Gi(s)||a?.ignoreToolParts&&"toolCallId"in s||a?.ignoreReasoningParts&&s.type==="reasoning"))}function zi({className:e,...t}){let{t:a}=q();return Cp("div",{"aria-live":"polite",className:b("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:[qi(Et,{className:"ww:size-4 ww:shrink-0"}),qi(Ee,{duration:1.6,children:a.workingIndicator.default})]})}import{useCallback as Ip,useEffect as Tr,useMemo as Sp,useRef as ye,useState as $i}from"react";function yt(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 ji(e,t){return!yt(e)&&!yt(t)?null:yt(e)?yt(t)?{...e.content||t.content?{content:[...e.content??[],...t.content??[]]}:{},...e.structuredContent||t.structuredContent?{structuredContent:{...e.structuredContent??{},...t.structuredContent??{}}}:{}}:{...e.content?{content:[...e.content]}:{},...e.structuredContent?{structuredContent:{...e.structuredContent}}:{}}:{...t?.content?{content:[...t.content]}:{},...t?.structuredContent?{structuredContent:{...t.structuredContent}}:{}}}import{jsx as Bp}from"react/jsx-runtime";var yp="/api/mcp/resource",bp=500,kp=0,Tp=16,Pp="2026-01-26",Ap=300,vp=3e3,Rp=3;function Mp(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function Fp(e,t,a){return ta(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Pr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:o=yp,chatSessionId:r,isDark:s=!1,className:n,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:f,onDisplayModeChange:d,isFullscreen:c=!1,toolDefinitions:p}){let m=ye(null),C=ye(t),w=ye(a),x=ye({width:0,height:0}),g=ye(null),h=ye(!1),L=ye(0),S=ye("inline"),[k,A]=$i(kp),[T,D]=$i(void 0),F=ye(l),O=ye(u),y=ye(f),v=ye(d),P=ye(r),M=ye(p);C.current=t,w.current=a,F.current=l,O.current=u,y.current=f,v.current=d,P.current=r,M.current=p;let _=Ip(H=>i?Math.max(H+Tp,0):Math.min(Math.max(H,50),bp),[i]),ae=Sp(()=>{let H=o.includes("?")?"&":"?";return`${o}${H}uri=${encodeURIComponent(e)}`},[o,e]),Y=ye(s);Y.current=s;let be=ye(c);return Tr(()=>{be.current=c,x.current.height=-1,g.current&&(g.current.cancel(),g.current=null)},[c]),Tr(()=>{if(!h.current)return;let H=m.current;H?.contentWindow&&H.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:s?"dark":"light"}},"*")},[s]),Tr(()=>{let H=m.current;if(!H)return;let se=!1,he=!1,ke=null,le=null,W=setTimeout(()=>{if(se||he||L.current>=Rp)return;L.current+=1;let ee=new URL(H.src);ee.searchParams.set("_retry",String(L.current)),H.src=ee.toString()},vp),V=ee=>{H.contentWindow?.postMessage(ee,"*")},ie=ee=>{if(se||ee.source!==H.contentWindow)return;let G=ee.data;if(!G||typeof G!="object"||G.jsonrpc!=="2.0")return;let Q=G.method,te=G.id;if(Q==="ui/initialize"&&te!=null){he=!0,clearTimeout(W),V({jsonrpc:"2.0",id:te,result:{protocolVersion:G.params?.protocolVersion??Pp,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:Y.current?"dark":"light",displayMode:S.current}}});return}if(Q==="ui/notifications/initialized"){h.current=!0;let j=C.current,$=w.current,U=$._meta&&typeof $._meta=="object"?$._meta:null,R=Mp(P.current),B=U&&typeof U.waniwani=="object"&&U.waniwani!==null?U.waniwani:null,K=B||R?{...B??{},...R?{sessionId:R}:{}}:void 0,Ce=U||K?{...U??{},...K?{waniwani:K}:{}}:void 0;V({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:j}});let Ne=$.content??[{type:"text",text:JSON.stringify($)}];V({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Ne,structuredContent:$.structuredContent,_meta:Ce,meta:Ce}});return}if(Q==="ui/notifications/size-changed"){let j=G.params,$=typeof j?.height=="number"?j.height:void 0,U=typeof j?.width=="number"?j.width:void 0,R=x.current,B=$!==void 0&&$!==R.height,K=U!==void 0&&U!==R.width;if(!B&&!K)return;if(B&&$!==void 0){if(R.height=$,be.current)return;let Ce=_($),Ne=H.getBoundingClientRect().height;if(g.current&&(g.current.cancel(),g.current=null),A(Ce),H.animate&&Math.abs(Ne-Ce)>2){let Be=H.animate([{height:`${Ne}px`},{height:`${Ce}px`}],{duration:Ap,easing:"ease-out",fill:"forwards"});g.current=Be,Be.onfinish=()=>{g.current===Be&&(Be.cancel(),g.current=null)}}}K&&i&&U!==void 0&&(R.width=U,D(U));return}if(Q==="ui/open-link"&&te!=null){let j=G.params?.url;typeof j=="string"&&(F.current?F.current(j):window.open(j,"_blank","noopener,noreferrer")),V({jsonrpc:"2.0",id:te,result:{}});return}if(Q==="ui/message"&&te!=null){if(O.current&&G.params){let j=G.params,$=ke;if(ke=null,le){clearTimeout(le.timer);let U=le.text;le=null;let R=(j.content??[]).map(B=>B.text??"").join("").trim();j={...j,content:[{type:"text",text:`${R}
14
14
 
15
- ${R}`}]}}O.current({...j,...$?{modelContext:$}:{}})}_({jsonrpc:"2.0",id:H,result:{}});return}if(Z==="ui/update-model-context"&&H!=null){fe=Vi(fe,G.params),_({jsonrpc:"2.0",id:H,result:{}});return}if(Z==="tools/call"&&H!=null){let j=b.current;if(!j){_({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=>{_({jsonrpc:"2.0",id:H,result:R});let F=R.content?.map(q=>q.text??"").join("").trim();F&&Bp($,R,M.current)&&(ce&&clearTimeout(ce.timer),ce={text:F,timer:setTimeout(()=>{if(re)return;let q=fe;fe=null,ce=null,O.current?.({role:"user",content:[{type:"text",text:F}],...q?{modelContext:q}:{}})},500)})}).catch(R=>{let F=R instanceof Error?R.message:"Tool call failed";_({jsonrpc:"2.0",id:H,error:{code:-32e3,message:F}})});return}if(Z==="ui/request-display-mode"&&H!=null){let j=G.params?.mode,$=j==="fullscreen"||j==="inline"||j==="pip"?j:"inline";S.current=$,_({jsonrpc:"2.0",id:H,result:{mode:$}}),_({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),v.current?.($);return}if(Z==="ui/resource-teardown"&&H!=null){_({jsonrpc:"2.0",id:H,result:{}});return}Z==="ping"&&H!=null&&_({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]),Dp("iframe",{ref:m,src:ae,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:T(!c&&"ww:rounded-md ww:border ww:border-border",n),style:{height:c?"100%":k,minWidth:c||!P?void 0:`min(${P}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as ta,jsxs as Ep}from"react/jsx-runtime";function $i({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Ep("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&&ta("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}),ta("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&ta("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&ta("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)=>ta("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 _p}from"react";import{jsx as kr,jsxs as Op}from"react/jsx-runtime";function Np({onRetry:e}){let{t}=U();return Op("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:[kr("span",{children:t.widgetErrorBoundary.failedToLoad}),kr("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var eo=class extends _p{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?kr(Np,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Hp,jsx as K,jsxs as Qe}from"react/jsx-runtime";function Xi(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Up(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Rt:et}function to({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}=U(),w=e[e.length-1],x=e.length>0,g=d!=null,h=!g&&Gi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return Qe(Hp,{children:[!g&&(!x&&o?K($i,{...o,onSuggestionSelect:r}):a&&K(gr,{from:"assistant",children:K(wr,{children:K(Ya,{children:a})})})),e.map(L=>{let S=L.parts.filter(y=>y.type==="text"),k=L.parts.filter(y=>y.type==="reasoning"),A=L.parts.filter(y=>y.type==="file"),P=L.parts.filter(y=>"toolCallId"in y),E=L.parts.filter(y=>y.type==="reasoning"||"toolCallId"in y),B=L===w&&L.role==="assistant",O=S.length>0,b=g?P.some(y=>y.toolCallId===d):!1,v=p!==!1&&!b&&E.length>=2;return g&&!b?K("div",{style:{display:"none"}},L.id):L.role==="assistant"&&!qi(L)?K("div",{style:{display:"none"}},L.id):p===!1&&L.role==="assistant"&&!O&&A.length===0&&P.every(y=>{let M="output"in y?y.output:void 0;return M===void 0||!s||!ea(y.toolName,M,m)})?K("div",{style:{display:"none"}},L.id):Qe(gr,{from:L.role,children:[p!==!1&&!b&&!v&&k.map((y,M)=>Qe(Ot,{isStreaming:y.state==="streaming",children:[K(Ut,{}),K(Ht,{children:y.text})]},`reasoning-${L.id}-${M}`)),v&&Qe(Ws,{isWorking:B&&(t==="streaming"||t==="submitted"),children:[K(Vs,{workingLabel:C.chainOfThought.working,label:C.chainOfThought.done}),K(zs,{children:E.map((y,M)=>{let X=M===E.length-1;if(y.type==="reasoning")return K($s,{isStreaming:y.state==="streaming",isLast:X,children:y.text},`reasoning-${L.id}-${M}`);let ae=y.title??Xi(y.toolName),oe=Up(y.toolName);if(p==="titles-only")return K(_o,{icon:oe,title:ae,state:y.state,isLast:X},y.toolCallId);let V="output"in y?y.output:void 0;return Qe(_o,{icon:oe,title:ae,state:y.state,isLast:X,children:[K(Sr,{input:y.input,debug:c}),V!==void 0&&K(yr,{output:V,errorText:"errorText"in y?y.errorText:void 0,debug:c})]},y.toolCallId)})})]}),p!==!1&&!b&&!v&&P.length===1&&(()=>{let y=P[0],M=y.title??Xi(y.toolName);if(p==="titles-only")return K(Di,{title:M,state:y.state});let X="output"in y?y.output:void 0;return Qe(Fi,{children:[K(Bi,{title:M,state:y.state}),Qe(Ei,{children:[K(Sr,{input:y.input,debug:c}),X!==void 0&&K(yr,{output:X,errorText:"errorText"in y?y.errorText:void 0,debug:c})]})]})})(),P.map(y=>{let M="output"in y?y.output:void 0,X=ea(y.toolName,M,m),ae=Oi(y.toolName,M,m),oe=y.toolCallId===d;return X&&s&&M!==void 0?K("div",{style:oe?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:X&&s&&M!==void 0&&K(eo,{children:K(br,{isFullscreen:oe,resourceUri:X,toolInput:y.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},resourceEndpoint:s,chatSessionId:n,isDark:i,autoHeight:ae,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:f?V=>f(V,{toolCallId:y.toolCallId,resourceUri:X,toolInput:y.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},autoHeight:ae}):void 0})})},y.toolCallId):null}),!b&&K("div",{children:Qe(wr,{children:[A.length>0&&K(_s,{files:A}),O?S.map((y,M)=>{let X=B&&t==="streaming"&&M===S.length-1;return K(Ya,{isStreaming:X,children:y.type==="text"?y.text:""},`${L.id}-${M}`)}):null]})})]},L.id)}),h&&K(Wi,{})]})}import{jsx as Qi,jsxs as Wp}from"react/jsx-runtime";var qp="https://app.waniwani.ai/assets/waniwani-logo.svg",Gp="https://waniwani.ai";function ao(){let{t:e}=U();return Wp("a",{href:Gp,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Qi("span",{children:e.poweredBy.label}),Qi("img",{src:qp,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as oo}from"react/jsx-runtime";function ro({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:oo("div",{className:T("ww:px-4 ww:py-2",o),...r,children:oo("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=>oo("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+s*20}px`}},s)):e.map((s,n)=>oo("button",{type:"button",onClick:()=>a(s),className:T("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3.5 ww:py-1.5 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{useEffect as Vp,useRef as zp,useState as jp}from"react";import{jsx as te,jsxs as dt}from"react/jsx-runtime";var Ki=20;function $p({label:e}){return dt("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 Xp({label:e}){return dt("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 Qp({label:e}){return dt("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 so({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=U(),[i,l]=jp(!1),u=zp(null);Vp(()=>{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,Ki),d=Math.max(0,e.length-Ki);return dt("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($p,{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(Xp,{label:n.threadMenu.threadHistory})}),i&&dt("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 dt("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:[dt("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)?"":vo(m,s)})]}),te("button",{type:"button",onClick:C=>{C.stopPropagation(),r(c.threadId)},title:n.threadMenu.deleteThread,"aria-label":n.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:te(Qp,{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 Kp,useRef as Jp}from"react";function no(e){let t=Jp(e);return t.current=e,Kp(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 mm}from"@ai-sdk/react";import{useCallback as we,useEffect as Re,useRef as ue,useState as ft}from"react";function Ke(e,t,a){let[o,r=""]=e.split("?"),s=o.replace(/\/$/,""),n=new URLSearchParams(r);if(a)for(let[l,u]of Object.entries(a))n.set(l,u);let i=n.toString();return`${s}${t}${i?`?${i}`:""}`}import{DefaultChatTransport as Zp,uiMessageChunkSchema as Yp}from"ai";function em(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 io=class extends Zp{processResponseStream(t){let a="",o=Yp(),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=em(c.error);if(p?.length){let m={...d};for(let w of p)delete m[w];let C=await r(m);C.success&&n.enqueue(C.value)}}catch{}}}}))}};var tm="waniwani-memory";var Te="threads",lo="by_memoryUserId",am="by_updatedAt";var Zi="memoryUserId",Ji="waniwani-memory-user-id",Tr=null;function Pr(){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 om(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(lo,"memoryUserId",{unique:!1}),a.createIndex(am,"updatedAt",{unique:!1})}}async function Ar(){return new Promise((e,t)=>{let a=indexedDB.open(tm,2);a.onupgradeneeded=o=>{om(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function rm(){return Ar()}async function sm(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(Zi);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function nm(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,Zi);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function im(){if(typeof indexedDB>"u")return null;try{let e=await rm();try{let t=await sm(e);if(t)return t;let a=Pr();return await nm(e,a),a}finally{e.close()}}catch{return null}}function lm(){try{let e=localStorage.getItem(Ji);if(e)return e;let t=Pr();return localStorage.setItem(Ji,t),t}catch{return null}}async function Yi(){let e=await im();if(e)return e;let t=lm();return t||(Tr||(Tr=Pr()),Tr)}var el=50,tl=1e3;function uo(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 fo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Ar(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function vr(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function Rr(e){return await fo(async a=>{let s=a.transaction(Te,"readonly").objectStore(Te).index(lo),i=(await vr(s.getAll(e))??[]).filter(uo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function co(e){return await fo(async a=>{let r=a.transaction(Te,"readonly").objectStore(Te),s=await vr(r.get(e));return uo(s)?s:null})??null}async function Mr(e){if(!uo(e))return;let t=e.messages.length>tl?{...e,messages:e.messages.slice(e.messages.length-tl)}:e;await fo(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(lo),i=(await vr(s.getAll(t.memoryUserId))??[]).filter(uo);if(i.length>el){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-el);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 al(e){await fo(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 Fr(e){return(await Rr(e))[0]?.threadId??null}function ol(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 rl="waniwani-visitor-id";function sl(e,t){return e.match(t)?.[1]??null}function um(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=sl(e,o);if(r)return{name:a,version:r}}return null}function dm(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=sl(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function fm(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 cm(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 pm(){try{let a=localStorage.getItem(rl);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 cm(e);try{localStorage.setItem(rl,t)}catch{}return t}async function aa(){let e=navigator.userAgent,[t,a]=await Promise.all([pm(),Yi()]);return{userAgent:e,browser:um(e),os:dm(e),deviceType:fm(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 hm="x-session-id",gm=250;function nl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():_t()}function po(){return new Date().toISOString()}function il(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function wm(e,t){let a=Ke(e,"/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 mo(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=ue(a),f=ue(o),d=ue(n);Re(()=>{d.current=n},[n]);let c=ue(void 0),p=ue(null),[m,C]=ft(void 0),w=ue(m),[x,g]=ft(i),h=ue(x),[L,S]=ft([]),[k,A]=ft(!n),P=ue(void 0),E=ue(void 0),B=ue(void 0),O=ue(void 0),b=ue(0),v=ue(l);Re(()=>{v.current=l},[l]);let y=we(I=>{h.current=I,g(I),I&&v.current?.(I)},[]),M=we(async()=>{if(!n)return;let I=p.current?.memoryUserId;if(!I)return;let D=await Rr(I);S(D)},[n]),X=we(()=>w.current,[]),ae=we(I=>{let D=il(I);D&&w.current!==D&&(w.current=D,C(D))},[]),oe=we(()=>{w.current=void 0,C(void 0)},[]);Re(()=>{u.current=a},[a]),Re(()=>{f.current=o},[o]),Re(()=>{let I=!1,D=b.current;return(async()=>{try{let Ie=await aa();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 Fr(N);if(I||D!==b.current)return;if(Ie){let pe=await co(Ie);if(I||D!==b.current)return;pe&&pe.memoryUserId===N&&(h.current=pe.threadId,g(pe.threadId),P.current=pe.createdAt,E.current=pe.title,pe.sessionId&&(w.current=pe.sessionId,C(pe.sessionId)),Z(pe.messages))}await M()}finally{I||A(!0)}})(),()=>{I=!0}},[]);let V=ue(new io({api:t,headers:()=>({...u.current}),body:()=>{let I={...f.current??{}},D=Object.hasOwn(I,"sessionId"),N=il(I.sessionId);if(N)ae(N),I.sessionId=N;else if(D)oe(),delete I.sessionId;else{let Pe=X();Pe&&(I.sessionId=Pe)}if(St(c.current)&&(I.modelContext=c.current),p.current){let Pe=p.current;I.visitorContext={timezone:Pe.timezone,language:Pe.language,languages:Pe.languages,deviceType:Pe.deviceType,referrer:Pe.referrer,visitorId:Pe.visitorId};let Ue=typeof I.visitor=="object"&&I.visitor!==null?I.visitor:{},_l=typeof Ue.client=="object"&&Ue.client!==null?Ue.client:{};I.visitor={...Ue,id:Pe.visitorId,client:{..._l,memoryUserId:Pe.memoryUserId}}}let Ie=typeof I.extra=="object"&&I.extra!==null&&!Array.isArray(I.extra)?I.extra:void 0,pe=p.current?.memoryUserId,ie=p.current?.language,la={};if(pe&&(la.memoryUserId=pe),ie&&(la.locale=ie),(Object.keys(la).length>0||Ie)&&(I.extra={...la,...Ie??{}}),d.current)if(Object.hasOwn(I,"threadId"))typeof I.threadId=="string"&&(h.current=I.threadId);else{let Ue=h.current;Ue||(Ue=nl(),P.current=po(),E.current=void 0,y(Ue)),I.threadId=Ue}return I},fetch:(async(I,D)=>{let N=await fetch(I,D);return c.current=void 0,ae(N.headers.get(hm)),N})})),re=ue(null),Le=ue(null),fe=ue({}),[ce,Ee]=ft(0),_=e.skipRemoteConfig===!0,J=we(async()=>{if(!_)try{let I=await wm(t,u.current);fe.current=I,Ee(D=>D+1)}catch(I){console.warn("[Waniwani] Failed to fetch tool definitions:",I instanceof Error?I.message:I)}},[t,_]);Re(()=>{J()},[J]);let{messages:z,sendMessage:G,setMessages:Z,status:H}=mm({messages:e.initialMessages,transport:V.current,onFinish({message:I}){s?.(),re.current&&(Le.current=I)},onError(I){console.warn("[Waniwani] Chat error:",I.message),re.current&&(re.current.reject(I),re.current=null)}}),j=ue(z);Re(()=>{j.current=z},[z]);let $=ue(n);Re(()=>{if(!n||$.current||($.current=!0,j.current.length>0))return;let I=!1,D=b.current;return A(!1),(async()=>{try{let N=p.current;if(!N)try{N=await aa(),p.current=N}catch{}let Ie=N?.memoryUserId;if(!Ie||I||D!==b.current){I||A(!0);return}let pe=i??await Fr(Ie);if(I||D!==b.current)return;if(pe){let ie=await co(pe);if(I||D!==b.current)return;ie&&ie.memoryUserId===Ie&&(h.current=ie.threadId,g(ie.threadId),P.current=ie.createdAt,E.current=ie.title,ie.sessionId&&(w.current=ie.sessionId,C(ie.sessionId)),Z(ie.messages))}await M()}finally{I||A(!0)}})(),()=>{I=!0}},[n]),Re(()=>{if(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]=ft(""),[q,se]=ft([]),Ce=H==="submitted"||H==="streaming",Me=we(I=>{se(D=>D.filter(N=>N.id!==I))},[]),Ge=Ce&&q.length>0,Al=we(I=>{let D=!!I.text?.trim(),N=!!I.files?.length;if(D||N){if(Ce){if(q.length>0)return;se(Ie=>[...Ie,{id:_t(),text:I.text||"",files:I.files??[],modelContext:I.modelContext}]),F("");return}c.current=I.modelContext,G({text:I.text||"",files:I.files}),r?.(I.text||""),F("")}},[G,r,Ce,q.length]),vl=we(I=>new Promise((D,N)=>{re.current={resolve:D,reject:N},G({text:I}),r?.(I)}),[G,r]);Re(()=>{if(H!=="ready"||q.length===0)return;let[I,...D]=q;se(D),c.current=I.modelContext,G({text:I.text,files:I.files.length>0?I.files:void 0}),r?.(I.text)},[H,G,r,q]);let Rl=we(()=>{Z([]),se([]),oe(),F(""),fe.current={},Ee(I=>I+1),J()},[Z,oe,J]),na=we(()=>{if(!d.current)return;let I=p.current?.memoryUserId,D=h.current,N=j.current;if(!(!I||!D||N.length===0)){if(P.current||(P.current=po()),!E.current){let Ie=N.find(ie=>ie.role==="user"),pe=Ie?Ie.parts.map(ie=>"text"in ie&&typeof ie.text=="string"?ie.text:"").join(" "):"";E.current=ol(pe)}return{threadId:D,memoryUserId:I,title:E.current,messages:N,sessionId:w.current,createdAt:P.current,updatedAt:po()}}},[]),Vr=we(async()=>{let I=na();I&&(await Mr(I),await M())},[na,M]);Re(()=>{if(n&&k&&!(H==="submitted"||H==="streaming")&&z.length!==0)return B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=void 0;let I=Vr().finally(()=>{O.current===I&&(O.current=void 0)});O.current=I},gm),()=>{B.current&&clearTimeout(B.current)}},[n,k,z,H,Vr]);let ia=we(()=>{let I=O.current,D=B.current,N=D?na():void 0;return D&&(clearTimeout(D),B.current=void 0),(async()=>{I&&await I,N&&(await Mr(N),await M())})()},[na,M]),Ml=we(()=>{b.current+=1,ia(),Z([]),se([]),oe(),F("");let I=nl();return P.current=po(),E.current=void 0,y(I),M(),I},[Z,oe,y,M,ia]),Lo=we(async I=>{b.current+=1;let D=b.current;if(await ia(),D!==b.current)return;let N=await co(I);D===b.current&&N&&(y(N.threadId),P.current=N.createdAt,E.current=N.title,N.sessionId?(w.current=N.sessionId,C(N.sessionId)):oe(),Z(N.messages),se([]),F(""))},[Z,oe,y,ia]),Fl=we(async I=>{if(h.current===I){b.current+=1,B.current&&(clearTimeout(B.current),B.current=void 0);let D=O.current;D&&await D}await al(I),await M(),h.current===I&&(Z([]),se([]),oe(),F(""),h.current=void 0,g(void 0),P.current=void 0,E.current=void 0)},[Z,oe,M]);Re(()=>{n&&k&&i!==void 0&&i!==h.current&&Lo(i)},[i,n,k,Lo]);let Bl=we(I=>{F(I.target.value)},[]),zr=z[z.length-1],jr=z.length>0,Dl=Ce&&(!jr||zr.role==="user"),El=fe.current;return{messages:z,status:H,text:R,setText:F,handleSubmit:Al,handleTextChange:Bl,isLoading:Ce,showLoaderBubble:Dl,lastMessage:zr,hasMessages:jr,sendMessage:G,sendMessageAndWait:vl,reset:Rl,queuedMessages:q,queueFull:Ge,removeQueuedMessage:Me,sessionId:m,toolDefinitions:El,refreshToolDefinitions:J,threads:L,activeThreadId:x,isThreadHistoryReady:k,startNewThread:Ml,switchThread:Lo,deleteThread:Fl}}import{useEffect as ll,useRef as xm,useState as Lm}from"react";var Cm={debug:!1,eval:!1};function ul(e="/api/waniwani",t,a=!1){let[o,r]=Lm(Cm),s=xm(t);return ll(()=>{s.current=t},[t]),ll(()=>{a||(async()=>{try{let n=s.current,l=await(await fetch(Ke(e,"/config"),{headers:n?{...n}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}import{useCallback as Im,useEffect as Br,useRef as Sm,useState as ym}from"react";function bm(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 dl(e){return typeof e=="object"&&e!==null&&"initial"in e}function ho(e){let{messages:t,status:a,config:o}=e,r=dl(o)&&o.initial?o.initial:void 0,[s,n]=ym(r??[]),i=Sm(a),l=o===!0||dl(o)&&o.dynamic!==!1,u=Im(()=>{n([])},[]),f=t.length>0;Br(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return Br(()=>{d?.role==="user"&&u()},[d,u]),Br(()=>{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=bm(p);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as km,useRef as Tm,useState as Pm}from"react";var Am=80,vm=50,Rm=15e3,fl=500;function go(e,t=!0){let[a,o]=Pm(""),r=Tm(void 0);return km(()=>{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,fl)):r.current=setTimeout(l,vm)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,Rm)):r.current=setTimeout(l,Am)))};return r.current=setTimeout(l,fl),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function wo(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return Ke(e,"/resource",o?{token:o}:void 0)}var cl={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"},Mm={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"},Fm={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 Dr(e){return{...cl,...e}}function oa(e){let t={};for(let[a,o]of Object.entries(Fm)){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 ra}from"react/jsx-runtime";var _m=Bm(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:c="triggerDemoRequest",api:p,debug:m,enableThreadHistory:C=!1,showToolCalls:w=!0}=t,x=p??"/api/waniwani",g=wo(x,t.headers),h=Dr(o),L=oa(h),S=h.backgroundColor.replace("#",""),k=parseInt(S.substring(0,2),16),A=parseInt(S.substring(2,4),16),P=parseInt(S.substring(4,6),16),E=(k*299+A*587+P*114)/1e3<128,B=ul(x,t.headers,t.skipRemoteConfig),O=m??B.debug,b=mo({...t,api:x}),v=no({...t,api:x,sessionId:b.sessionId}),y=go(d,!b.text),[M,X]=ml(!1),[ae,oe]=ml(null),V=pl(null),re=pl(void 0),Le=Er(()=>{let _=V.current;if(!_)return;_.scrollIntoView({behavior:"smooth",block:"center"});let J=_.querySelector("textarea");J&&setTimeout(()=>J.focus(),300),X(!0),clearTimeout(re.current),re.current=setTimeout(()=>X(!1),2e3)},[]),fe=ho({messages:b.messages,status:b.status,config:t.suggestions}),ce=Er(_=>{let J=_.content.map(z=>z.text??"").join("").trim();J&&b.handleSubmit({text:J,files:[],modelContext:_.modelContext})},[b.handleSubmit]),Ee=Er(_=>{fe.clear(),b.handleSubmit({text:_,files:[]})},[fe.clear,b.handleSubmit]);return Em(a,()=>({sendMessage:_=>{b.handleSubmit({text:_,files:[]}),Le()},sendMessageAndWait:_=>b.sendMessageAndWait(_),reset:b.reset,focus:Le,get messages(){return b.messages},get sessionId(){return b.sessionId}}),[b.handleSubmit,b.sendMessageAndWait,b.reset,b.messages,b.sessionId,Le]),Dm(()=>{if(!c)return;let _=J=>{let z=J.detail,G=typeof z?.message=="string"?z.message:void 0;G&&b.handleSubmit({text:G,files:[]}),Le()};return window.addEventListener(c,_),()=>window.removeEventListener(c,_)},[c,b.handleSubmit,Le]),ra("div",{ref:V,style:{...L,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...E?{"data-waniwani-dark":""}:{},className:T("ww:flex ww:flex-col ww:font-[family-name:var(--ww-font)] ww:text-foreground ww:bg-background ww:rounded-[var(--ww-radius)] ww:overflow-hidden",M&&"ww:ring-2 ww:ring-blue-400/70 ww:ring-offset-2 ww:ring-offset-background",i),children:[ra("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(Es,{messages:b.messages,evalEnabled:B.eval,api:x}),C&&xe(so,{threads:b.threads,activeThreadId:b.activeThreadId,onNewThread:b.startNewThread,onSelectThread:_=>{b.switchThread(_)},onDeleteThread:_=>{b.deleteThread(_)}})]}),ra(cs,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[xe(ps,{scrollClassName:ae?"ww:!relative ww:!overflow-hidden":void 0,children:xe(to,{messages:b.messages,status:b.status,welcomeMessage:u,welcome:f,onSuggestionSelect:Ee,resourceEndpoint:g,chatSessionId:b.sessionId,isDark:E,onFollowUp:ce,onCallTool:v,fullscreenToolCallId:ae,debug:O,showToolCalls:w,toolDefinitions:b.toolDefinitions,onWidgetDisplayModeChange:(_,J)=>{oe(_==="fullscreen"?J.toolCallId:null)}})}),xe(ms,{})]}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(ro,{suggestions:fe.suggestions,isLoading:fe.isLoading,onSelect:Ee})}),xe("div",{style:ae?{display:"none"}:void 0,children:xe(La,{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:ra("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[xe(ha,{onSubmit:b.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:ra("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&xe(xa,{}),xe(ga,{onChange:b.handleTextChange,value:b.text,placeholder:y,className:"ww:min-h-0 ww:py-1 ww:px-0"}),xe(wa,{status:b.status,disabled:b.queueFull})]})}),xe(ao,{})]})})})]})});import{forwardRef as gl,useCallback as xo,useEffect as yt,useImperativeHandle as Om,useRef as sa,useState as _r}from"react";import{jsx as Nm}from"react/jsx-runtime";function hl({text:e}){let{t}=U();return e===!1?null:Nm("span",{className:"ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as de,jsxs as Je}from"react/jsx-runtime";var Nr=gl(function(t,a){let{locale:o,messages:r}=t;return de(Ao,{locale:o,messages:r,children:de(Um,{...t,ref:a})})}),Um=gl(function(t,a){let{t:o,ready:r}=U(),{appearance:s,className:n,allowAttachments:i=!1,welcomeMessage:l,welcome:u,placeholder:f=o.promptInput.placeholder,triggerEvent:d="triggerDemoRequest",api:c,mcp:p,debug:m=!1,readOnly:C=!1,title:w,headerActions:x,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:L=!0,initializing:S=!1,disclaimer:k}=t,A=s?.theme,P=s?.variables,E=P?oa(P):{},[B,O]=_r(!1);yt(()=>{if(A!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");O(R.matches);let F=()=>O(R.matches);return R.addEventListener("change",F),()=>R.removeEventListener("change",F)},[A]);let b=A==="dark"||A==="auto"&&B,v=mo({...t,api:c}),y=no({...t,api:c,sessionId:v.sessionId,onCallTool:p?.onCallTool}),M=p?.resourceEndpoint??wo(c,t.headers),X=go(f,!v.text),[ae,oe]=_r(null),V=sa(null),re=sa(null),Le=sa(null),fe=sa(null),[ce,Ee]=_r(!0),_=sa(ce);_.current=ce;let J=xo(()=>{let R=V.current;if(!R)return;let F=R.querySelector("textarea");F&&F.focus()},[]),z=xo((R="smooth")=>{let F=re.current;F&&F.scrollTo({top:F.scrollHeight,behavior:R})},[]);yt(()=>{let R=fe.current,F=re.current;if(!R||!F)return;let q=new IntersectionObserver(([se])=>Ee(se.isIntersecting),{root:F,rootMargin:"0px 0px 200px 0px",threshold:0});return q.observe(R),()=>q.disconnect()},[]),yt(()=>{(v.messages[v.messages.length-1]?.role==="user"||_.current)&&z("smooth")},[v.messages.length,v.messages[v.messages.length-1]]),yt(()=>{z("auto")},[z]),yt(()=>{if(typeof ResizeObserver>"u")return;let R=re.current,F=Le.current;if(!R&&!F)return;let q=R?.scrollHeight??0,se=R?.clientHeight??0,Ce=new ResizeObserver(()=>{let Me=re.current;if(!Me)return;let Ge=Me.scrollTop+se>=q-5;q=Me.scrollHeight,se=Me.clientHeight,Ge&&z("auto")});return R&&Ce.observe(R),F&&Ce.observe(F),()=>Ce.disconnect()},[z]);let G=ho({messages:v.messages,status:v.status,config:t.suggestions}),Z=xo(R=>{let F=R.content.map(q=>q.text??"").join("").trim();F&&v.handleSubmit({text:F,files:[],modelContext:R.modelContext})},[v.handleSubmit]),H=xo(R=>{G.clear(),v.handleSubmit({text:R,files:[]})},[G.clear,v.handleSubmit]);Om(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]),yt(()=>{if(!d)return;let R=F=>{let q=F.detail,se=typeof q?.message=="string"?q.message:void 0;se&&v.handleSubmit({text:se,files:[]}),J()};return window.addEventListener(d,R),()=>window.removeEventListener(d,R)},[d,v.handleSubmit,J]);let j=!g&&!!(w||h||x),$=S||!r;return Je("div",{ref:V,style:{...E,maxHeight:"inherit",opacity:$?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":A==="auto"?"auto":void 0,...$?{"data-waniwani-initializing":""}:{},...b?{"data-waniwani-dark":""}:{},className:T("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",A==="dark"&&"dark",n),children:[j&&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:[w&&de("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:w}),!w&&de("div",{className:"ww:flex-1"}),h&&de(so,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:R=>{v.switchThread(R)},onDeleteThread:R=>{v.deleteThread(R)}}),x]}),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(to,{messages:v.messages,status:v.status,welcomeMessage:l,welcome:u,onSuggestionSelect:H,resourceEndpoint:M,chatSessionId:v.sessionId,isDark:b,onFollowUp:Z,onCallTool:y,fullscreenToolCallId:ae,debug:m,showToolCalls:L,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(R,F)=>{oe(R==="fullscreen"?F.toolCallId:null)}}),de("div",{ref:fe,"aria-hidden":!0,style:{height:1}})]}),!ce&&!ae&&de("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:de(Ae,{type:"button",onClick:()=>z("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:de(Ze,{className:"ww:size-4"})})})]}),!C&&Je("div",{className:"ww:shrink-0 ww:bg-background",style:ae?{display:"none"}:void 0,children:[de(ro,{suggestions:G.suggestions,isLoading:G.isLoading,onSelect:H}),de(La,{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(ha,{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(xa,{}),de(ga,{onChange:v.handleTextChange,value:v.text,placeholder:X,className:"ww:min-h-0 ww:py-1 ww:px-0"}),de(wa,{status:v.status,disabled:v.queueFull})]})}),Je("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:flex-nowrap ww:justify-center ww:items-center ww:gap-1.5",children:[de(ao,{}),de(hl,{text:k})]})]})})]})]})});import{forwardRef as nh,useEffect as ih,useMemo as kl,useState as Tl}from"react";var Hm="https://app.waniwani.ai/api/mcp/chat",qm={api:Hm};function Gm(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelector("script[src][data-token]");if(e instanceof HTMLScriptElement)return e;let t=document.querySelectorAll("script[src]");for(let a of t)if(a instanceof HTMLScriptElement&&/embed/i.test(a.src))return a;return null}function Wm(){let e=Gm();if(!e)return{};let t=P=>e.getAttribute(P)??void 0,a=P=>{let E=e.getAttribute(P);if(E==null)return;let B=E.trim().toLowerCase();if(B==="true"||B==="1"||B==="")return!0;if(B==="false"||B==="0")return!1},o={},r=t("data-api");r&&(o.api=r);let s=t("data-token");s&&(o.token=s);let n=t("data-title");n&&(o.title=n);let i=t("data-welcome-message");i&&(o.welcomeMessage=i);let l=t("data-placeholder");l&&(o.placeholder=l);let u=t("data-mcp-server-url");u&&(o.mcpServerUrl=u);let f=t("data-channel-id");if(f&&(o.channelId=f),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")o.showToolCalls="titles-only";else{let P=a("data-show-tool-calls");P!==void 0&&(o.showToolCalls=P)}let c=t("data-css");c&&(o.css=c);let p=t("data-suggestions");p&&(o.suggestions=p.split(",").map(P=>P.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let C=a("data-disable-page-view");C!==void 0&&(o.disablePageView=C);let w=a("data-hide-header");w!==void 0&&(o.hideHeader=w);let x=t("data-theme");(x==="light"||x==="dark"||x==="auto")&&(o.appearance={theme:x});let g=t("data-locale");(g==="en"||g==="fr"||g==="es")&&(o.locale=g);let h=t("data-mode");(h==="inline"||h==="floating")&&(o.mode=h);let L=t("data-height");L&&(o.height=L);let S=t("data-launcher-text");S&&(o.launcherText=S);let k=t("data-appear-delay");if(k!==void 0){let P=Number.parseInt(k.trim(),10);Number.isFinite(P)&&P>=0&&(o.appearDelay=P)}let A=t("data-disclaimer");if(A!==void 0){let P=A.trim(),E=P.toLowerCase();E==="false"||E==="0"?o.disclaimer=!1:P&&(o.disclaimer=P)}return o}function Or(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Ur(e,t,a){let o=a??Wm(),r=Vm(t,o,e),s={token:"",...qm,...Or(t),...Or(o),...Or(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 Vm(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 vy,useState as Ry}from"react";function zm(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function Hr(...e){zm()&&console.log("[Waniwani]",...e)}var qr=new Set;function jm(e,t,a){return`${e}|${t}|${a??""}`}function $m(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function Gr(e){let{api:t,token:a,channelId:o,mode:r,source:s}=e;if(typeof window>"u"||!t||!a)return;let n=jm(t,a,o);if(!qr.has(n)){qr.add(n);try{let i=await aa(),l=new Date().toISOString(),u=JSON.stringify({sentAt:l,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:s,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch($m(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{qr.delete(n)}}}var Xm="waniwani:config:";function wl(e,t,a){return`${Xm}${e}|${t}|${a??""}`}function xl(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(wl(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function Ll(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(wl(e,t,a),JSON.stringify(o))}catch{}}async function Cl(e,t,a,o){try{let r=Ke(e,"/config",o?{channel:o}:void 0),s=await fetch(r,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!s.ok)return{};let n=await s.json(),i=n&&typeof n=="object"&&"data"in n&&n.data?n.data:n;return i?Qm(i):{}}catch{return{}}}function Qm(e){let t={};return e.source!=null&&(t.source=e.source),e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),e.visibility&&(t.visibility=e.visibility),t}import{useEffect as Ym,useSyncExternalStore as eh}from"react";function Km(e){return e?.patterns??e?.rules??[]}var Il="\0\0";function Jm(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Il).replace(/\\\*/g,"[^/]*").split(Il).join(".*");return new RegExp(`^${a}$`)}function Zm(e,t){try{return Jm(e).test(t)}catch{return!1}}function Sl(e,t){if(!e)return!0;let a=!1;for(let o of Km(e))if(Zm(o.glob,t)){if(o.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var Wr="waniwani:locationchange",yl=!1;function th(){if(!(yl||typeof history>"u")){yl=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...o){let r=t.apply(this,o);return window.dispatchEvent(new Event(Wr)),r}}}}function ah(e){return th(),window.addEventListener(Wr,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(Wr,e),window.removeEventListener("popstate",e)}}function oh(){return window.location.pathname}function rh(){return"/"}function sh(){return eh(ah,oh,rh)}function bl(e,t){let a=sh(),o=t&&Sl(e,a);return Ym(()=>{Hr("visibility gate",{pathname:a,ready:t,visible:o,rules:e})},[a,t,o]),o}import{jsx as dh}from"react/jsx-runtime";var lh=600,Pl="https://app.waniwani.ai/api/mcp/chat",uh=nh(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=kl(()=>({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??Pl,[u,f]=Tl({}),[d,c]=Tl(!1),p=n?.disablePageView;ih(()=>{if(!o){c(!0);return}let x=S=>{p||Gr({api:l,token:o,channelId:r,mode:"inline",source:S})},g=xl(l,o,r);g&&(f(g),c(!0),x(g.source));let h=new AbortController,L=setTimeout(()=>c(!0),lh);return Cl(l,o,h.signal,r).then(S=>{h.signal.aborted||(Object.keys(S).length>0&&(Ll(l,o,r,S),f(S)),c(!0),x(S.source))}).catch(S=>{console.error("[Waniwani] Remote config fetch failed:",S),c(!0)}).finally(()=>clearTimeout(L)),()=>{h.abort(),clearTimeout(L)}},[l,o,r,p]);let m=kl(()=>Ur(i,u,void 0),[i,u]),C=bl(m.visibility,d),w={mode:"inline"};return m.mcpServerUrl&&(w.mcpServerUrl=m.mcpServerUrl),m.channelId&&(w.channelId=m.channelId),C?dh(Nr,{ref:a,api:m.api??Pl,headers:{Authorization:`Bearer ${m.token}`},skipRemoteConfig:!0,body:w,appearance:m.appearance,title:m.title,hideHeader:m.hideHeader,welcomeMessage:m.welcomeMessage,welcome:n?.welcome,placeholder:m.placeholder,suggestions:m.suggestions?{initial:m.suggestions}:void 0,enableThreadHistory:m.enableThreadHistory,showToolCalls:m.showToolCalls,disclaimer:m.disclaimer,allowAttachments:n?.allowAttachments,locale:m.locale,messages:n?.messages,className:s,initializing:!d}):null});export{_m as ChatCard,Nr as ChatEmbed,Mm as DARK_THEME,cl as DEFAULT_THEME,br as McpAppFrame,uh as WaniwaniChat,Dr as mergeTheme,oa as themeToCSSProperties};
15
+ ${U}`}]}}O.current({...j,...$?{modelContext:$}:{}})}V({jsonrpc:"2.0",id:te,result:{}});return}if(Q==="ui/update-model-context"&&te!=null){ke=ji(ke,G.params),V({jsonrpc:"2.0",id:te,result:{}});return}if(Q==="tools/call"&&te!=null){let j=y.current;if(!j){V({jsonrpc:"2.0",id:te,error:{code:-32601,message:"tools/call not supported"}});return}let $=G.params?.name;j({name:$,arguments:G.params?.arguments??{}}).then(U=>{V({jsonrpc:"2.0",id:te,result:U});let R=U.content?.map(B=>B.text??"").join("").trim();R&&Fp($,U,M.current)&&(le&&clearTimeout(le.timer),le={text:R,timer:setTimeout(()=>{if(se)return;let B=ke;ke=null,le=null,O.current?.({role:"user",content:[{type:"text",text:R}],...B?{modelContext:B}:{}})},500)})}).catch(U=>{let R=U instanceof Error?U.message:"Tool call failed";V({jsonrpc:"2.0",id:te,error:{code:-32e3,message:R}})});return}if(Q==="ui/request-display-mode"&&te!=null){let j=G.params?.mode,$=j==="fullscreen"||j==="inline"||j==="pip"?j:"inline";S.current=$,V({jsonrpc:"2.0",id:te,result:{mode:$}}),V({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:$}}),v.current?.($);return}if(Q==="ui/resource-teardown"&&te!=null){V({jsonrpc:"2.0",id:te,result:{}});return}Q==="ping"&&te!=null&&V({jsonrpc:"2.0",id:te,result:{}})};return window.addEventListener("message",ie),()=>{se=!0,clearTimeout(W),le&&clearTimeout(le.timer),window.removeEventListener("message",ie)}},[i,_]),Bp("iframe",{ref:m,src:ae,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:b(!c&&"ww:rounded-md ww:border ww:border-border",n),style:{height:c?"100%":k,minWidth:c||!T?void 0:`min(${T}px, 100%)`,width:"100%",border:"none",colorScheme:s?"dark":"auto"},title:"MCP App"})}import{jsx as aa,jsxs as Dp}from"react/jsx-runtime";function Xi({icon:e,title:t,description:a,suggestions:o,onSuggestionSelect:r}){return Dp("div",{className:"ww:flex ww:flex-col ww:items-center ww:justify-center ww:py-12 ww:px-6 ww:text-center ww:min-h-full",children:[e&&aa("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}),aa("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&aa("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),o&&o.length>0&&aa("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)=>aa("button",{type:"button",onClick:()=>r?.(s),className:b("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${n*50}ms`},children:s},s))})]})}import{Component as Ep}from"react";import{jsx as Ar,jsxs as Np}from"react/jsx-runtime";function _p({onRetry:e}){let{t}=q();return Np("div",{className:"ww:flex ww:items-center ww:justify-between ww:rounded-md ww:border ww:border-border ww:bg-muted/50 ww:px-4 ww:py-3 ww:text-sm ww:text-muted-foreground",children:[Ar("span",{children:t.widgetErrorBoundary.failedToLoad}),Ar("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var eo=class extends Ep{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?Ar(_p,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Op,jsx as Z,jsxs as Ze}from"react/jsx-runtime";function vr(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Qi(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Mt:at}function to({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}=q(),w=e[e.length-1],x=e.length>0,g=d!=null,h=!g&&Vi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return Ze(Op,{children:[!g&&(!x&&o?Z(Xi,{...o,onSuggestionSelect:r}):a&&Z(xr,{from:"assistant",children:Z(Lr,{children:Z(Ya,{children:a})})})),e.map(L=>{let S=L.parts.filter(P=>P.type==="text"),k=L.parts.filter(P=>P.type==="reasoning"),A=L.parts.filter(P=>P.type==="file"),T=L.parts.filter(P=>"toolCallId"in P),D=L.parts.filter(P=>P.type==="reasoning"||"toolCallId"in P),F=L===w&&L.role==="assistant",O=S.length>0,y=g?T.some(P=>P.toolCallId===d):!1,v=p!==!1&&!y&&D.length>=2;return g&&!y?Z("div",{style:{display:"none"}},L.id):L.role==="assistant"&&!Wi(L)?Z("div",{style:{display:"none"}},L.id):p===!1&&L.role==="assistant"&&!O&&A.length===0&&T.every(P=>{let M="output"in P?P.output:void 0;return M===void 0||!s||!ta(P.toolName,M,m)})?Z("div",{style:{display:"none"}},L.id):Ze(xr,{from:L.role,children:[p!==!1&&!y&&!v&&k.map((P,M)=>Ze(Ht,{isStreaming:P.state==="streaming",children:[Z(Ut,{}),Z(qt,{children:P.text})]},`reasoning-${L.id}-${M}`)),v&&(()=>{let P=D[D.length-1],M=P.type==="reasoning"?{icon:Ge,label:C.reasoning.thinking}:{icon:Qi(P.toolName),label:P.title??vr(P.toolName)};return Ze(zs,{isWorking:F&&(t==="streaming"||t==="submitted"),activeStep:M,children:[Z(js,{workingLabel:C.chainOfThought.working,label:C.chainOfThought.done}),Z($s,{children:D.map((_,ae)=>{let Y=ae===D.length-1;if(_.type==="reasoning")return Z(Qs,{isStreaming:_.state==="streaming",isLast:Y,children:_.text},`reasoning-${L.id}-${ae}`);let be=_.title??vr(_.toolName),H=Qi(_.toolName);if(p==="titles-only")return Z(Oo,{icon:H,title:be,state:_.state,isLast:Y},_.toolCallId);let se="output"in _?_.output:void 0;return Ze(Oo,{icon:H,title:be,state:_.state,isLast:Y,children:[Z(br,{input:_.input,debug:c}),se!==void 0&&Z(kr,{output:se,errorText:"errorText"in _?_.errorText:void 0,debug:c})]},_.toolCallId)})})]})})(),p!==!1&&!y&&!v&&T.length===1&&(()=>{let P=T[0],M=P.title??vr(P.toolName);if(p==="titles-only")return Z(_i,{title:M,state:P.state});let _="output"in P?P.output:void 0;return Ze(Di,{children:[Z(Ei,{title:M,state:P.state}),Ze(Ni,{children:[Z(br,{input:P.input,debug:c}),_!==void 0&&Z(kr,{output:_,errorText:"errorText"in P?P.errorText:void 0,debug:c})]})]})})(),T.map(P=>{let M="output"in P?P.output:void 0,_=ta(P.toolName,M,m),ae=Ui(P.toolName,M,m),Y=P.toolCallId===d;return _&&s&&M!==void 0?Z("div",{style:Y?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:_&&s&&M!==void 0&&Z(eo,{children:Z(Pr,{isFullscreen:Y,resourceUri:_,toolInput:P.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?be=>f(be,{toolCallId:P.toolCallId,resourceUri:_,toolInput:P.input??{},toolResult:{content:M.content,structuredContent:M.structuredContent,_meta:M._meta},autoHeight:ae}):void 0})})},P.toolCallId):null}),!y&&Z("div",{children:Ze(Lr,{children:[A.length>0&&Z(Hs,{files:A}),O?S.map((P,M)=>{let _=F&&t==="streaming"&&M===S.length-1;return Z(Ya,{isStreaming:_,children:P.type==="text"?P.text:""},`${L.id}-${M}`)}):null]})})]},L.id)}),h&&Z(zi,{})]})}import{jsx as Ki,jsxs as qp}from"react/jsx-runtime";var Hp="https://app.waniwani.ai/assets/waniwani-logo.svg",Up="https://waniwani.ai";function ao(){let{t:e}=q();return qp("a",{href:Up,target:"_blank",rel:"noopener noreferrer",className:"ww:flex ww:items-center ww:gap-1.5 ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70 hover:ww:opacity-100 ww:transition-opacity",children:[Ki("span",{children:e.poweredBy.label}),Ki("img",{src:Hp,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as oo}from"react/jsx-runtime";function ro({suggestions:e,isLoading:t,onSelect:a,className:o,...r}){return e.length===0&&!t?null:oo("div",{className:b("ww:px-4 ww:py-2",o),...r,children:oo("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=>oo("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+s*20}px`}},s)):e.map((s,n)=>oo("button",{type:"button",onClick:()=>a(s),className:b("ww:rounded-full ww:border ww:border-border ww:bg-background ww:px-3.5 ww:py-1.5 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{useEffect as Gp,useRef as Wp,useState as Vp}from"react";import{jsx as re,jsxs as ft}from"react/jsx-runtime";var Ji=20;function zp({label:e}){return ft("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:[re("title",{children:e}),re("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),re("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]})}function jp({label:e}){return ft("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:[re("title",{children:e}),re("path",{d:"M3 12a9 9 0 1 0 3-6.7"}),re("polyline",{points:"3 4 3 9 8 9"}),re("line",{x1:"12",y1:"7",x2:"12",y2:"12"}),re("line",{x1:"12",y1:"12",x2:"15",y2:"14"})]})}function $p({label:e}){return ft("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:[re("title",{children:e}),re("polyline",{points:"3 6 5 6 21 6"}),re("path",{d:"M19 6l-2 14a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L5 6"}),re("path",{d:"M10 11v6"}),re("path",{d:"M14 11v6"})]})}function so({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:o,onDeleteThread:r}){let{locale:s,t:n}=q(),[i,l]=Vp(!1),u=Wp(null);Gp(()=>{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,Ji),d=Math.max(0,e.length-Ji);return ft("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[re("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:re(zp,{label:n.threadMenu.newChat})}),re("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:re(jp,{label:n.threadMenu.threadHistory})}),i&&ft("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&&re("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 ft("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:[ft("button",{type:"button",onClick:()=>{o(c.threadId),l(!1)},className:"ww:flex-1 ww:min-w-0 ww:text-left ww:cursor-pointer",children:[re("div",{className:"ww:truncate ww:text-foreground ww:font-medium",children:c.title}),re("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Mo(m,s)})]}),re("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:re($p,{label:n.threadMenu.deleteThread})})]},c.threadId)}),d>0&&re("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 Xp,useRef as Qp}from"react";function no(e){let t=Qp(e);return t.current=e,Xp(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 cm}from"@ai-sdk/react";import{useCallback as xe,useEffect as Fe,useRef as fe,useState as ct}from"react";function Ye(e,t,a){let[o,r=""]=e.split("?"),s=o.replace(/\/$/,""),n=new URLSearchParams(r);if(a)for(let[l,u]of Object.entries(a))n.set(l,u);let i=n.toString();return`${s}${t}${i?`?${i}`:""}`}import{DefaultChatTransport as Kp,uiMessageChunkSchema as Jp}from"ai";function Zp(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 io=class extends Kp{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=Zp(c.error);if(p?.length){let m={...d};for(let w of p)delete m[w];let C=await r(m);C.success&&n.enqueue(C.value)}}catch{}}}}))}};var Yp="waniwani-memory";var Ae="threads",lo="by_memoryUserId",em="by_updatedAt";var Yi="memoryUserId",Zi="waniwani-memory-user-id",Rr=null;function Mr(){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 tm(e,t){if(t<1&&(e.objectStoreNames.contains("ids")||e.createObjectStore("ids")),t<2&&!e.objectStoreNames.contains(Ae)){let a=e.createObjectStore(Ae,{keyPath:"threadId"});a.createIndex(lo,"memoryUserId",{unique:!1}),a.createIndex(em,"updatedAt",{unique:!1})}}async function Fr(){return new Promise((e,t)=>{let a=indexedDB.open(Yp,2);a.onupgradeneeded=o=>{tm(a.result,o.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function am(){return Fr()}async function om(e){return new Promise((t,a)=>{let s=e.transaction("ids","readonly").objectStore("ids").get(Yi);s.onsuccess=()=>t(typeof s.result=="string"?s.result:null),s.onerror=()=>a(s.error)})}async function rm(e,t){return new Promise((a,o)=>{let n=e.transaction("ids","readwrite").objectStore("ids").put(t,Yi);n.onsuccess=()=>a(),n.onerror=()=>o(n.error)})}async function sm(){if(typeof indexedDB>"u")return null;try{let e=await am();try{let t=await om(e);if(t)return t;let a=Mr();return await rm(e,a),a}finally{e.close()}}catch{return null}}function nm(){try{let e=localStorage.getItem(Zi);if(e)return e;let t=Mr();return localStorage.setItem(Zi,t),t}catch{return null}}async function el(){let e=await sm();if(e)return e;let t=nm();return t||(Rr||(Rr=Mr()),Rr)}var tl=50,al=1e3;function uo(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 fo(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await Fr(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function Br(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function Dr(e){return await fo(async a=>{let s=a.transaction(Ae,"readonly").objectStore(Ae).index(lo),i=(await Br(s.getAll(e))??[]).filter(uo);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function co(e){return await fo(async a=>{let r=a.transaction(Ae,"readonly").objectStore(Ae),s=await Br(r.get(e));return uo(s)?s:null})??null}async function Er(e){if(!uo(e))return;let t=e.messages.length>al?{...e,messages:e.messages.slice(e.messages.length-al)}:e;await fo(async a=>{await new Promise((l,u)=>{let f=a.transaction(Ae,"readwrite");f.oncomplete=()=>l(),f.onerror=()=>u(f.error),f.onabort=()=>u(f.error),f.objectStore(Ae).put(t)});let o=a.transaction(Ae,"readwrite"),r=o.objectStore(Ae),s=r.index(lo),i=(await Br(s.getAll(t.memoryUserId))??[]).filter(uo);if(i.length>tl){i.sort((u,f)=>u.updatedAt<f.updatedAt?-1:1);let l=i.slice(0,i.length-tl);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 ol(e){await fo(async t=>(await new Promise((a,o)=>{let r=t.transaction(Ae,"readwrite");r.oncomplete=()=>a(),r.onerror=()=>o(r.error),r.onabort=()=>o(r.error),r.objectStore(Ae).delete(e)}),null))}async function _r(e){return(await Dr(e))[0]?.threadId??null}function rl(e){let t=e.trim();if(!t)return`Conversation on ${new Date().toISOString().slice(0,10)}`;let a=t.split(/\r?\n/,1)[0]??t;return a.length<=60?a:`${a.slice(0,60).trimEnd()}\u2026`}var sl="waniwani-visitor-id";function nl(e,t){return e.match(t)?.[1]??null}function im(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=nl(e,o);if(r)return{name:a,version:r}}return null}function lm(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=nl(e,o);if(r)return{name:a,version:r.replace(/_/g,".")};if(a==="Linux"&&o.test(e))return{name:a,version:""}}return null}function um(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 dm(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 fm(){try{let a=localStorage.getItem(sl);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 dm(e);try{localStorage.setItem(sl,t)}catch{}return t}async function oa(){let e=navigator.userAgent,[t,a]=await Promise.all([fm(),el()]);return{userAgent:e,browser:im(e),os:lm(e),deviceType:um(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 pm="x-session-id",mm=250;function il(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():Nt()}function po(){return new Date().toISOString()}function ll(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function hm(e,t){let a=Ye(e,"/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 mo(e){let{api:t="/api/waniwani",headers:a,body:o,onMessageSent:r,onResponseReceived:s,enableThreadHistory:n=!1,activeThreadId:i,onThreadChange:l}=e,u=fe(a),f=fe(o),d=fe(n);Fe(()=>{d.current=n},[n]);let c=fe(void 0),p=fe(null),[m,C]=ct(void 0),w=fe(m),[x,g]=ct(i),h=fe(x),[L,S]=ct([]),[k,A]=ct(!n),T=fe(void 0),D=fe(void 0),F=fe(void 0),O=fe(void 0),y=fe(0),v=fe(l);Fe(()=>{v.current=l},[l]);let P=xe(I=>{h.current=I,g(I),I&&v.current?.(I)},[]),M=xe(async()=>{if(!n)return;let I=p.current?.memoryUserId;if(!I)return;let E=await Dr(I);S(E)},[n]),_=xe(()=>w.current,[]),ae=xe(I=>{let E=ll(I);E&&w.current!==E&&(w.current=E,C(E))},[]),Y=xe(()=>{w.current=void 0,C(void 0)},[]);Fe(()=>{u.current=a},[a]),Fe(()=>{f.current=o},[o]),Fe(()=>{let I=!1,E=y.current;return(async()=>{try{let Ie=await oa();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 _r(N);if(I||E!==y.current)return;if(Ie){let pe=await co(Ie);if(I||E!==y.current)return;pe&&pe.memoryUserId===N&&(h.current=pe.threadId,g(pe.threadId),T.current=pe.createdAt,D.current=pe.title,pe.sessionId&&(w.current=pe.sessionId,C(pe.sessionId)),G(pe.messages))}await M()}finally{I||A(!0)}})(),()=>{I=!0}},[]);let be=fe(new io({api:t,headers:()=>({...u.current}),body:()=>{let I={...f.current??{}},E=Object.hasOwn(I,"sessionId"),N=ll(I.sessionId);if(N)ae(N),I.sessionId=N;else if(E)Y(),delete I.sessionId;else{let ve=_();ve&&(I.sessionId=ve)}if(yt(c.current)&&(I.modelContext=c.current),p.current){let ve=p.current;I.visitorContext={timezone:ve.timezone,language:ve.language,languages:ve.languages,deviceType:ve.deviceType,referrer:ve.referrer,visitorId:ve.visitorId};let qe=typeof I.visitor=="object"&&I.visitor!==null?I.visitor:{},El=typeof qe.client=="object"&&qe.client!==null?qe.client:{};I.visitor={...qe,id:ve.visitorId,client:{...El,memoryUserId:ve.memoryUserId}}}let Ie=typeof I.extra=="object"&&I.extra!==null&&!Array.isArray(I.extra)?I.extra:void 0,pe=p.current?.memoryUserId,ue=p.current?.language,ua={};if(pe&&(ua.memoryUserId=pe),ue&&(ua.locale=ue),(Object.keys(ua).length>0||Ie)&&(I.extra={...ua,...Ie??{}}),d.current)if(Object.hasOwn(I,"threadId"))typeof I.threadId=="string"&&(h.current=I.threadId);else{let qe=h.current;qe||(qe=il(),T.current=po(),D.current=void 0,P(qe)),I.threadId=qe}return I},fetch:(async(I,E)=>{let N=await fetch(I,E);return c.current=void 0,ae(N.headers.get(pm)),N})})),H=fe(null),se=fe(null),he=fe({}),[ke,le]=ct(0),W=e.skipRemoteConfig===!0,V=xe(async()=>{if(!W)try{let I=await hm(t,u.current);he.current=I,le(E=>E+1)}catch(I){console.warn("[Waniwani] Failed to fetch tool definitions:",I instanceof Error?I.message:I)}},[t,W]);Fe(()=>{V()},[V]);let{messages:ie,sendMessage:ee,setMessages:G,status:Q}=cm({messages:e.initialMessages,transport:be.current,onFinish({message:I}){s?.(),H.current&&(se.current=I)},onError(I){console.warn("[Waniwani] Chat error:",I.message),H.current&&(H.current.reject(I),H.current=null)}}),te=fe(ie);Fe(()=>{te.current=ie},[ie]);let j=fe(n);Fe(()=>{if(!n||j.current||(j.current=!0,te.current.length>0))return;let I=!1,E=y.current;return A(!1),(async()=>{try{let N=p.current;if(!N)try{N=await oa(),p.current=N}catch{}let Ie=N?.memoryUserId;if(!Ie||I||E!==y.current){I||A(!0);return}let pe=i??await _r(Ie);if(I||E!==y.current)return;if(pe){let ue=await co(pe);if(I||E!==y.current)return;ue&&ue.memoryUserId===Ie&&(h.current=ue.threadId,g(ue.threadId),T.current=ue.createdAt,D.current=ue.title,ue.sessionId&&(w.current=ue.sessionId,C(ue.sessionId)),G(ue.messages))}await M()}finally{I||A(!0)}})(),()=>{I=!0}},[n]),Fe(()=>{if(Q==="ready"&&H.current&&se.current){let I=H.current,E=se.current;H.current=null,se.current=null,I.resolve(E)}},[Q]);let[$,U]=ct(""),[R,B]=ct([]),K=Q==="submitted"||Q==="streaming",Ce=xe(I=>{B(E=>E.filter(N=>N.id!==I))},[]),Ne=K&&R.length>0,Be=xe(I=>{let E=!!I.text?.trim(),N=!!I.files?.length;if(E||N){if(K){if(R.length>0)return;B(Ie=>[...Ie,{id:Nt(),text:I.text||"",files:I.files??[],modelContext:I.modelContext}]),U("");return}c.current=I.modelContext,ee({text:I.text||"",files:I.files}),r?.(I.text||""),U("")}},[ee,r,K,R.length]),Co=xe(I=>new Promise((E,N)=>{H.current={resolve:E,reject:N},ee({text:I}),r?.(I)}),[ee,r]);Fe(()=>{if(Q!=="ready"||R.length===0)return;let[I,...E]=R;B(E),c.current=I.modelContext,ee({text:I.text,files:I.files.length>0?I.files:void 0}),r?.(I.text)},[Q,ee,r,R]);let vl=xe(()=>{G([]),B([]),Y(),U(""),he.current={},le(I=>I+1),V()},[G,Y,V]),ia=xe(()=>{if(!d.current)return;let I=p.current?.memoryUserId,E=h.current,N=te.current;if(!(!I||!E||N.length===0)){if(T.current||(T.current=po()),!D.current){let Ie=N.find(ue=>ue.role==="user"),pe=Ie?Ie.parts.map(ue=>"text"in ue&&typeof ue.text=="string"?ue.text:"").join(" "):"";D.current=rl(pe)}return{threadId:E,memoryUserId:I,title:D.current,messages:N,sessionId:w.current,createdAt:T.current,updatedAt:po()}}},[]),$r=xe(async()=>{let I=ia();I&&(await Er(I),await M())},[ia,M]);Fe(()=>{if(n&&k&&!(Q==="submitted"||Q==="streaming")&&ie.length!==0)return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{F.current=void 0;let I=$r().finally(()=>{O.current===I&&(O.current=void 0)});O.current=I},mm),()=>{F.current&&clearTimeout(F.current)}},[n,k,ie,Q,$r]);let la=xe(()=>{let I=O.current,E=F.current,N=E?ia():void 0;return E&&(clearTimeout(E),F.current=void 0),(async()=>{I&&await I,N&&(await Er(N),await M())})()},[ia,M]),Rl=xe(()=>{y.current+=1,la(),G([]),B([]),Y(),U("");let I=il();return T.current=po(),D.current=void 0,P(I),M(),I},[G,Y,P,M,la]),Io=xe(async I=>{y.current+=1;let E=y.current;if(await la(),E!==y.current)return;let N=await co(I);E===y.current&&N&&(P(N.threadId),T.current=N.createdAt,D.current=N.title,N.sessionId?(w.current=N.sessionId,C(N.sessionId)):Y(),G(N.messages),B([]),U(""))},[G,Y,P,la]),Ml=xe(async I=>{if(h.current===I){y.current+=1,F.current&&(clearTimeout(F.current),F.current=void 0);let E=O.current;E&&await E}await ol(I),await M(),h.current===I&&(G([]),B([]),Y(),U(""),h.current=void 0,g(void 0),T.current=void 0,D.current=void 0)},[G,Y,M]);Fe(()=>{n&&k&&i!==void 0&&i!==h.current&&Io(i)},[i,n,k,Io]);let Fl=xe(I=>{U(I.target.value)},[]),Xr=ie[ie.length-1],Qr=ie.length>0,Bl=K&&(!Qr||Xr.role==="user"),Dl=he.current;return{messages:ie,status:Q,text:$,setText:U,handleSubmit:Be,handleTextChange:Fl,isLoading:K,showLoaderBubble:Bl,lastMessage:Xr,hasMessages:Qr,sendMessage:ee,sendMessageAndWait:Co,reset:vl,queuedMessages:R,queueFull:Ne,removeQueuedMessage:Ce,sessionId:m,toolDefinitions:Dl,refreshToolDefinitions:V,threads:L,activeThreadId:x,isThreadHistoryReady:k,startNewThread:Rl,switchThread:Io,deleteThread:Ml}}import{useEffect as ul,useRef as gm,useState as wm}from"react";var xm={debug:!1,eval:!1};function dl(e="/api/waniwani",t,a=!1){let[o,r]=wm(xm),s=gm(t);return ul(()=>{s.current=t},[t]),ul(()=>{a||(async()=>{try{let n=s.current,l=await(await fetch(Ye(e,"/config"),{headers:n?{...n}:void 0})).json();r({debug:l.debug===!0,eval:l.eval===!0})}catch{}})()},[e,a]),o}import{useCallback as Lm,useEffect as Nr,useRef as Cm,useState as Im}from"react";function Sm(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 fl(e){return typeof e=="object"&&e!==null&&"initial"in e}function ho(e){let{messages:t,status:a,config:o}=e,r=fl(o)&&o.initial?o.initial:void 0,[s,n]=Im(r??[]),i=Cm(a),l=o===!0||fl(o)&&o.dynamic!==!1,u=Lm(()=>{n([])},[]),f=t.length>0;Nr(()=>{!f&&r&&r.length>0&&n(r)},[r,f]);let d=t[t.length-1];return Nr(()=>{d?.role==="user"&&u()},[d,u]),Nr(()=>{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=Sm(p);m&&n(m)}},[a,l,t]),{suggestions:s,isLoading:!1,clear:u}}import{useEffect as ym,useRef as bm,useState as km}from"react";var Tm=80,Pm=50,Am=15e3,cl=500;function go(e,t=!0){let[a,o]=km(""),r=bm(void 0);return ym(()=>{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,cl)):r.current=setTimeout(l,Pm)):(s++,o(e.slice(0,s)),s>=e.length?(n=!0,r.current=setTimeout(l,Am)):r.current=setTimeout(l,Tm)))};return r.current=setTimeout(l,cl),()=>{i=!0,clearTimeout(r.current)}},[e,t]),a}function wo(e,t){let a=t?.Authorization,o=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return Ye(e,"/resource",o?{token:o}:void 0)}var pl={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"},vm={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"},Rm={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 Or(e){return{...pl,...e}}function ra(e){let t={};for(let[a,o]of Object.entries(Rm)){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 Le,jsxs as sa}from"react/jsx-runtime";var Dm=Mm(function(t,a){let{theme:o,title:r="Assistant",width:s,height:n,className:i,allowAttachments:l=!1,welcomeMessage:u,welcome:f,placeholder:d="Ask me anything...",triggerEvent:c="triggerDemoRequest",api:p,debug:m,enableThreadHistory:C=!1,showToolCalls:w=!0}=t,x=p??"/api/waniwani",g=wo(x,t.headers),h=Or(o),L=ra(h),S=h.backgroundColor.replace("#",""),k=parseInt(S.substring(0,2),16),A=parseInt(S.substring(2,4),16),T=parseInt(S.substring(4,6),16),D=(k*299+A*587+T*114)/1e3<128,F=dl(x,t.headers,t.skipRemoteConfig),O=m??F.debug,y=mo({...t,api:x}),v=no({...t,api:x,sessionId:y.sessionId}),P=go(d,!y.text),[M,_]=hl(!1),[ae,Y]=hl(null),be=ml(null),H=ml(void 0),se=Hr(()=>{let W=be.current;if(!W)return;W.scrollIntoView({behavior:"smooth",block:"center"});let V=W.querySelector("textarea");V&&setTimeout(()=>V.focus(),300),_(!0),clearTimeout(H.current),H.current=setTimeout(()=>_(!1),2e3)},[]),he=ho({messages:y.messages,status:y.status,config:t.suggestions}),ke=Hr(W=>{let V=W.content.map(ie=>ie.text??"").join("").trim();V&&y.handleSubmit({text:V,files:[],modelContext:W.modelContext})},[y.handleSubmit]),le=Hr(W=>{he.clear(),y.handleSubmit({text:W,files:[]})},[he.clear,y.handleSubmit]);return Bm(a,()=>({sendMessage:W=>{y.handleSubmit({text:W,files:[]}),se()},sendMessageAndWait:W=>y.sendMessageAndWait(W),reset:y.reset,focus:se,get messages(){return y.messages},get sessionId(){return y.sessionId}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,y.sessionId,se]),Fm(()=>{if(!c)return;let W=V=>{let ie=V.detail,ee=typeof ie?.message=="string"?ie.message:void 0;ee&&y.handleSubmit({text:ee,files:[]}),se()};return window.addEventListener(c,W),()=>window.removeEventListener(c,W)},[c,y.handleSubmit,se]),sa("div",{ref:be,style:{...L,width:s,height:n},"data-waniwani-chat":"","data-waniwani-layout":"card",...D?{"data-waniwani-dark":""}:{},className:b("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:[sa("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:[Le("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:r}),Le(Os,{messages:y.messages,evalEnabled:F.eval,api:x}),C&&Le(so,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:W=>{y.switchThread(W)},onDeleteThread:W=>{y.deleteThread(W)}})]}),sa(hs,{className:"ww:flex-1 ww:min-h-0 ww:bg-background",children:[Le(gs,{scrollClassName:ae?"ww:!relative ww:!overflow-hidden":void 0,children:Le(to,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:f,onSuggestionSelect:le,resourceEndpoint:g,chatSessionId:y.sessionId,isDark:D,onFollowUp:ke,onCallTool:v,fullscreenToolCallId:ae,debug:O,showToolCalls:w,toolDefinitions:y.toolDefinitions,onWidgetDisplayModeChange:(W,V)=>{Y(W==="fullscreen"?V.toolCallId:null)}})}),Le(ws,{})]}),Le("div",{style:ae?{display:"none"}:void 0,children:Le(ro,{suggestions:he.suggestions,isLoading:he.isLoading,onSelect:le})}),Le("div",{style:ae?{display:"none"}:void 0,children:Le(Ca,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage})}),Le("div",{style:ae?{display:"none"}:void 0,children:Le("div",{className:"ww:shrink-0 ww:px-4 ww:pb-8 ww:pt-2 ww:bg-background",children:sa("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[Le(ga,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:sa("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&Le(La,{}),Le(wa,{onChange:y.handleTextChange,value:y.text,placeholder:P,className:"ww:min-h-0 ww:py-1 ww:px-0"}),Le(xa,{status:y.status,disabled:y.queueFull})]})}),Le(ao,{})]})})})]})});import{forwardRef as wl,useCallback as xo,useEffect as bt,useImperativeHandle as _m,useRef as na,useState as Lo}from"react";import{jsx as Em}from"react/jsx-runtime";function gl({text:e}){let{t}=q();return e===!1?null:Em("span",{className:"ww:whitespace-nowrap ww:text-[10px] ww:sm:text-[11px] ww:text-muted-foreground ww:opacity-70",children:e||t.aiDisclaimer.default})}import{jsx as ce,jsxs as et}from"react/jsx-runtime";var Ur=wl(function(t,a){let{locale:o,messages:r}=t;return ce(Ro,{locale:o,messages:r,children:ce(Nm,{...t,ref:a})})}),Nm=wl(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:C=!1,title:w,headerActions:x,hideHeader:g=!1,enableThreadHistory:h=!1,showToolCalls:L=!0,initializing:S=!1,disclaimer:k}=t,A=s?.theme,T=s?.variables,D=T?ra(T):{},[F,O]=Lo(!1);bt(()=>{if(A!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");O(R.matches);let B=()=>O(R.matches);return R.addEventListener("change",B),()=>R.removeEventListener("change",B)},[A]);let y=A==="dark"||A==="auto"&&F,v=mo({...t,api:c}),P=no({...t,api:c,sessionId:v.sessionId,onCallTool:p?.onCallTool}),M=p?.resourceEndpoint??wo(c,t.headers),_=go(f,!v.text),[ae,Y]=Lo(null),[be,H]=Lo(null),se=na(null),he=na(null),ke=na(null),le=na(null),[W,V]=Lo(!0),ie=na(W);ie.current=W;let ee=xo(()=>{let R=se.current;if(!R)return;let B=R.querySelector("textarea");B&&B.focus()},[]),G=xo((R="smooth")=>{let B=he.current;B&&B.scrollTo({top:B.scrollHeight,behavior:R})},[]);bt(()=>{let R=le.current,B=he.current;if(!R||!B)return;let K=new IntersectionObserver(([Ce])=>V(Ce.isIntersecting),{root:B,rootMargin:"0px 0px 200px 0px",threshold:0});return K.observe(R),()=>K.disconnect()},[]),bt(()=>{(v.messages[v.messages.length-1]?.role==="user"||ie.current)&&G("smooth")},[v.messages.length,v.messages[v.messages.length-1]]),bt(()=>{G("auto")},[G]),bt(()=>{if(typeof ResizeObserver>"u")return;let R=he.current,B=ke.current;if(!R&&!B)return;let K=R?.scrollHeight??0,Ce=R?.clientHeight??0,Ne=new ResizeObserver(()=>{let Be=he.current;if(!Be)return;let Co=Be.scrollTop+Ce>=K-5;K=Be.scrollHeight,Ce=Be.clientHeight,Co&&G("auto")});return R&&Ne.observe(R),B&&Ne.observe(B),()=>Ne.disconnect()},[G]);let Q=ho({messages:v.messages,status:v.status,config:t.suggestions}),te=xo(R=>{let B=R.content.map(K=>K.text??"").join("").trim();B&&v.handleSubmit({text:B,files:[],modelContext:R.modelContext})},[v.handleSubmit]),j=xo(R=>{Q.clear(),v.handleSubmit({text:R,files:[]})},[Q.clear,v.handleSubmit]);_m(a,()=>({sendMessage:R=>{v.handleSubmit({text:R,files:[]}),ee()},sendMessageAndWait:R=>v.sendMessageAndWait(R),reset:v.reset,focus:ee,get messages(){return v.messages},get sessionId(){return v.sessionId}}),[v.handleSubmit,v.sendMessageAndWait,v.reset,v.messages,v.sessionId,ee]),bt(()=>{if(!d)return;let R=B=>{let K=B.detail,Ce=typeof K?.message=="string"?K.message:void 0;Ce&&v.handleSubmit({text:Ce,files:[]}),ee()};return window.addEventListener(d,R),()=>window.removeEventListener(d,R)},[d,v.handleSubmit,ee]);let $=!g&&!!(w||h||x),U=S||!r;return et("div",{ref:se,style:{...D,maxHeight:"inherit",...ae&&be?{height:be}:{},opacity:U?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-color-scheme":A==="auto"?"auto":void 0,...U?{"data-waniwani-initializing":""}:{},...y?{"data-waniwani-dark":""}:{},className:b("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:[$&&et("div",{className:"ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[w&&ce("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:w}),!w&&ce("div",{className:"ww:flex-1"}),h&&ce(so,{threads:v.threads,activeThreadId:v.activeThreadId,onNewThread:v.startNewThread,onSelectThread:R=>{v.switchThread(R)},onDeleteThread:R=>{v.deleteThread(R)}}),x]}),et("div",{ref:he,className:b("ww:relative ww:flex-1 ww:min-h-0",ae?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[et("div",{ref:ke,className:b("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:[ce(to,{messages:v.messages,status:v.status,welcomeMessage:l,welcome:u,onSuggestionSelect:j,resourceEndpoint:M,chatSessionId:v.sessionId,isDark:y,onFollowUp:te,onCallTool:P,fullscreenToolCallId:ae,debug:m,showToolCalls:L,toolDefinitions:v.toolDefinitions,onWidgetDisplayModeChange:(R,B)=>{if(R==="fullscreen"){let K=se.current?.getBoundingClientRect().height??0;H(K>0?K:null),Y(B.toolCallId)}else H(null),Y(null)}}),ce("div",{ref:le,"aria-hidden":!0,style:{height:1}})]}),!W&&!ae&&ce("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:ce(Re,{type:"button",onClick:()=>G("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:ce(tt,{className:"ww:size-4"})})})]}),!C&&et("div",{className:"ww:shrink-0 ww:bg-background",style:ae?{display:"none"}:void 0,children:[ce(ro,{suggestions:Q.suggestions,isLoading:Q.isLoading,onSelect:j}),ce(Ca,{queuedMessages:v.queuedMessages,onRemove:v.removeQueuedMessage}),ce("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:et("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[ce(ga,{onSubmit:v.handleSubmit,globalDrop:i,multiple:i,className:"ww:rounded-2xl ww:border-border ww:bg-input",children:et("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[i&&ce(La,{}),ce(wa,{onChange:v.handleTextChange,value:v.text,placeholder:_,className:"ww:min-h-0 ww:py-1 ww:px-0"}),ce(xa,{status:v.status,disabled:v.queueFull})]})}),et("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:flex-nowrap ww:justify-center ww:items-center ww:gap-1.5",children:[ce(ao,{}),ce(gl,{text:k})]})]})})]})]})});import{forwardRef as rh,useEffect as sh,useMemo as Tl,useState as Pl}from"react";var Om="https://app.waniwani.ai/api/mcp/chat",Hm={api:Om};function Um(){if(typeof document>"u")return null;if(document.currentScript instanceof HTMLScriptElement)return document.currentScript;let e=document.querySelector("script[src][data-token]");if(e instanceof HTMLScriptElement)return e;let t=document.querySelectorAll("script[src]");for(let a of t)if(a instanceof HTMLScriptElement&&/embed/i.test(a.src))return a;return null}function qm(){let e=Um();if(!e)return{};let t=T=>e.getAttribute(T)??void 0,a=T=>{let D=e.getAttribute(T);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 T=a("data-show-tool-calls");T!==void 0&&(o.showToolCalls=T)}let c=t("data-css");c&&(o.css=c);let p=t("data-suggestions");p&&(o.suggestions=p.split(",").map(T=>T.trim()).filter(Boolean));let m=a("data-enable-thread-history");m!==void 0&&(o.enableThreadHistory=m);let C=a("data-disable-page-view");C!==void 0&&(o.disablePageView=C);let w=a("data-hide-header");w!==void 0&&(o.hideHeader=w);let x=t("data-theme");(x==="light"||x==="dark"||x==="auto")&&(o.appearance={theme:x});let g=t("data-locale");(g==="en"||g==="fr"||g==="es")&&(o.locale=g);let h=t("data-mode");(h==="inline"||h==="floating")&&(o.mode=h);let L=t("data-height");L&&(o.height=L);let S=t("data-launcher-text");S&&(o.launcherText=S);let k=t("data-appear-delay");if(k!==void 0){let T=Number.parseInt(k.trim(),10);Number.isFinite(T)&&T>=0&&(o.appearDelay=T)}let A=t("data-disclaimer");if(A!==void 0){let T=A.trim(),D=T.toLowerCase();D==="false"||D==="0"?o.disclaimer=!1:T&&(o.disclaimer=T)}return o}function qr(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Gr(e,t,a){let o=a??qm(),r=Gm(t,o,e),s={token:"",...Hm,...qr(t),...qr(o),...qr(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 Gm(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 Py,useState as Ay}from"react";function Wm(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function Wr(...e){Wm()&&console.log("[Waniwani]",...e)}var Vr=new Set;function Vm(e,t,a){return`${e}|${t}|${a??""}`}function zm(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function zr(e){let{api:t,token:a,channelId:o,mode:r,source:s}=e;if(typeof window>"u"||!t||!a)return;let n=Vm(t,a,o);if(!Vr.has(n)){Vr.add(n);try{let i=await oa(),l=new Date().toISOString(),u=JSON.stringify({sentAt:l,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:s,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:o,mode:r,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(zm(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{Vr.delete(n)}}}var jm="waniwani:config:";function xl(e,t,a){return`${jm}${e}|${t}|${a??""}`}function Ll(e,t,a){if(typeof window>"u")return null;try{let o=window.sessionStorage.getItem(xl(e,t,a));if(!o)return null;let r=JSON.parse(o);return r&&typeof r=="object"?r:null}catch{return null}}function Cl(e,t,a,o){if(!(typeof window>"u"))try{window.sessionStorage.setItem(xl(e,t,a),JSON.stringify(o))}catch{}}async function Il(e,t,a,o){try{let r=Ye(e,"/config",o?{channel:o}:void 0),s=await fetch(r,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!s.ok)return{};let n=await s.json(),i=n&&typeof n=="object"&&"data"in n&&n.data?n.data:n;return i?$m(i):{}}catch{return{}}}function $m(e){let t={};return e.source!=null&&(t.source=e.source),e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),e.visibility&&(t.visibility=e.visibility),t}import{useEffect as Jm,useSyncExternalStore as Zm}from"react";function Xm(e){return e?.patterns??e?.rules??[]}var Sl="\0\0";function Qm(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Sl).replace(/\\\*/g,"[^/]*").split(Sl).join(".*");return new RegExp(`^${a}$`)}function Km(e,t){try{return Qm(e).test(t)}catch{return!1}}function yl(e,t){if(!e)return!0;let a=!1;for(let o of Xm(e))if(Km(o.glob,t)){if(o.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var jr="waniwani:locationchange",bl=!1;function Ym(){if(!(bl||typeof history>"u")){bl=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...o){let r=t.apply(this,o);return window.dispatchEvent(new Event(jr)),r}}}}function eh(e){return Ym(),window.addEventListener(jr,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(jr,e),window.removeEventListener("popstate",e)}}function th(){return window.location.pathname}function ah(){return"/"}function oh(){return Zm(eh,th,ah)}function kl(e,t){let a=oh(),o=t&&yl(e,a);return Jm(()=>{Wr("visibility gate",{pathname:a,ready:t,visible:o,rules:e})},[a,t,o]),o}import{jsx as lh}from"react/jsx-runtime";var nh=600,Al="https://app.waniwani.ai/api/mcp/chat",ih=rh(function(t,a){let{token:o,channelId:r,className:s,overrides:n}=t,i=Tl(()=>({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??Al,[u,f]=Pl({}),[d,c]=Pl(!1),p=n?.disablePageView;sh(()=>{if(!o){c(!0);return}let x=S=>{p||zr({api:l,token:o,channelId:r,mode:"inline",source:S})},g=Ll(l,o,r);g&&(f(g),c(!0),x(g.source));let h=new AbortController,L=setTimeout(()=>c(!0),nh);return Il(l,o,h.signal,r).then(S=>{h.signal.aborted||(Object.keys(S).length>0&&(Cl(l,o,r,S),f(S)),c(!0),x(S.source))}).catch(S=>{console.error("[Waniwani] Remote config fetch failed:",S),c(!0)}).finally(()=>clearTimeout(L)),()=>{h.abort(),clearTimeout(L)}},[l,o,r,p]);let m=Tl(()=>Gr(i,u,void 0),[i,u]),C=kl(m.visibility,d),w={mode:"inline"};return m.mcpServerUrl&&(w.mcpServerUrl=m.mcpServerUrl),m.channelId&&(w.channelId=m.channelId),C?lh(Ur,{ref:a,api:m.api??Al,headers:{Authorization:`Bearer ${m.token}`},skipRemoteConfig:!0,body:w,appearance:m.appearance,title:m.title,hideHeader:m.hideHeader,welcomeMessage:m.welcomeMessage,welcome:n?.welcome,placeholder:m.placeholder,suggestions:m.suggestions?{initial:m.suggestions}:void 0,enableThreadHistory:m.enableThreadHistory,showToolCalls:m.showToolCalls,disclaimer:m.disclaimer,allowAttachments:n?.allowAttachments,locale:m.locale,messages:n?.messages,className:s,initializing:!d}):null});export{Dm as ChatCard,Ur as ChatEmbed,vm as DARK_THEME,pl as DEFAULT_THEME,Pr as McpAppFrame,ih as WaniwaniChat,Or as mergeTheme,ra as themeToCSSProperties};
17
17
  /*! Bundled license information:
18
18
 
19
19
  lucide-react/dist/esm/shared/src/utils/mergeClasses.js: