@waniwani/sdk 0.20.0 → 0.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chat/embed.js +67 -67
- package/dist/chat/embed.js.map +1 -1
- package/dist/chat/index.d.ts +1 -1
- package/dist/chat/index.js +7 -7
- package/dist/chat/index.js.map +1 -1
- package/dist/chat/styles.css +1 -1
- package/dist/mcp/index.d.ts +80 -1
- package/dist/mcp/index.js +5 -5
- package/dist/mcp/index.js.map +1 -1
- package/package.json +1 -1
package/dist/chat/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{a as Jo,b as Yo,c as Zo,d as en,e as tn,f as ha,g as an,h as rn,i as on,j as nn,k as hr,l as sn,m as wt,n as xt,o as ga,p as It,u as Ft}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{useCallback as Xu,useEffect as vr,useMemo as Ku,useRef as Ce,useState as Fn}from"react";function Lt(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 ln(e,t){return!Lt(e)&&!Lt(t)?null:Lt(e)?Lt(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{forwardRef as pu,createElement as mu}from"react";var wa=(...e)=>e.filter((t,a,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===a).join(" ").trim();var un=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var dn=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,r)=>r?r.toUpperCase():a.toLowerCase());var gr=e=>{let t=dn(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as fu,createElement as pn}from"react";var cn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var fn=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var mn=fu(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:r,className:o="",children:n,iconNode:s,...i},l)=>pn("svg",{ref:l,...cn,width:t,height:t,stroke:e,strokeWidth:r?Number(a)*24/Number(t):a,className:wa("lucide",o),...!n&&!fn(i)&&{"aria-hidden":"true"},...i},[...s.map(([u,d])=>pn(u,d)),...Array.isArray(n)?n:[n]]));var z=(e,t)=>{let a=pu(({className:r,...o},n)=>mu(mn,{ref:n,iconNode:t,className:wa(`lucide-${un(gr(e))}`,`lucide-${e}`,r),...o}));return a.displayName=gr(e),a};var hu=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Bt=z("arrow-down",hu);var gu=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Et=z("arrow-up",gu);var wu=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Dt=z("check",wu);var xu=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Qe=z("chevron-down",xu);var Iu=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],_t=z("chevron-right",Iu);var Lu=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]],Ot=z("clipboard-copy",Lu);var Cu=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],We=z("clock",Cu);var Su=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],Nt=z("file",Su);var yu=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Ut=z("globe",yu);var bu=[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]],Ht=z("loader",bu);var ku=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],qt=z("paperclip",ku);var Tu=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Gt=z("square",Tu);var vu=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],nt=z("wrench",vu);var Pu=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],st=z("x",Pu);var Au=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Wt=z("zap",Au);import{createContext as Gu,useCallback as Wu,useContext as yn,useEffect as Vu,useMemo as Sr,useRef as zu,useState as yr}from"react";import{createContext as Ru,useContext as Mu,useEffect as Fu,useMemo as Bu,useState as xn}from"react";var hn=["en","fr","es"];function Ct(e){return hn.includes(e)}function wr(e){if(e&&Ct(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&Ct(a))return a}let t=[];if(typeof navigator<"u"&&(navigator.language&&t.push(navigator.language),navigator.languages&&t.push(...navigator.languages)),typeof document<"u"){let a=document.documentElement.getAttribute("lang");a&&t.push(a)}for(let a of t){let r=a.toLowerCase();if(Ct(r))return r;let o=r.split("-")[0];if(o&&Ct(o))return o}return"en"}var xa={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 gn={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 wn={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 xr={en:xa,fr:wn,es:gn};import{jsx as _u}from"react/jsx-runtime";var In=Ru(null);function Eu(e,t){if(!t)return e;let a={...e};for(let r of Object.keys(e)){let o=e[r],n=t[r];n&&typeof o=="object"&&(a[r]={...o,...n})}return a}function Ir({children:e,locale:t,messages:a}){let r=!!(t&&Du(t)),o=r?t:"en",[n,s]=xn(o),[i,l]=xn(r);Fu(()=>{s(wr(t)),l(!0)},[t]);let u=Bu(()=>{let d=xr[n]??xr["en"];return{locale:n,t:Eu(d,a),ready:i}},[n,a,i]);return _u(In.Provider,{value:u,children:e})}function Du(e){return e==="en"||e==="fr"||e==="es"}function V(){let e=Mu(In);return e||{locale:"en",t:xa,ready:!0}}function Lr(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let r,o;a<60*6e4?(r=-Math.floor(a/6e4),o="minute"):a<1440*6e4?(r=-Math.floor(a/(60*6e4)),o="hour"):(r=-Math.floor(a/(1440*6e4)),o="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(r,o)}catch{return`${Math.abs(r)}${o==="minute"?"m":o==="hour"?"h":"d"} ago`}}var Ou=Yo({prefix:"ww"});function k(...e){return Ou(Jo(e))}import{jsx as Nu}from"react/jsx-runtime";var Oe=({className:e,variant:t="default",size:a="default",type:r="button",...o})=>Nu("button",{type:r,className:k("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...o});import{memo as Uu}from"react";import{jsx as qu}from"react/jsx-runtime";var Hu=({as:e="span",className:t,duration:a=2,style:r,children:o,...n})=>{let s={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...r};return qu(e,{"data-waniwani-shimmer":"",className:k("ww:inline-block",t),style:s,...n,children:o})},Be=Uu(Hu);Be.displayName="Shimmer";import{Fragment as Sn,jsx as K,jsxs as it}from"react/jsx-runtime";function ju(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let r=Object.entries(e),o=[],n=t-2;for(let[s,i]of r){if(n<=8)break;let l=s.length>4?`${s.slice(0,4)}\u2026`:s,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let d=`${l}\u2009${u}`;o.push(d),n-=d.length+3}return`{${o.join(", ")}}`}function $u({text:e,className:t}){let{t:a}=V(),[r,o]=yr(!1),n=zu(null);Vu(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=Wu(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),o(!0),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>o(!1),2e3)}catch{}},[e]);return K(Oe,{variant:"ghost",size:"sm",onClick:s,className:k("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:r?it(Sn,{children:[K(Dt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):it(Sn,{children:[K(Ot,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function bn({data:e,label:t,className:a,...r}){let[o,n]=yr(!1),s=Sr(()=>JSON.stringify(e,null,2),[e]),i=ju(e);return it("div",{className:k("ww:rounded-lg ww:bg-tool-card",a),...r,children:[it("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K($u,{text:s})]}),it("button",{type:"button",onClick:()=>n(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[K(_t,{className:k("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",o&&"ww:rotate-90")}),o?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:s})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var br=Gu({open:!1,toggle:()=>{}});function kn({className:e,defaultOpen:t=!1,children:a,...r}){let[o,n]=yr(t);return K(br.Provider,{value:{open:o,toggle:()=>n(s=>!s)},children:K("div",{className:k("ww:mb-4 ww:w-full",e),"data-state":o?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:a})})}function Tn({className:e,title:t,state:a,...r}){let{open:o,toggle:n}=yn(br),s=a==="input-available"||a==="input-streaming",i=t??"";return it("button",{type:"button",onClick:n,className:k("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":o,...r,children:[K(nt,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:s?K(Be,{duration:1.6,children:i}):i}),K(Qe,{className:k("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",o&&"ww:rotate-180")})]})}function vn({className:e,title:t,state:a,...r}){let o=a==="input-available"||a==="input-streaming",n=t??"";return K("div",{className:k("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:K("span",{className:"ww:truncate",children:o?K(Be,{duration:1.6,children:n}):n})})}function Pn({className:e,children:t,...a}){let{open:r}=yn(br);return K("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:k("ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",e),...a,children:t})})})}function kr({className:e,input:t,debug:a,...r}){let{t:o}=V(),n=Sr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...i}=t;return i}return t},[t,a]);return K(bn,{data:n,label:o.tool.request,className:e,...r})}function Cr(e){if(!(typeof e!="object"||e===null))return e}function An(e){return Cr(e?.ui)}function Rn(e){return Cr(Cr(e)?._meta)}function Ln(e){if(!e)return;let t=An(e)?.resourceUri;if(typeof t=="string"&&t.length>0)return t;let a=e["ui/resourceUri"];if(typeof a=="string"&&a.length>0)return a;let r=e["openai/outputTemplate"];if(typeof r=="string"&&r.length>0)return r}function Cn(e){return An(e)?.autoHeight===!0}function Vt(e,t,a){if(e){let r=Ln(a?.[e]?._meta);if(r)return r}return Ln(Rn(t))}function Mn(e,t,a){return e&&Cn(a?.[e]?._meta)?!0:Cn(Rn(t))}function Tr({className:e,output:t,errorText:a,debug:r,...o}){let{t:n}=V(),s=Sr(()=>{if(!r&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,r]);return t||a?a?it("div",{className:k("ww:space-y-2",e),...o,children:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:n.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(bn,{data:s,label:n.tool.response,className:e,...o}):null}import{jsx as sd}from"react/jsx-runtime";var Qu="/api/mcp/resource",Ju=500,Yu=0,Zu=16,ed="2026-01-26",td=300,ad=3e3,rd=3;function od(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function nd(e,t,a){return Vt(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Pr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:r=Qu,chatSessionId:o,isDark:n=!1,className:s,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:d,onDisplayModeChange:c,isFullscreen:f=!1,toolDefinitions:p}){let m=Ce(null),x=Ce(t),L=Ce(a),h=Ce({width:0,height:0}),I=Ce(null),g=Ce(!1),C=Ce(0),S=Ce("inline"),[v,A]=Fn(Yu),[P,D]=Fn(void 0),b=Ce(l),E=Ce(u),M=Ce(d),$=Ce(c),H=Ce(o),T=Ce(p);x.current=t,L.current=a,b.current=l,E.current=u,M.current=d,$.current=c,H.current=o,T.current=p;let y=Xu(q=>i?Math.max(q+Zu,0):Math.min(Math.max(q,50),Ju),[i]),F=Ku(()=>{let q=r.includes("?")?"&":"?";return`${r}${q}uri=${encodeURIComponent(e)}`},[r,e]),Me=Ce(n);Me.current=n;let be=Ce(f);return vr(()=>{be.current=f,h.current.height=-1,I.current&&(I.current.cancel(),I.current=null)},[f]),vr(()=>{if(!g.current)return;let q=m.current;q?.contentWindow&&q.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:n?"dark":"light"}},"*")},[n]),vr(()=>{let q=m.current;if(!q)return;let xe=!1,fe=!1,ke=null,pe=null,$e=setTimeout(()=>{if(xe||fe||C.current>=rd)return;C.current+=1;let Ie=new URL(q.src);Ie.searchParams.set("_retry",String(C.current)),q.src=Ie.toString()},ad),Z=Ie=>{q.contentWindow?.postMessage(Ie,"*")},Xe=Ie=>{if(xe||Ie.source!==q.contentWindow)return;let j=Ie.data;if(!j||typeof j!="object"||j.jsonrpc!=="2.0")return;let ne=j.method,G=j.id;if(ne==="ui/initialize"&&G!=null){fe=!0,clearTimeout($e),Z({jsonrpc:"2.0",id:G,result:{protocolVersion:j.params?.protocolVersion??ed,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:Me.current?"dark":"light",displayMode:S.current}}});return}if(ne==="ui/notifications/initialized"){g.current=!0;let O=x.current,U=L.current,N=U._meta&&typeof U._meta=="object"?U._meta:null,ae=od(H.current),X=N&&typeof N.waniwani=="object"&&N.waniwani!==null?N.waniwani:null,me=X||ae?{...X??{},...ae?{sessionId:ae}:{}}:void 0,Le=N||me?{...N??{},...me?{waniwani:me}:{}}:void 0;Z({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:O}});let Te=U.content??[{type:"text",text:JSON.stringify(U)}];Z({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Te,structuredContent:U.structuredContent,_meta:Le,meta:Le}});return}if(ne==="ui/notifications/size-changed"){let O=j.params,U=typeof O?.height=="number"?O.height:void 0,N=typeof O?.width=="number"?O.width:void 0,ae=h.current,X=U!==void 0&&U!==ae.height,me=N!==void 0&&N!==ae.width;if(!X&&!me)return;if(X&&U!==void 0){if(ae.height=U,be.current)return;let Le=y(U),Te=q.getBoundingClientRect().height;if(I.current&&(I.current.cancel(),I.current=null),A(Le),q.animate&&Math.abs(Te-Le)>2){let Ke=q.animate([{height:`${Te}px`},{height:`${Le}px`}],{duration:td,easing:"ease-out",fill:"forwards"});I.current=Ke,Ke.onfinish=()=>{I.current===Ke&&(Ke.cancel(),I.current=null)}}}me&&i&&N!==void 0&&(ae.width=N,D(N));return}if(ne==="ui/open-link"&&G!=null){let O=j.params?.url;typeof O=="string"&&(b.current?b.current(O):window.open(O,"_blank","noopener,noreferrer")),Z({jsonrpc:"2.0",id:G,result:{}});return}if(ne==="ui/message"&&G!=null){if(E.current&&j.params){let O=j.params,U=ke;if(ke=null,pe){clearTimeout(pe.timer);let N=pe.text;pe=null;let ae=(O.content??[]).map(X=>X.text??"").join("").trim();O={...O,content:[{type:"text",text:`${ae}
|
|
2
|
+
import{a as Jo,b as Yo,c as Zo,d as en,e as tn,f as ha,g as an,h as rn,i as on,j as nn,k as hr,l as sn,m as wt,n as xt,o as ga,p as It,u as Ft}from"../chunk-F4UUXA3U.js";import"../chunk-V3ZDECK5.js";import{useCallback as Xu,useEffect as vr,useMemo as Ku,useRef as Ce,useState as Fn}from"react";function Lt(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 ln(e,t){return!Lt(e)&&!Lt(t)?null:Lt(e)?Lt(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{forwardRef as pu,createElement as mu}from"react";var wa=(...e)=>e.filter((t,a,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===a).join(" ").trim();var un=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var dn=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,a,r)=>r?r.toUpperCase():a.toLowerCase());var gr=e=>{let t=dn(e);return t.charAt(0).toUpperCase()+t.slice(1)};import{forwardRef as fu,createElement as pn}from"react";var cn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var fn=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var mn=fu(({color:e="currentColor",size:t=24,strokeWidth:a=2,absoluteStrokeWidth:r,className:o="",children:n,iconNode:s,...i},l)=>pn("svg",{ref:l,...cn,width:t,height:t,stroke:e,strokeWidth:r?Number(a)*24/Number(t):a,className:wa("lucide",o),...!n&&!fn(i)&&{"aria-hidden":"true"},...i},[...s.map(([u,d])=>pn(u,d)),...Array.isArray(n)?n:[n]]));var z=(e,t)=>{let a=pu(({className:r,...o},n)=>mu(mn,{ref:n,iconNode:t,className:wa(`lucide-${un(gr(e))}`,`lucide-${e}`,r),...o}));return a.displayName=gr(e),a};var hu=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Bt=z("arrow-down",hu);var gu=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Et=z("arrow-up",gu);var wu=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Dt=z("check",wu);var xu=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Qe=z("chevron-down",xu);var Iu=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],_t=z("chevron-right",Iu);var Lu=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]],Ot=z("clipboard-copy",Lu);var Cu=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ge=z("clock",Cu);var Su=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],Nt=z("file",Su);var yu=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Ut=z("globe",yu);var bu=[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]],Ht=z("loader",bu);var ku=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],qt=z("paperclip",ku);var Tu=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Wt=z("square",Tu);var vu=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],nt=z("wrench",vu);var Pu=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],st=z("x",Pu);var Au=[["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"}]],Gt=z("zap",Au);import{createContext as Wu,useCallback as Gu,useContext as yn,useEffect as Vu,useMemo as Sr,useRef as zu,useState as yr}from"react";import{createContext as Ru,useContext as Mu,useEffect as Fu,useMemo as Bu,useState as xn}from"react";var hn=["en","fr","es"];function Ct(e){return hn.includes(e)}function wr(e){if(e&&Ct(e))return e;if(e){let a=e.split("-")[0]?.toLowerCase();if(a&&Ct(a))return a}let t=[];if(typeof navigator<"u"&&(navigator.language&&t.push(navigator.language),navigator.languages&&t.push(...navigator.languages)),typeof document<"u"){let a=document.documentElement.getAttribute("lang");a&&t.push(a)}for(let a of t){let r=a.toLowerCase();if(Ct(r))return r;let o=r.split("-")[0];if(o&&Ct(o))return o}return"en"}var xa={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 gn={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 wn={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 xr={en:xa,fr:wn,es:gn};import{jsx as _u}from"react/jsx-runtime";var In=Ru(null);function Eu(e,t){if(!t)return e;let a={...e};for(let r of Object.keys(e)){let o=e[r],n=t[r];n&&typeof o=="object"&&(a[r]={...o,...n})}return a}function Ir({children:e,locale:t,messages:a}){let r=!!(t&&Du(t)),o=r?t:"en",[n,s]=xn(o),[i,l]=xn(r);Fu(()=>{s(wr(t)),l(!0)},[t]);let u=Bu(()=>{let d=xr[n]??xr["en"];return{locale:n,t:Eu(d,a),ready:i}},[n,a,i]);return _u(In.Provider,{value:u,children:e})}function Du(e){return e==="en"||e==="fr"||e==="es"}function V(){let e=Mu(In);return e||{locale:"en",t:xa,ready:!0}}function Lr(e,t){let a=Date.now()-e;if(a<6e4)try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"narrow"}).format(0,"second")}catch{return"just now"}let r,o;a<60*6e4?(r=-Math.floor(a/6e4),o="minute"):a<1440*6e4?(r=-Math.floor(a/(60*6e4)),o="hour"):(r=-Math.floor(a/(1440*6e4)),o="day");try{return new Intl.RelativeTimeFormat(t,{numeric:"auto",style:"short"}).format(r,o)}catch{return`${Math.abs(r)}${o==="minute"?"m":o==="hour"?"h":"d"} ago`}}var Ou=Yo({prefix:"ww"});function k(...e){return Ou(Jo(e))}import{jsx as Nu}from"react/jsx-runtime";var Oe=({className:e,variant:t="default",size:a="default",type:r="button",...o})=>Nu("button",{type:r,className:k("ww:inline-flex ww:cursor-pointer ww:items-center ww:justify-center ww:rounded-md ww:font-medium ww:transition-colors ww:disabled:pointer-events-none ww:disabled:opacity-50",t==="default"&&"ww:bg-primary ww:text-primary-foreground ww:hover:bg-primary/90",t==="outline"&&"ww:border ww:border-border ww:bg-background ww:hover:bg-accent ww:hover:text-accent-foreground",t==="ghost"&&"ww:hover:bg-accent ww:hover:text-accent-foreground",a==="default"&&"ww:h-9 ww:px-4 ww:py-2 ww:text-sm",a==="sm"&&"ww:h-8 ww:px-3 ww:text-xs",a==="icon"&&"ww:size-9 ww:!rounded-full",a==="icon-sm"&&"ww:size-7 ww:!rounded-full",e),...o});import{memo as Uu}from"react";import{jsx as qu}from"react/jsx-runtime";var Hu=({as:e="span",className:t,duration:a=2,style:r,children:o,...n})=>{let s={backgroundImage:"linear-gradient(90deg, var(--ww-color-muted-foreground) 0%, var(--ww-color-muted-foreground) 40%, var(--ww-color-foreground) 50%, var(--ww-color-muted-foreground) 60%, var(--ww-color-muted-foreground) 100%)",backgroundSize:"250% 100%",WebkitBackgroundClip:"text",backgroundClip:"text",color:"transparent",animation:`ww-shimmer ${a}s linear infinite`,...r};return qu(e,{"data-waniwani-shimmer":"",className:k("ww:inline-block",t),style:s,...n,children:o})},Be=Uu(Hu);Be.displayName="Shimmer";import{Fragment as Sn,jsx as K,jsxs as it}from"react/jsx-runtime";function ju(e,t=80){if(e==null)return String(e);if(typeof e!="object")return String(e).slice(0,t);if(Array.isArray(e))return`Array(${e.length})`;let a=JSON.stringify(e);if(a.length<=t)return a;let r=Object.entries(e),o=[],n=t-2;for(let[s,i]of r){if(n<=8)break;let l=s.length>4?`${s.slice(0,4)}\u2026`:s,u;typeof i=="string"?u=i.length>2?`'${i.slice(0,1)}\u2026`:`'${i}'`:Array.isArray(i)?u=`Array(${i.length})`:typeof i=="object"&&i!==null?u="{\u2026}":u=String(i);let d=`${l}\u2009${u}`;o.push(d),n-=d.length+3}return`{${o.join(", ")}}`}function $u({text:e,className:t}){let{t:a}=V(),[r,o]=yr(!1),n=zu(null);Vu(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=Gu(async i=>{i.stopPropagation();try{await navigator.clipboard.writeText(e),o(!0),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>o(!1),2e3)}catch{}},[e]);return K(Oe,{variant:"ghost",size:"sm",onClick:s,className:k("ww:h-auto ww:gap-1 ww:px-1.5 ww:py-0.5 ww:text-xs ww:text-muted-foreground ww:hover:text-foreground",t),children:r?it(Sn,{children:[K(Dt,{className:"ww:size-3.5"}),K("span",{children:a.tool.copied})]}):it(Sn,{children:[K(Ot,{className:"ww:size-3.5"}),K("span",{children:a.tool.copy})]})})}function bn({data:e,label:t,className:a,...r}){let[o,n]=yr(!1),s=Sr(()=>JSON.stringify(e,null,2),[e]),i=ju(e);return it("div",{className:k("ww:rounded-lg ww:bg-tool-card",a),...r,children:[it("div",{className:"ww:flex ww:items-center ww:justify-between ww:px-3 ww:pt-2.5 ww:pb-1.5",children:[K("span",{className:"ww:text-xs ww:font-medium ww:text-muted-foreground",children:t}),K($u,{text:s})]}),it("button",{type:"button",onClick:()=>n(l=>!l),className:"ww:flex ww:w-full ww:items-start ww:gap-2 ww:px-3 ww:pb-3 ww:text-left",children:[K(_t,{className:k("ww:mt-0.5 ww:size-3.5 ww:shrink-0 ww:text-muted-foreground ww:transition-transform ww:duration-150",o&&"ww:rotate-90")}),o?K("pre",{className:"ww:overflow-x-auto ww:text-xs ww:font-mono ww:text-foreground ww:whitespace-pre-wrap ww:break-all",children:K("code",{children:s})}):K("span",{className:"ww:truncate ww:text-xs ww:font-mono ww:text-foreground/80",children:i})]})]})}var br=Wu({open:!1,toggle:()=>{}});function kn({className:e,defaultOpen:t=!1,children:a,...r}){let[o,n]=yr(t);return K(br.Provider,{value:{open:o,toggle:()=>n(s=>!s)},children:K("div",{className:k("ww:mb-4 ww:w-full",e),"data-state":o?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:a})})}function Tn({className:e,title:t,state:a,...r}){let{open:o,toggle:n}=yn(br),s=a==="input-available"||a==="input-streaming",i=t??"";return it("button",{type:"button",onClick:n,className:k("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),"aria-expanded":o,...r,children:[K(nt,{className:"ww:size-4 ww:shrink-0"}),K("span",{className:"ww:truncate",children:s?K(Be,{duration:1.6,children:i}):i}),K(Qe,{className:k("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",o&&"ww:rotate-180")})]})}function vn({className:e,title:t,state:a,...r}){let o=a==="input-available"||a==="input-streaming",n=t??"";return K("div",{className:k("ww:mb-4 ww:flex ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...r,children:K("span",{className:"ww:truncate",children:o?K(Be,{duration:1.6,children:n}):n})})}function Pn({className:e,children:t,...a}){let{open:r}=yn(br);return K("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:K("div",{className:"ww:min-h-0 ww:overflow-hidden",children:K("div",{className:k("ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",e),...a,children:t})})})}function kr({className:e,input:t,debug:a,...r}){let{t:o}=V(),n=Sr(()=>{if(!a&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:s,...i}=t;return i}return t},[t,a]);return K(bn,{data:n,label:o.tool.request,className:e,...r})}function Cr(e){if(!(typeof e!="object"||e===null))return e}function An(e){return Cr(e?.ui)}function Rn(e){return Cr(Cr(e)?._meta)}function Ln(e){if(!e)return;let t=An(e)?.resourceUri;if(typeof t=="string"&&t.length>0)return t;let a=e["ui/resourceUri"];if(typeof a=="string"&&a.length>0)return a;let r=e["openai/outputTemplate"];if(typeof r=="string"&&r.length>0)return r}function Cn(e){return An(e)?.autoHeight===!0}function Vt(e,t,a){if(e){let r=Ln(a?.[e]?._meta);if(r)return r}return Ln(Rn(t))}function Mn(e,t,a){return e&&Cn(a?.[e]?._meta)?!0:Cn(Rn(t))}function Tr({className:e,output:t,errorText:a,debug:r,...o}){let{t:n}=V(),s=Sr(()=>{if(!r&&typeof t=="object"&&t!==null&&!Array.isArray(t)){let{_meta:i,...l}=t;return l}return t},[t,r]);return t||a?a?it("div",{className:k("ww:space-y-2",e),...o,children:[K("h4",{className:"ww:text-xs ww:font-medium ww:uppercase ww:tracking-wide ww:text-muted-foreground",children:n.tool.error}),K("div",{className:"ww:rounded-lg ww:bg-destructive/10 ww:p-3 ww:text-xs ww:text-destructive",children:a})]}):K(bn,{data:s,label:n.tool.response,className:e,...o}):null}import{jsx as sd}from"react/jsx-runtime";var Qu="/api/mcp/resource",Ju=500,Yu=0,Zu=16,ed="2026-01-26",td=300,ad=3e3,rd=3;function od(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function nd(e,t,a){return Vt(e,t,a)?!1:t._meta?.["waniwani/autoInjectResultText"]!==!1}function Pr({resourceUri:e,toolInput:t,toolResult:a,resourceEndpoint:r=Qu,chatSessionId:o,isDark:n=!1,className:s,autoHeight:i=!1,onOpenLink:l,onFollowUp:u,onCallTool:d,onDisplayModeChange:c,isFullscreen:f=!1,toolDefinitions:p}){let m=Ce(null),x=Ce(t),L=Ce(a),h=Ce({width:0,height:0}),I=Ce(null),g=Ce(!1),C=Ce(0),S=Ce("inline"),[v,A]=Fn(Yu),[P,D]=Fn(void 0),b=Ce(l),E=Ce(u),M=Ce(d),$=Ce(c),H=Ce(o),T=Ce(p);x.current=t,L.current=a,b.current=l,E.current=u,M.current=d,$.current=c,H.current=o,T.current=p;let y=Xu(q=>i?Math.max(q+Zu,0):Math.min(Math.max(q,50),Ju),[i]),F=Ku(()=>{let q=r.includes("?")?"&":"?";return`${r}${q}uri=${encodeURIComponent(e)}`},[r,e]),Me=Ce(n);Me.current=n;let be=Ce(f);return vr(()=>{be.current=f,h.current.height=-1,I.current&&(I.current.cancel(),I.current=null)},[f]),vr(()=>{if(!g.current)return;let q=m.current;q?.contentWindow&&q.contentWindow.postMessage({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{theme:n?"dark":"light"}},"*")},[n]),vr(()=>{let q=m.current;if(!q)return;let xe=!1,fe=!1,ke=null,pe=null,$e=setTimeout(()=>{if(xe||fe||C.current>=rd)return;C.current+=1;let Ie=new URL(q.src);Ie.searchParams.set("_retry",String(C.current)),q.src=Ie.toString()},ad),Z=Ie=>{q.contentWindow?.postMessage(Ie,"*")},Xe=Ie=>{if(xe||Ie.source!==q.contentWindow)return;let j=Ie.data;if(!j||typeof j!="object"||j.jsonrpc!=="2.0")return;let ne=j.method,W=j.id;if(ne==="ui/initialize"&&W!=null){fe=!0,clearTimeout($e),Z({jsonrpc:"2.0",id:W,result:{protocolVersion:j.params?.protocolVersion??ed,hostInfo:{name:"Waniwani Chat",version:"1.0.0"},hostCapabilities:{openLinks:{},message:{text:{}},tools:{},updateModelContext:{text:{},structuredContent:{}}},hostContext:{theme:Me.current?"dark":"light",displayMode:S.current}}});return}if(ne==="ui/notifications/initialized"){g.current=!0;let O=x.current,U=L.current,N=U._meta&&typeof U._meta=="object"?U._meta:null,ae=od(H.current),X=N&&typeof N.waniwani=="object"&&N.waniwani!==null?N.waniwani:null,me=X||ae?{...X??{},...ae?{sessionId:ae}:{}}:void 0,Le=N||me?{...N??{},...me?{waniwani:me}:{}}:void 0;Z({jsonrpc:"2.0",method:"ui/notifications/tool-input",params:{arguments:O}});let Te=U.content??[{type:"text",text:JSON.stringify(U)}];Z({jsonrpc:"2.0",method:"ui/notifications/tool-result",params:{content:Te,structuredContent:U.structuredContent,_meta:Le,meta:Le}});return}if(ne==="ui/notifications/size-changed"){let O=j.params,U=typeof O?.height=="number"?O.height:void 0,N=typeof O?.width=="number"?O.width:void 0,ae=h.current,X=U!==void 0&&U!==ae.height,me=N!==void 0&&N!==ae.width;if(!X&&!me)return;if(X&&U!==void 0){if(ae.height=U,be.current)return;let Le=y(U),Te=q.getBoundingClientRect().height;if(I.current&&(I.current.cancel(),I.current=null),A(Le),q.animate&&Math.abs(Te-Le)>2){let Ke=q.animate([{height:`${Te}px`},{height:`${Le}px`}],{duration:td,easing:"ease-out",fill:"forwards"});I.current=Ke,Ke.onfinish=()=>{I.current===Ke&&(Ke.cancel(),I.current=null)}}}me&&i&&N!==void 0&&(ae.width=N,D(N));return}if(ne==="ui/open-link"&&W!=null){let O=j.params?.url;typeof O=="string"&&(b.current?b.current(O):window.open(O,"_blank","noopener,noreferrer")),Z({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="ui/message"&&W!=null){if(E.current&&j.params){let O=j.params,U=ke;if(ke=null,pe){clearTimeout(pe.timer);let N=pe.text;pe=null;let ae=(O.content??[]).map(X=>X.text??"").join("").trim();O={...O,content:[{type:"text",text:`${ae}
|
|
3
3
|
|
|
4
|
-
${N}`}]}}E.current({...O,...U?{modelContext:U}:{}})}Z({jsonrpc:"2.0",id:G,result:{}});return}if(ne==="ui/update-model-context"&&G!=null){ke=ln(ke,j.params),Z({jsonrpc:"2.0",id:G,result:{}});return}if(ne==="tools/call"&&G!=null){let O=M.current;if(!O){Z({jsonrpc:"2.0",id:G,error:{code:-32601,message:"tools/call not supported"}});return}let U=j.params?.name;O({name:U,arguments:j.params?.arguments??{}}).then(N=>{Z({jsonrpc:"2.0",id:G,result:N});let ae=N.content?.map(X=>X.text??"").join("").trim();ae&&nd(U,N,T.current)&&(pe&&clearTimeout(pe.timer),pe={text:ae,timer:setTimeout(()=>{if(xe)return;let X=ke;ke=null,pe=null,E.current?.({role:"user",content:[{type:"text",text:ae}],...X?{modelContext:X}:{}})},500)})}).catch(N=>{let ae=N instanceof Error?N.message:"Tool call failed";Z({jsonrpc:"2.0",id:G,error:{code:-32e3,message:ae}})});return}if(ne==="ui/request-display-mode"&&G!=null){let O=j.params?.mode,U=O==="fullscreen"||O==="inline"||O==="pip"?O:"inline";S.current=U,Z({jsonrpc:"2.0",id:G,result:{mode:U}}),Z({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:U}}),$.current?.(U);return}if(ne==="ui/resource-teardown"&&G!=null){Z({jsonrpc:"2.0",id:G,result:{}});return}ne==="ping"&&G!=null&&Z({jsonrpc:"2.0",id:G,result:{}})};return window.addEventListener("message",Xe),()=>{xe=!0,clearTimeout($e),pe&&clearTimeout(pe.timer),window.removeEventListener("message",Xe)}},[i,y]),sd("iframe",{ref:m,src:F,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:k(!f&&"ww:rounded-md ww:border ww:border-border",s),style:{height:f?"100%":v,minWidth:f||!P?void 0:`min(${P}px, 100%)`,width:"100%",border:"none",colorScheme:n?"dark":"auto"},title:"MCP App"})}import{forwardRef as Pl,useCallback as ir,useEffect as je,useImperativeHandle as Xm,useRef as ht,useState as lr}from"react";import En from"crypto";var Bn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var id=128,lt,yt,ld=e=>{!lt||lt.length<e?(lt=Buffer.allocUnsafe(e*id),En.randomFillSync(lt),yt=0):yt+e>lt.length&&(En.randomFillSync(lt),yt=0),yt+=e};var zt=(e=21)=>{ld(e|=0);let t="";for(let a=yt-e;a<yt;a++)t+=Bn[lt[a]&63];return t};import{createContext as ud,useCallback as Ve,useContext as dd,useEffect as Ar,useMemo as cd,useRef as Rr,useState as Dn}from"react";import{jsx as Ee,jsxs as Gn}from"react/jsx-runtime";var fd=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(r=>{let o=new FileReader;o.onloadend=()=>r(o.result),o.onerror=()=>r(null),o.readAsDataURL(a)})}catch{return null}},_n=ud(null),On=()=>{let e=dd(_n);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},Nn=({className:e,accept:t,multiple:a,globalDrop:r,maxFiles:o,maxFileSize:n,onSubmit:s,children:i,...l})=>{let{t:u}=V(),d=Rr(null),c=Rr(null),[f,p]=Dn([]),m=Rr(f);Ar(()=>{m.current=f},[f]);let x=Ve(()=>{d.current?.click()},[]),L=Ve(v=>{let A=[...v];if(A.length===0)return;let P=b=>n?b.size<=n:!0,D=A.filter(P);p(b=>{let E=typeof o=="number"?Math.max(0,o-b.length):void 0,M=typeof E=="number"?D.slice(0,E):D;return[...b,...M.map($=>({filename:$.name,id:zt(),mediaType:$.type,type:"file",url:URL.createObjectURL($)}))]})},[o,n]),h=Ve(v=>{p(A=>{let P=A.find(D=>D.id===v);return P?.url&&URL.revokeObjectURL(P.url),A.filter(D=>D.id!==v)})},[]),I=Ve(()=>{p(v=>{for(let A of v)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);Ar(()=>()=>{for(let v of m.current)v.url&&URL.revokeObjectURL(v.url)},[]);let g=Ve(v=>{v.currentTarget.files&&L(v.currentTarget.files),v.currentTarget.value=""},[L]);Ar(()=>{if(!r)return;let v=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault()},A=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault(),P.dataTransfer?.files&&P.dataTransfer.files.length>0&&L(P.dataTransfer.files)};return document.addEventListener("dragover",v),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",v),document.removeEventListener("drop",A)}},[L,r]);let C=Ve(async v=>{v.preventDefault();let A=v.currentTarget,D=new FormData(A).get("message")||"";A.reset();let b=await Promise.all(f.map(async({id:E,...M})=>{if(M.url?.startsWith("blob:")){let $=await fd(M.url);return{...M,url:$??M.url}}return M}));try{let E=s({files:b,text:D},v);E instanceof Promise&&await E,I()}catch{}},[f,s,I]),S=cd(()=>({add:L,clear:I,files:f,openFileDialog:x,remove:h}),[f,L,h,I,x]);return Gn(_n.Provider,{value:S,children:[Ee("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:g,ref:d,title:u.promptInput.uploadFiles,type:"file"}),Ee("form",{className:k("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:C,ref:c,...l,children:i})]})};var Un=({onChange:e,onKeyDown:t,className:a,placeholder:r,...o})=>{let{t:n}=V(),s=On(),[i,l]=Dn(!1),u=r??n.promptInput.placeholder,d=Ve(f=>{if(t?.(f),!f.defaultPrevented){if(f.key==="Enter"){if(i||f.nativeEvent.isComposing||f.shiftKey)return;f.preventDefault();let{form:p}=f.currentTarget;if(p?.querySelector('button[type="submit"]')?.disabled)return;p?.requestSubmit()}if(f.key==="Backspace"&&f.currentTarget.value===""&&s.files.length>0){f.preventDefault();let p=s.files.at(-1);p&&s.remove(p.id)}}},[t,i,s]),c=Ve(f=>{let p=f.clipboardData?.items;if(!p)return;let m=[];for(let x of p)if(x.kind==="file"){let L=x.getAsFile();L&&m.push(L)}m.length>0&&(f.preventDefault(),s.add(m))},[s]);return Ee("textarea",{className:k("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:d,onPaste:c,placeholder:u,onChange:e,...o})},Hn=({className:e,status:t,onStop:a,onClick:r,children:o,...n})=>{let{t:s}=V(),i=t==="submitted"||t==="streaming",l=Ee(Et,{className:"ww:size-4"});t==="submitted"?l=Ee(Ht,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Ee(Gt,{className:"ww:size-4"}));let u=Ve(d=>{if(i&&a){d.preventDefault(),a();return}r?.(d)},[i,a,r]);return Ee(Oe,{"aria-label":i?s.promptInput.stop:s.promptInput.submit,className:k("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...n,children:o??l})},qn=({className:e,children:t,...a})=>{let{t:r}=V(),o=On();return o.files.length>0?Gn(Oe,{className:k("ww:group ww:relative",e),onClick:()=>o.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":r.promptInput.removeAttachments,...a,children:[Ee("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:o.files.length}),Ee(st,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Ee(Oe,{className:k(e),onClick:()=>o.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Ee(qt,{className:"ww:size-4"})})};import{jsx as pd}from"react/jsx-runtime";function Wn({text:e}){let{t}=V();return e===!1?null:pd("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{memo as md,useCallback as hd}from"react";import{jsx as bt}from"react/jsx-runtime";var Vn=({className:e,...t})=>bt("div",{className:k("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),zn=({className:e,...t})=>bt("li",{className:k("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),jn=({className:e,...t})=>bt("span",{className:k("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),$n=({className:e,...t})=>bt("span",{className:k("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Xn=({className:e,...t})=>bt("div",{className:k("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Kn=({className:e,...t})=>bt(Oe,{className:k("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Je,jsxs as Yn}from"react/jsx-runtime";var Qn=md(({message:e,onRemove:t})=>{let{t:a}=V(),r=hd(()=>t(e.id),[t,e.id]);return Yn(zn,{children:[Je(jn,{}),Je($n,{children:e.text||a.chatQueue.attachmentFallback}),Je(Xn,{children:Je(Kn,{"aria-label":a.chatQueue.removeFromQueue,onClick:r,children:Je(st,{className:"ww:size-3"})})})]})});Qn.displayName="ChatQueueItem";function Jn({queuedMessages:e,onRemove:t,className:a}){let{t:r}=V();return e.length===0?null:Yn(Vn,{className:k("ww:border-t ww:border-border",a),children:[Je("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:r.chatQueue.queued(e.length)}),Je("ul",{children:e.map(o=>Je(Qn,{message:o,onRemove:t},o.id))})]})}import{jsx as jt,jsxs as wd}from"react/jsx-runtime";var Zn=({files:e,className:t,...a})=>e.length===0?null:jt("div",{className:k("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((r,o)=>jt(gd,{file:r},o))});function gd({file:e}){let{t}=V();return e.mediaType?.startsWith("image/")&&e.url?jt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):wd("span",{className:"ww:inline-flex ww:items-center ww:gap-1.5 ww:rounded ww:bg-background/20 ww:px-2 ww:py-1 ww:text-xs",children:[jt(Nt,{className:"ww:size-3 ww:shrink-0"}),jt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as Td,useCallback as vd,useContext as Pd,useEffect as Ad,useMemo as Rd,useState as Er}from"react";import{createContext as xd,memo as Br,useCallback as Id,useContext as Ld,useEffect as Mr,useMemo as Cd,useRef as es,useState as Fr}from"react";import{Fragment as bd,jsx as De,jsxs as kd}from"react/jsx-runtime";var ts=xd(null);function as(){let e=Ld(ts);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Sd=1e3,yd=1e3,$t=Br(({className:e,isStreaming:t=!1,open:a,defaultOpen:r,onOpenChange:o,duration:n,children:s,...i})=>{let l=r??t,u=r===!1,d=a!==void 0,[c,f]=Fr(l),p=d?a:c,m=Id(A=>{d||f(A),o?.(A)},[d,o]),[x,L]=Fr(void 0),h=n??x,I=es(t),[g,C]=Fr(!1),S=es(null);Mr(()=>{t?(I.current=!0,S.current===null&&(S.current=Date.now())):S.current!==null&&(L(Math.ceil((Date.now()-S.current)/yd)),S.current=null)},[t]),Mr(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Mr(()=>{if(I.current&&!t&&p&&!g){let A=setTimeout(()=>{m(!1),C(!0)},Sd);return()=>clearTimeout(A)}},[t,p,g,m]);let v=Cd(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:h}),[t,p,m,h]);return De(ts.Provider,{value:v,children:De("div",{className:k("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":p?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})});$t.displayName="Reasoning";var Xt=Br(({className:e,children:t,getThinkingMessage:a,hideIcon:r=!1,onClick:o,...n})=>{let{t:s}=V(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:d}=as(),f=a??((p,m)=>p||m===0?De(Be,{duration:1.6,children:s.reasoning.thinking}):m===void 0?De("span",{children:s.reasoning.thoughtBrief}):De("span",{children:s.reasoning.thoughtForSeconds(m)}));return De("button",{type:"button","aria-expanded":l,onClick:p=>{d(!l),o?.(p)},className:k("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...n,children:t??kd(bd,{children:[!r&&De(We,{className:"ww:size-4 ww:shrink-0"}),f(i,u)]})})});Xt.displayName="ReasoningTrigger";var Kt=Br(({className:e,children:t,...a})=>{let{isOpen:r}=as();return De("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:De("div",{className:"ww:min-h-0 ww:overflow-hidden",children:De("div",{className:k("ww:text-sm ww:text-muted-foreground",e),...a,children:De(Ft,{children:t})})})})});Kt.displayName="ReasoningContent";import{jsx as Q,jsxs as Ye}from"react/jsx-runtime";var Md=500,rs=Td(null);function os(){let e=Pd(rs);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function ns({className:e,isWorking:t=!1,activeStep:a,open:r,defaultOpen:o=!1,onOpenChange:n,children:s,...i}){let l=r!==void 0,[u,d]=Er(o),c=l?r:u,f=vd(L=>{l||d(L),n?.(L)},[l,n]),[p,m]=Er(!t);Ad(()=>{if(t){m(!1);return}let L=setTimeout(()=>m(!0),Md);return()=>clearTimeout(L)},[t]);let x=Rd(()=>({open:c,setOpen:f,isWorking:t,settled:p,activeStep:a}),[c,f,t,p,a]);return Q(rs.Provider,{value:x,children:Q("div",{className:k("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":c?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})}function ss({className:e,label:t,workingLabel:a,children:r,...o}){let{open:n,setOpen:s,isWorking:i,settled:l,activeStep:u}=os();if(!l){let d=u?.icon,c=u?.label??a??t??"";return Q("div",{className:k("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:Ye("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:[d&&Q(d,{className:k("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),Q("span",{className:"ww:truncate",children:i?Q(Be,{duration:2.6,children:c}):c})]},c)})}return Ye("button",{type:"button",onClick:()=>s(!n),"aria-expanded":n,className:k("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...o,children:[Q("span",{className:"ww:truncate",children:r??t}),Q(Qe,{className:k("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",n&&"ww:rotate-180")})]})}function is({className:e,children:t,...a}){let{open:r}=os();return Q("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Q("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Q("div",{className:k("ww:flex ww:flex-col",e),...a,children:t})})})}function ls({icon:e,isLast:t,running:a,error:r}){return Ye("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Q("span",{className:"ww:flex ww:h-5 ww:items-center",children:Q(e,{className:k("ww:size-4 ww:shrink-0",r?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Q("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Dr({className:e,icon:t,title:a,state:r,isLast:o=!1,children:n,...s}){let i=r==="input-available"||r==="input-streaming",l=r==="output-error",u=n!=null,[d,c]=Er(!1),f=a??"",p=i?Q(Be,{duration:1.6,children:f}):Q("span",{className:"ww:truncate",children:f});return Ye("div",{className:k("ww:flex ww:gap-2",e),...s,children:[Q(ls,{icon:t,isLast:o,running:i,error:l}),Ye("div",{className:k("ww:min-w-0 ww:flex-1",!o&&"ww:pb-3"),children:[u?Ye("button",{type:"button",onClick:()=>c(m=>!m),"aria-expanded":d,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,Q(Qe,{className:k("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",d&&"ww:rotate-180")})]}):Q("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&Q("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",d?"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:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:n})})})]})]})}function us({isStreaming:e=!1,isLast:t=!1,children:a}){return Ye("div",{className:"ww:flex ww:gap-2",children:[Q(ls,{icon:We,isLast:t,running:e}),Q("div",{className:k("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:Ye($t,{isStreaming:e,className:"ww:mb-0",children:[Q(Xt,{hideIcon:!0}),Q(Kt,{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 Ne={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 ve={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 ds(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 cs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function fs(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 ps(e){return ds(e)?"ambiguous":cs(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":fs(e)?"wide":"neutral"}function Fd(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function ms(e){return Fd(e),ps(e)}var Bd=Object.defineProperty,Ed=(e,t,a)=>t in e?Bd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Dd=(e,t,a)=>Ed(e,typeof t!="symbol"?t+"":t,a);function _d(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Od(e){if(!e||e<4352)return!1;switch(ms(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!_d(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 Nd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Ud(e){return e!==null&&e>=65024&&e<=65038}var Hd=hs(/\p{P}|\p{S}/u),qd=hs(/\s/);function hs(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 Ze(e){if(e===he.eof||sn(e)||qd(e))return Ne.characterGroupWhitespace;let t=0;if(e>=4352){if(Ud(e))return Pe.nonEmojiGeneralUseVS;switch(Od(e)){case null:return Pe.ivs;case!0:t|=Pe.cjk;break}}return Hd(e)&&(t|=Ne.characterGroupPunctuation),t}function Ia(e,t,a){if(!Wd(e))return e;let r=t(),o=Ze(r);return!r||ut(o)?e:Nd(r,a)?Pe.cjkPunctuation:Gd(o)}function Gd(e){return e&~Pe.ivs}function ut(e){return!!(e&Ne.characterGroupWhitespace)}function kt(e){return(e&Pe.cjkPunctuation)===Ne.characterGroupPunctuation}function Qt(e){return!!(e&Pe.cjk)}function gs(e){return e===Pe.ivs}function ws(e){return!!(e&Pe.cjkOrIvs)}function Wd(e){return e===Pe.nonEmojiGeneralUseVS}function _r(e){return!!(e&Pe.spaceOrPunctuation)}function La(e){return!!(e&&e>=55296&&e<=56319)}function Ca(e){return!!(e&&e>=56320&&e<=57343)}function Sa(e,t,a){if(t._bufferIndex<2)return e;let o=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return o&&o>=65536?o:e}function Vd(e,t,a){let r=e>=65536?2:1;if(t._bufferIndex<1+r)return null;let o=t._bufferIndex-r-2,n=a({start:{...t,_bufferIndex:o>=0?o:0},end:{...t,_bufferIndex:t._bufferIndex-r}}),s=n.charCodeAt(n.length-1);if(Number.isNaN(s))return null;if(n.length<2||s<56320||57343<s)return s;let i=n.codePointAt(0);return i&&i>=65536?i:s}var ya=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,Dd(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=Vd(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function ba(e,t,a){let r=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return r&&r>=65536?r:e}var Or={name:"attention",resolveAll:zd,tokenize:jd};function zd(e,t){let a=-1,r,o,n,s,i,l,u,d;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(r=a;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[r][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let c={...e[r][1].end},f={...e[a][1].start};xs(c,-l),xs(f,l),s={type:l>1?ve.strongSequence:ve.emphasisSequence,start:c,end:{...e[r][1].end}},i={type:l>1?ve.strongSequence:ve.emphasisSequence,start:{...e[a][1].start},end:f},n={type:l>1?ve.strongText:ve.emphasisText,start:{...e[r][1].end},end:{...e[a][1].start}},o={type:l>1?ve.strong:ve.emphasis,start:{...s.start},end:{...i.end}},e[r][1].end={...s.start},e[a][1].start={...i.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=xt(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=xt(u,[["enter",o,t],["enter",s,t],["exit",s,t],["enter",n,t]]),t.parser.constructs.insideSpan.null,u=xt(u,ga(t.parser.constructs.insideSpan.null,e.slice(r+1,a),t)),u=xt(u,[["exit",n,t],["enter",i,t],["exit",i,t],["exit",o,t]]),e[a][1].end.offset-e[a][1].start.offset?(d=2,u=xt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):d=0,wt(e,r-1,a-r+3,u),a=r+u.length-d-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function jd(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:r,sliceSerialize:o,previous:n}=this,s=Ca(n)?Sa(n,r(),o):n,i=Ze(s),l=new ya(s,r(),o),u=Ia(i,l.value.bind(l),s),d;return c;function c(p){return p===he.asterisk||he.underscore,d=p,e.enter("attentionSequence"),f(p)}function f(p){if(p===d)return e.consume(p),f;let m=e.exit("attentionSequence"),x=La(p)?ba(p,r(),o):p,L=Ze(x);let h=kt(u),I=h||ut(u),g=kt(L),C=g||ut(L),S=ws(u),v=!C||g&&(I||S)||a.includes(p),A=!I||h&&(C||Qt(L))||a.includes(s);return m._open=!!(d===he.asterisk?v:v&&(_r(u)||!A)),m._close=!!(d===he.asterisk?A:A&&(_r(L)||!v)),t(p)}}function xs(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Is(){return{text:{[he.asterisk]:Or,[he.underscore]:Or},insideSpan:{null:[Or]}}}function Ls(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Is())}function Cs(e){let a=(e||{}).singleTilde,r={name:"strikethrough",tokenize:n,resolveAll:o};return a==null&&(a=!0),{text:{[he.tilde]:r},insideSpan:{null:[r]},attentionMarkers:{null:[he.tilde]}};function o(s,i){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";let d={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},c={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",d,i],["enter",s[u][1],i],["exit",s[u][1],i],["enter",c,i]],p=i.parser.constructs.insideSpan.null;p&&wt(f,f.length,0,ga(p,s.slice(u+1,l),i)),wt(f,f.length,0,[["exit",c,i],["enter",s[l][1],i],["exit",s[l][1],i],["exit",d,i]]),wt(s,u-1,l-u+3,f),l=u+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type=ve.data);return s}function n(s,i,l){let{now:u,sliceSerialize:d,previous:c}=this,f=Ca(c)?Sa(c,u(),d):c,p=Ze(f),m=new ya(f,u(),d),x=Ia(p,m.value.bind(m),f),L=this.events,h=0;return I;function I(C){return he.tilde,f===he.tilde&&L[L.length-1][1].type!==ve.characterEscape?l(C):(s.enter("strikethroughSequenceTemporary"),g(C))}function g(C){let S=Ze(f);if(C===he.tilde)return h>1?l(C):(s.consume(C),h++,g);if(h<2&&!a)return l(C);let v=s.exit("strikethroughSequenceTemporary"),A=La(C)?ba(C,u(),d):C,P=Ze(A),b=kt(x)||ut(x),M=kt(P)||ut(P),$=Qt(x)||gs(S);return v._open=!M||P===Ne.attentionSideAfter&&(b||$),v._close=!b||S===Ne.attentionSideAfter&&(M||Qt(P)),i(C)}}}function Ss(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(Cs(e))}var $d=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),Xd=/^(https?:\/\/|mailto:|www\.)/i,Kd=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},Qd=e=>{let t=0;for(let a of e){if($d.has(a))return t;t+=a.length}return null},Jd=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),Yd=e=>({type:"text",value:e}),Zd=()=>e=>{Zo(e,"link",(t,a,r)=>{if(!r||typeof a!="number"||!Kd(t)||!Xd.test(t.url))return;let o=Qd(t.url);if(o===null||o===0)return;let n=t.url.slice(0,o),s=t.url.slice(o),i=Jd(n,t),l=Yd(s);return r.children.splice(a,1,i,l),a+1})};function ec(){let e=[Ls],t=[Zd,Ss],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Nr=ec();var ee=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function tc(e){return Xr(e)}function Xr(e){return Array.isArray(e)?ac(e):e instanceof RegExp?e:typeof e=="object"?rc(e):e}function ac(e){let t=[];for(let a=0,r=e.length;a<r;a++)t[a]=Xr(e[a]);return t}function rc(e){let t={};for(let a in e)t[a]=Xr(e[a]);return t}function Ms(e,...t){return t.forEach(a=>{for(let r in a)e[r]=a[r]}),e}function Fs(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?Fs(e.substring(0,e.length-1)):e.substr(~t+1)}var Ur=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,ka=class{static hasCaptures(e){return e===null?!1:(Ur.lastIndex=0,Ur.test(e))}static replaceCaptures(e,t,a){return e.replace(Ur,(r,o,n,s)=>{let i=a[parseInt(o||n,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return r})}};function Bs(e,t){return e<t?-1:e>t?1:0}function Es(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,r=t.length;if(a===r){for(let o=0;o<a;o++){let n=Bs(e[o],t[o]);if(n!==0)return n}return 0}return a-r}function ys(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 Ds(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var _s=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(sc(e),t)}static createFromParsedTheme(e,t){return lc(e,t)}_cachedMatchRoot=new _s(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,r=this._cachedMatchRoot.get(t).find(o=>oc(e.parent,o.parentScopes));return r?new Os(r.fontStyle,r.foreground,r.background):null}},Hr=class Ta{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let r of a)t=new Ta(t,r);return t}static from(...t){let a=null;for(let r=0;r<t.length;r++)a=new Ta(a,t[r]);return a}push(t){return new Ta(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push(r.scopeName),r=r.parent;return r===t?a.reverse():void 0}};function oc(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let r=t[a],o=!1;if(r===">"){if(a===t.length-1)return!1;r=t[++a],o=!0}for(;e&&!nc(e.scopeName,r);){if(o)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function nc(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Os=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function sc(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],r=0;for(let o=0,n=t.length;o<n;o++){let s=t[o];if(!s.settings)continue;let i;if(typeof s.scope=="string"){let c=s.scope;c=c.replace(/^[,]+/,""),c=c.replace(/[,]+$/,""),i=c.split(",")}else Array.isArray(s.scope)?i=s.scope:i=[""];let l=-1;if(typeof s.settings.fontStyle=="string"){l=0;let c=s.settings.fontStyle.split(" ");for(let f=0,p=c.length;f<p;f++)switch(c[f]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof s.settings.foreground=="string"&&ys(s.settings.foreground)&&(u=s.settings.foreground);let d=null;typeof s.settings.background=="string"&&ys(s.settings.background)&&(d=s.settings.background);for(let c=0,f=i.length;c<f;c++){let m=i[c].trim().split(" "),x=m[m.length-1],L=null;m.length>1&&(L=m.slice(0,m.length-1),L.reverse()),a[r++]=new ic(x,L,o,l,u,d)}}return a}var ic=class{constructor(e,t,a,r,o,n){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=r,this.foreground=o,this.background=n}},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 lc(e,t){e.sort((l,u)=>{let d=Bs(l.scope,u.scope);return d!==0||(d=Es(l.parentScopes,u.parentScopes),d!==0)?d:l.index-u.index});let a=0,r="#000000",o="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(r=l.foreground),l.background!==null&&(o=l.background)}let n=new uc(t),s=new Os(a,n.getId(r),n.getId(o)),i=new cc(new Gr(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let d=e[l];i.insert(0,d.scope,d.parentScopes,d.fontStyle,n.getId(d.foreground),n.getId(d.background))}return new Zt(n,s,i)}var uc=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)}},dc=Object.freeze([]),Gr=class Ns{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,r,o,n){this.scopeDepth=t,this.parentScopes=a||dc,this.fontStyle=r,this.foreground=o,this.background=n}clone(){return new Ns(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let r=0,o=t.length;r<o;r++)a[r]=t[r].clone();return a}acceptOverwrite(t,a,r,o){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),r!==0&&(this.foreground=r),o!==0&&(this.background=o)}},cc=class Wr{constructor(t,a=[],r={}){this._mainRule=t,this._children=r,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let r=0,o=0;for(;t.parentScopes[r]===">"&&r++,a.parentScopes[o]===">"&&o++,!(r>=t.parentScopes.length||o>=a.parentScopes.length);){let n=a.parentScopes[o].length-t.parentScopes[r].length;if(n!==0)return n;r++,o++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let r=t.indexOf("."),o,n;if(r===-1?(o=t,n=""):(o=t.substring(0,r),n=t.substring(r+1)),this._children.hasOwnProperty(o))return this._children[o].match(n)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Wr._cmpBySpecificity),a}insert(t,a,r,o,n,s){if(a===""){this._doInsertHere(t,r,o,n,s);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let d;this._children.hasOwnProperty(l)?d=this._children[l]:(d=new Wr(this._mainRule.clone(),Gr.cloneArr(this._rulesWithParentScopes)),this._children[l]=d),d.insert(t+1,u,r,o,n,s)}_doInsertHere(t,a,r,o,n){if(a===null){this._mainRule.acceptOverwrite(t,r,o,n);return}for(let s=0,i=this._rulesWithParentScopes.length;s<i;s++){let l=this._rulesWithParentScopes[s];if(Es(l.parentScopes,a)===0){l.acceptOverwrite(t,r,o,n);return}}r===-1&&(r=this._mainRule.fontStyle),o===0&&(o=this._mainRule.foreground),n===0&&(n=this._mainRule.background),this._rulesWithParentScopes.push(new Gr(t,a,r,o,n))}},ct=class Fe{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Fe.getLanguageId(t),r=Fe.getTokenType(t),o=Fe.getFontStyle(t),n=Fe.getForeground(t),s=Fe.getBackground(t);console.log({languageId:a,tokenType:r,fontStyle:o,foreground:n,background:s})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,r,o,n,s,i){let l=Fe.getLanguageId(t),u=Fe.getTokenType(t),d=Fe.containsBalancedBrackets(t)?1:0,c=Fe.getFontStyle(t),f=Fe.getForeground(t),p=Fe.getBackground(t);return a!==0&&(l=a),r!==8&&(u=r),o!==null&&(d=o?1:0),n!==-1&&(c=n),s!==0&&(f=s),i!==0&&(p=i),(l<<0|u<<8|d<<10|c<<11|f<<15|p<<24)>>>0}};function Pa(e,t){let a=[],r=fc(e),o=r.next();for(;o!==null;){let l=0;if(o.length===2&&o.charAt(1)===":"){switch(o.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${o} in scope selector`)}o=r.next()}let u=s();if(a.push({matcher:u,priority:l}),o!==",")break;o=r.next()}return a;function n(){if(o==="-"){o=r.next();let l=n();return u=>!!l&&!l(u)}if(o==="("){o=r.next();let l=i();return o===")"&&(o=r.next()),l}if(bs(o)){let l=[];do l.push(o),o=r.next();while(bs(o));return u=>t(l,u)}return null}function s(){let l=[],u=n();for(;u;)l.push(u),u=n();return d=>l.every(c=>c(d))}function i(){let l=[],u=s();for(;u&&(l.push(u),o==="|"||o===",");){do o=r.next();while(o==="|"||o===",");u=s()}return d=>l.some(c=>c(d))}}function bs(e){return!!e&&!!e.match(/[\w\.:]+/)}function fc(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let r=a[0];return a=t.exec(e),r}}}function Us(e){typeof e.dispose=="function"&&e.dispose()}var ea=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},pc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},mc=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))}},hc=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new ea(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new mc;for(let a of e)gc(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof ea){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function gc(e,t,a,r){let o=a.lookup(e.scopeName);if(!o){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let n=a.lookup(t);e instanceof ea?va({baseGrammar:n,selfGrammar:o},r):Vr(e.ruleName,{baseGrammar:n,selfGrammar:o,repository:o.repository},r);let s=a.injections(e.scopeName);if(s)for(let i of s)r.add(new ea(i))}function Vr(e,t,a){if(t.repository&&t.repository[e]){let r=t.repository[e];Aa([r],t,a)}}function va(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Aa(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Aa(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Aa(e,t,a){for(let r of e){if(a.visitedRule.has(r))continue;a.visitedRule.add(r);let o=r.repository?Ms({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&Aa(r.patterns,{...t,repository:o},a);let n=r.include;if(!n)continue;let s=Hs(n);switch(s.kind){case 0:va({...t,selfGrammar:t.baseGrammar},a);break;case 1:va(t,a);break;case 2:Vr(s.ruleName,{...t,repository:o},a);break;case 3:case 4:let i=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:o};s.kind===4?Vr(s.ruleName,l,a):va(l,a)}else s.kind===4?a.add(new pc(s.scopeName,s.ruleName)):a.add(new ea(s.scopeName));break}}}var wc=class{kind=0},xc=class{kind=1},Ic=class{constructor(e){this.ruleName=e}kind=2},Lc=class{constructor(e){this.scopeName=e}kind=3},Cc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Hs(e){if(e==="$base")return new wc;if(e==="$self")return new xc;let t=e.indexOf("#");if(t===-1)return new Lc(e);if(t===0)return new Ic(e.substring(1));{let a=e.substring(0,t),r=e.substring(t+1);return new Cc(a,r)}}var Sc=/\\(\d+)/,ks=/\\(\d+)/g;var yc=-1,qs=-2;var ra=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,r){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=ka.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=ka.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${Fs(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:ka.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:ka.replaceCaptures(this._contentName,e,t)}},bc=class extends ra{retokenizeCapturedWithRuleId;constructor(e,t,a,r,o){super(e,t,a,r),this.retokenizeCapturedWithRuleId=o}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,r){throw new Error("Not supported!")}},kc=class extends ra{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,null),this._match=new ta(r,this.id),this.captures=o,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new aa,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Ts=class extends ra{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,r),this.patterns=o.patterns,this.hasMissingPatterns=o.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(let a of this.patterns)e.getRule(a).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new aa,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},zr=class extends ra{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o,n,s,i,l,u){super(e,t,a,r),this._begin=new ta(o,this.id),this.beginCaptures=n,this._end=new ta(s||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new aa;for(let a of this.patterns)e.getRule(a).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},Ra=class extends ra{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,r,o,n,s,i,l){super(e,t,a,r),this._begin=new ta(o,this.id),this.beginCaptures=n,this.whileCaptures=i,this._while=new ta(s,qs),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new aa;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,a,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new aa,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Gs=class Se{static createCaptureRule(t,a,r,o,n){return t.registerRule(s=>new bc(a,s,r,o,n))}static getCompiledRuleId(t,a,r){return t.id||a.registerRule(o=>{if(t.id=o,t.match)return new kc(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,r));if(typeof t.begin>"u"){t.repository&&(r=Ms({},r,t.repository));let n=t.patterns;return typeof n>"u"&&t.include&&(n=[{include:t.include}]),new Ts(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(n,a,r))}return t.while?new Ra(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,r),t.while,Se._compileCaptures(t.whileCaptures||t.captures,a,r),Se._compilePatterns(t.patterns,a,r)):new zr(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,r),t.end,Se._compileCaptures(t.endCaptures||t.captures,a,r),t.applyEndPatternLast,Se._compilePatterns(t.patterns,a,r))}),t.id}static _compileCaptures(t,a,r){let o=[];if(t){let n=0;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10);i>n&&(n=i)}for(let s=0;s<=n;s++)o[s]=null;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10),l=0;t[s].patterns&&(l=Se.getCompiledRuleId(t[s],a,r)),o[i]=Se.createCaptureRule(a,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return o}static _compilePatterns(t,a,r){let o=[];if(t)for(let n=0,s=t.length;n<s;n++){let i=t[n],l=-1;if(i.include){let u=Hs(i.include);switch(u.kind){case 0:case 1:l=Se.getCompiledRuleId(r[i.include],a,r);break;case 2:let d=r[u.ruleName];d&&(l=Se.getCompiledRuleId(d,a,r));break;case 3:case 4:let c=u.scopeName,f=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(c,r);if(p)if(f){let m=p.repository[f];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,r);if(l!==-1){let u=a.getRule(l),d=!1;if((u instanceof Ts||u instanceof zr||u instanceof Ra)&&u.hasMissingPatterns&&u.patterns.length===0&&(d=!0),d)continue;o.push(l)}}return{patterns:o,hasMissingPatterns:(t?t.length:0)!==o.length}}},ta=class Ws{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let r=t.length,o=0,n=[],s=!1;for(let i=0;i<r;i++)if(t.charAt(i)==="\\"&&i+1<r){let u=t.charAt(i+1);u==="z"?(n.push(t.substring(o,i)),n.push("$(?!\\n)(?<!\\n)"),o=i+2):(u==="A"||u==="G")&&(s=!0),i++}this.hasAnchor=s,o===0?this.source=t:(n.push(t.substring(o,r)),this.source=n.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Sc.test(this.source):this.hasBackReferences=!1}clone(){return new Ws(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,a){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let r=a.map(o=>t.substring(o.start,o.end));return ks.lastIndex=0,this.source.replace(ks,(o,n)=>Ds(r[parseInt(n,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],r=[],o=[],n,s,i,l;for(n=0,s=this.source.length;n<s;n++)i=this.source.charAt(n),t[n]=i,a[n]=i,r[n]=i,o[n]=i,i==="\\"&&n+1<s&&(l=this.source.charAt(n+1),l==="A"?(t[n+1]="\uFFFF",a[n+1]="\uFFFF",r[n+1]="A",o[n+1]="A"):l==="G"?(t[n+1]="\uFFFF",a[n+1]="G",r[n+1]="\uFFFF",o[n+1]="G"):(t[n+1]=l,a[n+1]=l,r[n+1]=l,o[n+1]=l),n++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:r.join(""),A1_G1:o.join("")}}resolveAnchors(t,a){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?a?this._anchorCache.A1_G1:this._anchorCache.A1_G0:a?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},aa=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){if(!this._cached){let t=this._items.map(a=>a.source);this._cached=new vs(e,t,this._items.map(a=>a.ruleId))}return this._cached}compileAG(e,t,a){return this._hasAnchors?t?a?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G0):a?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,a){let r=this._items.map(o=>o.resolveAnchors(t,a));return new vs(e,r,this._items.map(o=>o.ruleId))}},vs=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(`
|
|
5
|
-
`)}findNextMatchSync(e,t,a){let r=this.scanner.findNextMatchSync(e,t,a);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},qr=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Tc=class jr{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new qr(t,8),this._embeddedLanguagesMatcher=new vc(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?jr._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new qr(0,0);_getBasicScopeAttributes=new _s(t=>{let a=this._scopeToLanguage(t),r=this._toStandardTokenType(t);return new qr(a,r)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(jr.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/},vc=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([a,r])=>Ds(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])}},EI={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},Vs=!1,Ps=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function zs(e,t,a,r,o,n,s,i){let l=t.content.length,u=!1,d=-1;if(s){let p=Pc(e,t,a,r,o,n);o=p.stack,r=p.linePos,a=p.isFirstLine,d=p.anchorPosition}let c=Date.now();for(;!u;){if(i!==0&&Date.now()-c>i)return new Ps(o,!0);f()}return new Ps(o,!1);function f(){let p=Ac(e,t,a,r,o,d);if(!p){n.produce(o,l),u=!0;return}let m=p.captureIndices,x=p.matchedRuleId,L=m&&m.length>0?m[0].end>r:!1;if(x===yc){let h=o.getRule(e);n.produce(o,m[0].start),o=o.withContentNameScopesList(o.nameScopesList),Jt(e,t,a,o,n,h.endCaptures,m),n.produce(o,m[0].end);let I=o;if(o=o.parent,d=I.getAnchorPos(),!L&&I.getEnterPos()===r){o=I,n.produce(o,l),u=!0;return}}else{let h=e.getRule(x);n.produce(o,m[0].start);let I=o,g=h.getName(t.content,m),C=o.contentNameScopesList.pushAttributed(g,e);if(o=o.push(x,r,d,m[0].end===l,null,C,C),h instanceof zr){let S=h;Jt(e,t,a,o,n,S.beginCaptures,m),n.produce(o,m[0].end),d=m[0].end;let v=S.getContentName(t.content,m),A=C.pushAttributed(v,e);if(o=o.withContentNameScopesList(A),S.endHasBackReferences&&(o=o.withEndRule(S.getEndWithResolvedBackReferences(t.content,m))),!L&&I.hasSameRuleAs(o)){o=o.pop(),n.produce(o,l),u=!0;return}}else if(h instanceof Ra){let S=h;Jt(e,t,a,o,n,S.beginCaptures,m),n.produce(o,m[0].end),d=m[0].end;let v=S.getContentName(t.content,m),A=C.pushAttributed(v,e);if(o=o.withContentNameScopesList(A),S.whileHasBackReferences&&(o=o.withEndRule(S.getWhileWithResolvedBackReferences(t.content,m))),!L&&I.hasSameRuleAs(o)){o=o.pop(),n.produce(o,l),u=!0;return}}else if(Jt(e,t,a,o,n,h.captures,m),n.produce(o,m[0].end),o=o.pop(),!L){o=o.safePop(),n.produce(o,l),u=!0;return}}m[0].end>r&&(r=m[0].end,a=!1)}}function Pc(e,t,a,r,o,n){let s=o.beginRuleCapturedEOL?0:-1,i=[];for(let l=o;l;l=l.pop()){let u=l.getRule(e);u instanceof Ra&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:d}=Fc(l.rule,e,l.stack.endRule,a,r===s),c=u.findNextMatchSync(t,r,d);if(c){if(c.ruleId!==qs){o=l.stack.pop();break}c.captureIndices&&c.captureIndices.length&&(n.produce(l.stack,c.captureIndices[0].start),Jt(e,t,a,l.stack,n,l.rule.whileCaptures,c.captureIndices),n.produce(l.stack,c.captureIndices[0].end),s=c.captureIndices[0].end,c.captureIndices[0].end>r&&(r=c.captureIndices[0].end,a=!1))}else{o=l.stack.pop();break}}return{stack:o,linePos:r,anchorPosition:s,isFirstLine:a}}function Ac(e,t,a,r,o,n){let s=Rc(e,t,a,r,o,n),i=e.getInjections();if(i.length===0)return s;let l=Mc(i,e,t,a,r,o,n);if(!l)return s;if(!s)return l;let u=s.captureIndices[0].start,d=l.captureIndices[0].start;return d<u||l.priorityMatch&&d===u?l:s}function Rc(e,t,a,r,o,n){let s=o.getRule(e),{ruleScanner:i,findOptions:l}=js(s,e,o.endRule,a,r===n),u=i.findNextMatchSync(t,r,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Mc(e,t,a,r,o,n,s){let i=Number.MAX_VALUE,l=null,u,d=0,c=n.contentNameScopesList.getScopeNames();for(let f=0,p=e.length;f<p;f++){let m=e[f];if(!m.matcher(c))continue;let x=t.getRule(m.ruleId),{ruleScanner:L,findOptions:h}=js(x,t,null,r,o===s),I=L.findNextMatchSync(a,o,h);if(!I)continue;let g=I.captureIndices[0].start;if(!(g>=i)&&(i=g,l=I.captureIndices,u=I.ruleId,d=m.priority,i===o))break}return l?{priorityMatch:d===-1,captureIndices:l,matchedRuleId:u}:null}function js(e,t,a,r,o){if(Vs){let s=e.compile(t,a),i=$s(r,o);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileAG(t,a,r,o),findOptions:0}}function Fc(e,t,a,r,o){if(Vs){let s=e.compileWhile(t,a),i=$s(r,o);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,r,o),findOptions:0}}function $s(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Jt(e,t,a,r,o,n,s){if(n.length===0)return;let i=t.content,l=Math.min(n.length,s.length),u=[],d=s[0].end;for(let c=0;c<l;c++){let f=n[c];if(f===null)continue;let p=s[c];if(p.length===0)continue;if(p.start>d)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)o.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?o.produceFromScopes(u[u.length-1].scopes,p.start):o.produce(r,p.start),f.retokenizeCapturedWithRuleId){let x=f.getName(i,s),L=r.contentNameScopesList.pushAttributed(x,e),h=f.getContentName(i,s),I=L.pushAttributed(h,e),g=r.push(f.retokenizeCapturedWithRuleId,p.start,-1,!1,null,L,I),C=e.createOnigString(i.substring(0,p.end));zs(e,C,a&&p.start===0,p.start,g,o,!1,0),Us(C);continue}let m=f.getName(i,s);if(m!==null){let L=(u.length>0?u[u.length-1].scopes:r.contentNameScopesList).pushAttributed(m,e);u.push(new Bc(L,p.end))}}for(;u.length>0;)o.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Bc=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function Ec(e,t,a,r,o,n,s,i){return new _c(e,t,a,r,o,n,s,i)}function As(e,t,a,r,o){let n=Pa(t,Ma),s=
|
|
6
|
-
`;let n=this.createOnigString(e),s=n.content.length,i=new Nc(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=zs(this,n,o,0,t,i,!0,r);return Us(n),{lineLength:s,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Rs(e,t){return e=tc(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var Yt=class Ue{constructor(t,a,r){this.parent=t,this.scopePath=a,this.tokenAttributes=r}static fromExtension(t,a){let r=t,o=t?.scopePath??null;for(let n of a)o=Hr.push(o,n.scopeNames),r=new Ue(r,o,n.encodedTokenAttributes);return r}static createRoot(t,a){return new Ue(null,new Hr(null,t),a)}static createRootAndLookUpScopeName(t,a,r){let o=r.getMetadataForScope(t),n=new Hr(null,t),s=r.themeProvider.themeMatch(n),i=Ue.mergeAttributes(a,o,s);return new Ue(null,n,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Ue.equals(this,t)}static equals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.scopeName!==a.scopeName||t.tokenAttributes!==a.tokenAttributes)return!1;t=t.parent,a=a.parent}while(!0)}static mergeAttributes(t,a,r){let o=-1,n=0,s=0;return r!==null&&(o=r.fontStyle,n=r.foregroundId,s=r.backgroundId),ct.set(t,a.languageId,a.tokenType,null,o,n,s)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Ue._pushAttributed(this,t,a);let r=t.split(/ /g),o=this;for(let n of r)o=Ue._pushAttributed(o,n,a);return o}static _pushAttributed(t,a,r){let o=r.getMetadataForScope(a),n=t.scopePath.push(a),s=r.themeProvider.themeMatch(n),i=Ue.mergeAttributes(t.tokenAttributes,o,s);return new Ue(t,n,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push({encodedTokenAttributes:r.tokenAttributes,scopeNames:r.scopePath.getExtensionIfDefined(r.parent?.scopePath??null)}),r=r.parent;return r===t?a.reverse():void 0}},$r=class dt{constructor(t,a,r,o,n,s,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=n,this.endRule=s,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=r,this._anchorPos=o}_stackElementBrand=void 0;static NULL=new dt(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:dt._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Yt.equals(t.contentNameScopesList,a.contentNameScopesList):!1}static _structuralEquals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.depth!==a.depth||t.ruleId!==a.ruleId||t.endRule!==a.endRule)return!1;t=t.parent,a=a.parent}while(!0)}clone(){return this}static _reset(t){for(;t;)t._enterPos=-1,t._anchorPos=-1,t=t.parent}reset(){dt._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,r,o,n,s,i){return new dt(this,t,a,r,o,n,s,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new dt(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let a=this;for(;a&&a._enterPos===t._enterPos;){if(a.ruleId===t.ruleId)return!0;a=a.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,a){let r=Yt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new dt(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,r,Yt.fromExtension(r,a.contentNameScopesList))}},Oc=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Pa(a,Ma).map(r=>r.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Pa(a,Ma).map(r=>r.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},Nc=class{constructor(e,t,a,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let r=e?.tokenAttributes??0,o=!1;if(this.balancedBracketSelectors?.matchesAlways&&(o=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let n=e?.getScopeNames()??[];for(let s of this._tokenTypeOverrides)s.matcher(n)&&(r=ct.set(r,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(o=this.balancedBracketSelectors.match(n))}if(o&&(r=ct.set(r,0,8,o,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let r=0,o=this._binaryTokens.length;r<o;r++)a[r]=this._binaryTokens[r];return a}},Uc=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,r,o){if(!this._grammars.has(e)){let n=this._rawGrammars.get(e);if(!n)return null;this._grammars.set(e,Ec(e,n,t,a,r,o,this,this._onigLib))}return this._grammars.get(e)}},Xs=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Uc(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 Oc(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,r,o){let n=new hc(this._syncRegistry,e);for(;n.Q.length>0;)n.Q.map(s=>this._loadSingleGrammar(s.scopeName)),n.processQueue();return this._grammarForScopeName(e,t,a,r,o)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,r)}_grammarForScopeName(e,t=0,a=null,r=null,o=null){return this._syncRegistry.grammarForScopeName(e,t,a,r,o)}},Fa=$r.NULL;var Hc=/["&'<>`]/g,qc=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Gc=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Wc=/[|\\{}()[\]^$+*?.]/g,Ks=new WeakMap;function Qs(e,t){if(e=e.replace(t.subset?Vc(t.subset):Hc,r),t.subset||t.escapeOnly)return e;return e.replace(qc,a).replace(Gc,r);function a(o,n,s){return t.format((o.charCodeAt(0)-55296)*1024+o.charCodeAt(1)-56320+65536,s.charCodeAt(n+2),t)}function r(o,n,s){return t.format(o.charCodeAt(0),s.charCodeAt(n+1),t)}}function Vc(e){let t=Ks.get(e);return t||(t=zc(e),Ks.set(e,t)),t}function zc(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(Wc,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var jc=/[\dA-Fa-f]/;function Js(e,t,a){let r="&#x"+e.toString(16).toUpperCase();return a&&t&&!jc.test(String.fromCharCode(t))?r:r+";"}var $c=/\d/;function Ys(e,t,a){let r="&#"+String(e);return a&&t&&!$c.test(String.fromCharCode(t))?r:r+";"}var Zs=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"];var Ba={nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",fnof:"\u0192",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",bull:"\u2022",hellip:"\u2026",prime:"\u2032",Prime:"\u2033",oline:"\u203E",frasl:"\u2044",weierp:"\u2118",image:"\u2111",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",quot:'"',amp:"&",lt:"<",gt:">",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",circ:"\u02C6",tilde:"\u02DC",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",permil:"\u2030",lsaquo:"\u2039",rsaquo:"\u203A",euro:"\u20AC"};var ei=["cent","copy","divide","gt","lt","not","para","times"];var ti={}.hasOwnProperty,Kr={},Ea;for(Ea in Ba)ti.call(Ba,Ea)&&(Kr[Ba[Ea]]=Ea);var Xc=/[^\dA-Za-z]/;function ai(e,t,a,r){let o=String.fromCharCode(e);if(ti.call(Kr,o)){let n=Kr[o],s="&"+n;return a&&Zs.includes(n)&&!ei.includes(n)&&(!r||t&&t!==61&&Xc.test(String.fromCharCode(t)))?s:s+";"}return""}function ri(e,t,a){let r=Js(e,t,a.omitOptionalSemicolons),o;if((a.useNamedReferences||a.useShortestReferences)&&(o=ai(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!o)&&a.useShortestReferences){let n=Ys(e,t,a.omitOptionalSemicolons);n.length<r.length&&(r=n)}return o&&(!a.useShortestReferences||o.length<r.length)?o:r}function ze(e,t){return Qs(e,Object.assign({format:ri},t))}var Kc=/^>|^->|<!--|-->|--!>|<!-$/g,Qc=[">"],Jc=["<",">"];function oi(e,t,a,r){return r.settings.bogusComments?"<?"+ze(e.value,Object.assign({},r.settings.characterReferences,{subset:Qc}))+">":"<!--"+e.value.replace(Kc,o)+"-->";function o(n){return ze(n,Object.assign({},r.settings.characterReferences,{subset:Jc}))}}function ni(e,t,a,r){return"<!"+(r.settings.upperDoctype?"DOCTYPE":"doctype")+(r.settings.tightDoctype?"":" ")+"html>"}var oe=si(1),Qr=si(-1),Yc=[];function si(e){return t;function t(a,r,o){let n=a?a.children:Yc,s=(r||0)+e,i=n[s];if(!o)for(;i&&It(i);)s+=e,i=n[s];return i}}var Zc={}.hasOwnProperty;function Da(e){return t;function t(a,r,o){return Zc.call(e,a.tagName)&&e[a.tagName](a,r,o)}}var oa=Da({body:tf,caption:Jr,colgroup:Jr,dd:nf,dt:of,head:Jr,html:ef,li:rf,optgroup:sf,option:lf,p:af,rp:ii,rt:ii,tbody:df,td:li,tfoot:cf,th:li,thead:uf,tr:ff});function Jr(e,t,a){let r=oe(a,t,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&It(r.value.charAt(0)))}function ef(e,t,a){let r=oe(a,t);return!r||r.type!=="comment"}function tf(e,t,a){let r=oe(a,t);return!r||r.type!=="comment"}function af(e,t,a){let r=oe(a,t);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function rf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&r.tagName==="li"}function of(e,t,a){let r=oe(a,t);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function nf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function ii(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function sf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&r.tagName==="optgroup"}function lf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function uf(e,t,a){let r=oe(a,t);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function df(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function cf(e,t,a){return!oe(a,t)}function ff(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&r.tagName==="tr"}function li(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}var ui=Da({body:hf,colgroup:gf,head:mf,html:pf,tbody:wf});function pf(e){let t=oe(e,-1);return!t||t.type!=="comment"}function mf(e){let t=new Set;for(let r of e.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(t.has(r.tagName))return!1;t.add(r.tagName)}let a=e.children[0];return!a||a.type==="element"}function hf(e){let t=oe(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&It(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function gf(e,t,a){let r=Qr(a,t),o=oe(e,-1,!0);return a&&r&&r.type==="element"&&r.tagName==="colgroup"&&oa(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="col")}function wf(e,t,a){let r=Qr(a,t),o=oe(e,-1);return a&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&oa(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="tr")}var _a={name:[[`
|
|
4
|
+
${N}`}]}}E.current({...O,...U?{modelContext:U}:{}})}Z({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="ui/update-model-context"&&W!=null){ke=ln(ke,j.params),Z({jsonrpc:"2.0",id:W,result:{}});return}if(ne==="tools/call"&&W!=null){let O=M.current;if(!O){Z({jsonrpc:"2.0",id:W,error:{code:-32601,message:"tools/call not supported"}});return}let U=j.params?.name;O({name:U,arguments:j.params?.arguments??{}}).then(N=>{Z({jsonrpc:"2.0",id:W,result:N});let ae=N.content?.map(X=>X.text??"").join("").trim();ae&&nd(U,N,T.current)&&(pe&&clearTimeout(pe.timer),pe={text:ae,timer:setTimeout(()=>{if(xe)return;let X=ke;ke=null,pe=null,E.current?.({role:"user",content:[{type:"text",text:ae}],...X?{modelContext:X}:{}})},500)})}).catch(N=>{let ae=N instanceof Error?N.message:"Tool call failed";Z({jsonrpc:"2.0",id:W,error:{code:-32e3,message:ae}})});return}if(ne==="ui/request-display-mode"&&W!=null){let O=j.params?.mode,U=O==="fullscreen"||O==="inline"||O==="pip"?O:"inline";S.current=U,Z({jsonrpc:"2.0",id:W,result:{mode:U}}),Z({jsonrpc:"2.0",method:"ui/notifications/host-context-changed",params:{displayMode:U}}),$.current?.(U);return}if(ne==="ui/resource-teardown"&&W!=null){Z({jsonrpc:"2.0",id:W,result:{}});return}ne==="ping"&&W!=null&&Z({jsonrpc:"2.0",id:W,result:{}})};return window.addEventListener("message",Xe),()=>{xe=!0,clearTimeout($e),pe&&clearTimeout(pe.timer),window.removeEventListener("message",Xe)}},[i,y]),sd("iframe",{ref:m,src:F,sandbox:"allow-scripts allow-forms allow-same-origin allow-popups allow-popups-to-escape-sandbox",className:k(!f&&"ww:rounded-md ww:border ww:border-border",s),style:{height:f?"100%":v,minWidth:f||!P?void 0:`min(${P}px, 100%)`,width:"100%",border:"none",colorScheme:n?"dark":"auto"},title:"MCP App"})}import{forwardRef as Pl,useCallback as ir,useEffect as je,useImperativeHandle as Xm,useRef as ht,useState as lr}from"react";import En from"crypto";var Bn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var id=128,lt,yt,ld=e=>{!lt||lt.length<e?(lt=Buffer.allocUnsafe(e*id),En.randomFillSync(lt),yt=0):yt+e>lt.length&&(En.randomFillSync(lt),yt=0),yt+=e};var zt=(e=21)=>{ld(e|=0);let t="";for(let a=yt-e;a<yt;a++)t+=Bn[lt[a]&63];return t};import{createContext as ud,useCallback as Ve,useContext as dd,useEffect as Ar,useMemo as cd,useRef as Rr,useState as Dn}from"react";import{jsx as Ee,jsxs as Wn}from"react/jsx-runtime";var fd=async e=>{try{let a=await(await fetch(e)).blob();return new Promise(r=>{let o=new FileReader;o.onloadend=()=>r(o.result),o.onerror=()=>r(null),o.readAsDataURL(a)})}catch{return null}},_n=ud(null),On=()=>{let e=dd(_n);if(!e)throw new Error("usePromptInputAttachments must be used within a PromptInput");return e},Nn=({className:e,accept:t,multiple:a,globalDrop:r,maxFiles:o,maxFileSize:n,onSubmit:s,children:i,...l})=>{let{t:u}=V(),d=Rr(null),c=Rr(null),[f,p]=Dn([]),m=Rr(f);Ar(()=>{m.current=f},[f]);let x=Ve(()=>{d.current?.click()},[]),L=Ve(v=>{let A=[...v];if(A.length===0)return;let P=b=>n?b.size<=n:!0,D=A.filter(P);p(b=>{let E=typeof o=="number"?Math.max(0,o-b.length):void 0,M=typeof E=="number"?D.slice(0,E):D;return[...b,...M.map($=>({filename:$.name,id:zt(),mediaType:$.type,type:"file",url:URL.createObjectURL($)}))]})},[o,n]),h=Ve(v=>{p(A=>{let P=A.find(D=>D.id===v);return P?.url&&URL.revokeObjectURL(P.url),A.filter(D=>D.id!==v)})},[]),I=Ve(()=>{p(v=>{for(let A of v)A.url&&URL.revokeObjectURL(A.url);return[]})},[]);Ar(()=>()=>{for(let v of m.current)v.url&&URL.revokeObjectURL(v.url)},[]);let g=Ve(v=>{v.currentTarget.files&&L(v.currentTarget.files),v.currentTarget.value=""},[L]);Ar(()=>{if(!r)return;let v=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault()},A=P=>{P.dataTransfer?.types?.includes("Files")&&P.preventDefault(),P.dataTransfer?.files&&P.dataTransfer.files.length>0&&L(P.dataTransfer.files)};return document.addEventListener("dragover",v),document.addEventListener("drop",A),()=>{document.removeEventListener("dragover",v),document.removeEventListener("drop",A)}},[L,r]);let C=Ve(async v=>{v.preventDefault();let A=v.currentTarget,D=new FormData(A).get("message")||"";A.reset();let b=await Promise.all(f.map(async({id:E,...M})=>{if(M.url?.startsWith("blob:")){let $=await fd(M.url);return{...M,url:$??M.url}}return M}));try{let E=s({files:b,text:D},v);E instanceof Promise&&await E,I()}catch{}},[f,s,I]),S=cd(()=>({add:L,clear:I,files:f,openFileDialog:x,remove:h}),[f,L,h,I,x]);return Wn(_n.Provider,{value:S,children:[Ee("input",{accept:t,"aria-label":u.promptInput.uploadFiles,className:"ww:hidden",multiple:a,onChange:g,ref:d,title:u.promptInput.uploadFiles,type:"file"}),Ee("form",{className:k("ww:flex ww:w-full ww:flex-col ww:rounded-lg ww:border ww:border-border ww:bg-background",e),onSubmit:C,ref:c,...l,children:i})]})};var Un=({onChange:e,onKeyDown:t,className:a,placeholder:r,...o})=>{let{t:n}=V(),s=On(),[i,l]=Dn(!1),u=r??n.promptInput.placeholder,d=Ve(f=>{if(t?.(f),!f.defaultPrevented){if(f.key==="Enter"){if(i||f.nativeEvent.isComposing||f.shiftKey)return;f.preventDefault();let{form:p}=f.currentTarget;if(p?.querySelector('button[type="submit"]')?.disabled)return;p?.requestSubmit()}if(f.key==="Backspace"&&f.currentTarget.value===""&&s.files.length>0){f.preventDefault();let p=s.files.at(-1);p&&s.remove(p.id)}}},[t,i,s]),c=Ve(f=>{let p=f.clipboardData?.items;if(!p)return;let m=[];for(let x of p)if(x.kind==="file"){let L=x.getAsFile();L&&m.push(L)}m.length>0&&(f.preventDefault(),s.add(m))},[s]);return Ee("textarea",{className:k("ww:field-sizing-content ww:max-h-48 ww:min-h-0 ww:w-full ww:resize-none ww:border-0 ww:bg-transparent ww:px-3 ww:py-2 ww:text-base ww:sm:text-sm ww:outline-none ww:placeholder:text-muted-foreground",a),name:"message",onCompositionEnd:()=>l(!1),onCompositionStart:()=>l(!0),onKeyDown:d,onPaste:c,placeholder:u,onChange:e,...o})},Hn=({className:e,status:t,onStop:a,onClick:r,children:o,...n})=>{let{t:s}=V(),i=t==="submitted"||t==="streaming",l=Ee(Et,{className:"ww:size-4"});t==="submitted"?l=Ee(Ht,{className:"ww:size-4 ww:animate-spin"}):t==="streaming"&&(l=Ee(Wt,{className:"ww:size-4"}));let u=Ve(d=>{if(i&&a){d.preventDefault(),a();return}r?.(d)},[i,a,r]);return Ee(Oe,{"aria-label":i?s.promptInput.stop:s.promptInput.submit,className:k("ww:bg-foreground ww:text-background ww:hover:bg-foreground ww:rounded-full",e),onClick:u,size:"icon-sm",type:i&&a?"button":"submit",variant:"ghost",...n,children:o??l})},qn=({className:e,children:t,...a})=>{let{t:r}=V(),o=On();return o.files.length>0?Wn(Oe,{className:k("ww:group ww:relative",e),onClick:()=>o.clear(),size:"icon-sm",type:"button",variant:"ghost","aria-label":r.promptInput.removeAttachments,...a,children:[Ee("span",{className:"ww:flex ww:size-5 ww:items-center ww:justify-center ww:rounded-full ww:bg-primary ww:text-[10px] ww:font-medium ww:text-primary-foreground ww:transition-opacity ww:group-hover:opacity-0",children:o.files.length}),Ee(st,{className:"ww:absolute ww:size-4 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100"})]}):Ee(Oe,{className:k(e),onClick:()=>o.openFileDialog(),size:"icon-sm",type:"button",variant:"ghost",...a,children:t??Ee(qt,{className:"ww:size-4"})})};import{jsx as pd}from"react/jsx-runtime";function Gn({text:e}){let{t}=V();return e===!1?null:pd("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{memo as md,useCallback as hd}from"react";import{jsx as bt}from"react/jsx-runtime";var Vn=({className:e,...t})=>bt("div",{className:k("ww:flex ww:flex-col ww:gap-1 ww:px-3 ww:py-2",e),...t}),zn=({className:e,...t})=>bt("li",{className:k("ww:group ww:flex ww:items-center ww:gap-2 ww:rounded-md ww:px-2 ww:py-1 ww:text-sm ww:transition-colors ww:hover:bg-muted",e),...t}),jn=({className:e,...t})=>bt("span",{className:k("ww:inline-block ww:size-2 ww:shrink-0 ww:rounded-full ww:border ww:border-muted-foreground/50",e),...t}),$n=({className:e,...t})=>bt("span",{className:k("ww:line-clamp-1 ww:grow ww:break-words ww:text-muted-foreground",e),...t}),Xn=({className:e,...t})=>bt("div",{className:k("ww:flex ww:shrink-0 ww:gap-1 ww:opacity-0 ww:transition-opacity ww:group-hover:opacity-100",e),...t}),Kn=({className:e,...t})=>bt(Oe,{className:k("ww:size-auto ww:rounded ww:p-1 ww:text-muted-foreground ww:hover:bg-muted-foreground/10 ww:hover:text-foreground",e),size:"icon",type:"button",variant:"ghost",...t});import{jsx as Je,jsxs as Yn}from"react/jsx-runtime";var Qn=md(({message:e,onRemove:t})=>{let{t:a}=V(),r=hd(()=>t(e.id),[t,e.id]);return Yn(zn,{children:[Je(jn,{}),Je($n,{children:e.text||a.chatQueue.attachmentFallback}),Je(Xn,{children:Je(Kn,{"aria-label":a.chatQueue.removeFromQueue,onClick:r,children:Je(st,{className:"ww:size-3"})})})]})});Qn.displayName="ChatQueueItem";function Jn({queuedMessages:e,onRemove:t,className:a}){let{t:r}=V();return e.length===0?null:Yn(Vn,{className:k("ww:border-t ww:border-border",a),children:[Je("div",{className:"ww:text-[11px] ww:font-medium ww:text-muted-foreground ww:px-2",children:r.chatQueue.queued(e.length)}),Je("ul",{children:e.map(o=>Je(Qn,{message:o,onRemove:t},o.id))})]})}import{jsx as jt,jsxs as wd}from"react/jsx-runtime";var Zn=({files:e,className:t,...a})=>e.length===0?null:jt("div",{className:k("ww:flex ww:flex-wrap ww:gap-1.5",t),...a,children:e.map((r,o)=>jt(gd,{file:r},o))});function gd({file:e}){let{t}=V();return e.mediaType?.startsWith("image/")&&e.url?jt("img",{src:e.url,alt:e.filename??t.attachments.attachmentFallback,className:"ww:h-16 ww:max-w-32 ww:rounded ww:object-cover"}):wd("span",{className:"ww:inline-flex ww:items-center ww:gap-1.5 ww:rounded ww:bg-background/20 ww:px-2 ww:py-1 ww:text-xs",children:[jt(Nt,{className:"ww:size-3 ww:shrink-0"}),jt("span",{className:"ww:max-w-24 ww:truncate",children:e.filename??t.attachments.fileFallback})]})}import{createContext as Td,useCallback as vd,useContext as Pd,useEffect as Ad,useMemo as Rd,useState as Er}from"react";import{createContext as xd,memo as Br,useCallback as Id,useContext as Ld,useEffect as Mr,useMemo as Cd,useRef as es,useState as Fr}from"react";import{Fragment as bd,jsx as De,jsxs as kd}from"react/jsx-runtime";var ts=xd(null);function as(){let e=Ld(ts);if(!e)throw new Error("Reasoning components must be used within <Reasoning>");return e}var Sd=1e3,yd=1e3,$t=Br(({className:e,isStreaming:t=!1,open:a,defaultOpen:r,onOpenChange:o,duration:n,children:s,...i})=>{let l=r??t,u=r===!1,d=a!==void 0,[c,f]=Fr(l),p=d?a:c,m=Id(A=>{d||f(A),o?.(A)},[d,o]),[x,L]=Fr(void 0),h=n??x,I=es(t),[g,C]=Fr(!1),S=es(null);Mr(()=>{t?(I.current=!0,S.current===null&&(S.current=Date.now())):S.current!==null&&(L(Math.ceil((Date.now()-S.current)/yd)),S.current=null)},[t]),Mr(()=>{t&&!p&&!u&&m(!0)},[t,p,u,m]),Mr(()=>{if(I.current&&!t&&p&&!g){let A=setTimeout(()=>{m(!1),C(!0)},Sd);return()=>clearTimeout(A)}},[t,p,g,m]);let v=Cd(()=>({isStreaming:t,isOpen:p,setIsOpen:m,duration:h}),[t,p,m,h]);return De(ts.Provider,{value:v,children:De("div",{className:k("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":p?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})});$t.displayName="Reasoning";var Xt=Br(({className:e,children:t,getThinkingMessage:a,hideIcon:r=!1,onClick:o,...n})=>{let{t:s}=V(),{isStreaming:i,isOpen:l,duration:u,setIsOpen:d}=as(),f=a??((p,m)=>p||m===0?De(Be,{duration:1.6,children:s.reasoning.thinking}):m===void 0?De("span",{children:s.reasoning.thoughtBrief}):De("span",{children:s.reasoning.thoughtForSeconds(m)}));return De("button",{type:"button","aria-expanded":l,onClick:p=>{d(!l),o?.(p)},className:k("ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),...n,children:t??kd(bd,{children:[!r&&De(Ge,{className:"ww:size-4 ww:shrink-0"}),f(i,u)]})})});Xt.displayName="ReasoningTrigger";var Kt=Br(({className:e,children:t,...a})=>{let{isOpen:r}=as();return De("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:De("div",{className:"ww:min-h-0 ww:overflow-hidden",children:De("div",{className:k("ww:text-sm ww:text-muted-foreground",e),...a,children:De(Ft,{children:t})})})})});Kt.displayName="ReasoningContent";import{jsx as Q,jsxs as Ye}from"react/jsx-runtime";var Md=500,rs=Td(null);function os(){let e=Pd(rs);if(!e)throw new Error("ChainOfThought components must be used within <ChainOfThought>");return e}function ns({className:e,isWorking:t=!1,activeStep:a,open:r,defaultOpen:o=!1,onOpenChange:n,children:s,...i}){let l=r!==void 0,[u,d]=Er(o),c=l?r:u,f=vd(L=>{l||d(L),n?.(L)},[l,n]),[p,m]=Er(!t);Ad(()=>{if(t){m(!1);return}let L=setTimeout(()=>m(!0),Md);return()=>clearTimeout(L)},[t]);let x=Rd(()=>({open:c,setOpen:f,isWorking:t,settled:p,activeStep:a}),[c,f,t,p,a]);return Q(rs.Provider,{value:x,children:Q("div",{className:k("ww:mb-4 ww:flex ww:flex-col ww:gap-2",e),"data-state":c?"open":"closed",style:{animation:"ww-fade-in 0.2s ease-out"},...i,children:s})})}function ss({className:e,label:t,workingLabel:a,children:r,...o}){let{open:n,setOpen:s,isWorking:i,settled:l,activeStep:u}=os();if(!l){let d=u?.icon,c=u?.label??a??t??"";return Q("div",{className:k("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground",e),children:Ye("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:[d&&Q(d,{className:k("ww:size-4 ww:shrink-0",i&&"ww:animate-pulse")}),Q("span",{className:"ww:truncate",children:i?Q(Be,{duration:2.6,children:c}):c})]},c)})}return Ye("button",{type:"button",onClick:()=>s(!n),"aria-expanded":n,className:k("ww:flex ww:min-h-5 ww:w-full ww:items-center ww:gap-1.5 ww:text-sm ww:text-muted-foreground ww:transition-colors ww:hover:text-foreground",e),style:{animation:"ww-fade-in 0.25s ease-out"},...o,children:[Q("span",{className:"ww:truncate",children:r??t}),Q(Qe,{className:k("ww:size-4 ww:shrink-0 ww:transition-transform ww:duration-200",n&&"ww:rotate-180")})]})}function is({className:e,children:t,...a}){let{open:r}=os();return Q("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",r?"ww:grid-rows-[1fr] ww:opacity-100":"ww:grid-rows-[0fr] ww:opacity-0"),children:Q("div",{className:"ww:min-h-0 ww:overflow-hidden",children:Q("div",{className:k("ww:flex ww:flex-col",e),...a,children:t})})})}function ls({icon:e,isLast:t,running:a,error:r}){return Ye("div",{className:"ww:flex ww:flex-col ww:items-center ww:self-stretch",children:[Q("span",{className:"ww:flex ww:h-5 ww:items-center",children:Q(e,{className:k("ww:size-4 ww:shrink-0",r?"ww:text-destructive":a?"ww:animate-pulse ww:text-foreground":"ww:text-muted-foreground")})}),!t&&Q("span",{className:"ww:w-px ww:flex-1 ww:bg-border"})]})}function Dr({className:e,icon:t,title:a,state:r,isLast:o=!1,children:n,...s}){let i=r==="input-available"||r==="input-streaming",l=r==="output-error",u=n!=null,[d,c]=Er(!1),f=a??"",p=i?Q(Be,{duration:1.6,children:f}):Q("span",{className:"ww:truncate",children:f});return Ye("div",{className:k("ww:flex ww:gap-2",e),...s,children:[Q(ls,{icon:t,isLast:o,running:i,error:l}),Ye("div",{className:k("ww:min-w-0 ww:flex-1",!o&&"ww:pb-3"),children:[u?Ye("button",{type:"button",onClick:()=>c(m=>!m),"aria-expanded":d,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,Q(Qe,{className:k("ww:size-3.5 ww:shrink-0 ww:transition-transform ww:duration-200",d&&"ww:rotate-180")})]}):Q("div",{className:"ww:flex ww:items-center ww:text-sm ww:text-muted-foreground",children:p}),u&&Q("div",{className:k("ww:grid ww:transition-[grid-template-rows,opacity] ww:duration-200 ww:ease-out",d?"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:"ww:mt-2 ww:space-y-3 ww:rounded-lg ww:border ww:border-border ww:bg-background ww:p-3",children:n})})})]})]})}function us({isStreaming:e=!1,isLast:t=!1,children:a}){return Ye("div",{className:"ww:flex ww:gap-2",children:[Q(ls,{icon:Ge,isLast:t,running:e}),Q("div",{className:k("ww:min-w-0 ww:flex-1",!t&&"ww:pb-3"),children:Ye($t,{isStreaming:e,className:"ww:mb-0",children:[Q(Xt,{hideIcon:!0}),Q(Kt,{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 Ne={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 ve={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 ds(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 cs(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function fs(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 ps(e){return ds(e)?"ambiguous":cs(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":fs(e)?"wide":"neutral"}function Fd(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function ms(e){return Fd(e),ps(e)}var Bd=Object.defineProperty,Ed=(e,t,a)=>t in e?Bd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,Dd=(e,t,a)=>Ed(e,typeof t!="symbol"?t+"":t,a);function _d(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function Od(e){if(!e||e<4352)return!1;switch(ms(e)){case"fullwidth":case"halfwidth":return!0;case"wide":return!_d(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 Nd(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function Ud(e){return e!==null&&e>=65024&&e<=65038}var Hd=hs(/\p{P}|\p{S}/u),qd=hs(/\s/);function hs(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 Ze(e){if(e===he.eof||sn(e)||qd(e))return Ne.characterGroupWhitespace;let t=0;if(e>=4352){if(Ud(e))return Pe.nonEmojiGeneralUseVS;switch(Od(e)){case null:return Pe.ivs;case!0:t|=Pe.cjk;break}}return Hd(e)&&(t|=Ne.characterGroupPunctuation),t}function Ia(e,t,a){if(!Gd(e))return e;let r=t(),o=Ze(r);return!r||ut(o)?e:Nd(r,a)?Pe.cjkPunctuation:Wd(o)}function Wd(e){return e&~Pe.ivs}function ut(e){return!!(e&Ne.characterGroupWhitespace)}function kt(e){return(e&Pe.cjkPunctuation)===Ne.characterGroupPunctuation}function Qt(e){return!!(e&Pe.cjk)}function gs(e){return e===Pe.ivs}function ws(e){return!!(e&Pe.cjkOrIvs)}function Gd(e){return e===Pe.nonEmojiGeneralUseVS}function _r(e){return!!(e&Pe.spaceOrPunctuation)}function La(e){return!!(e&&e>=55296&&e<=56319)}function Ca(e){return!!(e&&e>=56320&&e<=57343)}function Sa(e,t,a){if(t._bufferIndex<2)return e;let o=a({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return o&&o>=65536?o:e}function Vd(e,t,a){let r=e>=65536?2:1;if(t._bufferIndex<1+r)return null;let o=t._bufferIndex-r-2,n=a({start:{...t,_bufferIndex:o>=0?o:0},end:{...t,_bufferIndex:t._bufferIndex-r}}),s=n.charCodeAt(n.length-1);if(Number.isNaN(s))return null;if(n.length<2||s<56320||57343<s)return s;let i=n.codePointAt(0);return i&&i>=65536?i:s}var ya=class{constructor(e,t,a){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=a,Dd(this,"cachedValue")}value(){return this.cachedValue===void 0&&(this.cachedValue=Vd(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function ba(e,t,a){let r=a({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return r&&r>=65536?r:e}var Or={name:"attention",resolveAll:zd,tokenize:jd};function zd(e,t){let a=-1,r,o,n,s,i,l,u,d;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(r=a;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[r][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;let c={...e[r][1].end},f={...e[a][1].start};xs(c,-l),xs(f,l),s={type:l>1?ve.strongSequence:ve.emphasisSequence,start:c,end:{...e[r][1].end}},i={type:l>1?ve.strongSequence:ve.emphasisSequence,start:{...e[a][1].start},end:f},n={type:l>1?ve.strongText:ve.emphasisText,start:{...e[r][1].end},end:{...e[a][1].start}},o={type:l>1?ve.strong:ve.emphasis,start:{...s.start},end:{...i.end}},e[r][1].end={...s.start},e[a][1].start={...i.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=xt(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=xt(u,[["enter",o,t],["enter",s,t],["exit",s,t],["enter",n,t]]),t.parser.constructs.insideSpan.null,u=xt(u,ga(t.parser.constructs.insideSpan.null,e.slice(r+1,a),t)),u=xt(u,[["exit",n,t],["enter",i,t],["exit",i,t],["exit",o,t]]),e[a][1].end.offset-e[a][1].start.offset?(d=2,u=xt(u,[["enter",e[a][1],t],["exit",e[a][1],t]])):d=0,wt(e,r-1,a-r+3,u),a=r+u.length-d-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function jd(e,t){let a=this.parser.constructs.attentionMarkers.null,{now:r,sliceSerialize:o,previous:n}=this,s=Ca(n)?Sa(n,r(),o):n,i=Ze(s),l=new ya(s,r(),o),u=Ia(i,l.value.bind(l),s),d;return c;function c(p){return p===he.asterisk||he.underscore,d=p,e.enter("attentionSequence"),f(p)}function f(p){if(p===d)return e.consume(p),f;let m=e.exit("attentionSequence"),x=La(p)?ba(p,r(),o):p,L=Ze(x);let h=kt(u),I=h||ut(u),g=kt(L),C=g||ut(L),S=ws(u),v=!C||g&&(I||S)||a.includes(p),A=!I||h&&(C||Qt(L))||a.includes(s);return m._open=!!(d===he.asterisk?v:v&&(_r(u)||!A)),m._close=!!(d===he.asterisk?A:A&&(_r(L)||!v)),t(p)}}function xs(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function Is(){return{text:{[he.asterisk]:Or,[he.underscore]:Or},insideSpan:{null:[Or]}}}function Ls(){let e=this.data();(e.micromarkExtensions||(e.micromarkExtensions=[])).push(Is())}function Cs(e){let a=(e||{}).singleTilde,r={name:"strikethrough",tokenize:n,resolveAll:o};return a==null&&(a=!0),{text:{[he.tilde]:r},insideSpan:{null:[r]},attentionMarkers:{null:[he.tilde]}};function o(s,i){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let u=l;for(;u--;)if(s[u][0]==="exit"&&s[u][1].type==="strikethroughSequenceTemporary"&&s[u][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[u][1].end.offset-s[u][1].start.offset){s[l][1].type="strikethroughSequence",s[u][1].type="strikethroughSequence";let d={type:"strikethrough",start:Object.assign({},s[u][1].start),end:Object.assign({},s[l][1].end)},c={type:"strikethroughText",start:Object.assign({},s[u][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",d,i],["enter",s[u][1],i],["exit",s[u][1],i],["enter",c,i]],p=i.parser.constructs.insideSpan.null;p&&wt(f,f.length,0,ga(p,s.slice(u+1,l),i)),wt(f,f.length,0,[["exit",c,i],["enter",s[l][1],i],["exit",s[l][1],i],["exit",d,i]]),wt(s,u-1,l-u+3,f),l=u+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type=ve.data);return s}function n(s,i,l){let{now:u,sliceSerialize:d,previous:c}=this,f=Ca(c)?Sa(c,u(),d):c,p=Ze(f),m=new ya(f,u(),d),x=Ia(p,m.value.bind(m),f),L=this.events,h=0;return I;function I(C){return he.tilde,f===he.tilde&&L[L.length-1][1].type!==ve.characterEscape?l(C):(s.enter("strikethroughSequenceTemporary"),g(C))}function g(C){let S=Ze(f);if(C===he.tilde)return h>1?l(C):(s.consume(C),h++,g);if(h<2&&!a)return l(C);let v=s.exit("strikethroughSequenceTemporary"),A=La(C)?ba(C,u(),d):C,P=Ze(A),b=kt(x)||ut(x),M=kt(P)||ut(P),$=Qt(x)||gs(S);return v._open=!M||P===Ne.attentionSideAfter&&(b||$),v._close=!b||S===Ne.attentionSideAfter&&(M||Qt(P)),i(C)}}}function Ss(e){let t=this.data();(t.micromarkExtensions||(t.micromarkExtensions=[])).push(Cs(e))}var $d=new Set(["\u3002","\uFF0E","\uFF0C","\u3001","\uFF1F","\uFF01","\uFF1A","\uFF1B","\uFF08","\uFF09","\u3010","\u3011","\u300C","\u300D","\u300E","\u300F","\u3008","\u3009","\u300A","\u300B"]),Xd=/^(https?:\/\/|mailto:|www\.)/i,Kd=e=>{if(e.children.length!==1)return!1;let t=e.children[0];return t.type==="text"&&t.value===e.url},Qd=e=>{let t=0;for(let a of e){if($d.has(a))return t;t+=a.length}return null},Jd=(e,t)=>({...t,url:e,children:[{type:"text",value:e}]}),Yd=e=>({type:"text",value:e}),Zd=()=>e=>{Zo(e,"link",(t,a,r)=>{if(!r||typeof a!="number"||!Kd(t)||!Xd.test(t.url))return;let o=Qd(t.url);if(o===null||o===0)return;let n=t.url.slice(0,o),s=t.url.slice(o),i=Jd(n,t),l=Yd(s);return r.children.splice(a,1,i,l),a+1})};function ec(){let e=[Ls],t=[Zd,Ss],a=[...e,...t];return{name:"cjk",type:"cjk",remarkPluginsBefore:e,remarkPluginsAfter:t,remarkPlugins:a}}var Nr=ec();var ee=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function tc(e){return Xr(e)}function Xr(e){return Array.isArray(e)?ac(e):e instanceof RegExp?e:typeof e=="object"?rc(e):e}function ac(e){let t=[];for(let a=0,r=e.length;a<r;a++)t[a]=Xr(e[a]);return t}function rc(e){let t={};for(let a in e)t[a]=Xr(e[a]);return t}function Ms(e,...t){return t.forEach(a=>{for(let r in a)e[r]=a[r]}),e}function Fs(e){let t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?Fs(e.substring(0,e.length-1)):e.substr(~t+1)}var Ur=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,ka=class{static hasCaptures(e){return e===null?!1:(Ur.lastIndex=0,Ur.test(e))}static replaceCaptures(e,t,a){return e.replace(Ur,(r,o,n,s)=>{let i=a[parseInt(o||n,10)];if(i){let l=t.substring(i.start,i.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return r})}};function Bs(e,t){return e<t?-1:e>t?1:0}function Es(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let a=e.length,r=t.length;if(a===r){for(let o=0;o<a;o++){let n=Bs(e[o],t[o]);if(n!==0)return n}return 0}return a-r}function ys(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 Ds(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var _s=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(sc(e),t)}static createFromParsedTheme(e,t){return lc(e,t)}_cachedMatchRoot=new _s(e=>this._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;let t=e.scopeName,r=this._cachedMatchRoot.get(t).find(o=>oc(e.parent,o.parentScopes));return r?new Os(r.fontStyle,r.foreground,r.background):null}},Hr=class Ta{constructor(t,a){this.parent=t,this.scopeName=a}static push(t,a){for(let r of a)t=new Ta(t,r);return t}static from(...t){let a=null;for(let r=0;r<t.length;r++)a=new Ta(a,t[r]);return a}push(t){return new Ta(this,t)}getSegments(){let t=this,a=[];for(;t;)a.push(t.scopeName),t=t.parent;return a.reverse(),a}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push(r.scopeName),r=r.parent;return r===t?a.reverse():void 0}};function oc(e,t){if(t.length===0)return!0;for(let a=0;a<t.length;a++){let r=t[a],o=!1;if(r===">"){if(a===t.length-1)return!1;r=t[++a],o=!0}for(;e&&!nc(e.scopeName,r);){if(o)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function nc(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Os=class{constructor(e,t,a){this.fontStyle=e,this.foregroundId=t,this.backgroundId=a}};function sc(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,a=[],r=0;for(let o=0,n=t.length;o<n;o++){let s=t[o];if(!s.settings)continue;let i;if(typeof s.scope=="string"){let c=s.scope;c=c.replace(/^[,]+/,""),c=c.replace(/[,]+$/,""),i=c.split(",")}else Array.isArray(s.scope)?i=s.scope:i=[""];let l=-1;if(typeof s.settings.fontStyle=="string"){l=0;let c=s.settings.fontStyle.split(" ");for(let f=0,p=c.length;f<p;f++)switch(c[f]){case"italic":l=l|1;break;case"bold":l=l|2;break;case"underline":l=l|4;break;case"strikethrough":l=l|8;break}}let u=null;typeof s.settings.foreground=="string"&&ys(s.settings.foreground)&&(u=s.settings.foreground);let d=null;typeof s.settings.background=="string"&&ys(s.settings.background)&&(d=s.settings.background);for(let c=0,f=i.length;c<f;c++){let m=i[c].trim().split(" "),x=m[m.length-1],L=null;m.length>1&&(L=m.slice(0,m.length-1),L.reverse()),a[r++]=new ic(x,L,o,l,u,d)}}return a}var ic=class{constructor(e,t,a,r,o,n){this.scope=e,this.parentScopes=t,this.index=a,this.fontStyle=r,this.foreground=o,this.background=n}},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 lc(e,t){e.sort((l,u)=>{let d=Bs(l.scope,u.scope);return d!==0||(d=Es(l.parentScopes,u.parentScopes),d!==0)?d:l.index-u.index});let a=0,r="#000000",o="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(a=l.fontStyle),l.foreground!==null&&(r=l.foreground),l.background!==null&&(o=l.background)}let n=new uc(t),s=new Os(a,n.getId(r),n.getId(o)),i=new cc(new Wr(0,null,-1,0,0),[]);for(let l=0,u=e.length;l<u;l++){let d=e[l];i.insert(0,d.scope,d.parentScopes,d.fontStyle,n.getId(d.foreground),n.getId(d.background))}return new Zt(n,s,i)}var uc=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)}},dc=Object.freeze([]),Wr=class Ns{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(t,a,r,o,n){this.scopeDepth=t,this.parentScopes=a||dc,this.fontStyle=r,this.foreground=o,this.background=n}clone(){return new Ns(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let a=[];for(let r=0,o=t.length;r<o;r++)a[r]=t[r].clone();return a}acceptOverwrite(t,a,r,o){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,a!==-1&&(this.fontStyle=a),r!==0&&(this.foreground=r),o!==0&&(this.background=o)}},cc=class Gr{constructor(t,a=[],r={}){this._mainRule=t,this._children=r,this._rulesWithParentScopes=a}_rulesWithParentScopes;static _cmpBySpecificity(t,a){if(t.scopeDepth!==a.scopeDepth)return a.scopeDepth-t.scopeDepth;let r=0,o=0;for(;t.parentScopes[r]===">"&&r++,a.parentScopes[o]===">"&&o++,!(r>=t.parentScopes.length||o>=a.parentScopes.length);){let n=a.parentScopes[o].length-t.parentScopes[r].length;if(n!==0)return n;r++,o++}return a.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let r=t.indexOf("."),o,n;if(r===-1?(o=t,n=""):(o=t.substring(0,r),n=t.substring(r+1)),this._children.hasOwnProperty(o))return this._children[o].match(n)}let a=this._rulesWithParentScopes.concat(this._mainRule);return a.sort(Gr._cmpBySpecificity),a}insert(t,a,r,o,n,s){if(a===""){this._doInsertHere(t,r,o,n,s);return}let i=a.indexOf("."),l,u;i===-1?(l=a,u=""):(l=a.substring(0,i),u=a.substring(i+1));let d;this._children.hasOwnProperty(l)?d=this._children[l]:(d=new Gr(this._mainRule.clone(),Wr.cloneArr(this._rulesWithParentScopes)),this._children[l]=d),d.insert(t+1,u,r,o,n,s)}_doInsertHere(t,a,r,o,n){if(a===null){this._mainRule.acceptOverwrite(t,r,o,n);return}for(let s=0,i=this._rulesWithParentScopes.length;s<i;s++){let l=this._rulesWithParentScopes[s];if(Es(l.parentScopes,a)===0){l.acceptOverwrite(t,r,o,n);return}}r===-1&&(r=this._mainRule.fontStyle),o===0&&(o=this._mainRule.foreground),n===0&&(n=this._mainRule.background),this._rulesWithParentScopes.push(new Wr(t,a,r,o,n))}},ct=class Fe{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){let a=Fe.getLanguageId(t),r=Fe.getTokenType(t),o=Fe.getFontStyle(t),n=Fe.getForeground(t),s=Fe.getBackground(t);console.log({languageId:a,tokenType:r,fontStyle:o,foreground:n,background:s})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,a,r,o,n,s,i){let l=Fe.getLanguageId(t),u=Fe.getTokenType(t),d=Fe.containsBalancedBrackets(t)?1:0,c=Fe.getFontStyle(t),f=Fe.getForeground(t),p=Fe.getBackground(t);return a!==0&&(l=a),r!==8&&(u=r),o!==null&&(d=o?1:0),n!==-1&&(c=n),s!==0&&(f=s),i!==0&&(p=i),(l<<0|u<<8|d<<10|c<<11|f<<15|p<<24)>>>0}};function Pa(e,t){let a=[],r=fc(e),o=r.next();for(;o!==null;){let l=0;if(o.length===2&&o.charAt(1)===":"){switch(o.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${o} in scope selector`)}o=r.next()}let u=s();if(a.push({matcher:u,priority:l}),o!==",")break;o=r.next()}return a;function n(){if(o==="-"){o=r.next();let l=n();return u=>!!l&&!l(u)}if(o==="("){o=r.next();let l=i();return o===")"&&(o=r.next()),l}if(bs(o)){let l=[];do l.push(o),o=r.next();while(bs(o));return u=>t(l,u)}return null}function s(){let l=[],u=n();for(;u;)l.push(u),u=n();return d=>l.every(c=>c(d))}function i(){let l=[],u=s();for(;u&&(l.push(u),o==="|"||o===",");){do o=r.next();while(o==="|"||o===",");u=s()}return d=>l.some(c=>c(d))}}function bs(e){return!!e&&!!e.match(/[\w\.:]+/)}function fc(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,a=t.exec(e);return{next:()=>{if(!a)return null;let r=a[0];return a=t.exec(e),r}}}function Us(e){typeof e.dispose=="function"&&e.dispose()}var ea=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},pc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},mc=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))}},hc=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new ea(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){let e=this.Q;this.Q=[];let t=new mc;for(let a of e)gc(a,this.initialScopeName,this.repo,t);for(let a of t.references)if(a instanceof ea){if(this.seenFullScopeRequests.has(a.scopeName))continue;this.seenFullScopeRequests.add(a.scopeName),this.Q.push(a)}else{if(this.seenFullScopeRequests.has(a.scopeName)||this.seenPartialScopeRequests.has(a.toKey()))continue;this.seenPartialScopeRequests.add(a.toKey()),this.Q.push(a)}}};function gc(e,t,a,r){let o=a.lookup(e.scopeName);if(!o){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}let n=a.lookup(t);e instanceof ea?va({baseGrammar:n,selfGrammar:o},r):Vr(e.ruleName,{baseGrammar:n,selfGrammar:o,repository:o.repository},r);let s=a.injections(e.scopeName);if(s)for(let i of s)r.add(new ea(i))}function Vr(e,t,a){if(t.repository&&t.repository[e]){let r=t.repository[e];Aa([r],t,a)}}function va(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Aa(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Aa(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Aa(e,t,a){for(let r of e){if(a.visitedRule.has(r))continue;a.visitedRule.add(r);let o=r.repository?Ms({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&Aa(r.patterns,{...t,repository:o},a);let n=r.include;if(!n)continue;let s=Hs(n);switch(s.kind){case 0:va({...t,selfGrammar:t.baseGrammar},a);break;case 1:va(t,a);break;case 2:Vr(s.ruleName,{...t,repository:o},a);break;case 3:case 4:let i=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(i){let l={baseGrammar:t.baseGrammar,selfGrammar:i,repository:o};s.kind===4?Vr(s.ruleName,l,a):va(l,a)}else s.kind===4?a.add(new pc(s.scopeName,s.ruleName)):a.add(new ea(s.scopeName));break}}}var wc=class{kind=0},xc=class{kind=1},Ic=class{constructor(e){this.ruleName=e}kind=2},Lc=class{constructor(e){this.scopeName=e}kind=3},Cc=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Hs(e){if(e==="$base")return new wc;if(e==="$self")return new xc;let t=e.indexOf("#");if(t===-1)return new Lc(e);if(t===0)return new Ic(e.substring(1));{let a=e.substring(0,t),r=e.substring(t+1);return new Cc(a,r)}}var Sc=/\\(\d+)/,ks=/\\(\d+)/g;var yc=-1,qs=-2;var ra=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,a,r){this.$location=e,this.id=t,this._name=a||null,this._nameIsCapturing=ka.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=ka.hasCaptures(this._contentName)}get debugName(){let e=this.$location?`${Fs(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:ka.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:ka.replaceCaptures(this._contentName,e,t)}},bc=class extends ra{retokenizeCapturedWithRuleId;constructor(e,t,a,r,o){super(e,t,a,r),this.retokenizeCapturedWithRuleId=o}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,a,r){throw new Error("Not supported!")}},kc=class extends ra{_match;captures;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,null),this._match=new ta(r,this.id),this.captures=o,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new aa,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Ts=class extends ra{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o){super(e,t,a,r),this.patterns=o.patterns,this.hasMissingPatterns=o.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(let a of this.patterns)e.getRule(a).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new aa,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},zr=class extends ra{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,a,r,o,n,s,i,l,u){super(e,t,a,r),this._begin=new ta(o,this.id),this.beginCaptures=n,this._end=new ta(s||"\uFFFF",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,a,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new aa;for(let a of this.patterns)e.getRule(a).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},Ra=class extends ra{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,a,r,o,n,s,i,l){super(e,t,a,r),this._begin=new ta(o,this.id),this.beginCaptures=n,this.whileCaptures=i,this._while=new ta(s,qs),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,a,r){return this._getCachedCompiledPatterns(e).compileAG(e,a,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new aa;for(let t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,a,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,a,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new aa,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"\uFFFF"),this._cachedCompiledWhilePatterns}},Ws=class Se{static createCaptureRule(t,a,r,o,n){return t.registerRule(s=>new bc(a,s,r,o,n))}static getCompiledRuleId(t,a,r){return t.id||a.registerRule(o=>{if(t.id=o,t.match)return new kc(t.$vscodeTextmateLocation,t.id,t.name,t.match,Se._compileCaptures(t.captures,a,r));if(typeof t.begin>"u"){t.repository&&(r=Ms({},r,t.repository));let n=t.patterns;return typeof n>"u"&&t.include&&(n=[{include:t.include}]),new Ts(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,Se._compilePatterns(n,a,r))}return t.while?new Ra(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,r),t.while,Se._compileCaptures(t.whileCaptures||t.captures,a,r),Se._compilePatterns(t.patterns,a,r)):new zr(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,Se._compileCaptures(t.beginCaptures||t.captures,a,r),t.end,Se._compileCaptures(t.endCaptures||t.captures,a,r),t.applyEndPatternLast,Se._compilePatterns(t.patterns,a,r))}),t.id}static _compileCaptures(t,a,r){let o=[];if(t){let n=0;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10);i>n&&(n=i)}for(let s=0;s<=n;s++)o[s]=null;for(let s in t){if(s==="$vscodeTextmateLocation")continue;let i=parseInt(s,10),l=0;t[s].patterns&&(l=Se.getCompiledRuleId(t[s],a,r)),o[i]=Se.createCaptureRule(a,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return o}static _compilePatterns(t,a,r){let o=[];if(t)for(let n=0,s=t.length;n<s;n++){let i=t[n],l=-1;if(i.include){let u=Hs(i.include);switch(u.kind){case 0:case 1:l=Se.getCompiledRuleId(r[i.include],a,r);break;case 2:let d=r[u.ruleName];d&&(l=Se.getCompiledRuleId(d,a,r));break;case 3:case 4:let c=u.scopeName,f=u.kind===4?u.ruleName:null,p=a.getExternalGrammar(c,r);if(p)if(f){let m=p.repository[f];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,r);if(l!==-1){let u=a.getRule(l),d=!1;if((u instanceof Ts||u instanceof zr||u instanceof Ra)&&u.hasMissingPatterns&&u.patterns.length===0&&(d=!0),d)continue;o.push(l)}}return{patterns:o,hasMissingPatterns:(t?t.length:0)!==o.length}}},ta=class Gs{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(t,a){if(t&&typeof t=="string"){let r=t.length,o=0,n=[],s=!1;for(let i=0;i<r;i++)if(t.charAt(i)==="\\"&&i+1<r){let u=t.charAt(i+1);u==="z"?(n.push(t.substring(o,i)),n.push("$(?!\\n)(?<!\\n)"),o=i+2):(u==="A"||u==="G")&&(s=!0),i++}this.hasAnchor=s,o===0?this.source=t:(n.push(t.substring(o,r)),this.source=n.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=a,typeof this.source=="string"?this.hasBackReferences=Sc.test(this.source):this.hasBackReferences=!1}clone(){return new Gs(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,a){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let r=a.map(o=>t.substring(o.start,o.end));return ks.lastIndex=0,this.source.replace(ks,(o,n)=>Ds(r[parseInt(n,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],a=[],r=[],o=[],n,s,i,l;for(n=0,s=this.source.length;n<s;n++)i=this.source.charAt(n),t[n]=i,a[n]=i,r[n]=i,o[n]=i,i==="\\"&&n+1<s&&(l=this.source.charAt(n+1),l==="A"?(t[n+1]="\uFFFF",a[n+1]="\uFFFF",r[n+1]="A",o[n+1]="A"):l==="G"?(t[n+1]="\uFFFF",a[n+1]="G",r[n+1]="\uFFFF",o[n+1]="G"):(t[n+1]=l,a[n+1]=l,r[n+1]=l,o[n+1]=l),n++);return{A0_G0:t.join(""),A0_G1:a.join(""),A1_G0:r.join(""),A1_G1:o.join("")}}resolveAnchors(t,a){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?a?this._anchorCache.A1_G1:this._anchorCache.A1_G0:a?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},aa=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){if(!this._cached){let t=this._items.map(a=>a.source);this._cached=new vs(e,t,this._items.map(a=>a.ruleId))}return this._cached}compileAG(e,t,a){return this._hasAnchors?t?a?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A1_G0):a?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,a)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,a){let r=this._items.map(o=>o.resolveAnchors(t,a));return new vs(e,r,this._items.map(o=>o.ruleId))}},vs=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(`
|
|
5
|
+
`)}findNextMatchSync(e,t,a){let r=this.scanner.findNextMatchSync(e,t,a);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},qr=class{constructor(e,t){this.languageId=e,this.tokenType=t}},Tc=class jr{_defaultAttributes;_embeddedLanguagesMatcher;constructor(t,a){this._defaultAttributes=new qr(t,8),this._embeddedLanguagesMatcher=new vc(Object.entries(a||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?jr._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}static _NULL_SCOPE_METADATA=new qr(0,0);_getBasicScopeAttributes=new _s(t=>{let a=this._scopeToLanguage(t),r=this._toStandardTokenType(t);return new qr(a,r)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){let a=t.match(jr.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/},vc=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);let t=e.map(([a,r])=>Ds(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])}},EI={InDebugMode:typeof process<"u"&&!!process.env.VSCODE_TEXTMATE_DEBUG},Vs=!1,Ps=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function zs(e,t,a,r,o,n,s,i){let l=t.content.length,u=!1,d=-1;if(s){let p=Pc(e,t,a,r,o,n);o=p.stack,r=p.linePos,a=p.isFirstLine,d=p.anchorPosition}let c=Date.now();for(;!u;){if(i!==0&&Date.now()-c>i)return new Ps(o,!0);f()}return new Ps(o,!1);function f(){let p=Ac(e,t,a,r,o,d);if(!p){n.produce(o,l),u=!0;return}let m=p.captureIndices,x=p.matchedRuleId,L=m&&m.length>0?m[0].end>r:!1;if(x===yc){let h=o.getRule(e);n.produce(o,m[0].start),o=o.withContentNameScopesList(o.nameScopesList),Jt(e,t,a,o,n,h.endCaptures,m),n.produce(o,m[0].end);let I=o;if(o=o.parent,d=I.getAnchorPos(),!L&&I.getEnterPos()===r){o=I,n.produce(o,l),u=!0;return}}else{let h=e.getRule(x);n.produce(o,m[0].start);let I=o,g=h.getName(t.content,m),C=o.contentNameScopesList.pushAttributed(g,e);if(o=o.push(x,r,d,m[0].end===l,null,C,C),h instanceof zr){let S=h;Jt(e,t,a,o,n,S.beginCaptures,m),n.produce(o,m[0].end),d=m[0].end;let v=S.getContentName(t.content,m),A=C.pushAttributed(v,e);if(o=o.withContentNameScopesList(A),S.endHasBackReferences&&(o=o.withEndRule(S.getEndWithResolvedBackReferences(t.content,m))),!L&&I.hasSameRuleAs(o)){o=o.pop(),n.produce(o,l),u=!0;return}}else if(h instanceof Ra){let S=h;Jt(e,t,a,o,n,S.beginCaptures,m),n.produce(o,m[0].end),d=m[0].end;let v=S.getContentName(t.content,m),A=C.pushAttributed(v,e);if(o=o.withContentNameScopesList(A),S.whileHasBackReferences&&(o=o.withEndRule(S.getWhileWithResolvedBackReferences(t.content,m))),!L&&I.hasSameRuleAs(o)){o=o.pop(),n.produce(o,l),u=!0;return}}else if(Jt(e,t,a,o,n,h.captures,m),n.produce(o,m[0].end),o=o.pop(),!L){o=o.safePop(),n.produce(o,l),u=!0;return}}m[0].end>r&&(r=m[0].end,a=!1)}}function Pc(e,t,a,r,o,n){let s=o.beginRuleCapturedEOL?0:-1,i=[];for(let l=o;l;l=l.pop()){let u=l.getRule(e);u instanceof Ra&&i.push({rule:u,stack:l})}for(let l=i.pop();l;l=i.pop()){let{ruleScanner:u,findOptions:d}=Fc(l.rule,e,l.stack.endRule,a,r===s),c=u.findNextMatchSync(t,r,d);if(c){if(c.ruleId!==qs){o=l.stack.pop();break}c.captureIndices&&c.captureIndices.length&&(n.produce(l.stack,c.captureIndices[0].start),Jt(e,t,a,l.stack,n,l.rule.whileCaptures,c.captureIndices),n.produce(l.stack,c.captureIndices[0].end),s=c.captureIndices[0].end,c.captureIndices[0].end>r&&(r=c.captureIndices[0].end,a=!1))}else{o=l.stack.pop();break}}return{stack:o,linePos:r,anchorPosition:s,isFirstLine:a}}function Ac(e,t,a,r,o,n){let s=Rc(e,t,a,r,o,n),i=e.getInjections();if(i.length===0)return s;let l=Mc(i,e,t,a,r,o,n);if(!l)return s;if(!s)return l;let u=s.captureIndices[0].start,d=l.captureIndices[0].start;return d<u||l.priorityMatch&&d===u?l:s}function Rc(e,t,a,r,o,n){let s=o.getRule(e),{ruleScanner:i,findOptions:l}=js(s,e,o.endRule,a,r===n),u=i.findNextMatchSync(t,r,l);return u?{captureIndices:u.captureIndices,matchedRuleId:u.ruleId}:null}function Mc(e,t,a,r,o,n,s){let i=Number.MAX_VALUE,l=null,u,d=0,c=n.contentNameScopesList.getScopeNames();for(let f=0,p=e.length;f<p;f++){let m=e[f];if(!m.matcher(c))continue;let x=t.getRule(m.ruleId),{ruleScanner:L,findOptions:h}=js(x,t,null,r,o===s),I=L.findNextMatchSync(a,o,h);if(!I)continue;let g=I.captureIndices[0].start;if(!(g>=i)&&(i=g,l=I.captureIndices,u=I.ruleId,d=m.priority,i===o))break}return l?{priorityMatch:d===-1,captureIndices:l,matchedRuleId:u}:null}function js(e,t,a,r,o){if(Vs){let s=e.compile(t,a),i=$s(r,o);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileAG(t,a,r,o),findOptions:0}}function Fc(e,t,a,r,o){if(Vs){let s=e.compileWhile(t,a),i=$s(r,o);return{ruleScanner:s,findOptions:i}}return{ruleScanner:e.compileWhileAG(t,a,r,o),findOptions:0}}function $s(e,t){let a=0;return e||(a|=1),t||(a|=4),a}function Jt(e,t,a,r,o,n,s){if(n.length===0)return;let i=t.content,l=Math.min(n.length,s.length),u=[],d=s[0].end;for(let c=0;c<l;c++){let f=n[c];if(f===null)continue;let p=s[c];if(p.length===0)continue;if(p.start>d)break;for(;u.length>0&&u[u.length-1].endPos<=p.start;)o.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?o.produceFromScopes(u[u.length-1].scopes,p.start):o.produce(r,p.start),f.retokenizeCapturedWithRuleId){let x=f.getName(i,s),L=r.contentNameScopesList.pushAttributed(x,e),h=f.getContentName(i,s),I=L.pushAttributed(h,e),g=r.push(f.retokenizeCapturedWithRuleId,p.start,-1,!1,null,L,I),C=e.createOnigString(i.substring(0,p.end));zs(e,C,a&&p.start===0,p.start,g,o,!1,0),Us(C);continue}let m=f.getName(i,s);if(m!==null){let L=(u.length>0?u[u.length-1].scopes:r.contentNameScopesList).pushAttributed(m,e);u.push(new Bc(L,p.end))}}for(;u.length>0;)o.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var Bc=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function Ec(e,t,a,r,o,n,s,i){return new _c(e,t,a,r,o,n,s,i)}function As(e,t,a,r,o){let n=Pa(t,Ma),s=Ws.getCompiledRuleId(a,r,o.repository);for(let i of n)e.push({debugSelector:t,matcher:i.matcher,ruleId:s,grammar:o,priority:i.priority})}function Ma(e,t){if(t.length<e.length)return!1;let a=0;return e.every(r=>{for(let o=a;o<t.length;o++)if(Dc(t[o],r))return a=o+1,!0;return!1})}function Dc(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 _c=class{constructor(e,t,a,r,o,n,s,i){if(this._rootScopeName=e,this.balancedBracketSelectors=n,this._onigLib=i,this._basicScopeAttributesProvider=new Tc(a,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=s,this._grammar=Rs(t,null),this._injections=null,this._tokenTypeMatchers=[],o)for(let l of Object.keys(o)){let u=Pa(l,Ma);for(let d of u)this._tokenTypeMatchers.push({matcher:d.matcher,type:o[l]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(let e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){let e={lookup:o=>o===this._rootScopeName?this._grammar:this.getExternalGrammar(o),injections:o=>this._grammarRepository.injections(o)},t=[],a=this._rootScopeName,r=e.lookup(a);if(r){let o=r.injections;if(o)for(let s in o)As(t,s,o[s],this,r);let n=this._grammarRepository.injections(a);n&&n.forEach(s=>{let i=this.getExternalGrammar(s);if(i){let l=i.injectionSelector;l&&As(t,l,i,this,i)}})}return t.sort((o,n)=>o.priority-n.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){let t=++this._lastRuleId,a=e(t);return this._ruleId2desc[t]=a,a}getRule(e){return this._ruleId2desc[e]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){let a=this._grammarRepository.lookup(e);if(a)return this._includedGrammars[e]=Rs(a,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,a=0){let r=this._tokenize(e,t,!1,a);return{tokens:r.lineTokens.getResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}tokenizeLine2(e,t,a=0){let r=this._tokenize(e,t,!0,a);return{tokens:r.lineTokens.getBinaryResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}_tokenize(e,t,a,r){this._rootId===-1&&(this._rootId=Ws.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let o;if(!t||t===$r.NULL){o=!0;let u=this._basicScopeAttributesProvider.getDefaultAttributes(),d=this.themeProvider.getDefaults(),c=ct.set(0,u.languageId,u.tokenType,null,d.fontStyle,d.foregroundId,d.backgroundId),f=this.getRule(this._rootId).getName(null,null),p;f?p=Yt.createRootAndLookUpScopeName(f,c,this):p=Yt.createRoot("unknown",c),t=new $r(null,this._rootId,-1,-1,!1,null,p,p)}else o=!1,t.reset();e=e+`
|
|
6
|
+
`;let n=this.createOnigString(e),s=n.content.length,i=new Nc(a,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=zs(this,n,o,0,t,i,!0,r);return Us(n),{lineLength:s,lineTokens:i,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Rs(e,t){return e=tc(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var Yt=class Ue{constructor(t,a,r){this.parent=t,this.scopePath=a,this.tokenAttributes=r}static fromExtension(t,a){let r=t,o=t?.scopePath??null;for(let n of a)o=Hr.push(o,n.scopeNames),r=new Ue(r,o,n.encodedTokenAttributes);return r}static createRoot(t,a){return new Ue(null,new Hr(null,t),a)}static createRootAndLookUpScopeName(t,a,r){let o=r.getMetadataForScope(t),n=new Hr(null,t),s=r.themeProvider.themeMatch(n),i=Ue.mergeAttributes(a,o,s);return new Ue(null,n,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Ue.equals(this,t)}static equals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.scopeName!==a.scopeName||t.tokenAttributes!==a.tokenAttributes)return!1;t=t.parent,a=a.parent}while(!0)}static mergeAttributes(t,a,r){let o=-1,n=0,s=0;return r!==null&&(o=r.fontStyle,n=r.foregroundId,s=r.backgroundId),ct.set(t,a.languageId,a.tokenType,null,o,n,s)}pushAttributed(t,a){if(t===null)return this;if(t.indexOf(" ")===-1)return Ue._pushAttributed(this,t,a);let r=t.split(/ /g),o=this;for(let n of r)o=Ue._pushAttributed(o,n,a);return o}static _pushAttributed(t,a,r){let o=r.getMetadataForScope(a),n=t.scopePath.push(a),s=r.themeProvider.themeMatch(n),i=Ue.mergeAttributes(t.tokenAttributes,o,s);return new Ue(t,n,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){let a=[],r=this;for(;r&&r!==t;)a.push({encodedTokenAttributes:r.tokenAttributes,scopeNames:r.scopePath.getExtensionIfDefined(r.parent?.scopePath??null)}),r=r.parent;return r===t?a.reverse():void 0}},$r=class dt{constructor(t,a,r,o,n,s,i,l){this.parent=t,this.ruleId=a,this.beginRuleCapturedEOL=n,this.endRule=s,this.nameScopesList=i,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=r,this._anchorPos=o}_stackElementBrand=void 0;static NULL=new dt(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:dt._equals(this,t)}static _equals(t,a){return t===a?!0:this._structuralEquals(t,a)?Yt.equals(t.contentNameScopesList,a.contentNameScopesList):!1}static _structuralEquals(t,a){do{if(t===a||!t&&!a)return!0;if(!t||!a||t.depth!==a.depth||t.ruleId!==a.ruleId||t.endRule!==a.endRule)return!1;t=t.parent,a=a.parent}while(!0)}clone(){return this}static _reset(t){for(;t;)t._enterPos=-1,t._anchorPos=-1,t=t.parent}reset(){dt._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,a,r,o,n,s,i){return new dt(this,t,a,r,o,n,s,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){let t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,a){return this.parent&&(a=this.parent._writeString(t,a)),t[a++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,a}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new dt(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let a=this;for(;a&&a._enterPos===t._enterPos;){if(a.ruleId===t.ruleId)return!0;a=a.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,a){let r=Yt.fromExtension(t?.nameScopesList??null,a.nameScopesList);return new dt(t,a.ruleId,a.enterPos??-1,a.anchorPos??-1,a.beginRuleCapturedEOL,a.endRule,r,Yt.fromExtension(r,a.contentNameScopesList))}},Oc=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(a=>a==="*"?(this.allowAny=!0,[]):Pa(a,Ma).map(r=>r.matcher)),this.unbalancedBracketScopes=t.flatMap(a=>Pa(a,Ma).map(r=>r.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(let t of this.unbalancedBracketScopes)if(t(e))return!1;for(let t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},Nc=class{constructor(e,t,a,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=a,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let r=e?.tokenAttributes??0,o=!1;if(this.balancedBracketSelectors?.matchesAlways&&(o=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){let n=e?.getScopeNames()??[];for(let s of this._tokenTypeOverrides)s.matcher(n)&&(r=ct.set(r,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(o=this.balancedBracketSelectors.match(n))}if(o&&(r=ct.set(r,0,8,o,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=t;return}let a=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:a}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);let a=new Uint32Array(this._binaryTokens.length);for(let r=0,o=this._binaryTokens.length;r<o;r++)a[r]=this._binaryTokens[r];return a}},Uc=class{constructor(e,t){this._onigLib=t,this._theme=e}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(let e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,a,r,o){if(!this._grammars.has(e)){let n=this._rawGrammars.get(e);if(!n)return null;this._grammars.set(e,Ec(e,n,t,a,r,o,this,this._onigLib))}return this._grammars.get(e)}},Xs=class{_options;_syncRegistry;_ensureGrammarCache;constructor(e){this._options=e,this._syncRegistry=new Uc(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 Oc(a.balancedBracketSelectors||[],a.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,a,r,o){let n=new hc(this._syncRegistry,e);for(;n.Q.length>0;)n.Q.map(s=>this._loadSingleGrammar(s.scopeName)),n.processQueue();return this._grammarForScopeName(e,t,a,r,o)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){let t=this._options.loadGrammar(e);if(t){let a=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,a)}}addGrammar(e,t=[],a=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,a,r)}_grammarForScopeName(e,t=0,a=null,r=null,o=null){return this._syncRegistry.grammarForScopeName(e,t,a,r,o)}},Fa=$r.NULL;var Hc=/["&'<>`]/g,qc=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Wc=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Gc=/[|\\{}()[\]^$+*?.]/g,Ks=new WeakMap;function Qs(e,t){if(e=e.replace(t.subset?Vc(t.subset):Hc,r),t.subset||t.escapeOnly)return e;return e.replace(qc,a).replace(Wc,r);function a(o,n,s){return t.format((o.charCodeAt(0)-55296)*1024+o.charCodeAt(1)-56320+65536,s.charCodeAt(n+2),t)}function r(o,n,s){return t.format(o.charCodeAt(0),s.charCodeAt(n+1),t)}}function Vc(e){let t=Ks.get(e);return t||(t=zc(e),Ks.set(e,t)),t}function zc(e){let t=[],a=-1;for(;++a<e.length;)t.push(e[a].replace(Gc,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}var jc=/[\dA-Fa-f]/;function Js(e,t,a){let r="&#x"+e.toString(16).toUpperCase();return a&&t&&!jc.test(String.fromCharCode(t))?r:r+";"}var $c=/\d/;function Ys(e,t,a){let r="&#"+String(e);return a&&t&&!$c.test(String.fromCharCode(t))?r:r+";"}var Zs=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"];var Ba={nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",fnof:"\u0192",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",bull:"\u2022",hellip:"\u2026",prime:"\u2032",Prime:"\u2033",oline:"\u203E",frasl:"\u2044",weierp:"\u2118",image:"\u2111",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",quot:'"',amp:"&",lt:"<",gt:">",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",circ:"\u02C6",tilde:"\u02DC",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",permil:"\u2030",lsaquo:"\u2039",rsaquo:"\u203A",euro:"\u20AC"};var ei=["cent","copy","divide","gt","lt","not","para","times"];var ti={}.hasOwnProperty,Kr={},Ea;for(Ea in Ba)ti.call(Ba,Ea)&&(Kr[Ba[Ea]]=Ea);var Xc=/[^\dA-Za-z]/;function ai(e,t,a,r){let o=String.fromCharCode(e);if(ti.call(Kr,o)){let n=Kr[o],s="&"+n;return a&&Zs.includes(n)&&!ei.includes(n)&&(!r||t&&t!==61&&Xc.test(String.fromCharCode(t)))?s:s+";"}return""}function ri(e,t,a){let r=Js(e,t,a.omitOptionalSemicolons),o;if((a.useNamedReferences||a.useShortestReferences)&&(o=ai(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!o)&&a.useShortestReferences){let n=Ys(e,t,a.omitOptionalSemicolons);n.length<r.length&&(r=n)}return o&&(!a.useShortestReferences||o.length<r.length)?o:r}function ze(e,t){return Qs(e,Object.assign({format:ri},t))}var Kc=/^>|^->|<!--|-->|--!>|<!-$/g,Qc=[">"],Jc=["<",">"];function oi(e,t,a,r){return r.settings.bogusComments?"<?"+ze(e.value,Object.assign({},r.settings.characterReferences,{subset:Qc}))+">":"<!--"+e.value.replace(Kc,o)+"-->";function o(n){return ze(n,Object.assign({},r.settings.characterReferences,{subset:Jc}))}}function ni(e,t,a,r){return"<!"+(r.settings.upperDoctype?"DOCTYPE":"doctype")+(r.settings.tightDoctype?"":" ")+"html>"}var oe=si(1),Qr=si(-1),Yc=[];function si(e){return t;function t(a,r,o){let n=a?a.children:Yc,s=(r||0)+e,i=n[s];if(!o)for(;i&&It(i);)s+=e,i=n[s];return i}}var Zc={}.hasOwnProperty;function Da(e){return t;function t(a,r,o){return Zc.call(e,a.tagName)&&e[a.tagName](a,r,o)}}var oa=Da({body:tf,caption:Jr,colgroup:Jr,dd:nf,dt:of,head:Jr,html:ef,li:rf,optgroup:sf,option:lf,p:af,rp:ii,rt:ii,tbody:df,td:li,tfoot:cf,th:li,thead:uf,tr:ff});function Jr(e,t,a){let r=oe(a,t,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&It(r.value.charAt(0)))}function ef(e,t,a){let r=oe(a,t);return!r||r.type!=="comment"}function tf(e,t,a){let r=oe(a,t);return!r||r.type!=="comment"}function af(e,t,a){let r=oe(a,t);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!a||!(a.type==="element"&&(a.tagName==="a"||a.tagName==="audio"||a.tagName==="del"||a.tagName==="ins"||a.tagName==="map"||a.tagName==="noscript"||a.tagName==="video"))}function rf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&r.tagName==="li"}function of(e,t,a){let r=oe(a,t);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function nf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function ii(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function sf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&r.tagName==="optgroup"}function lf(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function uf(e,t,a){let r=oe(a,t);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function df(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function cf(e,t,a){return!oe(a,t)}function ff(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&r.tagName==="tr"}function li(e,t,a){let r=oe(a,t);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}var ui=Da({body:hf,colgroup:gf,head:mf,html:pf,tbody:wf});function pf(e){let t=oe(e,-1);return!t||t.type!=="comment"}function mf(e){let t=new Set;for(let r of e.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(t.has(r.tagName))return!1;t.add(r.tagName)}let a=e.children[0];return!a||a.type==="element"}function hf(e){let t=oe(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&It(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function gf(e,t,a){let r=Qr(a,t),o=oe(e,-1,!0);return a&&r&&r.type==="element"&&r.tagName==="colgroup"&&oa(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="col")}function wf(e,t,a){let r=Qr(a,t),o=oe(e,-1);return a&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&oa(r,a.children.indexOf(r),a)?!1:!!(o&&o.type==="element"&&o.tagName==="tr")}var _a={name:[[`
|
|
7
7
|
\f\r &/=>`.split(""),`
|
|
8
8
|
\f\r "&'/=>\``.split("")],[`\0
|
|
9
9
|
\f\r "&'/<=>`.split(""),`\0
|
|
@@ -11,9 +11,9 @@ ${N}`}]}}E.current({...O,...U?{modelContext:U}:{}})}Z({jsonrpc:"2.0",id:G,result
|
|
|
11
11
|
\f\r &>`.split(""),`\0
|
|
12
12
|
\f\r "&'<=>\``.split("")],[`\0
|
|
13
13
|
\f\r "&'<=>\``.split(""),`\0
|
|
14
|
-
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function di(e,t,a,r){let o=r.schema,n=o.space==="svg"?!1:r.settings.omitOptionalTags,s=o.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;o.space==="html"&&e.tagName==="svg"&&(r.schema=ha);let u=xf(r,e.properties),d=r.all(o.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=o,d&&(s=!1),(u||!n||!ui(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),s&&(o.space==="svg"||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(d),!s&&(!n||!oa(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function xf(e,t){let a=[],r=-1,o;if(t){for(o in t)if(t[o]!==null&&t[o]!==void 0){let n=If(e,o,t[o]);n&&a.push(n)}}for(;++r<a.length;){let n=e.settings.tightAttributes?a[r].charAt(a[r].length-1):void 0;r!==a.length-1&&n!=='"'&&n!=="'"&&(a[r]+=" ")}return a.join("")}function If(e,t,a){let r=en(e.schema,t),o=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,n=e.settings.allowDangerousCharacters?0:1,s=e.quote,i;if(r.overloadedBoolean&&(a===r.attribute||a==="")?a=!0:(r.boolean||r.overloadedBoolean)&&(typeof a!="string"||a===r.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=ze(r.attribute,Object.assign({},e.settings.characterReferences,{subset:_a.name[o][n]}));return a===!0||(a=Array.isArray(a)?(r.commaSeparated?an:rn)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=ze(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:_a.unquoted[o][n]}))),i!==a&&(e.settings.quoteSmart&&hr(a,s)>hr(a,e.alternative)&&(s=e.alternative),i=s+ze(a,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?_a.single:_a.double)[o][n],attribute:!0}))+s),l+(i&&"="+i))}var Lf=["<","&"];function Oa(e,t,a,r){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:ze(e.value,Object.assign({},r.settings.characterReferences,{subset:Lf}))}function ci(e,t,a,r){return r.settings.allowDangerousHtml?e.value:Oa(e,t,a,r)}function fi(e,t,a,r){return r.all(e)}var pi=on("type",{invalid:Cf,unknown:Sf,handlers:{comment:oi,doctype:ni,element:di,raw:ci,root:fi,text:Oa}});function Cf(e){throw new Error("Expected node, not `"+e+"`")}function Sf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var yf={},bf={},kf=[];function Yr(e,t){let a=t||yf,r=a.quote||'"',o=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:Tf,all:vf,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||nn,characterReferences:a.characterReferences||bf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?ha:tn,quote:r,alternative:o}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Tf(e,t,a){return pi(e,t,a,this)}function vf(e){let t=[],a=e&&e.children||kf,r=-1;for(;++r<a.length;)t[r]=this.one(a[r],r,e);return t.join("")}function Na(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(let[o,n]of Object.entries(t?.colorReplacements||{}))typeof n=="string"?a[o]=n:o===r&&Object.assign(a,n);return a}function tt(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Pf(e){return Array.isArray(e)?e:[e]}async function Li(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function oo(e){return!e||["plaintext","txt","text","plain"].includes(e)}function Ci(e){return e==="ansi"||oo(e)}function no(e){return e==="none"}function Si(e){return no(e)}function yi(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let r of a)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}function Wa(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),r=0,o=[];for(let n=0;n<a.length;n+=2){let s=t?a[n]+(a[n+1]||""):a[n];o.push([s,r]),r+=a[n].length,r+=a[n+1]?.length||0}return o}function Af(e){let t=Wa(e,!0).map(([o])=>o);function a(o){if(o===e.length)return{line:t.length-1,character:t[t.length-1].length};let n=o,s=0;for(let i of t){if(n<i.length)break;n-=i.length,s++}return{line:s,character:n}}function r(o,n){let s=0;for(let i=0;i<o;i++)s+=t[i].length;return s+=n,s}return{lines:t,indexToPos:a,posToIndex:r}}function bi(e,t,a){let r=new Set;for(let n of e.matchAll(/:?lang=["']([^"']+)["']/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/\\begin\{([\w-]+)\}/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let s=n[1].toLowerCase().trim(),i=s.includes("/")?s.split("/").pop():s;i&&r.add(i)}if(!a)return Array.from(r);let o=a.getBundledLanguages();return Array.from(r).filter(n=>n&&o[n])}var so="light-dark()",Rf=["color","background-color"];function Mf(e,t){let a=0,r=[];for(let o of t)o>a&&r.push({...e,content:e.content.slice(a,o),offset:e.offset+a}),a=o;return a<e.content.length&&r.push({...e,content:e.content.slice(a),offset:e.offset+a}),r}function Ff(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((r,o)=>r-o);return a.length?e.map(r=>r.flatMap(o=>{let n=a.filter(s=>o.offset<s&&s<o.offset+o.content.length).map(s=>s-o.offset).sort((s,i)=>s-i);return n.length?Mf(o,n):o})):e}function Bf(e,t,a,r,o="css-vars"){let n={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(d=>Ua(e.variants[d])),i=new Set(s.flatMap(d=>Object.keys(d))),l={},u=(d,c)=>{let f=c==="color"?"":c==="background-color"?"-bg":`-${c}`;return a+t[d]+(c==="color"?"":f)};return s.forEach((d,c)=>{for(let f of i){let p=d[f]||"inherit";if(c===0&&r&&Rf.includes(f))if(r===so&&s.length>1){let m=t.findIndex(I=>I==="light"),x=t.findIndex(I=>I==="dark");if(m===-1||x===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let L=s[m][f]||"inherit",h=s[x][f]||"inherit";l[f]=`light-dark(${L}, ${h})`,o==="css-vars"&&(l[u(c,f)]=p)}else l[f]=p;else o==="css-vars"&&(l[u(c,f)]=p)}}),n.htmlStyle=l,n}function Ua(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&ge.Italic&&(t["font-style"]="italic"),e.fontStyle&ge.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&ge.Underline&&a.push("underline"),e.fontStyle&ge.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function to(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ki=new WeakMap;function Va(e,t){ki.set(e,t)}function sa(e){return ki.get(e)}var Tt=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,a){return new e(Object.fromEntries(Pf(a).map(r=>[r,Fa])),t)}constructor(...t){if(t.length===2){let[a,r]=t;this.lang=r,this._stacks=a}else{let[a,r,o]=t;this.lang=r,this._stacks={[o]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return Ef(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Ef(e){let t=[],a=new Set;function r(o){if(a.has(o))return;a.add(o);let n=o?.nameScopesList?.scopeName;n&&t.push(n),o.parent&&r(o.parent)}return r(e),t}function Df(e,t){if(!(e instanceof Tt))throw new ee("Invalid grammar state");return e.getInternalStack(t)}function _f(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let r=function(s){if(typeof s=="number"){if(s<0||s>a.source.length)throw new ee(`Invalid decoration offset: ${s}. Code length: ${a.source.length}`);return{...o.indexToPos(s),offset:s}}else{let i=o.lines[s.line];if(i===void 0)throw new ee(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${o.lines.length}`);let l=s.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new ee(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,character:l,offset:o.posToIndex(s.line,l)}}},o=Af(a.source),n=(a.options.decorations||[]).map(s=>({...s,start:r(s.start),end:r(s.end)}));Of(n),e.set(a.meta,{decorations:n,converter:o,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let o=t(this).decorations.flatMap(s=>[s.start.offset,s.end.offset]);return Ff(a,o)},code(a){if(!this.options.decorations?.length)return;let r=t(this),o=Array.from(a.children).filter(d=>d.type==="element"&&d.tagName==="span");if(o.length!==r.converter.lines.length)throw new ee(`Number of lines in code element (${o.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function n(d,c,f,p){let m=o[d],x="",L=-1,h=-1;if(c===0&&(L=0),f===0&&(h=0),f===Number.POSITIVE_INFINITY&&(h=m.children.length),L===-1||h===-1)for(let g=0;g<m.children.length;g++)x+=Ti(m.children[g]),L===-1&&x.length===c&&(L=g+1),h===-1&&x.length===f&&(h=g+1);if(L===-1)throw new ee(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(h===-1)throw new ee(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let I=m.children.slice(L,h);if(!p.alwaysWrap&&I.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&I.length===1&&I[0].type==="element")i(I[0],p,"token");else{let g={type:"element",tagName:"span",properties:{},children:I};i(g,p,"wrapper"),m.children.splice(L,I.length,g)}}function s(d,c){o[d]=i(o[d],c,"line")}function i(d,c,f){let p=c.properties||{},m=c.transform||(x=>x);return d.tagName=c.tagName||"span",d.properties={...d.properties,...p,class:d.properties.class},c.properties?.class&&yi(d,c.properties.class),d=m(d,f)||d,d}let l=[],u=r.decorations.sort((d,c)=>c.start.offset-d.start.offset||d.end.offset-c.end.offset);for(let d of u){let{start:c,end:f}=d;if(c.line===f.line)n(c.line,c.character,f.character,d);else if(c.line<f.line){n(c.line,c.character,Number.POSITIVE_INFINITY,d);for(let p=c.line+1;p<f.line;p++)l.unshift(()=>s(p,d));n(f.line,0,f.character,d)}}l.forEach(d=>d())}}}function Of(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 r=t+1;r<e.length;r++){let o=e[r],n=a.start.offset<=o.start.offset&&o.start.offset<a.end.offset,s=a.start.offset<o.end.offset&&o.end.offset<=a.end.offset,i=o.start.offset<=a.start.offset&&a.start.offset<o.end.offset,l=o.start.offset<a.end.offset&&a.end.offset<=o.end.offset;if(n||s||i||l){if(n&&s||i&&l||i&&a.start.offset===a.end.offset||s&&o.start.offset===o.end.offset)continue;throw new ee(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(o.start)} intersect.`)}}}}function Ti(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Ti).join(""):""}var Nf=[_f()];function Ha(e){let t=Uf(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Nf]}function Uf(e){let t=[],a=[],r=[];for(let o of e)switch(o.enforce){case"pre":t.push(o);break;case"post":a.push(o);break;default:r.push(o)}return{pre:t,post:a,normal:r}}var ft=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Zr={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Hf(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let r=e.indexOf("m",a);if(r!==-1)return{sequence:e.substring(a+2,r).split(";"),startPosition:a,position:r+1}}return{position:e.length}}function mi(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(r=>Number.parseInt(r));return a.length!==3||a.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function qf(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let r=Number.parseInt(a);if(!Number.isNaN(r))if(r===0)t.push({type:"resetAll"});else if(r<=9)Zr[r]&&t.push({type:"setDecoration",value:Zr[r]});else if(r<=29){let o=Zr[r-20];o&&(t.push({type:"resetDecoration",value:o}),o==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-30]}});else if(r===38){let o=mi(e);o&&t.push({type:"setForegroundColor",value:o})}else if(r===39)t.push({type:"resetForegroundColor"});else if(r<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-40]}});else if(r===48){let o=mi(e);o&&t.push({type:"setBackgroundColor",value:o})}else r===49?t.push({type:"resetBackgroundColor"}):r===53?t.push({type:"setDecoration",value:"overline"}):r===55?t.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-90+8]}}):r>=100&&r<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-100+8]}})}return t}function Gf(){let e=null,t=null,a=new Set;return{parse(r){let o=[],n=0;do{let s=Hf(r,n),i=s.sequence?r.substring(n,s.startPosition):r.substring(n);if(i.length>0&&o.push({value:i,foreground:e,background:t,decorations:new Set(a)}),s.sequence){let l=qf(s.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}n=s.position}while(n<r.length);return o}}}var Wf={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 Vf(e=Wf){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function o(){if(r)return r;r=[];for(let u=0;u<ft.length;u++)r.push(t(ft[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let d=0;d<6;d++)for(let c=0;c<6;c++)r.push(a([i[u],i[d],i[c]]));let l=8;for(let u=0;u<24;u++,l+=10)r.push(a([l,l,l]));return r}function n(i){return o()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return n(i.index)}}return{value:s}}var zf={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 jf(e,t,a){let r=Na(e,a),o=Wa(t),n=Object.fromEntries(ft.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,d=e.colors?.[u];return[l,d||zf[l]]})),s=Vf(n),i=Gf();return o.map(l=>i.parse(l[0]).map(u=>{let d,c;u.decorations.has("reverse")?(d=u.background?s.value(u.background):e.bg,c=u.foreground?s.value(u.foreground):e.fg):(d=u.foreground?s.value(u.foreground):e.fg,c=u.background?s.value(u.background):void 0),d=tt(d,r),c=tt(c,r),u.decorations.has("dim")&&(d=$f(d));let f=ge.None;return u.decorations.has("bold")&&(f|=ge.Bold),u.decorations.has("italic")&&(f|=ge.Italic),u.decorations.has("underline")&&(f|=ge.Underline),u.decorations.has("strikethrough")&&(f|=ge.Strikethrough),{content:u.value,offset:l[1],color:d,bgColor:c,fontStyle:f}}))}function $f(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let r=t[1];if(r.length===8){let o=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${o}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){let o=r[0],n=r[1],s=r[2],i=r[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${o}${o}${n}${n}${s}${s}${l}`}else if(r.length===3){let o=r[0],n=r[1],s=r[2];return`#${o}${o}${n}${n}${s}${s}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function io(e,t,a={}){let{theme:r=e.getLoadedThemes()[0]}=a,o=e.resolveLangAlias(a.lang||"text");if(oo(o)||no(r))return Wa(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:n,colorMap:s}=e.setTheme(r);if(o==="ansi")return jf(n,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(n.name))throw new ee(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${n.name}"`)}return Kf(t,i,n,s,a)}function Xf(...e){if(e.length===2)return sa(e[1]);let[t,a,r={}]=e,{lang:o="text",theme:n=t.getLoadedThemes()[0]}=r;if(oo(o)||no(n))throw new ee("Plain language does not have grammar state");if(o==="ansi")throw new ee("ANSI language does not have grammar state");let{theme:s,colorMap:i}=t.setTheme(n),l=t.getLanguage(o);return new Tt(lo(a,l,s,i,r).stateStack,l.name,s.name)}function Kf(e,t,a,r,o){let n=lo(e,t,a,r,o),s=new Tt(n.stateStack,t.name,a.name);return Va(n.tokens,s),n.tokens}function lo(e,t,a,r,o){let n=Na(a,o),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=o,l=Wa(e),u=o.grammarState?Df(o.grammarState,a.name)??Fa:o.grammarContextCode!=null?lo(o.grammarContextCode,t,a,r,{...o,grammarState:void 0,grammarContextCode:void 0}).stateStack:Fa,d=[],c=[];for(let f=0,p=l.length;f<p;f++){let[m,x]=l[f];if(m===""){d=[],c.push([]);continue}if(s>0&&m.length>=s){d=[],c.push([{content:m,offset:x,color:"",fontStyle:0}]);continue}let L,h,I;o.includeExplanation&&(L=t.tokenizeLine(m,u,i),h=L.tokens,I=0);let g=t.tokenizeLine2(m,u,i),C=g.tokens.length/2;for(let S=0;S<C;S++){let v=g.tokens[2*S],A=S+1<C?g.tokens[2*S+2]:m.length;if(v===A)continue;let P=g.tokens[2*S+1],D=tt(r[ct.getForeground(P)],n),b=ct.getFontStyle(P),E={content:m.substring(v,A),offset:x+v,color:D,fontStyle:b};if(o.includeExplanation){let M=[];if(o.includeExplanation!=="scopeName")for(let H of a.settings){let T;switch(typeof H.scope){case"string":T=H.scope.split(/,/).map(y=>y.trim());break;case"object":T=H.scope;break;default:continue}M.push({settings:H,selectors:T.map(y=>y.split(/ /))})}E.explanation=[];let $=0;for(;v+$<A;){let H=h[I],T=m.substring(H.startIndex,H.endIndex);$+=T.length,E.explanation.push({content:T,scopes:o.includeExplanation==="scopeName"?Qf(H.scopes):Jf(M,H.scopes)}),I+=1}}d.push(E)}c.push(d),d=[],u=g.ruleStack}return{tokens:c,stateStack:u}}function Qf(e){return e.map(t=>({scopeName:t}))}function Jf(e,t){let a=[];for(let r=0,o=t.length;r<o;r++){let n=t[r];a[r]={scopeName:n,themeMatches:Zf(e,n,t.slice(0,r))}}return a}function hi(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function Yf(e,t,a){if(!hi(e[e.length-1],t))return!1;let r=e.length-2,o=a.length-1;for(;r>=0&&o>=0;)hi(e[r],a[o])&&(r-=1),o-=1;return r===-1}function Zf(e,t,a){let r=[];for(let{selectors:o,settings:n}of e)for(let s of o)if(Yf(s,t,a)){r.push(n);break}return r}function vi(e,t,a){let r=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),o=r.map(l=>{let u=io(e,t,{...a,theme:l.theme}),d=sa(u),c=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:d,theme:c}}),n=ep(...o.map(l=>l.tokens)),s=n[0].map((l,u)=>l.map((d,c)=>{let f={content:d.content,variants:{},offset:d.offset};return"includeExplanation"in a&&a.includeExplanation&&(f.explanation=d.explanation),n.forEach((p,m)=>{let{content:x,explanation:L,offset:h,...I}=p[u][c];f.variants[r[m].color]=I}),f})),i=o[0].state?new Tt(Object.fromEntries(o.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),o[0].state.lang):void 0;return i&&Va(s,i),s}function ep(...e){let t=e.map(()=>[]),a=e.length;for(let r=0;r<e[0].length;r++){let o=e.map(l=>l[r]),n=t.map(()=>[]);t.forEach((l,u)=>l.push(n[u]));let s=o.map(()=>0),i=o.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let d=i[u];d.content.length===l?(n[u].push(d),s[u]+=1,i[u]=o[u][s[u]]):(n[u].push({...d,content:d.content.slice(0,l)}),i[u]={...d,content:d.content.slice(l),offset:d.offset+l})}}}return t}function qa(e,t,a){let r,o,n,s,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:d="--shiki-",colorsRendering:c="css-vars"}=a,f=Object.entries(a.themes).filter(h=>h[1]).map(h=>({color:h[0],theme:h[1]})).sort((h,I)=>h.color===u?-1:I.color===u?1:0);if(f.length===0)throw new ee("`themes` option must not be empty");let p=vi(e,t,a);if(l=sa(p),u&&so!==u&&!f.find(h=>h.color===u))throw new ee(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=f.map(h=>e.getTheme(h.theme)),x=f.map(h=>h.color);n=p.map(h=>h.map(I=>Bf(I,x,d,u,c))),l&&Va(n,l);let L=f.map(h=>Na(h.theme,a));o=gi(f,m,L,d,u,"fg",c),r=gi(f,m,L,d,u,"bg",c),s=`shiki-themes ${m.map(h=>h.name).join(" ")}`,i=u?void 0:[o,r].join(";")}else if("theme"in a){let u=Na(a.theme,a);n=io(e,t,a);let d=e.getTheme(a.theme);r=tt(d.bg,u),o=tt(d.fg,u),s=d.name,l=sa(n)}else throw new ee("Invalid options, either `theme` or `themes` must be provided");return{tokens:n,fg:o,bg:r,themeName:s,rootStyle:i,grammarState:l}}function gi(e,t,a,r,o,n,s){return e.map((i,l)=>{let u=tt(t[l][n],a[l])||"inherit",d=`${r+i.color}${n==="bg"?"-bg":""}:${u}`;if(l===0&&o){if(o===so&&e.length>1){let c=e.findIndex(x=>x.color==="light"),f=e.findIndex(x=>x.color==="dark");if(c===-1||f===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=tt(t[c][n],a[c])||"inherit",m=tt(t[f][n],a[f])||"inherit";return`light-dark(${p}, ${m});${d}`}return u}return s==="css-vars"?d:null}).filter(i=>!!i).join(";")}function Ga(e,t,a,r={meta:{},options:a,codeToHast:(o,n)=>Ga(e,o,n),codeToTokens:(o,n)=>qa(e,o,n)}){let o=t;for(let m of Ha(a))o=m.preprocess?.call(r,o,a)||o;let{tokens:n,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:d}=qa(e,o,a),{mergeWhitespaces:c=!0,mergeSameStyleTokens:f=!1}=a;c===!0?n=ap(n):c==="never"&&(n=rp(n)),f&&(n=op(n));let p={...r,get source(){return o}};for(let m of Ha(a))n=m.tokens?.call(p,n)||n;return tp(n,{...a,fg:s,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,d)}function tp(e,t,a,r=sa(e)){let o=Ha(t),n=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[x,L]of Object.entries(t.meta||{}))x.startsWith("_")||(u[x]=L);let d={type:"element",tagName:"pre",properties:u,children:[],data:t.data},c={type:"element",tagName:"code",properties:{},children:n},f=[],p={...a,structure:i,addClassToHast:yi,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return d},get code(){return c},get lines(){return f}};if(e.forEach((x,L)=>{L&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&n.push({type:"text",value:`
|
|
15
|
-
`}));let h={type:"element",tagName:"span",properties:{class:"line"},children:[]},I=0;for(let g of x){let C={type:"element",tagName:"span",properties:{...g.htmlAttrs},children:[{type:"text",value:g.content}]},S=to(g.htmlStyle||Ua(g));S&&(C.properties.style=S);for(let v of o)C=v?.span?.call(p,C,L+1,I,h,g)||C;i==="inline"?s.children.push(C):i==="classic"&&h.children.push(C),I+=g.content.length}if(i==="classic"){for(let g of o)h=g?.line?.call(p,h,L+1)||h;f.push(h),n.push(h)}else i==="inline"&&f.push(h)}),i==="classic"){for(let x of o)c=x?.code?.call(p,c)||c;d.children.push(c);for(let x of o)d=x?.pre?.call(p,d)||d;s.children.push(d)}else if(i==="inline"){let x=[],L={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let g of s.children)g.type==="element"&&g.tagName==="br"?(x.push(L),L={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(g.type==="element"||g.type==="text")&&L.children.push(g);x.push(L);let I={type:"element",tagName:"code",properties:{},children:x};for(let g of o)I=g?.code?.call(p,I)||I;s.children=[];for(let g=0;g<I.children.length;g++){g>0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});let C=I.children[g];C.type==="element"&&s.children.push(...C.children)}}let m=s;for(let x of o)m=x?.root?.call(p,m)||m;return r&&Va(m,r),m}function ap(e){return e.map(t=>{let a=[],r="",o;return t.forEach((n,s)=>{let l=!(n.fontStyle&&(n.fontStyle&ge.Underline||n.fontStyle&ge.Strikethrough));l&&n.content.match(/^\s+$/)&&t[s+1]?(o===void 0&&(o=n.offset),r+=n.content):r?(l?a.push({...n,offset:o,content:r+n.content}):a.push({content:r,offset:o},n),o=void 0,r=""):a.push(n)}),a})}function rp(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let r=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return a;let[,o,n,s]=r;if(!o&&!s)return a;let i=[{...a,offset:a.offset+o.length,content:n}];return o&&i.unshift({content:o,offset:a.offset}),s&&i.push({content:s,offset:a.offset+o.length+n.length}),i}))}function op(e){return e.map(t=>{let a=[];for(let r of t){if(a.length===0){a.push({...r});continue}let o=a[a.length-1],n=to(o.htmlStyle||Ua(o)),s=to(r.htmlStyle||Ua(r)),i=o.fontStyle&&(o.fontStyle&ge.Underline||o.fontStyle&ge.Strikethrough),l=r.fontStyle&&(r.fontStyle&ge.Underline||r.fontStyle&ge.Strikethrough);!i&&!l&&n===s?o.content+=r.content:a.push({...r})}return a})}var np=Yr;function sp(e,t,a){let r={meta:{},options:a,codeToHast:(n,s)=>Ga(e,n,s),codeToTokens:(n,s)=>qa(e,n,s)},o=np(Ga(e,t,a,r));for(let n of Ha(a))o=n.postprocess?.call(r,o,a)||o;return o}var wi={light:"#333333",dark:"#bbbbbb"},xi={light:"#fffffe",dark:"#1e1e1e"},Ii="__shiki_resolved";function uo(e){if(e?.[Ii])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:a,fg:r}=t;if(!a||!r){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),r||(r=t.type==="light"?wi.light:wi.dark),a||(a=t.type==="light"?xi.light:xi.dark),t.fg=r,t.bg=a}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let o=0,n=new Map;function s(i){if(n.has(i))return n.get(i);o+=1;let l=`#${o.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(n.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let d={...i,settings:{...i.settings}};if(l){let c=s(i.settings.foreground);t.colorReplacements[c]=i.settings.foreground,d.settings.foreground=c}if(u){let c=s(i.settings.background);t.colorReplacements[c]=i.settings.background,d.settings.background=c}return d});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Ii,{enumerable:!1,writable:!1,value:!0}),t}async function Pi(e){return Array.from(new Set((await Promise.all(e.filter(t=>!Ci(t)).map(async t=>await Li(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Ai(e){return(await Promise.all(e.map(async a=>Si(a)?null:uo(await Li(a))))).filter(a=>!!a)}var eo=3,ip=!1;function lp(e,t=3){if(eo&&!(typeof eo=="number"&&t>eo)){if(ip)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var et=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ri(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 et(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var ao=class extends Xs{constructor(t,a,r,o={}){super(t),this._resolver=t,this._themes=a,this._langs=r,this._alias=o,this._themes.map(n=>this.loadTheme(n)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=uo(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=Ri(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(n=>n.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let o=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(o.name=t.name,this._resolvedGrammars.set(t.name,o),t.aliases&&t.aliases.forEach(n=>{this._alias[n]=t.name}),this._loadedLanguagesCache=null,a.size)for(let n of a)this._resolvedGrammars.delete(n.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(n.scopeName),this._syncRegistry?._grammars?.delete(n.scopeName),this.loadLanguage(this._langMap.get(n.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let o of t)this.resolveEmbeddedLanguages(o);let a=Array.from(this._langGraph.entries()),r=a.filter(([o,n])=>!n);if(r.length){let o=a.filter(([n,s])=>s?(s.embeddedLanguages||s.embeddedLangs)?.some(l=>r.map(([u])=>u).includes(l)):!1).filter(n=>!r.includes(n));throw new et(`Missing languages ${r.map(([n])=>`\`${n}\``).join(", ")}, required by ${o.map(([n])=>`\`${n}\``).join(", ")}`)}for(let[o,n]of a)this._resolver.addLanguage(n);for(let[o,n]of a)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let r of a)this._langGraph.set(r,this._langMap.get(r))}},ro=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},a.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(a=>{this._langs.set(a,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(a=>{this._injections.get(a)||this._injections.set(a,[]),this._injections.get(a).push(t.scopeName)})}getInjections(t){let a=t.split("."),r=[];for(let o=1;o<=a.length;o++){let n=a.slice(0,o).join(".");r=[...r,...this._injections.get(n)||[]]}return r}},na=0;function up(e){na+=1,e.warnings!==!1&&na>=10&&na%10===0&&console.warn(`[Shiki] ${na} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new et("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(uo),o=new ro(e.engine,a),n=new ao(o,r,a,e.langAlias),s;function i(g){return Ri(g,e.langAlias)}function l(g){h();let C=n.getGrammar(typeof g=="string"?g:g.name);if(!C)throw new et(`Language \`${g}\` not found, you may need to load it first`);return C}function u(g){if(g==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};h();let C=n.getTheme(g);if(!C)throw new et(`Theme \`${g}\` not found, you may need to load it first`);return C}function d(g){h();let C=u(g);s!==g&&(n.setTheme(C),s=g);let S=n.getColorMap();return{theme:C,colorMap:S}}function c(){return h(),n.getLoadedThemes()}function f(){return h(),n.getLoadedLanguages()}function p(...g){h(),n.loadLanguages(g.flat(1))}async function m(...g){return p(await Pi(g))}function x(...g){h();for(let C of g.flat(1))n.loadTheme(C)}async function L(...g){return h(),x(await Ai(g))}function h(){if(t)throw new et("Shiki instance has been disposed")}function I(){t||(t=!0,n.dispose(),na-=1)}return{setTheme:d,getTheme:u,getLanguage:l,getLoadedThemes:c,getLoadedLanguages:f,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:L,loadThemeSync:x,dispose:I,[Symbol.dispose]:I}}async function dp(e){e.engine||lp("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,r]=await Promise.all([Ai(e.themes||[]),Pi(e.langs||[]),e.engine]);return up({...e,themes:t,langs:a,engine:r})}async function cp(e){let t=await dp(e);return{getLastGrammarState:(...a)=>Xf(t,...a),codeToTokensBase:(a,r)=>io(t,a,r),codeToTokensWithThemes:(a,r)=>vi(t,a,r),codeToTokens:(a,r)=>qa(t,a,r),codeToHast:(a,r)=>Ga(t,a,r),codeToHtml:(a,r)=>sp(t,a,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function Mi(e){let t=e.langs,a=e.themes,r=e.engine;async function o(n){function s(c){if(typeof c=="string"){if(c=n.langAlias?.[c]||c,Ci(c))return[];let f=t[c];if(!f)throw new ee(`Language \`${c}\` is not included in this bundle. You may want to load it from external source.`);return f}return c}function i(c){if(Si(c))return"none";if(typeof c=="string"){let f=a[c];if(!f)throw new ee(`Theme \`${c}\` is not included in this bundle. You may want to load it from external source.`);return f}return c}let l=(n.themes??[]).map(c=>i(c)),u=(n.langs??[]).map(c=>s(c)),d=await cp({engine:n.engine??r(),...n,themes:l,langs:u});return{...d,loadLanguage(...c){return d.loadLanguage(...c.map(s))},loadTheme(...c){return d.loadTheme(...c.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return o}function fp(e){let t;async function a(r={}){if(t){let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}else{t=e({...r,themes:[],langs:[]});let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}}return a}function Fi(e,t){let a=fp(e);async function r(o,n){let s=await a({langs:[n.lang],themes:"theme"in n?[n.theme]:Object.values(n.themes)}),i=await t?.guessEmbeddedLanguages?.(o,n.lang,s);return i&&await s.loadLanguage(...i),s}return{getSingletonHighlighter(o){return a(o)},async codeToHtml(o,n){return(await r(o,n)).codeToHtml(o,n)},async codeToHast(o,n){return(await r(o,n)).codeToHast(o,n)},async codeToTokens(o,n){return(await r(o,n)).codeToTokens(o,n)},async codeToTokensBase(o,n){return(await r(o,n)).codeToTokensBase(o,n)},async codeToTokensWithThemes(o,n){return(await r(o,n)).codeToTokensWithThemes(o,n)},async getLastGrammarState(o,n){return(await a({langs:[n.lang],themes:[n.theme]})).getLastGrammarState(o,n)}}}var co=[{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"))}],Bi=Object.fromEntries(co.map(e=>[e.id,e.import])),Ei=Object.fromEntries(co.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),ia={...Bi,...Ei};var pp=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-HAPOYWX3.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-R6WAWEBC.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-KMD4YO7F.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-2ATPDILG.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-LJ7PG5AM.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-Z4Y2POK6.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-4TQUIKX4.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-B7YYPERT.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-KX33VXKA.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-LNHXUR7U.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-T2CMBBQ5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-SMFRNKX2.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-DBZHIUAO.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-TDAGYJUK.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-3E25TTAN.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-KCBFVSS5.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-WRCBXEVS.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-ET7SAHAV.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-6FNTZH5H.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-GGTAKNM7.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-LHYKPR5E.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-IQWZCHF7.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-ARPWF4FS.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-ODS6FPID.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-KFA5YFDW.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-MMET4L3Y.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-DBZDERMK.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-FSOMPXNP.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-FAQBCORN.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-JNDVF5RJ.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-S7JK6TQ6.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-QJJIMVEV.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-YFP3EJVX.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-NGDHCPUZ.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-H2BHKUKX.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-VENCGWTB.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-SDMLS22W.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-UHDBRLVF.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-3TB2BEET.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-CQ5WKNT7.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-LZRD4NPR.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-WHRY6275.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-7PNEW2JB.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-GJUYOOJR.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-EVGUMUX2.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-PMTR3SA7.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-O7WH4N5X.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-FBVUW6NJ.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-WBB7GZAD.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-7KAMONOP.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-F2G5IHZD.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-ALZ7XGH2.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-D3K4SWUL.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-YFPJODWS.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-H67AWZOI.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-OUVS63VK.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-2RCAVEXJ.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-XFSENHTC.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-5XXB3K6S.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-CHJCCBJH.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-Y5GIEAN4.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-7TI33KHX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-FOB25MRB.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-4WCNCTCO.js"))}],Di=Object.fromEntries(pp.map(e=>[e.id,e.import]));var la=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function mp(){return 2147483648}function hp(){return typeof performance<"u"?performance.now():Date.now()}var gp=(e,t)=>e+(t-e%t)%t;async function wp(e){let t,a,r={};function o(p){a=p,r.HEAPU8=new Uint8Array(p),r.HEAPU32=new Uint32Array(p)}function n(p,m,x){r.HEAPU8.copyWithin(p,m,m+x)}function s(p){try{return t.grow(p-a.byteLength+65535>>>16),o(t.buffer),1}catch{}}function i(p){let m=r.HEAPU8.length;p=p>>>0;let x=mp();if(p>x)return!1;for(let L=1;L<=4;L*=2){let h=m*(1+.2/L);h=Math.min(h,p+100663296);let I=Math.min(x,gp(Math.max(p,h),65536));if(s(I))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,x=1024){let L=m+x,h=m;for(;p[h]&&!(h>=L);)++h;if(h-m>16&&p.buffer&&l)return l.decode(p.subarray(m,h));let I="";for(;m<h;){let g=p[m++];if(!(g&128)){I+=String.fromCharCode(g);continue}let C=p[m++]&63;if((g&224)===192){I+=String.fromCharCode((g&31)<<6|C);continue}let S=p[m++]&63;if((g&240)===224?g=(g&15)<<12|C<<6|S:g=(g&7)<<18|C<<12|S<<6|p[m++]&63,g<65536)I+=String.fromCharCode(g);else{let v=g-65536;I+=String.fromCharCode(55296|v>>10,56320|v&1023)}}return I}function d(p,m){return p?u(r.HEAPU8,p,m):""}let c={emscripten_get_now:hp,emscripten_memcpy_big:n,emscripten_resize_heap:i,fd_write:()=>0};async function f(){let m=await e({env:c,wasi_snapshot_preview1:c});t=m.memory,o(t.buffer),Object.assign(r,m),r.UTF8ToString=d}return await f(),r}var xp=Object.defineProperty,Ip=(e,t,a)=>t in e?xp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ie=(e,t,a)=>Ip(e,typeof t!="symbol"?t+"":t,a),ce=null;function Lp(e){throw new la(e.UTF8ToString(e.getLastOnigError()))}var ja=class e{constructor(t){ie(this,"utf16Length"),ie(this,"utf8Length"),ie(this,"utf16Value"),ie(this,"utf8Value"),ie(this,"utf16OffsetToUtf8"),ie(this,"utf8OffsetToUtf16");let a=t.length,r=e._utf8ByteLength(t),o=r!==a,n=o?new Uint32Array(a+1):null;o&&(n[a]=r);let s=o?new Uint32Array(r+1):null;o&&(s[r]=a);let i=new Uint8Array(r),l=0;for(let u=0;u<a;u++){let d=t.charCodeAt(u),c=d,f=!1;if(d>=55296&&d<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(c=(d-55296<<10)+65536|p-56320,f=!0)}o&&(n[u]=l,f&&(n[u+1]=l),c<=127?s[l+0]=u:c<=2047?(s[l+0]=u,s[l+1]=u):c<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),c<=127?i[l++]=c:c<=2047?(i[l++]=192|(c&1984)>>>6,i[l++]=128|(c&63)>>>0):c<=65535?(i[l++]=224|(c&61440)>>>12,i[l++]=128|(c&4032)>>>6,i[l++]=128|(c&63)>>>0):(i[l++]=240|(c&1835008)>>>18,i[l++]=128|(c&258048)>>>12,i[l++]=128|(c&4032)>>>6,i[l++]=128|(c&63)>>>0),f&&u++}this.utf16Length=a,this.utf8Length=r,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=n,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let a=0;for(let r=0,o=t.length;r<o;r++){let n=t.charCodeAt(r),s=n,i=!1;if(n>=55296&&n<=56319&&r+1<o){let l=t.charCodeAt(r+1);l>=56320&&l<=57343&&(s=(n-55296<<10)+65536|l-56320,i=!0)}s<=127?a+=1:s<=2047?a+=2:s<=65535?a+=3:a+=4,i&&r++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},$a=class He{constructor(t){if(ie(this,"id",++He.LAST_ID),ie(this,"_onigBinding"),ie(this,"content"),ie(this,"utf16Length"),ie(this,"utf8Length"),ie(this,"utf16OffsetToUtf8"),ie(this,"utf8OffsetToUtf16"),ie(this,"ptr"),!ce)throw new la("Must invoke loadWasm first.");this._onigBinding=ce,this.content=t;let a=new ja(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!He._sharedPtrInUse?(He._sharedPtr||(He._sharedPtr=ce.omalloc(1e4)),He._sharedPtrInUse=!0,ce.HEAPU8.set(a.utf8Value,He._sharedPtr),this.ptr=He._sharedPtr):this.ptr=a.createString(ce)}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===He._sharedPtr?He._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};ie($a,"LAST_ID",0);ie($a,"_sharedPtr",0);ie($a,"_sharedPtrInUse",!1);var _i=$a,po=class{constructor(t){if(ie(this,"_onigBinding"),ie(this,"_ptr"),!ce)throw new la("Must invoke loadWasm first.");let a=[],r=[];for(let i=0,l=t.length;i<l;i++){let u=new ja(t[i]);a[i]=u.createString(ce),r[i]=u.utf8Length}let o=ce.omalloc(4*t.length);ce.HEAPU32.set(a,o/4);let n=ce.omalloc(4*t.length);ce.HEAPU32.set(r,n/4);let s=ce.createOnigScanner(o,n,t.length);for(let i=0,l=t.length;i<l;i++)ce.ofree(a[i]);ce.ofree(n),ce.ofree(o),s===0&&Lp(ce),this._onigBinding=ce,this._ptr=s}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,r){let o=0;if(typeof r=="number"&&(o=r),typeof t=="string"){t=new _i(t);let n=this._findNextMatchSync(t,a,!1,o);return t.dispose(),n}return this._findNextMatchSync(t,a,!1,o)}_findNextMatchSync(t,a,r,o){let n=this._onigBinding,s=n.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),o);if(s===0)return null;let i=n.HEAPU32,l=s/4,u=i[l++],d=i[l++],c=[];for(let f=0;f<d;f++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);c[f]={start:p,end:m,length:m-p}}return{index:u,captureIndices:c}}};function Cp(e){return typeof e.instantiator=="function"}function Sp(e){return typeof e.default=="function"}function yp(e){return typeof e.data<"u"}function bp(e){return typeof Response<"u"&&e instanceof Response}function kp(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 za;function Tp(e){if(za)return za;async function t(){ce=await wp(async a=>{let r=e;return r=await r,typeof r=="function"&&(r=await r(a)),typeof r=="function"&&(r=await r(a)),Cp(r)?r=await r.instantiator(a):Sp(r)?r=await r.default(a):(yp(r)&&(r=r.data),bp(r)?typeof WebAssembly.instantiateStreaming=="function"?r=await vp(r)(a):r=await Pp(r)(a):kp(r)?r=await fo(r)(a):r instanceof WebAssembly.Module?r=await fo(r)(a):"default"in r&&r.default instanceof WebAssembly.Module&&(r=await fo(r.default)(a))),"instance"in r&&(r=r.instance),"exports"in r&&(r=r.exports),r})}return za=t(),za}function fo(e){return t=>WebAssembly.instantiate(e,t)}function vp(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Pp(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Oi(e){return e&&await Tp(e),{createScanner(t){return new po(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new _i(t)}}}var Xa=Mi({langs:ia,themes:Di,engine:()=>Oi(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Ap,codeToHast:Rp,codeToTokens:Mp,codeToTokensBase:Fp,codeToTokensWithThemes:Bp,getSingletonHighlighter:Ep,getLastGrammarState:Dp}=Fi(Xa,{guessEmbeddedLanguages:bi});var Ni=new Set(Object.keys(ia)),mo=new Map,ho=new Map,vt=new Map,_p=(e,t)=>`${e}-${t[0]}-${t[1]}`,Op=(e,t,a)=>{let r=e.slice(0,100),o=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${r}:${o}`},Np=(e,t)=>{let a=_p(e,t);if(mo.has(a))return mo.get(a);let r=Xa({themes:t,langs:[e]});return mo.set(a,r),r};function Up(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(r){return Ni.has(r)},getSupportedLanguages(){return Array.from(Ni)},getThemes(){return a},highlight({code:r,language:o,themes:n},s){let i=Op(r,o,n);return ho.has(i)?ho.get(i):(s&&(vt.has(i)||vt.set(i,new Set),vt.get(i).add(s)),Np(o,n).then(l=>{let u=l.getLoadedLanguages().includes(o)?o:"text",d=l.codeToTokens(r,{lang:u,themes:{light:n[0],dark:n[1]}});ho.set(i,d);let c=vt.get(i);if(c){for(let f of c)f(d);vt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),vt.delete(i)}),null)}}}var Ui=Up();import{memo as Wp}from"react";import{useEffect as Hp,useRef as Ka,useState as qp}from"react";var Gp=5,Hi=400;function qi(e,t,a={}){let{msPerChar:r=Gp}=a,[o,n]=qp(t?"":e),s=Ka(e),i=Ka(t?0:e.length),l=Ka(0),u=Ka(null);return(e.length<i.current||!e.startsWith(o.slice(0,i.current)))&&(i.current=t?0:e.length),s.current=e,Hp(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,n(e);return}if(s.current.length-i.current>Hi&&(i.current=s.current.length-Hi),u.current!==null)return;let c=f=>{let p=s.current;if(i.current>=p.length){u.current=null;return}l.current===0&&(l.current=f);let m=f-l.current;if(m>=r){let x=Math.min(Math.floor(m/r),p.length-i.current);i.current+=x,n(p.slice(0,i.current)),l.current=f}u.current=requestAnimationFrame(c)};return u.current=requestAnimationFrame(c),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,r]),o}import{jsx as Qa}from"react/jsx-runtime";var go=({className:e,from:t,children:a,...r})=>Qa("div",{className:k("ww-message ww:group ww:flex ww:w-full",t==="user"?"ww-message-user is-user ww:ml-auto ww:flex-col ww:items-end ww:[max-width:var(--ww-msg-max-width,80%)]":"ww-message-assistant is-assistant ww:flex-col",e),...r,children:Qa("div",{className:k("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),wo=({children:e,className:t,...a})=>Qa("div",{className:k("ww-bubble ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden","ww:[font-size:var(--ww-font-size,1rem)] ww:[line-height:var(--ww-line-height,1.5)]","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:[color:var(--ww-color-user-bubble-text)] ww:group-[.is-user]:[border-radius:var(--ww-msg-radius,8px)] ww:group-[.is-user]:[padding:var(--ww-msg-pad-y,12px)_var(--ww-msg-pad-x,16px)]","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),Vp={cjk:Nr,code:Ui},zp={cjk:Nr},jp={enabled:!1};function $p({className:e,linkSafety:t,isStreaming:a,children:r,...o}){let s=qi(typeof r=="string"?r:"",!!a),i=typeof r=="string"?s:r;return Qa(Ft,{className:k("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??jp,plugins:a?zp:Vp,...o,children:i})}var Ja=Wp($p,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Ja.displayName="MessageResponse";import{jsx as Gi,jsxs as Xp}from"react/jsx-runtime";function Wi(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Vi(e){return e.parts.some(Wi)}function zi(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let r=e[e.length-1];return!r||r.role!=="assistant"?!0:!r.parts.some(n=>!(!Wi(n)||a?.ignoreToolParts&&"toolCallId"in n||a?.ignoreReasoningParts&&n.type==="reasoning"))}function ji({className:e,...t}){let{t:a}=V();return Xp("div",{"aria-live":"polite",className:k("ww:mb-4 ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...t,children:[Gi(Wt,{className:"ww:size-4 ww:shrink-0"}),Gi(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{jsx as ua,jsxs as Kp}from"react/jsx-runtime";function $i({icon:e,title:t,description:a,suggestions:r,onSuggestionSelect:o}){return Kp("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&&ua("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}),ua("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&ua("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),r&&r.length>0&&ua("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:r.map((n,s)=>ua("button",{type:"button",onClick:()=>o?.(n),className:k("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})]})}import{Component as Qp}from"react";import{jsx as xo,jsxs as Yp}from"react/jsx-runtime";function Jp({onRetry:e}){let{t}=V();return Yp("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:[xo("span",{children:t.widgetErrorBoundary.failedToLoad}),xo("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Ya=class extends Qp{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?xo(Jp,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Zp,jsx as J,jsxs as at}from"react/jsx-runtime";function Io(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Xi(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Ut:nt}function Ki({messages:e,status:t,welcomeMessage:a,welcome:r,onSuggestionSelect:o,resourceEndpoint:n,chatSessionId:s,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:d,fullscreenToolCallId:c,debug:f,showToolCalls:p=!0,toolDefinitions:m,messageClassNames:x}){let{t:L}=V(),h=e[e.length-1],I=e.length>0,g=c!=null,C=!g&&zi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return at(Zp,{children:[!g&&(!I&&r?J($i,{...r,onSuggestionSelect:o}):a&&J(go,{from:"assistant",children:J(wo,{children:J(Ja,{children:a})})})),e.map(S=>{let v=S.parts.filter(T=>T.type==="text"),A=S.parts.filter(T=>T.type==="reasoning"),P=S.parts.filter(T=>T.type==="file"),D=S.parts.filter(T=>"toolCallId"in T),b=S.parts.filter(T=>T.type==="reasoning"||"toolCallId"in T),E=S===h&&S.role==="assistant",M=v.length>0,$=g?D.some(T=>T.toolCallId===c):!1,H=p!==!1&&!$&&b.length>=2;return g&&!$?J("div",{style:{display:"none"}},S.id):S.role==="assistant"&&!Vi(S)?J("div",{style:{display:"none"}},S.id):p===!1&&S.role==="assistant"&&!M&&P.length===0&&D.every(T=>{let y="output"in T?T.output:void 0;return y===void 0||!n||!Vt(T.toolName,y,m)})?J("div",{style:{display:"none"}},S.id):at(go,{from:S.role,className:x?.message,children:[p!==!1&&!$&&!H&&A.map((T,y)=>at($t,{isStreaming:T.state==="streaming",children:[J(Xt,{}),J(Kt,{children:T.text})]},`reasoning-${S.id}-${y}`)),H&&(()=>{let T=b[b.length-1],y=T.type==="reasoning"?{icon:We,label:L.reasoning.thinking}:{icon:Xi(T.toolName),label:T.title??Io(T.toolName)};return at(ns,{isWorking:E&&(t==="streaming"||t==="submitted"),activeStep:y,children:[J(ss,{workingLabel:L.chainOfThought.working,label:L.chainOfThought.done}),J(is,{children:b.map((F,Me)=>{let be=Me===b.length-1;if(F.type==="reasoning")return J(us,{isStreaming:F.state==="streaming",isLast:be,children:F.text},`reasoning-${S.id}-${Me}`);let q=F.title??Io(F.toolName),xe=Xi(F.toolName);if(p==="titles-only")return J(Dr,{icon:xe,title:q,state:F.state,isLast:be},F.toolCallId);let fe="output"in F?F.output:void 0;return at(Dr,{icon:xe,title:q,state:F.state,isLast:be,children:[J(kr,{input:F.input,debug:f}),fe!==void 0&&J(Tr,{output:fe,errorText:"errorText"in F?F.errorText:void 0,debug:f})]},F.toolCallId)})})]})})(),p!==!1&&!$&&!H&&D.length===1&&(()=>{let T=D[0],y=T.title??Io(T.toolName);if(p==="titles-only")return J(vn,{title:y,state:T.state});let F="output"in T?T.output:void 0;return at(kn,{children:[J(Tn,{title:y,state:T.state}),at(Pn,{children:[J(kr,{input:T.input,debug:f}),F!==void 0&&J(Tr,{output:F,errorText:"errorText"in T?T.errorText:void 0,debug:f})]})]})})(),D.map(T=>{let y="output"in T?T.output:void 0,F=Vt(T.toolName,y,m),Me=Mn(T.toolName,y,m),be=T.toolCallId===c;return F&&n&&y!==void 0?J("div",{style:be?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:F&&n&&y!==void 0&&J(Ya,{children:J(Pr,{isFullscreen:be,resourceUri:F,toolInput:T.input??{},toolResult:{content:y.content,structuredContent:y.structuredContent,_meta:y._meta},resourceEndpoint:n,chatSessionId:s,isDark:i,autoHeight:Me,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:d?q=>d(q,{toolCallId:T.toolCallId,resourceUri:F,toolInput:T.input??{},toolResult:{content:y.content,structuredContent:y.structuredContent,_meta:y._meta},autoHeight:Me}):void 0})})},T.toolCallId):null}),!$&&J("div",{children:at(wo,{className:k(S.role==="user"?x?.userBubble:x?.assistantBubble),children:[P.length>0&&J(Zn,{files:P}),M?v.map((T,y)=>{let F=E&&t==="streaming"&&y===v.length-1;return J(Ja,{isStreaming:F,children:T.type==="text"?T.text:""},`${S.id}-${y}`)}):null]})})]},S.id)}),C&&J(ji,{})]})}import{jsx as Qi,jsxs as am}from"react/jsx-runtime";var em="https://app.waniwani.ai/assets/waniwani-logo.svg",tm="https://waniwani.ai";function Ji(){let{t:e}=V();return am("a",{href:tm,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:em,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as Za}from"react/jsx-runtime";function Yi({suggestions:e,isLoading:t,onSelect:a,className:r,...o}){return e.length===0&&!t?null:Za("div",{className:k("ww:px-4 ww:py-2",r),...o,children:Za("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(n=>Za("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+n*20}px`}},n)):e.map((n,s)=>Za("button",{type:"button",onClick:()=>a(n),className:k("ww:rounded-full ww:border ww:border-border ww:bg-accent ww:px-3.5 ww:py-1.5 ww:text-sm","ww:text-foreground ww:hover:bg-border ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})})}import{useEffect as rm,useRef as om,useState as nm}from"react";import{jsx as te,jsxs as pt}from"react/jsx-runtime";var Zi=20;function sm({label:e}){return pt("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 im({label:e}){return pt("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 lm({label:e}){return pt("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 el({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:r,onDeleteThread:o}){let{locale:n,t:s}=V(),[i,l]=nm(!1),u=om(null);rm(()=>{if(!i)return;let f=p=>{let m=u.current;m&&(p.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[i]);let d=e.slice(0,Zi),c=Math.max(0,e.length-Zi);return pt("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[te("button",{type:"button",onClick:a,title:s.threadMenu.newChat,"aria-label":s.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:te(sm,{label:s.threadMenu.newChat})}),te("button",{type:"button",onClick:()=>l(f=>!f),title:s.threadMenu.threadHistory,"aria-label":s.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:te(im,{label:s.threadMenu.threadHistory})}),i&&pt("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:[d.length===0&&te("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:s.threadMenu.noPreviousChats}),d.map(f=>{let p=f.threadId===t,m=Date.parse(f.updatedAt);return pt("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:[pt("button",{type:"button",onClick:()=>{r(f.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:f.title}),te("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Lr(m,n)})]}),te("button",{type:"button",onClick:x=>{x.stopPropagation(),o(f.threadId)},title:s.threadMenu.deleteThread,"aria-label":s.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:te(lm,{label:s.threadMenu.deleteThread})})]},f.threadId)}),c>0&&te("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:s.threadMenu.hiddenThreads(c)})]})]})}import{createContext as um,useContext as dm}from"react";function tl(e){let t=new Set;return{subscribe(a){return t.add(a),()=>{t.delete(a)}},emit(a){let{sessionId:r,...o}=a,n=a.name==="session.started"?a.properties.sessionId:void 0,s={...o,mode:e.mode,sessionId:Object.hasOwn(a,"sessionId")?r:n??e.getSessionId?.(),timestamp:Date.now()};for(let i of[...t])try{i(s)}catch(l){console.warn("[Waniwani] onEvent subscriber threw:",l)}}}}function al(){return{subscribe(){return()=>{}},emit(){}}}var rl=um(al());function er(){return dm(rl)}var ol=rl.Provider;import{useCallback as cm,useRef as fm}from"react";function nl(e){let t=fm(e);return t.current=e,cm(async a=>{let{api:r,headers:o,onCallTool:n,sessionId:s}=t.current;if(n)return n(a);let i=`${r??"/api/waniwani"}/tool`,l=typeof s=="string"&&s.trim().length>0?s.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...o},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as Am}from"@ai-sdk/react";import{useCallback as we,useEffect as Re,useRef as le,useState as mt}from"react";function Pt(e,t,a){let[r,o=""]=e.split("?"),n=r.replace(/\/$/,""),s=new URLSearchParams(o);if(a)for(let[l,u]of Object.entries(a))s.set(l,u);let i=s.toString();return`${n}${t}${i?`?${i}`:""}`}import{DefaultChatTransport as pm,uiMessageChunkSchema as mm}from"ai";function hm(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let r=a.find(o=>o.code==="invalid_union");if(!r?.errors)return null;for(let o of r.errors){if(!Array.isArray(o)||o.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let s=o.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(s.length>0)return s}return null}var tr=class extends pm{processResponseStream(t){let a="",r=mm(),o=r.validate?.bind(r);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(n,s){a+=n;let i=a.split(`
|
|
16
|
-
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let d=u.slice(5).trim();if(d!=="[DONE]")try{let c=JSON.parse(d);if(!o){s.enqueue(c);continue}let f=await o(c);if(f.success){s.enqueue(f.value);continue}let p=hm(f.error);if(p?.length){let m={...c};for(let L of p)delete m[L];let x=await o(m);x.success&&s.enqueue(x.value)}}catch{}}}}))}};var gm="waniwani-memory";var Ae="threads",ar="by_memoryUserId",wm="by_updatedAt";var il="memoryUserId",sl="waniwani-memory-user-id",Lo=null;function Co(){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 xm(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(ar,"memoryUserId",{unique:!1}),a.createIndex(wm,"updatedAt",{unique:!1})}}async function So(){return new Promise((e,t)=>{let a=indexedDB.open(gm,2);a.onupgradeneeded=r=>{xm(a.result,r.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Im(){return So()}async function Lm(e){return new Promise((t,a)=>{let n=e.transaction("ids","readonly").objectStore("ids").get(il);n.onsuccess=()=>t(typeof n.result=="string"?n.result:null),n.onerror=()=>a(n.error)})}async function Cm(e,t){return new Promise((a,r)=>{let s=e.transaction("ids","readwrite").objectStore("ids").put(t,il);s.onsuccess=()=>a(),s.onerror=()=>r(s.error)})}async function Sm(){if(typeof indexedDB>"u")return null;try{let e=await Im();try{let t=await Lm(e);if(t)return t;let a=Co();return await Cm(e,a),a}finally{e.close()}}catch{return null}}function ym(){try{let e=localStorage.getItem(sl);if(e)return e;let t=Co();return localStorage.setItem(sl,t),t}catch{return null}}async function ll(){let e=await Sm();if(e)return e;let t=ym();return t||(Lo||(Lo=Co()),Lo)}var ul=50,dl=1e3;function rr(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 or(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await So(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function yo(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function bo(e){return await or(async a=>{let n=a.transaction(Ae,"readonly").objectStore(Ae).index(ar),i=(await yo(n.getAll(e))??[]).filter(rr);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function nr(e){return await or(async a=>{let o=a.transaction(Ae,"readonly").objectStore(Ae),n=await yo(o.get(e));return rr(n)?n:null})??null}async function ko(e){if(!rr(e))return;let t=e.messages.length>dl?{...e,messages:e.messages.slice(e.messages.length-dl)}:e;await or(async a=>{await new Promise((l,u)=>{let d=a.transaction(Ae,"readwrite");d.oncomplete=()=>l(),d.onerror=()=>u(d.error),d.onabort=()=>u(d.error),d.objectStore(Ae).put(t)});let r=a.transaction(Ae,"readwrite"),o=r.objectStore(Ae),n=o.index(ar),i=(await yo(n.getAll(t.memoryUserId))??[]).filter(rr);if(i.length>ul){i.sort((u,d)=>u.updatedAt<d.updatedAt?-1:1);let l=i.slice(0,i.length-ul);for(let u of l)o.delete(u.threadId)}return await new Promise((l,u)=>{r.oncomplete=()=>l(),r.onerror=()=>u(r.error),r.onabort=()=>u(r.error)}),null})}async function cl(e){await or(async t=>(await new Promise((a,r)=>{let o=t.transaction(Ae,"readwrite");o.oncomplete=()=>a(),o.onerror=()=>r(o.error),o.onabort=()=>r(o.error),o.objectStore(Ae).delete(e)}),null))}async function To(e){return(await bo(e))[0]?.threadId??null}function fl(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 vo="waniwani-visitor-id";function ml(e,t){return e.match(t)?.[1]??null}function bm(e){let t=[["Edge",/Edg(?:e|A|iOS)?\/(\S+)/],["Opera",/(?:OPR|Opera)\/(\S+)/],["Samsung Internet",/SamsungBrowser\/(\S+)/],["Firefox",/Firefox\/(\S+)/],["Chrome",/Chrome\/(\S+)/],["Safari",/Version\/(\S+).*Safari/]];for(let[a,r]of t){let o=ml(e,r);if(o)return{name:a,version:o}}return null}function km(e){let t=[["iOS",/(?:iPhone|iPad|iPod).+?OS (\d+[_.\d]*)/],["Android",/Android (\d+[.\d]*)/],["macOS",/Mac OS X (\d+[_.\d]*)/],["Windows",/Windows NT (\d+[.\d]*)/],["ChromeOS",/CrOS \S+ (\d+[.\d]*)/],["Linux",/Linux/]];for(let[a,r]of t){let o=ml(e,r);if(o)return{name:a,version:o.replace(/_/g,".")};if(a==="Linux"&&r.test(e))return{name:a,version:""}}return null}function Tm(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}function vm(){try{if(typeof crypto<"u"){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto.getRandomValues=="function"){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,a=>a.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}}}catch{}return`v-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function rt(){try{let t=localStorage.getItem(vo);if(t)return t}catch{}let e=vm();try{localStorage.setItem(vo,e)}catch{}return e}function pl(e){let t=typeof e=="string"?e.trim():"";if(!t)return rt();try{localStorage.setItem(vo,t)}catch{}return t}function Pm(e){return e!=null&&typeof e.then=="function"}function hl(e){let t=!1,a=()=>{t=!0};if(e==null)return a;let r;try{r=typeof e=="function"?e():e}catch{return a}return Pm(r)?r.then(o=>{t||pl(o??"")},()=>{}):pl(r??""),a}async function da(){let e=navigator.userAgent,t=rt(),a=await ll();return{userAgent:e,browser:bm(e),os:km(e),deviceType:Tm(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 Rm="x-session-id",Mm=250,Fm=200;function gl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():zt()}function sr(){return new Date().toISOString()}function wl(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Bm(e,t){let a=Pt(e,"/tools"),r=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!r.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${r.status} ${r.statusText}`);let o=await r.json();if(!o||!Array.isArray(o.tools))return{};let n={};for(let s of o.tools)s&&typeof s.name=="string"&&(n[s.name]=s);return n}function xl(e){let{api:t="/api/waniwani",headers:a,body:r,onMessageSent:o,onResponseReceived:n,enableThreadHistory:s=!1,activeThreadId:i,onThreadChange:l}=e,u=e.visitorId;Re(()=>hl(u),[u]);let d=er(),c=le(a),f=le(r),p=le(s);Re(()=>{p.current=s},[s]);let m=le(void 0),x=le(null),[L,h]=mt(void 0),I=le(L),[g,C]=mt(i),S=le(g),[v,A]=mt([]),[P,D]=mt(!s),b=le(void 0),E=le(void 0),M=le(void 0),$=le(void 0),H=le(0),T=le(l);Re(()=>{T.current=l},[l]);let y=we(w=>{S.current=w,C(w),w&&(T.current?.(w),d.emit({name:"thread.changed",sessionId:I.current,properties:{threadId:w}}))},[d]),F=we(async()=>{if(!s)return;let w=x.current?.memoryUserId;if(!w)return;let B=await bo(w);A(B)},[s]),Me=we(()=>I.current,[]),be=we(w=>{let B=wl(w);if(!B||I.current===B)return;let _=I.current===void 0;I.current=B,h(B),_&&d.emit({name:"session.started",properties:{sessionId:B}})},[d]),q=we(()=>{I.current=void 0,h(void 0)},[]);Re(()=>{c.current=a},[a]),Re(()=>{f.current=r},[r]),Re(()=>{let w=!1,B=H.current;return(async()=>{try{let Y=await da();if(w)return;x.current=Y}catch{}if(!s)return;let _=x.current?.memoryUserId;if(!_){D(!0);return}try{let Y=i??await To(_);if(w||B!==H.current)return;if(Y){let de=await nr(Y);if(w||B!==H.current)return;de&&de.memoryUserId===_&&(S.current=de.threadId,C(de.threadId),b.current=de.createdAt,E.current=de.title,de.sessionId&&(I.current=de.sessionId,h(de.sessionId)),G(de.messages))}await F()}finally{w||D(!0)}})(),()=>{w=!0}},[]);let xe=le(new tr({api:t,headers:()=>({...c.current}),body:()=>{let w={...f.current??{}},B=Object.hasOwn(w,"sessionId"),_=wl(w.sessionId);if(_)be(_),w.sessionId=_;else if(B)q(),delete w.sessionId;else{let mr=Me();mr&&(w.sessionId=mr)}Lt(m.current)&&(w.modelContext=m.current);let Y=x.current,de=rt();Y&&(w.visitorContext={timezone:Y.timezone,language:Y.language,languages:Y.languages,deviceType:Y.deviceType,referrer:Y.referrer,visitorId:de});let re=typeof w.visitor=="object"&&w.visitor!==null?w.visitor:{},cu=typeof re.client=="object"&&re.client!==null?re.client:{};w.visitor={...re,id:de,client:{...cu,...Y&&{memoryUserId:Y.memoryUserId}}};let Xo=typeof w.extra=="object"&&w.extra!==null&&!Array.isArray(w.extra)?w.extra:void 0,Ko=x.current?.memoryUserId,Qo=x.current?.language,pa={};if(Ko&&(pa.memoryUserId=Ko),Qo&&(pa.locale=Qo),(Object.keys(pa).length>0||Xo)&&(w.extra={...pa,...Xo??{}}),p.current)if(Object.hasOwn(w,"threadId"))typeof w.threadId=="string"&&(S.current=w.threadId);else{let ma=S.current;ma||(ma=gl(),b.current=sr(),E.current=void 0,y(ma)),w.threadId=ma}return w},fetch:(async(w,B)=>{let _=await fetch(w,B);return m.current=void 0,be(_.headers.get(Rm)),_})})),fe=le(null),ke=le(null),pe=le({}),[$e,Z]=mt(0),Xe=e.skipRemoteConfig===!0,Ie=we(async()=>{if(!Xe)try{let w=await Bm(t,c.current);pe.current=w,Z(B=>B+1)}catch(w){console.warn("[Waniwani] Failed to fetch tool definitions:",w instanceof Error?w.message:w)}},[t,Xe]);Re(()=>{Ie()},[Ie]);let{messages:j,sendMessage:ne,setMessages:G,status:O}=Am({messages:e.initialMessages,transport:xe.current,onFinish({message:w,isAbort:B,isDisconnect:_,isError:Y}){n?.(),!B&&!_&&!Y&&d.emit({name:"message.received"}),fe.current&&(ke.current=w)},onError(w){console.warn("[Waniwani] Chat error:",w.message),d.emit({name:"chat.error",properties:{message:w.message.slice(0,Fm)}}),fe.current&&(fe.current.reject(w),fe.current=null)}}),U=le(j);Re(()=>{U.current=j},[j]);let N=le(s);Re(()=>{if(!s||N.current||(N.current=!0,U.current.length>0))return;let w=!1,B=H.current;return D(!1),(async()=>{try{let _=x.current;if(!_)try{_=await da(),x.current=_}catch{}let Y=_?.memoryUserId;if(!Y||w||B!==H.current){w||D(!0);return}let de=i??await To(Y);if(w||B!==H.current)return;if(de){let re=await nr(de);if(w||B!==H.current)return;re&&re.memoryUserId===Y&&(S.current=re.threadId,C(re.threadId),b.current=re.createdAt,E.current=re.title,re.sessionId&&(I.current=re.sessionId,h(re.sessionId)),G(re.messages))}await F()}finally{w||D(!0)}})(),()=>{w=!0}},[s]),Re(()=>{if(O==="ready"&&fe.current&&ke.current){let w=fe.current,B=ke.current;fe.current=null,ke.current=null,w.resolve(B)}},[O]);let[ae,X]=mt(""),[me,Le]=mt([]),Te=O==="submitted"||O==="streaming",Ke=we(w=>{Le(B=>B.filter(_=>_.id!==w))},[]),fa=Te&&me.length>0,R=we(w=>{let B=!!w.text?.trim(),_=!!w.files?.length;if(B||_){if(Te){if(me.length>0)return;Le(Y=>[...Y,{id:zt(),text:w.text||"",files:w.files??[],modelContext:w.modelContext}]),X("");return}m.current=w.modelContext,ne({text:w.text||"",files:w.files}),o?.(w.text||""),d.emit({name:"message.sent"}),X("")}},[ne,o,Te,me.length,d]),W=we(w=>new Promise((B,_)=>{fe.current={resolve:B,reject:_},ne({text:w}),o?.(w),d.emit({name:"message.sent"})}),[ne,o,d]);Re(()=>{if(O!=="ready"||me.length===0)return;let[w,...B]=me;Le(B),m.current=w.modelContext,ne({text:w.text,files:w.files.length>0?w.files:void 0}),o?.(w.text),d.emit({name:"message.sent"})},[O,ne,o,me,d]);let se=we(()=>{G([]),Le([]),q(),X(""),pe.current={},Z(w=>w+1),Ie()},[G,q,Ie]),ye=we(()=>{if(!p.current)return;let w=x.current?.memoryUserId,B=S.current,_=U.current;if(!(!w||!B||_.length===0)){if(b.current||(b.current=sr()),!E.current){let Y=_.find(re=>re.role==="user"),de=Y?Y.parts.map(re=>"text"in re&&typeof re.text=="string"?re.text:"").join(" "):"";E.current=fl(de)}return{threadId:B,memoryUserId:w,title:E.current,messages:_,sessionId:I.current,createdAt:b.current,updatedAt:sr()}}},[]),qe=we(async()=>{let w=ye();w&&(await ko(w),await F())},[ye,F]);Re(()=>{if(s&&P&&!(O==="submitted"||O==="streaming")&&j.length!==0)return M.current&&clearTimeout(M.current),M.current=setTimeout(()=>{M.current=void 0;let w=qe().finally(()=>{$.current===w&&($.current=void 0)});$.current=w},Mm),()=>{M.current&&clearTimeout(M.current)}},[s,P,j,O,qe]);let Ge=we(()=>{let w=$.current,B=M.current,_=B?ye():void 0;return B&&(clearTimeout(B),M.current=void 0),(async()=>{w&&await w,_&&(await ko(_),await F())})()},[ye,F]),fr=we(()=>{H.current+=1,Ge(),G([]),Le([]),q(),X("");let w=gl();return b.current=sr(),E.current=void 0,y(w),F(),w},[G,q,y,F,Ge]),pr=we(async w=>{H.current+=1;let B=H.current;if(await Ge(),B!==H.current)return;let _=await nr(w);B===H.current&&_&&(_.sessionId?(I.current=_.sessionId,h(_.sessionId)):q(),y(_.threadId),b.current=_.createdAt,E.current=_.title,G(_.messages),Le([]),X(""))},[G,q,y,Ge]),iu=we(async w=>{if(S.current===w){H.current+=1,M.current&&(clearTimeout(M.current),M.current=void 0);let B=$.current;B&&await B}await cl(w),await F(),S.current===w&&(G([]),Le([]),q(),X(""),S.current=void 0,C(void 0),b.current=void 0,E.current=void 0)},[G,q,F]);Re(()=>{s&&P&&i!==void 0&&i!==S.current&&pr(i)},[i,s,P,pr]);let lu=we(w=>{X(w.target.value)},[]),jo=j[j.length-1],$o=j.length>0,uu=Te&&(!$o||jo.role==="user"),du=pe.current;return{messages:j,status:O,text:ae,setText:X,handleSubmit:R,handleTextChange:lu,isLoading:Te,showLoaderBubble:uu,lastMessage:jo,hasMessages:$o,sendMessage:ne,sendMessageAndWait:W,reset:se,queuedMessages:me,queueFull:fa,removeQueuedMessage:Ke,sessionId:L,toolDefinitions:du,refreshToolDefinitions:Ie,threads:v,activeThreadId:g,isThreadHistoryReady:P,startNewThread:fr,switchThread:pr,deleteThread:iu}}import{useCallback as Dm,useEffect as Ro,useMemo as Mo,useRef as _m,useState as Sl}from"react";function At(e){return e.map(t=>({id:null,text:t}))}function Po(e){let{flow:t,followup:a,page:r,channel:o}=e;return t!==null?{origin:"flow",suggestions:t}:a?.length?{origin:"followup",suggestions:a}:r?.length?{origin:"page",suggestions:r}:o?.length?{origin:"channel",suggestions:o}:null}var Ao="waniwani/suggestions";function Rt(e){return typeof e=="object"&&e!==null}function Il(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function Em(e){if(!Rt(e)||!("toolCallId"in e)||!("output"in e))return null;let t=e.output;if(!Rt(t)||!Rt(t._meta))return null;let a=t._meta[Ao];return!Rt(a)||!Il(a.suggestions)?null:a.suggestions}function Ll(e){let t=null;for(let a of e.parts){let r=Em(a);r!==null&&(t=r)}return t}function Cl(e){for(let t of e.parts){if(!Rt(t)||t.type!=="data-suggestions")continue;let a=t.data;if(Rt(a)&&Il(a.suggestions)&&a.suggestions.length>0)return a.suggestions}return null}function Om(e){return"page"in e||"channel"in e}function Nm(e){return typeof e!="object"||e===null?{}:Om(e)?{rungs:e}:{initial:e.initial}}function yl(e){let{messages:t,status:a,suggestions:r}=e,o=r!==!1,{rungs:n,initial:s}=Nm(r),i=Mo(()=>({page:null,channel:At(s??[])}),[s]),l=n??i,u=Mo(()=>o?Po({flow:null,followup:null,...l}):null,[o,l]),d=Mo(()=>u?.suggestions.map(g=>g.text)??[],[u]),[c,f]=Sl(d),[p,m]=Sl(u?.origin??"channel"),x=_m(a),L=Dm(()=>{f([])},[]),h=t.length>0;Ro(()=>{h||(f(d),m(u?.origin??"channel"))},[d,u,h]);let I=t[t.length-1];return Ro(()=>{I?.role==="user"&&L()},[I,L]),Ro(()=>{let g=x.current;if(x.current=a,g!=="streaming"||a!=="ready"||!o)return;let C=[...t].reverse().find(P=>P.role==="assistant");if(!C)return;let S=Ll(C),v=Cl(C),A=Po({flow:S===null?null:At(S),followup:v===null?null:At(v),page:null,channel:null});f(A?A.suggestions.map(P=>P.text):[]),m(A?.origin??"channel")},[a,o,t]),{suggestions:c,source:p,isLoading:!1,clear:L}}import{useEffect as Um,useRef as Hm,useState as qm}from"react";var Gm=80,Wm=50,Vm=15e3,bl=500;function kl(e,t=!0){let[a,r]=qm(""),o=Hm(void 0);return Um(()=>{if(!t){r("");return}let n=0,s=!1,i=!1,l=()=>{i||(s?(n--,r(e.slice(0,n)),n<=0?(s=!1,o.current=setTimeout(l,bl)):o.current=setTimeout(l,Wm)):(n++,r(e.slice(0,n)),n>=e.length?(s=!0,o.current=setTimeout(l,Vm)):o.current=setTimeout(l,Gm)))};return o.current=setTimeout(l,bl),()=>{i=!0,clearTimeout(o.current)}},[e,t]),a}function Tl(e,t){let a=t?.Authorization,r=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return Pt(e,"/resource",r?{token:r}:void 0)}var vl={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:8,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5",userBubbleTextColor:"#1f2937",assistantBubbleTextColor:"#1f2937",messagePaddingX:16,messagePaddingY:12,messageMaxWidth:"80%",fontSize:16,lineHeight:"1.5",glassTint:"transparent",glassTintStrength:"0"},zm={backgroundColor:"#212121",headerBackgroundColor:"#1e1e1e",headerTextColor:"#ececec",textColor:"#ececec",primaryForeground:"#ffffff",mutedColor:"#8e8ea0",borderColor:"#444444",assistantBubbleColor:"#2f2f2f",userBubbleColor:"#303030",inputBackgroundColor:"#2f2f2f",primaryColor:"#6366f1",statusColor:"#22c55e",toolCardColor:"#262626",userBubbleTextColor:"#ffffff",assistantBubbleTextColor:"#ececec"},jm={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"],userBubbleTextColor:["--ww-user-bubble-text"],assistantBubbleTextColor:["--ww-assistant-bubble-text"],messagePaddingX:["--ww-msg-pad-x"],messagePaddingY:["--ww-msg-pad-y"],messageMaxWidth:["--ww-msg-max-width"],fontSize:["--ww-font-size"],lineHeight:["--ww-line-height"],glassTint:["--ww-glass-tint"],glassTintStrength:["--ww-glass-tint-opacity"]};function $m(e){return{...vl,...e}}function Fo(e){let t={};for(let[a,r]of Object.entries(jm)){let o=e[a];if(o===void 0)continue;let n=typeof o=="number"?`${o}px`:String(o);for(let s of r)t[s]=n}return t}import{jsx as ue,jsxs as ot}from"react/jsx-runtime";var Bo=Pl(function(t,a){let{locale:r,messages:o}=t;return ue(Ir,{locale:r,messages:o,children:ue(Km,{...t,ref:a})})}),Km=Pl(function(t,a){let{t:r,ready:o}=V(),{appearance:n,className:s,classNames:i,allowAttachments:l=!1,welcomeMessage:u,welcome:d,placeholder:c=r.promptInput.placeholder,triggerEvent:f="triggerDemoRequest",api:p,mcp:m,debug:x=!1,readOnly:L=!1,title:h,headerActions:I,hideHeader:g=!1,enableThreadHistory:C=!1,showToolCalls:S=!0,initializing:v=!1,onScreen:A=!0,disclaimer:P}=t,D=n?.theme,b=n?.variables,E=n?.assistantBubble??!1,M=b?Fo(b):{},[$,H]=lr(!1);je(()=>{if(D!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");H(R.matches);let W=()=>H(R.matches);return R.addEventListener("change",W),()=>R.removeEventListener("change",W)},[D]);let T=D==="dark"||D==="auto"&&$,y=xl({...t,api:p}),F=er(),Me=nl({...t,api:p,sessionId:y.sessionId,onCallTool:m?.onCallTool}),be=m?.resourceEndpoint??Tl(p,t.headers),q=kl(c,!y.text),[xe,fe]=lr(null),[ke,pe]=lr(null),$e=ht(null),Z=ht(null),Xe=ht(null),Ie=ht(null),[j,ne]=lr(!0),G=ht(j);G.current=j;let O=ir(()=>{let R=$e.current;if(!R)return;let W=R.querySelector("textarea");W&&W.focus()},[]),U=ir((R="smooth")=>{let W=Z.current;W&&W.scrollTo({top:W.scrollHeight,behavior:R})},[]);je(()=>{let R=Ie.current,W=Z.current;if(!R||!W)return;let se=new IntersectionObserver(([ye])=>ne(ye.isIntersecting),{root:W,rootMargin:"0px 0px 200px 0px",threshold:0});return se.observe(R),()=>se.disconnect()},[]),je(()=>{let R=Z.current;if(!R)return;let W=se=>{let qe=(se.target instanceof Element?se.target:null)?.closest("a");qe?.href&&F.emit({name:"link.clicked",properties:{url:qe.href}})};return R.addEventListener("click",W),()=>R.removeEventListener("click",W)},[F]),je(()=>{(y.messages[y.messages.length-1]?.role==="user"||G.current)&&U("smooth")},[y.messages.length,y.messages[y.messages.length-1]]),je(()=>{U("auto")},[U]),je(()=>{if(typeof ResizeObserver>"u")return;let R=Z.current,W=Xe.current;if(!R&&!W)return;let se=R?.scrollHeight??0,ye=R?.clientHeight??0,qe=new ResizeObserver(()=>{let Ge=Z.current;if(!Ge)return;let fr=Ge.scrollTop+ye>=se-5;se=Ge.scrollHeight,ye=Ge.clientHeight,fr&&U("auto")});return R&&qe.observe(R),W&&qe.observe(W),()=>qe.disconnect()},[U]);let N=yl({messages:y.messages,status:y.status,suggestions:t.suggestions}),ae=ht(null);je(()=>{let R=N.suggestions;!A||R.length===0||ae.current===R||(ae.current=R,F.emit({name:"suggestions.shown",properties:{texts:R,origin:N.source}}))},[N.suggestions,N.source,F,A]);let X=d?.suggestions,me=ht(null);je(()=>{!A||y.messages.length>0||!X?.length||me.current===X||(me.current=X,F.emit({name:"suggestions.shown",properties:{texts:X,origin:"channel"}}))},[X,y.messages.length,F,A]);let Le=ir(R=>{let W=R.content.map(se=>se.text??"").join("").trim();W&&y.handleSubmit({text:W,files:[],modelContext:R.modelContext})},[y.handleSubmit]),Te=ir(R=>{let W=N.suggestions.indexOf(R),se=W>=0?W:d?.suggestions?.indexOf(R)??-1,ye=W>=0?N.source:"channel";F.emit({name:"suggestion.clicked",properties:{text:R,index:se,origin:ye}}),N.clear(),y.handleSubmit({text:R,files:[]})},[N.suggestions,N.source,N.clear,y.handleSubmit,d,F]);Xm(a,()=>({sendMessage:R=>{y.handleSubmit({text:R,files:[]}),O()},sendMessageAndWait:R=>y.sendMessageAndWait(R),reset:y.reset,focus:O,get messages(){return y.messages},get sessionId(){return y.sessionId}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,y.sessionId,O]),je(()=>{if(!f)return;let R=W=>{let se=W.detail,ye=typeof se?.message=="string"?se.message:void 0;ye&&y.handleSubmit({text:ye,files:[]}),O()};return window.addEventListener(f,R),()=>window.removeEventListener(f,R)},[f,y.handleSubmit,O]);let Ke=!g&&!!(h||C||I),fa=v||!o;return ot("div",{ref:$e,style:{...M,maxHeight:"inherit",...xe&&ke?{height:ke}:{},opacity:fa?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-assistant-bubble":E?"true":void 0,"data-color-scheme":D==="auto"?"auto":void 0,...fa?{"data-waniwani-initializing":""}:{},...T?{"data-waniwani-dark":""}:{},className:k("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",D==="dark"&&"dark",s,i?.root),children:[Ke&&ot("div",{className:k("ww-header ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",i?.header),style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[h&&ue("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:h}),!h&&ue("div",{className:"ww:flex-1"}),C&&ue(el,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:R=>{y.switchThread(R)},onDeleteThread:R=>{y.deleteThread(R)}}),I]}),ot("div",{ref:Z,className:k("ww:relative ww:flex-1 ww:min-h-0",xe?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[ot("div",{ref:Xe,className:k("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",xe&&"ww:!py-0"),children:[ue(Ki,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:d,onSuggestionSelect:Te,resourceEndpoint:be,chatSessionId:y.sessionId,isDark:T,onFollowUp:Le,onCallTool:Me,fullscreenToolCallId:xe,debug:x,showToolCalls:S,toolDefinitions:y.toolDefinitions,messageClassNames:{message:i?.message,userBubble:i?.userBubble,assistantBubble:i?.assistantBubble},onWidgetDisplayModeChange:(R,W)=>{if(R==="fullscreen"){let se=$e.current?.getBoundingClientRect().height??0;pe(se>0?se:null),fe(W.toolCallId)}else pe(null),fe(null)}}),ue("div",{ref:Ie,"aria-hidden":!0,style:{height:1}})]}),!j&&!xe&&ue("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:ue(Oe,{type:"button",onClick:()=>U("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:ue(Bt,{className:"ww:size-4"})})})]}),!L&&ot("div",{className:"ww:shrink-0 ww:bg-background",style:xe?{display:"none"}:void 0,children:[ue(Yi,{suggestions:N.suggestions,isLoading:N.isLoading,onSelect:Te}),ue(Jn,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage}),ue("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:ot("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[ue(Nn,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:k("ww-input ww:rounded-2xl ww:border-border ww:bg-input",i?.input),children:ot("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&ue(qn,{}),ue(Un,{onChange:y.handleTextChange,value:y.text,placeholder:q,className:"ww:min-h-0 ww:py-1 ww:px-0"}),ue(Hn,{status:y.status,disabled:y.queueFull})]})}),ot("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:flex-nowrap ww:justify-center ww:items-center ww:gap-1.5",children:[ue(Ji,{}),ue(Wn,{text:P})]})]})})]})]})});import{forwardRef as Vh,useEffect as cr,useImperativeHandle as zh,useMemo as Vo,useRef as zo,useState as ou}from"react";var Qm="https://app.waniwani.ai/api/mcp/chat",Jm={api:Qm};function Ym(){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 Zm(){let e=Ym();if(!e)return{};let t=b=>e.getAttribute(b)??void 0,a=b=>{let E=e.getAttribute(b);if(E==null)return;let M=E.trim().toLowerCase();if(M==="true"||M==="1"||M==="")return!0;if(M==="false"||M==="0")return!1},r={},o=t("data-api");o&&(r.api=o);let n=t("data-token");n&&(r.token=n);let s=t("data-visitor-id");s&&(r.visitorId=s);let i=t("data-title");i&&(r.title=i);let l=t("data-welcome-message");l&&(r.welcomeMessage=l);let u=t("data-placeholder");u&&(r.placeholder=u);let d=t("data-mcp-server-url");d&&(r.mcpServerUrl=d);let c=t("data-channel-id");if(c&&(r.channelId=c),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")r.showToolCalls="titles-only";else{let b=a("data-show-tool-calls");b!==void 0&&(r.showToolCalls=b)}let p=t("data-css");p&&(r.css=p);let m=t("data-suggestions");m&&(r.suggestions=m.split(",").map(b=>b.trim()).filter(Boolean));let x=a("data-enable-thread-history");x!==void 0&&(r.enableThreadHistory=x);let L=a("data-disable-page-view");L!==void 0&&(r.disablePageView=L);let h=a("data-hide-header");h!==void 0&&(r.hideHeader=h);let I=t("data-theme");(I==="light"||I==="dark"||I==="auto")&&(r.appearance={...r.appearance,theme:I});let g=a("data-assistant-bubble");g!==void 0&&(r.appearance={...r.appearance,assistantBubble:g});let C=t("data-locale");(C==="en"||C==="fr"||C==="es")&&(r.locale=C);let S=t("data-mode");(S==="inline"||S==="floating")&&(r.mode=S);let v=t("data-height");v&&(r.height=v);let A=t("data-launcher-text");A&&(r.launcherText=A);let P=t("data-appear-delay");if(P!==void 0){let b=Number.parseInt(P.trim(),10);Number.isFinite(b)&&b>=0&&(r.appearDelay=b)}let D=t("data-disclaimer");if(D!==void 0){let b=D.trim(),E=b.toLowerCase();E==="false"||E==="0"?r.disclaimer=!1:b&&(r.disclaimer=b)}return r}function Eo(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Do(e,t,a){let r=a??Zm(),o=eh(t,r,e),n={token:"",...Jm,...Eo(t),...Eo(r),...Eo(e),...o?{appearance:o}:{}};if(!n.token)throw new Error("[Waniwani] Missing required config: `token`. Set data-token on the script tag or pass it to Waniwani.chat.init().");return n}function eh(e,t,a){let r=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,o={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},n=Object.keys(o).length>0,s=a?.appearance?.assistantBubble??t.appearance?.assistantBubble??e?.appearance?.assistantBubble;if(!r&&!n&&s===void 0)return;let i={};return r&&(i.theme=r),n&&(i.variables=o),s!==void 0&&(i.assistantBubble=s),i}import{useEffect as Yy,useState as Zy}from"react";function th(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function gt(...e){th()&&console.log("[Waniwani]",...e)}var _o=new Set;function ah(e,t,a){return`${e}|${t}|${a??""}`}function ca(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function Oo(e){let{api:t,token:a,channelId:r,mode:o,source:n}=e;if(typeof window>"u"||!t||!a)return;if(!r&&!n){gt("page.viewed skipped: no channelId or source to attribute it");return}let s=ah(t,a,r);if(!_o.has(s)){_o.add(s);try{let i=await da(),l=new Date().toISOString(),u=JSON.stringify({sentAt:l,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:n,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:r,mode:o,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(ca(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{_o.delete(s)}}}import{useMemo as fh}from"react";import{useEffect as sh,useSyncExternalStore as ih}from"react";function rh(e){return e?.patterns??e?.rules??[]}var Al="\0\0";function oh(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Al).replace(/\\\*/g,"[^/]*").split(Al).join(".*");return new RegExp(`^${a}$`)}function nh(e,t){try{return oh(e).test(t)}catch{return!1}}function Rl(e,t){if(!e)return!0;let a=!1;for(let r of rh(e))if(nh(r.glob,t)){if(r.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var No="waniwani:locationchange",Ml=!1;function lh(){if(!(Ml||typeof history>"u")){Ml=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...r){let o=t.apply(this,r);return window.dispatchEvent(new Event(No)),o}}}}function uh(e){return lh(),window.addEventListener(No,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(No,e),window.removeEventListener("popstate",e)}}function dh(){return window.location.pathname}function ch(){return"/"}function Uo(){return ih(uh,dh,ch)}function Fl(e,t){let a=Uo(),r=t&&Rl(e,a);return sh(()=>{gt("visibility gate",{pathname:a,ready:t,visible:r,rules:e})},[a,t,r]),r}var ph=3,mh=["low","medium","high"];function Ho(e){if(e.length===0)return;let t=Math.floor(Math.random()*e.length),[a]=e.splice(t,1);return a}function hh(e){let t=new Map,a=[];for(let n of e)if(n.tier){let s=t.get(n.tier)??[];s.push(n),t.set(n.tier,s)}else a.push(n);let r=[];for(let n of mh){let s=Ho(t.get(n)??[])??Ho(a);s&&r.push(s)}let o=[...t.values()].flat().concat(a);for(;r.length<Math.min(ph,e.length);){let n=Ho(o);if(!n)break;r.push(n)}return r}function Bl(e){let t;try{t=new URL(e,"http://localhost").pathname}catch{t="/"}let a=t.replace(/\/+$/,"");return(a===""?"/":a).toLowerCase()}function El(e){return Array.isArray(e)?e.flatMap(t=>{let a=t;if(typeof a?.url!="string"||a.url.length===0||!Array.isArray(a.prompts))return[];let r=a.prompts.flatMap(o=>{let n=o;return typeof n?.text!="string"||n.text.length===0?[]:[{id:typeof n.id=="string"?n.id:null,text:n.text,tier:n.tier==="low"||n.tier==="medium"||n.tier==="high"?n.tier:void 0}]});return r.length>0?[{url:a.url,prompts:r}]:[]}):[]}function Dl(e){let{pageSuggestions:t,suggestions:a}=e,r=Uo();return fh(()=>{let o=Bl(r),n=t?.find(i=>Bl(i.url)===o),s=n?hh(n.prompts).map(({id:i,text:l})=>({id:i,text:l})):null;return gt("configured suggestions resolve",{pathname:o,matched:!!n,count:s?.length??0}),{page:s,channel:At(a??[])}},[r,t,a])}var gh="waniwani:config:";function _l(e,t,a){return`${gh}${e}|${t}|${a??""}`}function ur(e,t,a){if(typeof window>"u")return null;try{let r=window.sessionStorage.getItem(_l(e,t,a));if(!r)return null;let o=JSON.parse(r);return o&&typeof o=="object"?o:null}catch{return null}}function Ol(e,t,a,r){if(!(typeof window>"u"))try{window.sessionStorage.setItem(_l(e,t,a),JSON.stringify(r))}catch{}}async function Nl(e,t,a,r){try{let o=Pt(e,"/config",r?{channel:r}:void 0),n=await fetch(o,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let s=await n.json(),i=s&&typeof s=="object"&&"data"in s&&s.data?s.data:s;return i?wh(i):{}}catch{return{}}}function wh(e){let t={};e.source!=null&&(t.source=e.source),e.channelId!=null&&(t.channelId=e.channelId),e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions);let a=El(e.pageSuggestions);return a.length>0&&(t.pageSuggestions=a),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),e.visibility&&(t.visibility=e.visibility),t}import{useEffect as xh,useRef as Ih}from"react";function qo(e,t){return e.find(a=>a.text===t)?.id??null}async function Ul(e){let{api:t,token:a,name:r,source:o,sessionId:n,properties:s}=e;if(!(typeof window>"u"||!t||!a))try{let i=new Date().toISOString(),l=JSON.stringify({sentAt:i,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:r,source:o,timestamp:i,correlation:{visitorId:rt(),sessionId:n},properties:{...s,url:window.location.href},metadata:{}}]});await fetch(ca(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:l,keepalive:!0})}catch{}}async function Hl(e){let{api:t,token:a,channelId:r,mode:o,source:n,sessionId:s,promptId:i,origin:l,text:u,index:d}=e;await Ul({api:t,token:a,name:"suggestion.clicked",source:n,sessionId:s,properties:{promptId:i,origin:l,text:u,index:d,channelId:r,mode:o}})}function ql(e,t){return t.map(a=>({id:qo(e,a),text:a}))}async function Gl(e){let{api:t,token:a,channelId:r,mode:o,source:n,sessionId:s,prompts:i,origin:l}=e;i.length!==0&&await Ul({api:t,token:a,name:"suggestion.shown",source:n,sessionId:s,properties:{prompts:i,count:i.length,origin:l,channelId:r,mode:o}})}function Wl(e){let{widgetEvents:t,api:a,token:r,channelId:o,source:n,mode:s,pagePrompts:i}=e,l=Ih(e.getSessionId);l.current=e.getSessionId,xh(()=>{if(!(!a||!r))return t.subscribe(u=>{if(u.name==="suggestion.clicked"){let{text:d,origin:c,index:f}=u.properties;Hl({api:a,token:r,channelId:o,mode:s,source:n,sessionId:l.current(),promptId:qo(i??[],d),origin:c,text:d,index:f});return}if(u.name==="suggestions.shown"){let{texts:d,origin:c}=u.properties;Gl({api:a,token:r,channelId:o,mode:s,source:n,sessionId:l.current(),prompts:ql(i??[],d),origin:c})}})},[t,a,r,o,n,s,i])}function Mt(e,t){for(let a of t){let r=e[a];if(typeof r=="string"&&r.length>0)return r}}var Lh=["waniwani/sessionId","openai/sessionId","openai/session","sessionId","conversationId","mcp-session-id"],Ch=["waniwani/requestId","openai/requestId","requestId","mcp/requestId"],Sh=["waniwani/traceId","openai/traceId","traceId","mcp/traceId","openai/requestId","requestId"],yh=["waniwani/userId","openai/userId","externalUserId","userId","actorId"],bh=["waniwani/visitorId","visitorId"],kh=["correlationId","openai/requestId"];function Vl(e){return e?Mt(e,Lh):void 0}function zl(e){return e?Mt(e,Ch):void 0}function jl(e){return e?Mt(e,Sh):void 0}function $l(e){return e?Mt(e,yh):void 0}function Xl(e){return e?Mt(e,bh):void 0}function Kl(e){return e?Mt(e,kh):void 0}var Th=[{key:"openai/sessionId",source:"chatgpt"},{key:"openai/session",source:"chatgpt"}],vh=[{needle:"claude",source:"claude"},{needle:"chatgpt",source:"chatgpt"},{needle:"openai",source:"chatgpt"},{needle:"gemini",source:"gemini"}];function Ql(e,t){if(e){let r=e["waniwani/source"];if(typeof r=="string"&&r.length>0)return r;for(let{key:o,source:n}of Th){let s=e[o];if(typeof s=="string"&&s.length>0)return n}}let a=t?.name;if(typeof a=="string"&&a.length>0){let r=a.toLowerCase();for(let{needle:o,source:n}of vh)if(r.includes(o))return n}}var Ph="@waniwani/sdk";function Jl(e,t={}){let a=t.now??(()=>new Date),r=t.generateId??Ah,o=Fh(e),n=dr(e.meta),s=dr(e.metadata),i=Bh(e,n),l=_e(e.eventId)??r(),u=Eh(e.timestamp,a),d=_e(e.source)??Ql(n)??t.source??Ph,c=Go(e)?{...e}:void 0,f={...s};return Object.keys(n).length>0&&(f.meta=n),c&&(f.rawLegacy=c),{id:l,type:"mcp.event",name:o,source:d,timestamp:u,correlation:i,properties:Rh(e,o),metadata:f,rawLegacy:c}}function Ah(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`evt_${crypto.randomUUID()}`:`evt_${Math.random().toString(36).slice(2,10)}_${Date.now().toString(36)}`}function Rh(e,t){if(!Go(e))return dr(e.properties);let a=Mh(e,t),r=dr(e.properties);return{...a,...r}}function Mh(e,t){switch(t){case"tool.called":{let a={};return _e(e.toolName)&&(a.name=e.toolName),_e(e.toolType)&&(a.type=e.toolType),a}case"link.clicked":{let a={};return _e(e.linkUrl)&&(a.url=e.linkUrl),a}default:return{}}}function Fh(e){return Go(e)?e.eventType:e.event}function Bh(e,t){let a=_e(e.requestId)??zl(t),r=_e(e.sessionId)??Vl(t),o=_e(e.traceId)??jl(t),n=_e(e.externalUserId)??$l(t),s=_e(e.visitorId)??Xl(t),i=_e(e.correlationId)??Kl(t)??a,l={};return r&&(l.sessionId=r),o&&(l.traceId=o),a&&(l.requestId=a),i&&(l.correlationId=i),n&&(l.externalUserId=n),s&&(l.visitorId=s),l}function Eh(e,t){if(e instanceof Date)return e.toISOString();if(typeof e=="string"){let a=new Date(e);if(!Number.isNaN(a.getTime()))return a.toISOString()}return t().toISOString()}function dr(e){return!e||typeof e!="object"||Array.isArray(e)?{}:e}function _e(e){if(typeof e=="string"&&e.trim().length!==0)return e}function Go(e){return"eventType"in e}function Yl(e){return{priceShown:({amount:t,currency:a,itemId:r,label:o,...n})=>e({event:"price_shown",properties:{amount:t,currency:a,itemId:r,label:o},...n}),pricesCompared:({options:t,...a})=>e({event:"prices_compared",properties:{options:t},...a}),optionSelected:({id:t,amount:a,currency:r,...o})=>e({event:"option_selected",properties:{id:t,amount:a,currency:r},...o}),leadQualified:t=>{let{externalId:a,email:r,name:o,...n}=t??{};return e({event:"lead_qualified",properties:{externalId:a,email:r,name:o},...n})},converted:({amount:t,currency:a,occurredAt:r,...o})=>e({event:"converted",properties:{amount:t,currency:a,occurredAt:r},...o})}}var Dh="/api/mcp/events/v2/batch";var Zl="@waniwani/sdk";var _h=new Set([401,403]),Oh=new Set([408,425,429,500,502,503,504]),Nh=(e,t)=>globalThis.fetch(e,t);function eu(e){return new Wo(e)}var Wo=class{endpointUrl;flushIntervalMs;maxBatchSize;maxBufferSize;maxRetries;retryBaseDelayMs;retryMaxDelayMs;shutdownTimeoutMs;sdkVersion;fetchFn;logger;now;sleep;apiKey;buffer=[];flushTimer;flushScheduled=!1;flushScheduledTimer;flushInFlight;inFlightCount=0;isStopped=!1;isShuttingDown=!1;constructor(t){this.endpointUrl=qh(t.apiUrl,t.endpointPath??Dh),this.flushIntervalMs=t.flushIntervalMs??1e3,this.maxBatchSize=t.maxBatchSize??20,this.maxBufferSize=t.maxBufferSize??1e3,this.maxRetries=t.maxRetries??3,this.retryBaseDelayMs=t.retryBaseDelayMs??200,this.retryMaxDelayMs=t.retryMaxDelayMs??2e3,this.shutdownTimeoutMs=t.shutdownTimeoutMs??2e3,this.fetchFn=t.fetchFn??Nh,this.logger=t.logger??console,this.now=t.now??(()=>new Date),this.sleep=t.sleep??(a=>new Promise(r=>setTimeout(r,a))),this.apiKey=t.apiKey,this.sdkVersion=t.sdkVersion,this.flushIntervalMs>0&&(this.flushTimer=setInterval(()=>{this.flush()},this.flushIntervalMs)),this.registerBrowserTeardown()}enqueue(t){if(this.isStopped||this.isShuttingDown){this.logger.warn("[Waniwani] Tracking transport is stopped, dropping event %s",t.id);return}if(this.buffer.length>=this.maxBufferSize){let a=this.buffer.length-this.maxBufferSize+1;this.buffer.splice(0,a),this.logger.warn("[Waniwani] Tracking buffer overflow, dropped %d oldest event(s)",a)}if(this.buffer.push(t),this.buffer.length>=this.maxBatchSize){this.flush();return}this.scheduleMicroFlush()}pendingEvents(){return this.buffer.length+this.inFlightCount}async flush(){return this.flushInFlight?this.flushInFlight:(this.flushInFlight=this.flushLoop().finally(()=>{this.flushInFlight=void 0}),this.flushInFlight)}async shutdown(t){this.isShuttingDown=!0,this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=void 0),this.flushScheduledTimer&&(clearTimeout(this.flushScheduledTimer),this.flushScheduledTimer=void 0,this.flushScheduled=!1);let a=t?.timeoutMs??this.shutdownTimeoutMs,r=this.flush();if(!Number.isFinite(a)||a<=0)return await r,this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()};let o=Symbol("shutdown-timeout");return await Promise.race([r.then(()=>"flushed"),this.sleep(a).then(()=>o)])===o?(this.isStopped=!0,{timedOut:!0,pendingEvents:this.pendingEvents()}):(this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()})}registerBrowserTeardown(){if(typeof document>"u"||typeof window>"u")return;let t=()=>{document.visibilityState==="hidden"&&this.keepaliveFlush()};document.addEventListener("visibilitychange",t),window.addEventListener("pagehide",()=>this.keepaliveFlush())}keepaliveFlush(){if(this.isStopped||this.buffer.length===0)return;let t=this.buffer.splice(0,this.buffer.length);this.sendKeepaliveChunk(t)}sendKeepaliveChunk(t){let a=JSON.stringify(this.makeBatchRequest(t));if(a.length>6e4&&t.length>1){let r=Math.ceil(t.length/2);this.sendKeepaliveChunk(t.slice(0,r)),this.sendKeepaliveChunk(t.slice(r));return}try{this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:a,keepalive:!0}).catch(()=>{})}catch{}}requestHeaders(){let t={"Content-Type":"application/json","X-WaniWani-SDK":Zl};return this.apiKey&&(t.Authorization=`Bearer ${this.apiKey}`),t}scheduleMicroFlush(){this.flushScheduled||(this.flushScheduled=!0,this.flushScheduledTimer=setTimeout(()=>{this.flushScheduledTimer=void 0,this.flushScheduled=!1,this.flush()},0))}async flushLoop(){for(;this.buffer.length>0&&!this.isStopped;){let t=this.buffer.splice(0,this.maxBatchSize);await this.sendBatchWithRetry(t)}}async sendBatchWithRetry(t){let a=0,r=t;for(;r.length>0&&!this.isStopped;){this.inFlightCount=r.length;let o=await this.sendBatchOnce(r);switch(this.inFlightCount=0,o.kind){case"success":return;case"auth":this.stopTransportForAuthFailure(o.status,r.length);return;case"permanent":this.logger.error("[Waniwani] Dropping %d event(s) after permanent failure: %s",r.length,o.reason);return;case"retryable":if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d event(s) after retry exhaustion: %s",r.length,o.reason);return}await this.sleep(this.backoffDelayMs(a)),a+=1;continue;case"partial":if(o.permanent.length>0&&this.logger.error("[Waniwani] Dropping %d event(s) rejected as permanent",o.permanent.length),o.retryable.length===0)return;if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d retryable event(s) after retry exhaustion",o.retryable.length);return}r=o.retryable,await this.sleep(this.backoffDelayMs(a)),a+=1;continue}}}async sendBatchOnce(t){let a;try{a=await this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:JSON.stringify(this.makeBatchRequest(t))})}catch(n){return{kind:"retryable",reason:Gh(n)}}if(_h.has(a.status))return{kind:"auth",status:a.status};if(Oh.has(a.status))return{kind:"retryable",reason:`HTTP ${a.status}`};if(!a.ok)return{kind:"permanent",reason:`HTTP ${a.status}`};let r=await Hh(a);if(!r?.rejected||r.rejected.length===0)return{kind:"success"};let o=this.classifyRejectedEvents(t,r.rejected);return o.retryable.length===0&&o.permanent.length===0?{kind:"success"}:{kind:"partial",retryable:o.retryable,permanent:o.permanent}}makeBatchRequest(t){return{sentAt:this.now().toISOString(),source:{sdk:Zl,version:this.sdkVersion??"0.0.0"},events:t}}classifyRejectedEvents(t,a){let r=new Map(t.map(s=>[s.id,s])),o=[],n=[];for(let s of a){let i=r.get(s.eventId);if(i){if(Uh(s)){o.push(i);continue}n.push(i)}}return{retryable:o,permanent:n}}backoffDelayMs(t){let a=this.retryBaseDelayMs*2**t;return Math.min(a,this.retryMaxDelayMs)}stopTransportForAuthFailure(t,a){this.isStopped=!0;let r=this.buffer.length;this.buffer.splice(0,r),this.logger.error("[Waniwani] Auth failure (HTTP %d). Stopping tracking transport and dropping %d queued event(s)",t,a+r)}};function Uh(e){if(e.retryable===!0)return!0;let t=e.code.toLowerCase();return t.includes("timeout")||t.includes("temporary")||t.includes("unavailable")||t.includes("rate_limit")||t.includes("transient")||t.includes("server")}async function Hh(e){let t=await e.text();if(t)try{return JSON.parse(t)}catch{return}}function qh(e,t){let a=e.endsWith("/")?e:`${e}/`,r=t.startsWith("/")?t.slice(1):t;return`${a}${r}`}function Gh(e){return e instanceof Error?e.message:String(e)}function tu(e){let{apiUrl:t,endpointPath:a}=Wh(e.endpoint),r=eu({apiUrl:t,apiKey:e.token,endpointPath:a,flushIntervalMs:e.flushIntervalMs}),o,n=i=>typeof i=="function"?i():i,s=async i=>{let l=e.identity?.()??{},u=n(e.channelId),d=u===void 0?i.properties:{channelId:u,...i.properties},c=Jl({sessionId:l.sessionId,visitorId:l.visitorId,externalUserId:l.externalUserId??o,traceId:l.traceId,...i,properties:d,metadata:{...e.metadata,...i.metadata}},{source:n(e.source)});return r.enqueue(c),{eventId:c.id}};return{track:Object.assign(s,Yl(s)),identify(i,l){return o=i,s({event:"user.identified",externalUserId:i,properties:l})},flush:()=>r.flush(),shutdown:i=>r.shutdown(i)}}function Wh(e){let t=new URL(e);return{apiUrl:t.origin,endpointPath:`${t.pathname}${t.search}`}}function au(e){return tu({endpoint:ca(e.api),token:e.token,channelId:e.channelId,source:e.getSource,identity:()=>({sessionId:e.getSessionId(),visitorId:rt()})})}function ru(e){let t=!1,a=async()=>(t||(t=!0,console.warn(`[Waniwani] track() is disabled: ${e}`)),{eventId:""});return{track:Object.assign(a,{priceShown:a,pricesCompared:a,optionSelected:a,leadQualified:a,converted:a}),identify:a,flush:async()=>{},shutdown:async()=>({timedOut:!1,pendingEvents:0})}}import{jsx as su}from"react/jsx-runtime";var jh=600,nu="https://app.waniwani.ai/api/mcp/chat",$h=Vh(function(t,a){let{token:r,channelId:o,className:n,visitorId:s,overrides:i,onEvent:l}=t,u=zo(null),d=zo(null),c=Vo(()=>tl({mode:"inline",getSessionId:()=>u.current?.sessionId}),[]);cr(()=>{if(l)return c.subscribe(l)},[l,c]);let f=Vo(()=>({token:r,channelId:o,api:i?.api,mcpServerUrl:i?.mcpServerUrl,title:i?.title,hideHeader:i?.hideHeader,welcomeMessage:i?.welcomeMessage,placeholder:i?.placeholder,suggestions:i?.suggestions,enableThreadHistory:i?.enableThreadHistory,showToolCalls:i?.showToolCalls,appearance:i?.appearance,disclaimer:i?.disclaimer,locale:i?.locale}),[r,o,i?.api,i?.mcpServerUrl,i?.title,i?.hideHeader,i?.welcomeMessage,i?.placeholder,i?.suggestions,i?.enableThreadHistory,i?.showToolCalls,i?.appearance,i?.disclaimer,i?.locale]),p=i?.api??nu,[m,x]=ou({}),[L,h]=ou(!1),I=zo(!1);cr(()=>{L&&!I.current&&(I.current=!0,c.emit({name:"chat.ready"}))},[L,c]);let g=i?.disablePageView;cr(()=>{if(!r){h(!0);return}let P=M=>{g||Oo({api:p,token:r,channelId:o??M.channelId,mode:"inline",source:M.source})},D=ur(p,r,o);D&&(x(D),h(!0),P(D));let b=new AbortController,E=setTimeout(()=>h(!0),jh);return Nl(p,r,b.signal,o).then(M=>{b.signal.aborted||(Object.keys(M).length>0&&(Ol(p,r,o,M),x(M)),h(!0),P(M))}).catch(M=>{console.error("[Waniwani] Remote config fetch failed:",M),h(!0)}).finally(()=>clearTimeout(E)),()=>{b.abort(),clearTimeout(E)}},[p,r,o,g]);let C=Vo(()=>Do(f,m,void 0),[f,m]),S=Dl(C);Wl({widgetEvents:c,api:C.api??p,token:C.token??r,channelId:C.channelId??o,source:C.source,mode:"inline",pagePrompts:S.page,getSessionId:()=>u.current?.sessionId}),cr(()=>{if(!r)return;let P=au({api:p,token:r,channelId:()=>o??ur(p,r,o)?.channelId,getSource:()=>ur(p,r,o)?.source??void 0,getSessionId:()=>u.current?.sessionId});return d.current=P,()=>{d.current=null,P.shutdown()}},[p,r,o]),zh(a,()=>{let P=()=>d.current??ru("no public token configured"),D=Object.assign(b=>P().track(b),{priceShown:b=>P().track.priceShown(b),pricesCompared:b=>P().track.pricesCompared(b),optionSelected:b=>P().track.optionSelected(b),leadQualified:b=>P().track.leadQualified(b),converted:b=>P().track.converted(b)});return{sendMessage:b=>u.current?.sendMessage(b),sendMessageAndWait:b=>u.current?u.current.sendMessageAndWait(b):Promise.resolve(void 0),reset:()=>u.current?.reset(),focus:()=>u.current?.focus(),get messages(){return u.current?.messages??[]},get sessionId(){return u.current?.sessionId},track:D,identify:(b,E)=>P().identify(b,E)}},[]);let v=Fl(C.visibility,L),A={mode:"inline"};return C.mcpServerUrl&&(A.mcpServerUrl=C.mcpServerUrl),C.channelId&&(A.channelId=C.channelId),v?su(ol,{value:c,children:su(Bo,{ref:u,api:C.api??nu,headers:{Authorization:`Bearer ${C.token}`},visitorId:s,skipRemoteConfig:!0,body:A,appearance:C.appearance,classNames:i?.classNames,title:C.title,hideHeader:C.hideHeader,welcomeMessage:C.welcomeMessage,welcome:i?.welcome,placeholder:C.placeholder,suggestions:S,enableThreadHistory:C.enableThreadHistory,showToolCalls:C.showToolCalls,disclaimer:C.disclaimer,allowAttachments:i?.allowAttachments,locale:C.locale,messages:i?.messages,className:n,initializing:!L})}):null});export{Bo as ChatEmbed,zm as DARK_THEME,vl as DEFAULT_THEME,Pr as McpAppFrame,$h as WaniwaniChat,$m as mergeTheme,Fo as themeToCSSProperties};
|
|
14
|
+
\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function di(e,t,a,r){let o=r.schema,n=o.space==="svg"?!1:r.settings.omitOptionalTags,s=o.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase()),i=[],l;o.space==="html"&&e.tagName==="svg"&&(r.schema=ha);let u=xf(r,e.properties),d=r.all(o.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=o,d&&(s=!1),(u||!n||!ui(e,t,a))&&(i.push("<",e.tagName,u?" "+u:""),s&&(o.space==="svg"||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(d),!s&&(!n||!oa(e,t,a))&&i.push("</"+e.tagName+">"),i.join("")}function xf(e,t){let a=[],r=-1,o;if(t){for(o in t)if(t[o]!==null&&t[o]!==void 0){let n=If(e,o,t[o]);n&&a.push(n)}}for(;++r<a.length;){let n=e.settings.tightAttributes?a[r].charAt(a[r].length-1):void 0;r!==a.length-1&&n!=='"'&&n!=="'"&&(a[r]+=" ")}return a.join("")}function If(e,t,a){let r=en(e.schema,t),o=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,n=e.settings.allowDangerousCharacters?0:1,s=e.quote,i;if(r.overloadedBoolean&&(a===r.attribute||a==="")?a=!0:(r.boolean||r.overloadedBoolean)&&(typeof a!="string"||a===r.attribute||a==="")&&(a=!!a),a==null||a===!1||typeof a=="number"&&Number.isNaN(a))return"";let l=ze(r.attribute,Object.assign({},e.settings.characterReferences,{subset:_a.name[o][n]}));return a===!0||(a=Array.isArray(a)?(r.commaSeparated?an:rn)(a,{padLeft:!e.settings.tightCommaSeparatedLists}):String(a),e.settings.collapseEmptyAttributes&&!a)?l:(e.settings.preferUnquoted&&(i=ze(a,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:_a.unquoted[o][n]}))),i!==a&&(e.settings.quoteSmart&&hr(a,s)>hr(a,e.alternative)&&(s=e.alternative),i=s+ze(a,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?_a.single:_a.double)[o][n],attribute:!0}))+s),l+(i&&"="+i))}var Lf=["<","&"];function Oa(e,t,a,r){return a&&a.type==="element"&&(a.tagName==="script"||a.tagName==="style")?e.value:ze(e.value,Object.assign({},r.settings.characterReferences,{subset:Lf}))}function ci(e,t,a,r){return r.settings.allowDangerousHtml?e.value:Oa(e,t,a,r)}function fi(e,t,a,r){return r.all(e)}var pi=on("type",{invalid:Cf,unknown:Sf,handlers:{comment:oi,doctype:ni,element:di,raw:ci,root:fi,text:Oa}});function Cf(e){throw new Error("Expected node, not `"+e+"`")}function Sf(e){let t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}var yf={},bf={},kf=[];function Yr(e,t){let a=t||yf,r=a.quote||'"',o=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:Tf,all:vf,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||nn,characterReferences:a.characterReferences||bf,closeSelfClosing:a.closeSelfClosing||!1,closeEmptyElements:a.closeEmptyElements||!1},schema:a.space==="svg"?ha:tn,quote:r,alternative:o}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function Tf(e,t,a){return pi(e,t,a,this)}function vf(e){let t=[],a=e&&e.children||kf,r=-1;for(;++r<a.length;)t[r]=this.one(a[r],r,e);return t.join("")}function Na(e,t){let a=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(let[o,n]of Object.entries(t?.colorReplacements||{}))typeof n=="string"?a[o]=n:o===r&&Object.assign(a,n);return a}function tt(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Pf(e){return Array.isArray(e)?e:[e]}async function Li(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function oo(e){return!e||["plaintext","txt","text","plain"].includes(e)}function Ci(e){return e==="ansi"||oo(e)}function no(e){return e==="none"}function Si(e){return no(e)}function yi(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);let a=Array.isArray(t)?t:t.split(/\s+/g);for(let r of a)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}function Ga(e,t=!1){if(e.length===0)return[["",0]];let a=e.split(/(\r?\n)/g),r=0,o=[];for(let n=0;n<a.length;n+=2){let s=t?a[n]+(a[n+1]||""):a[n];o.push([s,r]),r+=a[n].length,r+=a[n+1]?.length||0}return o}function Af(e){let t=Ga(e,!0).map(([o])=>o);function a(o){if(o===e.length)return{line:t.length-1,character:t[t.length-1].length};let n=o,s=0;for(let i of t){if(n<i.length)break;n-=i.length,s++}return{line:s,character:n}}function r(o,n){let s=0;for(let i=0;i<o;i++)s+=t[i].length;return s+=n,s}return{lines:t,indexToPos:a,posToIndex:r}}function bi(e,t,a){let r=new Set;for(let n of e.matchAll(/:?lang=["']([^"']+)["']/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/(?:```|~~~)([\w-]+)/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/\\begin\{([\w-]+)\}/g)){let s=n[1].toLowerCase().trim();s&&r.add(s)}for(let n of e.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){let s=n[1].toLowerCase().trim(),i=s.includes("/")?s.split("/").pop():s;i&&r.add(i)}if(!a)return Array.from(r);let o=a.getBundledLanguages();return Array.from(r).filter(n=>n&&o[n])}var so="light-dark()",Rf=["color","background-color"];function Mf(e,t){let a=0,r=[];for(let o of t)o>a&&r.push({...e,content:e.content.slice(a,o),offset:e.offset+a}),a=o;return a<e.content.length&&r.push({...e,content:e.content.slice(a),offset:e.offset+a}),r}function Ff(e,t){let a=Array.from(t instanceof Set?t:new Set(t)).sort((r,o)=>r-o);return a.length?e.map(r=>r.flatMap(o=>{let n=a.filter(s=>o.offset<s&&s<o.offset+o.content.length).map(s=>s-o.offset).sort((s,i)=>s-i);return n.length?Mf(o,n):o})):e}function Bf(e,t,a,r,o="css-vars"){let n={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(d=>Ua(e.variants[d])),i=new Set(s.flatMap(d=>Object.keys(d))),l={},u=(d,c)=>{let f=c==="color"?"":c==="background-color"?"-bg":`-${c}`;return a+t[d]+(c==="color"?"":f)};return s.forEach((d,c)=>{for(let f of i){let p=d[f]||"inherit";if(c===0&&r&&Rf.includes(f))if(r===so&&s.length>1){let m=t.findIndex(I=>I==="light"),x=t.findIndex(I=>I==="dark");if(m===-1||x===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let L=s[m][f]||"inherit",h=s[x][f]||"inherit";l[f]=`light-dark(${L}, ${h})`,o==="css-vars"&&(l[u(c,f)]=p)}else l[f]=p;else o==="css-vars"&&(l[u(c,f)]=p)}}),n.htmlStyle=l,n}function Ua(e){let t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&ge.Italic&&(t["font-style"]="italic"),e.fontStyle&ge.Bold&&(t["font-weight"]="bold");let a=[];e.fontStyle&ge.Underline&&a.push("underline"),e.fontStyle&ge.Strikethrough&&a.push("line-through"),a.length&&(t["text-decoration"]=a.join(" "))}return t}function to(e){return typeof e=="string"?e:Object.entries(e).map(([t,a])=>`${t}:${a}`).join(";")}var ki=new WeakMap;function Va(e,t){ki.set(e,t)}function sa(e){return ki.get(e)}var Tt=class e{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,a){return new e(Object.fromEntries(Pf(a).map(r=>[r,Fa])),t)}constructor(...t){if(t.length===2){let[a,r]=t;this.lang=r,this._stacks=a}else{let[a,r,o]=t;this.lang=r,this._stacks={[o]:a}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return Ef(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function Ef(e){let t=[],a=new Set;function r(o){if(a.has(o))return;a.add(o);let n=o?.nameScopesList?.scopeName;n&&t.push(n),o.parent&&r(o.parent)}return r(e),t}function Df(e,t){if(!(e instanceof Tt))throw new ee("Invalid grammar state");return e.getInternalStack(t)}function _f(){let e=new WeakMap;function t(a){if(!e.has(a.meta)){let r=function(s){if(typeof s=="number"){if(s<0||s>a.source.length)throw new ee(`Invalid decoration offset: ${s}. Code length: ${a.source.length}`);return{...o.indexToPos(s),offset:s}}else{let i=o.lines[s.line];if(i===void 0)throw new ee(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${o.lines.length}`);let l=s.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new ee(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,character:l,offset:o.posToIndex(s.line,l)}}},o=Af(a.source),n=(a.options.decorations||[]).map(s=>({...s,start:r(s.start),end:r(s.end)}));Of(n),e.set(a.meta,{decorations:n,converter:o,source:a.source})}return e.get(a.meta)}return{name:"shiki:decorations",tokens(a){if(!this.options.decorations?.length)return;let o=t(this).decorations.flatMap(s=>[s.start.offset,s.end.offset]);return Ff(a,o)},code(a){if(!this.options.decorations?.length)return;let r=t(this),o=Array.from(a.children).filter(d=>d.type==="element"&&d.tagName==="span");if(o.length!==r.converter.lines.length)throw new ee(`Number of lines in code element (${o.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function n(d,c,f,p){let m=o[d],x="",L=-1,h=-1;if(c===0&&(L=0),f===0&&(h=0),f===Number.POSITIVE_INFINITY&&(h=m.children.length),L===-1||h===-1)for(let g=0;g<m.children.length;g++)x+=Ti(m.children[g]),L===-1&&x.length===c&&(L=g+1),h===-1&&x.length===f&&(h=g+1);if(L===-1)throw new ee(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(h===-1)throw new ee(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);let I=m.children.slice(L,h);if(!p.alwaysWrap&&I.length===m.children.length)i(m,p,"line");else if(!p.alwaysWrap&&I.length===1&&I[0].type==="element")i(I[0],p,"token");else{let g={type:"element",tagName:"span",properties:{},children:I};i(g,p,"wrapper"),m.children.splice(L,I.length,g)}}function s(d,c){o[d]=i(o[d],c,"line")}function i(d,c,f){let p=c.properties||{},m=c.transform||(x=>x);return d.tagName=c.tagName||"span",d.properties={...d.properties,...p,class:d.properties.class},c.properties?.class&&yi(d,c.properties.class),d=m(d,f)||d,d}let l=[],u=r.decorations.sort((d,c)=>c.start.offset-d.start.offset||d.end.offset-c.end.offset);for(let d of u){let{start:c,end:f}=d;if(c.line===f.line)n(c.line,c.character,f.character,d);else if(c.line<f.line){n(c.line,c.character,Number.POSITIVE_INFINITY,d);for(let p=c.line+1;p<f.line;p++)l.unshift(()=>s(p,d));n(f.line,0,f.character,d)}}l.forEach(d=>d())}}}function Of(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 r=t+1;r<e.length;r++){let o=e[r],n=a.start.offset<=o.start.offset&&o.start.offset<a.end.offset,s=a.start.offset<o.end.offset&&o.end.offset<=a.end.offset,i=o.start.offset<=a.start.offset&&a.start.offset<o.end.offset,l=o.start.offset<a.end.offset&&a.end.offset<=o.end.offset;if(n||s||i||l){if(n&&s||i&&l||i&&a.start.offset===a.end.offset||s&&o.start.offset===o.end.offset)continue;throw new ee(`Decorations ${JSON.stringify(a.start)} and ${JSON.stringify(o.start)} intersect.`)}}}}function Ti(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Ti).join(""):""}var Nf=[_f()];function Ha(e){let t=Uf(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...Nf]}function Uf(e){let t=[],a=[],r=[];for(let o of e)switch(o.enforce){case"pre":t.push(o);break;case"post":a.push(o);break;default:r.push(o)}return{pre:t,post:a,normal:r}}var ft=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Zr={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Hf(e,t){let a=e.indexOf("\x1B",t);if(a!==-1&&e[a+1]==="["){let r=e.indexOf("m",a);if(r!==-1)return{sequence:e.substring(a+2,r).split(";"),startPosition:a,position:r+1}}return{position:e.length}}function mi(e){let t=e.shift();if(t==="2"){let a=e.splice(0,3).map(r=>Number.parseInt(r));return a.length!==3||a.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:a}}else if(t==="5"){let a=e.shift();if(a)return{type:"table",index:Number(a)}}}function qf(e){let t=[];for(;e.length>0;){let a=e.shift();if(!a)continue;let r=Number.parseInt(a);if(!Number.isNaN(r))if(r===0)t.push({type:"resetAll"});else if(r<=9)Zr[r]&&t.push({type:"setDecoration",value:Zr[r]});else if(r<=29){let o=Zr[r-20];o&&(t.push({type:"resetDecoration",value:o}),o==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-30]}});else if(r===38){let o=mi(e);o&&t.push({type:"setForegroundColor",value:o})}else if(r===39)t.push({type:"resetForegroundColor"});else if(r<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-40]}});else if(r===48){let o=mi(e);o&&t.push({type:"setBackgroundColor",value:o})}else r===49?t.push({type:"resetBackgroundColor"}):r===53?t.push({type:"setDecoration",value:"overline"}):r===55?t.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?t.push({type:"setForegroundColor",value:{type:"named",name:ft[r-90+8]}}):r>=100&&r<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:ft[r-100+8]}})}return t}function Wf(){let e=null,t=null,a=new Set;return{parse(r){let o=[],n=0;do{let s=Hf(r,n),i=s.sequence?r.substring(n,s.startPosition):r.substring(n);if(i.length>0&&o.push({value:i,foreground:e,background:t,decorations:new Set(a)}),s.sequence){let l=qf(s.sequence);for(let u of l)u.type==="resetAll"?(e=null,t=null,a.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&a.delete(u.value);for(let u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&a.add(u.value)}n=s.position}while(n<r.length);return o}}}var Gf={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 Vf(e=Gf){function t(i){return e[i]}function a(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function o(){if(r)return r;r=[];for(let u=0;u<ft.length;u++)r.push(t(ft[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let d=0;d<6;d++)for(let c=0;c<6;c++)r.push(a([i[u],i[d],i[c]]));let l=8;for(let u=0;u<24;u++,l+=10)r.push(a([l,l,l]));return r}function n(i){return o()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return a(i.rgb);case"table":return n(i.index)}}return{value:s}}var zf={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 jf(e,t,a){let r=Na(e,a),o=Ga(t),n=Object.fromEntries(ft.map(l=>{let u=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,d=e.colors?.[u];return[l,d||zf[l]]})),s=Vf(n),i=Wf();return o.map(l=>i.parse(l[0]).map(u=>{let d,c;u.decorations.has("reverse")?(d=u.background?s.value(u.background):e.bg,c=u.foreground?s.value(u.foreground):e.fg):(d=u.foreground?s.value(u.foreground):e.fg,c=u.background?s.value(u.background):void 0),d=tt(d,r),c=tt(c,r),u.decorations.has("dim")&&(d=$f(d));let f=ge.None;return u.decorations.has("bold")&&(f|=ge.Bold),u.decorations.has("italic")&&(f|=ge.Italic),u.decorations.has("underline")&&(f|=ge.Underline),u.decorations.has("strikethrough")&&(f|=ge.Strikethrough),{content:u.value,offset:l[1],color:d,bgColor:c,fontStyle:f}}))}function $f(e){let t=e.match(/#([0-9a-f]{3,8})/i);if(t){let r=t[1];if(r.length===8){let o=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${o}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){let o=r[0],n=r[1],s=r[2],i=r[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${o}${o}${n}${n}${s}${s}${l}`}else if(r.length===3){let o=r[0],n=r[1],s=r[2];return`#${o}${o}${n}${n}${s}${s}80`}}}let a=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return a?`var(${a[1]}-dim)`:e}function io(e,t,a={}){let{theme:r=e.getLoadedThemes()[0]}=a,o=e.resolveLangAlias(a.lang||"text");if(oo(o)||no(r))return Ga(t).map(l=>[{content:l[0],offset:l[1]}]);let{theme:n,colorMap:s}=e.setTheme(r);if(o==="ansi")return jf(n,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(n.name))throw new ee(`Grammar state themes "${a.grammarState.themes}" do not contain highlight theme "${n.name}"`)}return Kf(t,i,n,s,a)}function Xf(...e){if(e.length===2)return sa(e[1]);let[t,a,r={}]=e,{lang:o="text",theme:n=t.getLoadedThemes()[0]}=r;if(oo(o)||no(n))throw new ee("Plain language does not have grammar state");if(o==="ansi")throw new ee("ANSI language does not have grammar state");let{theme:s,colorMap:i}=t.setTheme(n),l=t.getLanguage(o);return new Tt(lo(a,l,s,i,r).stateStack,l.name,s.name)}function Kf(e,t,a,r,o){let n=lo(e,t,a,r,o),s=new Tt(n.stateStack,t.name,a.name);return Va(n.tokens,s),n.tokens}function lo(e,t,a,r,o){let n=Na(a,o),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=o,l=Ga(e),u=o.grammarState?Df(o.grammarState,a.name)??Fa:o.grammarContextCode!=null?lo(o.grammarContextCode,t,a,r,{...o,grammarState:void 0,grammarContextCode:void 0}).stateStack:Fa,d=[],c=[];for(let f=0,p=l.length;f<p;f++){let[m,x]=l[f];if(m===""){d=[],c.push([]);continue}if(s>0&&m.length>=s){d=[],c.push([{content:m,offset:x,color:"",fontStyle:0}]);continue}let L,h,I;o.includeExplanation&&(L=t.tokenizeLine(m,u,i),h=L.tokens,I=0);let g=t.tokenizeLine2(m,u,i),C=g.tokens.length/2;for(let S=0;S<C;S++){let v=g.tokens[2*S],A=S+1<C?g.tokens[2*S+2]:m.length;if(v===A)continue;let P=g.tokens[2*S+1],D=tt(r[ct.getForeground(P)],n),b=ct.getFontStyle(P),E={content:m.substring(v,A),offset:x+v,color:D,fontStyle:b};if(o.includeExplanation){let M=[];if(o.includeExplanation!=="scopeName")for(let H of a.settings){let T;switch(typeof H.scope){case"string":T=H.scope.split(/,/).map(y=>y.trim());break;case"object":T=H.scope;break;default:continue}M.push({settings:H,selectors:T.map(y=>y.split(/ /))})}E.explanation=[];let $=0;for(;v+$<A;){let H=h[I],T=m.substring(H.startIndex,H.endIndex);$+=T.length,E.explanation.push({content:T,scopes:o.includeExplanation==="scopeName"?Qf(H.scopes):Jf(M,H.scopes)}),I+=1}}d.push(E)}c.push(d),d=[],u=g.ruleStack}return{tokens:c,stateStack:u}}function Qf(e){return e.map(t=>({scopeName:t}))}function Jf(e,t){let a=[];for(let r=0,o=t.length;r<o;r++){let n=t[r];a[r]={scopeName:n,themeMatches:Zf(e,n,t.slice(0,r))}}return a}function hi(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function Yf(e,t,a){if(!hi(e[e.length-1],t))return!1;let r=e.length-2,o=a.length-1;for(;r>=0&&o>=0;)hi(e[r],a[o])&&(r-=1),o-=1;return r===-1}function Zf(e,t,a){let r=[];for(let{selectors:o,settings:n}of e)for(let s of o)if(Yf(s,t,a)){r.push(n);break}return r}function vi(e,t,a){let r=Object.entries(a.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),o=r.map(l=>{let u=io(e,t,{...a,theme:l.theme}),d=sa(u),c=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:d,theme:c}}),n=ep(...o.map(l=>l.tokens)),s=n[0].map((l,u)=>l.map((d,c)=>{let f={content:d.content,variants:{},offset:d.offset};return"includeExplanation"in a&&a.includeExplanation&&(f.explanation=d.explanation),n.forEach((p,m)=>{let{content:x,explanation:L,offset:h,...I}=p[u][c];f.variants[r[m].color]=I}),f})),i=o[0].state?new Tt(Object.fromEntries(o.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),o[0].state.lang):void 0;return i&&Va(s,i),s}function ep(...e){let t=e.map(()=>[]),a=e.length;for(let r=0;r<e[0].length;r++){let o=e.map(l=>l[r]),n=t.map(()=>[]);t.forEach((l,u)=>l.push(n[u]));let s=o.map(()=>0),i=o.map(l=>l[0]);for(;i.every(l=>l);){let l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<a;u++){let d=i[u];d.content.length===l?(n[u].push(d),s[u]+=1,i[u]=o[u][s[u]]):(n[u].push({...d,content:d.content.slice(0,l)}),i[u]={...d,content:d.content.slice(l),offset:d.offset+l})}}}return t}function qa(e,t,a){let r,o,n,s,i,l;if("themes"in a){let{defaultColor:u="light",cssVariablePrefix:d="--shiki-",colorsRendering:c="css-vars"}=a,f=Object.entries(a.themes).filter(h=>h[1]).map(h=>({color:h[0],theme:h[1]})).sort((h,I)=>h.color===u?-1:I.color===u?1:0);if(f.length===0)throw new ee("`themes` option must not be empty");let p=vi(e,t,a);if(l=sa(p),u&&so!==u&&!f.find(h=>h.color===u))throw new ee(`\`themes\` option must contain the defaultColor key \`${u}\``);let m=f.map(h=>e.getTheme(h.theme)),x=f.map(h=>h.color);n=p.map(h=>h.map(I=>Bf(I,x,d,u,c))),l&&Va(n,l);let L=f.map(h=>Na(h.theme,a));o=gi(f,m,L,d,u,"fg",c),r=gi(f,m,L,d,u,"bg",c),s=`shiki-themes ${m.map(h=>h.name).join(" ")}`,i=u?void 0:[o,r].join(";")}else if("theme"in a){let u=Na(a.theme,a);n=io(e,t,a);let d=e.getTheme(a.theme);r=tt(d.bg,u),o=tt(d.fg,u),s=d.name,l=sa(n)}else throw new ee("Invalid options, either `theme` or `themes` must be provided");return{tokens:n,fg:o,bg:r,themeName:s,rootStyle:i,grammarState:l}}function gi(e,t,a,r,o,n,s){return e.map((i,l)=>{let u=tt(t[l][n],a[l])||"inherit",d=`${r+i.color}${n==="bg"?"-bg":""}:${u}`;if(l===0&&o){if(o===so&&e.length>1){let c=e.findIndex(x=>x.color==="light"),f=e.findIndex(x=>x.color==="dark");if(c===-1||f===-1)throw new ee('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');let p=tt(t[c][n],a[c])||"inherit",m=tt(t[f][n],a[f])||"inherit";return`light-dark(${p}, ${m});${d}`}return u}return s==="css-vars"?d:null}).filter(i=>!!i).join(";")}function Wa(e,t,a,r={meta:{},options:a,codeToHast:(o,n)=>Wa(e,o,n),codeToTokens:(o,n)=>qa(e,o,n)}){let o=t;for(let m of Ha(a))o=m.preprocess?.call(r,o,a)||o;let{tokens:n,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:d}=qa(e,o,a),{mergeWhitespaces:c=!0,mergeSameStyleTokens:f=!1}=a;c===!0?n=ap(n):c==="never"&&(n=rp(n)),f&&(n=op(n));let p={...r,get source(){return o}};for(let m of Ha(a))n=m.tokens?.call(p,n)||n;return tp(n,{...a,fg:s,bg:i,themeName:l,rootStyle:a.rootStyle===!1?!1:a.rootStyle??u},p,d)}function tp(e,t,a,r=sa(e)){let o=Ha(t),n=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(let[x,L]of Object.entries(t.meta||{}))x.startsWith("_")||(u[x]=L);let d={type:"element",tagName:"pre",properties:u,children:[],data:t.data},c={type:"element",tagName:"code",properties:{},children:n},f=[],p={...a,structure:i,addClassToHast:yi,get source(){return a.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return d},get code(){return c},get lines(){return f}};if(e.forEach((x,L)=>{L&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&n.push({type:"text",value:`
|
|
15
|
+
`}));let h={type:"element",tagName:"span",properties:{class:"line"},children:[]},I=0;for(let g of x){let C={type:"element",tagName:"span",properties:{...g.htmlAttrs},children:[{type:"text",value:g.content}]},S=to(g.htmlStyle||Ua(g));S&&(C.properties.style=S);for(let v of o)C=v?.span?.call(p,C,L+1,I,h,g)||C;i==="inline"?s.children.push(C):i==="classic"&&h.children.push(C),I+=g.content.length}if(i==="classic"){for(let g of o)h=g?.line?.call(p,h,L+1)||h;f.push(h),n.push(h)}else i==="inline"&&f.push(h)}),i==="classic"){for(let x of o)c=x?.code?.call(p,c)||c;d.children.push(c);for(let x of o)d=x?.pre?.call(p,d)||d;s.children.push(d)}else if(i==="inline"){let x=[],L={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(let g of s.children)g.type==="element"&&g.tagName==="br"?(x.push(L),L={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(g.type==="element"||g.type==="text")&&L.children.push(g);x.push(L);let I={type:"element",tagName:"code",properties:{},children:x};for(let g of o)I=g?.code?.call(p,I)||I;s.children=[];for(let g=0;g<I.children.length;g++){g>0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});let C=I.children[g];C.type==="element"&&s.children.push(...C.children)}}let m=s;for(let x of o)m=x?.root?.call(p,m)||m;return r&&Va(m,r),m}function ap(e){return e.map(t=>{let a=[],r="",o;return t.forEach((n,s)=>{let l=!(n.fontStyle&&(n.fontStyle&ge.Underline||n.fontStyle&ge.Strikethrough));l&&n.content.match(/^\s+$/)&&t[s+1]?(o===void 0&&(o=n.offset),r+=n.content):r?(l?a.push({...n,offset:o,content:r+n.content}):a.push({content:r,offset:o},n),o=void 0,r=""):a.push(n)}),a})}function rp(e){return e.map(t=>t.flatMap(a=>{if(a.content.match(/^\s+$/))return a;let r=a.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return a;let[,o,n,s]=r;if(!o&&!s)return a;let i=[{...a,offset:a.offset+o.length,content:n}];return o&&i.unshift({content:o,offset:a.offset}),s&&i.push({content:s,offset:a.offset+o.length+n.length}),i}))}function op(e){return e.map(t=>{let a=[];for(let r of t){if(a.length===0){a.push({...r});continue}let o=a[a.length-1],n=to(o.htmlStyle||Ua(o)),s=to(r.htmlStyle||Ua(r)),i=o.fontStyle&&(o.fontStyle&ge.Underline||o.fontStyle&ge.Strikethrough),l=r.fontStyle&&(r.fontStyle&ge.Underline||r.fontStyle&ge.Strikethrough);!i&&!l&&n===s?o.content+=r.content:a.push({...r})}return a})}var np=Yr;function sp(e,t,a){let r={meta:{},options:a,codeToHast:(n,s)=>Wa(e,n,s),codeToTokens:(n,s)=>qa(e,n,s)},o=np(Wa(e,t,a,r));for(let n of Ha(a))o=n.postprocess?.call(r,o,a)||o;return o}var wi={light:"#333333",dark:"#bbbbbb"},xi={light:"#fffffe",dark:"#1e1e1e"},Ii="__shiki_resolved";function uo(e){if(e?.[Ii])return e;let t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:a,fg:r}=t;if(!a||!r){let i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(a=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!a&&t?.colors?.["editor.background"]&&(a=t.colors["editor.background"]),r||(r=t.type==="light"?wi.light:wi.dark),a||(a=t.type==="light"?xi.light:xi.dark),t.fg=r,t.bg=a}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let o=0,n=new Map;function s(i){if(n.has(i))return n.get(i);o+=1;let l=`#${o.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(n.set(i,l),l)}t.settings=t.settings.map(i=>{let l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;let d={...i,settings:{...i.settings}};if(l){let c=s(i.settings.foreground);t.colorReplacements[c]=i.settings.foreground,d.settings.foreground=c}if(u){let c=s(i.settings.background);t.colorReplacements[c]=i.settings.background,d.settings.background=c}return d});for(let i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){let l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Ii,{enumerable:!1,writable:!1,value:!0}),t}async function Pi(e){return Array.from(new Set((await Promise.all(e.filter(t=>!Ci(t)).map(async t=>await Li(t).then(a=>Array.isArray(a)?a:[a])))).flat()))}async function Ai(e){return(await Promise.all(e.map(async a=>Si(a)?null:uo(await Li(a))))).filter(a=>!!a)}var eo=3,ip=!1;function lp(e,t=3){if(eo&&!(typeof eo=="number"&&t>eo)){if(ip)throw new Error(`[SHIKI DEPRECATE]: ${e}`);console.trace(`[SHIKI DEPRECATE]: ${e}`)}}var et=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function Ri(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 et(`Circular alias \`${Array.from(a).join(" -> ")} -> ${e}\``);a.add(e)}}return e}var ao=class extends Xs{constructor(t,a,r,o={}){super(t),this._resolver=t,this._themes=a,this._langs=r,this._alias=o,this._themes.map(n=>this.loadTheme(n)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){let a=uo(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=Ri(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;let a=new Set([...this._langMap.values()].filter(n=>n.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);let r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);let o=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(o.name=t.name,this._resolvedGrammars.set(t.name,o),t.aliases&&t.aliases.forEach(n=>{this._alias[n]=t.name}),this._loadedLanguagesCache=null,a.size)for(let n of a)this._resolvedGrammars.delete(n.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(n.scopeName),this._syncRegistry?._grammars?.delete(n.scopeName),this.loadLanguage(this._langMap.get(n.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(let o of t)this.resolveEmbeddedLanguages(o);let a=Array.from(this._langGraph.entries()),r=a.filter(([o,n])=>!n);if(r.length){let o=a.filter(([n,s])=>s?(s.embeddedLanguages||s.embeddedLangs)?.some(l=>r.map(([u])=>u).includes(l)):!1).filter(n=>!r.includes(n));throw new et(`Missing languages ${r.map(([n])=>`\`${n}\``).join(", ")}, required by ${o.map(([n])=>`\`${n}\``).join(", ")}`)}for(let[o,n]of a)this._resolver.addLanguage(n);for(let[o,n]of a)this.loadLanguage(n)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);let a=t.embeddedLanguages??t.embeddedLangs;if(a)for(let r of a)this._langGraph.set(r,this._langMap.get(r))}},ro=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,a){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},a.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(a=>{this._langs.set(a,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(a=>{this._injections.get(a)||this._injections.set(a,[]),this._injections.get(a).push(t.scopeName)})}getInjections(t){let a=t.split("."),r=[];for(let o=1;o<=a.length;o++){let n=a.slice(0,o).join(".");r=[...r,...this._injections.get(n)||[]]}return r}},na=0;function up(e){na+=1,e.warnings!==!1&&na>=10&&na%10===0&&console.warn(`[Shiki] ${na} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new et("`engine` option is required for synchronous mode");let a=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(uo),o=new ro(e.engine,a),n=new ao(o,r,a,e.langAlias),s;function i(g){return Ri(g,e.langAlias)}function l(g){h();let C=n.getGrammar(typeof g=="string"?g:g.name);if(!C)throw new et(`Language \`${g}\` not found, you may need to load it first`);return C}function u(g){if(g==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};h();let C=n.getTheme(g);if(!C)throw new et(`Theme \`${g}\` not found, you may need to load it first`);return C}function d(g){h();let C=u(g);s!==g&&(n.setTheme(C),s=g);let S=n.getColorMap();return{theme:C,colorMap:S}}function c(){return h(),n.getLoadedThemes()}function f(){return h(),n.getLoadedLanguages()}function p(...g){h(),n.loadLanguages(g.flat(1))}async function m(...g){return p(await Pi(g))}function x(...g){h();for(let C of g.flat(1))n.loadTheme(C)}async function L(...g){return h(),x(await Ai(g))}function h(){if(t)throw new et("Shiki instance has been disposed")}function I(){t||(t=!0,n.dispose(),na-=1)}return{setTheme:d,getTheme:u,getLanguage:l,getLoadedThemes:c,getLoadedLanguages:f,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:p,loadTheme:L,loadThemeSync:x,dispose:I,[Symbol.dispose]:I}}async function dp(e){e.engine||lp("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");let[t,a,r]=await Promise.all([Ai(e.themes||[]),Pi(e.langs||[]),e.engine]);return up({...e,themes:t,langs:a,engine:r})}async function cp(e){let t=await dp(e);return{getLastGrammarState:(...a)=>Xf(t,...a),codeToTokensBase:(a,r)=>io(t,a,r),codeToTokensWithThemes:(a,r)=>vi(t,a,r),codeToTokens:(a,r)=>qa(t,a,r),codeToHast:(a,r)=>Wa(t,a,r),codeToHtml:(a,r)=>sp(t,a,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function Mi(e){let t=e.langs,a=e.themes,r=e.engine;async function o(n){function s(c){if(typeof c=="string"){if(c=n.langAlias?.[c]||c,Ci(c))return[];let f=t[c];if(!f)throw new ee(`Language \`${c}\` is not included in this bundle. You may want to load it from external source.`);return f}return c}function i(c){if(Si(c))return"none";if(typeof c=="string"){let f=a[c];if(!f)throw new ee(`Theme \`${c}\` is not included in this bundle. You may want to load it from external source.`);return f}return c}let l=(n.themes??[]).map(c=>i(c)),u=(n.langs??[]).map(c=>s(c)),d=await cp({engine:n.engine??r(),...n,themes:l,langs:u});return{...d,loadLanguage(...c){return d.loadLanguage(...c.map(s))},loadTheme(...c){return d.loadTheme(...c.map(i))},getBundledLanguages(){return t},getBundledThemes(){return a}}}return o}function fp(e){let t;async function a(r={}){if(t){let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}else{t=e({...r,themes:[],langs:[]});let o=await t;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}}return a}function Fi(e,t){let a=fp(e);async function r(o,n){let s=await a({langs:[n.lang],themes:"theme"in n?[n.theme]:Object.values(n.themes)}),i=await t?.guessEmbeddedLanguages?.(o,n.lang,s);return i&&await s.loadLanguage(...i),s}return{getSingletonHighlighter(o){return a(o)},async codeToHtml(o,n){return(await r(o,n)).codeToHtml(o,n)},async codeToHast(o,n){return(await r(o,n)).codeToHast(o,n)},async codeToTokens(o,n){return(await r(o,n)).codeToTokens(o,n)},async codeToTokensBase(o,n){return(await r(o,n)).codeToTokensBase(o,n)},async codeToTokensWithThemes(o,n){return(await r(o,n)).codeToTokensWithThemes(o,n)},async getLastGrammarState(o,n){return(await a({langs:[n.lang],themes:[n.theme]})).getLastGrammarState(o,n)}}}var co=[{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"))}],Bi=Object.fromEntries(co.map(e=>[e.id,e.import])),Ei=Object.fromEntries(co.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),ia={...Bi,...Ei};var pp=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>import("../andromeeda-HAPOYWX3.js"))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>import("../aurora-x-R6WAWEBC.js"))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>import("../ayu-dark-KMD4YO7F.js"))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>import("../ayu-light-2ATPDILG.js"))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>import("../ayu-mirage-LJ7PG5AM.js"))},{id:"catppuccin-frappe",displayName:"Catppuccin Frapp\xE9",type:"dark",import:(()=>import("../catppuccin-frappe-Z4Y2POK6.js"))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>import("../catppuccin-latte-4TQUIKX4.js"))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>import("../catppuccin-macchiato-B7YYPERT.js"))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>import("../catppuccin-mocha-KX33VXKA.js"))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>import("../dark-plus-LNHXUR7U.js"))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>import("../dracula-T2CMBBQ5.js"))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>import("../dracula-soft-SMFRNKX2.js"))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>import("../everforest-dark-DBZHIUAO.js"))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>import("../everforest-light-TDAGYJUK.js"))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>import("../github-dark-3E25TTAN.js"))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>import("../github-dark-default-KCBFVSS5.js"))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>import("../github-dark-dimmed-WRCBXEVS.js"))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>import("../github-dark-high-contrast-ET7SAHAV.js"))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>import("../github-light-6FNTZH5H.js"))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>import("../github-light-default-GGTAKNM7.js"))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>import("../github-light-high-contrast-LHYKPR5E.js"))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>import("../gruvbox-dark-hard-IQWZCHF7.js"))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>import("../gruvbox-dark-medium-ARPWF4FS.js"))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>import("../gruvbox-dark-soft-ODS6FPID.js"))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>import("../gruvbox-light-hard-KFA5YFDW.js"))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>import("../gruvbox-light-medium-MMET4L3Y.js"))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>import("../gruvbox-light-soft-DBZDERMK.js"))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>import("../horizon-FSOMPXNP.js"))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>import("../houston-FAQBCORN.js"))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>import("../kanagawa-dragon-JNDVF5RJ.js"))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>import("../kanagawa-lotus-S7JK6TQ6.js"))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>import("../kanagawa-wave-QJJIMVEV.js"))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>import("../laserwave-YFP3EJVX.js"))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>import("../light-plus-NGDHCPUZ.js"))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>import("../material-theme-H2BHKUKX.js"))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>import("../material-theme-darker-VENCGWTB.js"))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>import("../material-theme-lighter-SDMLS22W.js"))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>import("../material-theme-ocean-UHDBRLVF.js"))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>import("../material-theme-palenight-3TB2BEET.js"))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>import("../min-dark-CQ5WKNT7.js"))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>import("../min-light-LZRD4NPR.js"))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>import("../monokai-WHRY6275.js"))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>import("../night-owl-7PNEW2JB.js"))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>import("../night-owl-light-GJUYOOJR.js"))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>import("../nord-EVGUMUX2.js"))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>import("../one-dark-pro-PMTR3SA7.js"))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>import("../one-light-O7WH4N5X.js"))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>import("../plastic-FBVUW6NJ.js"))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>import("../poimandres-WBB7GZAD.js"))},{id:"red",displayName:"Red",type:"dark",import:(()=>import("../red-7KAMONOP.js"))},{id:"rose-pine",displayName:"Ros\xE9 Pine",type:"dark",import:(()=>import("../rose-pine-F2G5IHZD.js"))},{id:"rose-pine-dawn",displayName:"Ros\xE9 Pine Dawn",type:"light",import:(()=>import("../rose-pine-dawn-ALZ7XGH2.js"))},{id:"rose-pine-moon",displayName:"Ros\xE9 Pine Moon",type:"dark",import:(()=>import("../rose-pine-moon-D3K4SWUL.js"))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>import("../slack-dark-YFPJODWS.js"))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>import("../slack-ochin-H67AWZOI.js"))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>import("../snazzy-light-OUVS63VK.js"))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>import("../solarized-dark-2RCAVEXJ.js"))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>import("../solarized-light-XFSENHTC.js"))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>import("../synthwave-84-5XXB3K6S.js"))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>import("../tokyo-night-CHJCCBJH.js"))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>import("../vesper-Y5GIEAN4.js"))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>import("../vitesse-black-7TI33KHX.js"))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>import("../vitesse-dark-FOB25MRB.js"))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>import("../vitesse-light-4WCNCTCO.js"))}],Di=Object.fromEntries(pp.map(e=>[e.id,e.import]));var la=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function mp(){return 2147483648}function hp(){return typeof performance<"u"?performance.now():Date.now()}var gp=(e,t)=>e+(t-e%t)%t;async function wp(e){let t,a,r={};function o(p){a=p,r.HEAPU8=new Uint8Array(p),r.HEAPU32=new Uint32Array(p)}function n(p,m,x){r.HEAPU8.copyWithin(p,m,m+x)}function s(p){try{return t.grow(p-a.byteLength+65535>>>16),o(t.buffer),1}catch{}}function i(p){let m=r.HEAPU8.length;p=p>>>0;let x=mp();if(p>x)return!1;for(let L=1;L<=4;L*=2){let h=m*(1+.2/L);h=Math.min(h,p+100663296);let I=Math.min(x,gp(Math.max(p,h),65536));if(s(I))return!0}return!1}let l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(p,m,x=1024){let L=m+x,h=m;for(;p[h]&&!(h>=L);)++h;if(h-m>16&&p.buffer&&l)return l.decode(p.subarray(m,h));let I="";for(;m<h;){let g=p[m++];if(!(g&128)){I+=String.fromCharCode(g);continue}let C=p[m++]&63;if((g&224)===192){I+=String.fromCharCode((g&31)<<6|C);continue}let S=p[m++]&63;if((g&240)===224?g=(g&15)<<12|C<<6|S:g=(g&7)<<18|C<<12|S<<6|p[m++]&63,g<65536)I+=String.fromCharCode(g);else{let v=g-65536;I+=String.fromCharCode(55296|v>>10,56320|v&1023)}}return I}function d(p,m){return p?u(r.HEAPU8,p,m):""}let c={emscripten_get_now:hp,emscripten_memcpy_big:n,emscripten_resize_heap:i,fd_write:()=>0};async function f(){let m=await e({env:c,wasi_snapshot_preview1:c});t=m.memory,o(t.buffer),Object.assign(r,m),r.UTF8ToString=d}return await f(),r}var xp=Object.defineProperty,Ip=(e,t,a)=>t in e?xp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,ie=(e,t,a)=>Ip(e,typeof t!="symbol"?t+"":t,a),ce=null;function Lp(e){throw new la(e.UTF8ToString(e.getLastOnigError()))}var ja=class e{constructor(t){ie(this,"utf16Length"),ie(this,"utf8Length"),ie(this,"utf16Value"),ie(this,"utf8Value"),ie(this,"utf16OffsetToUtf8"),ie(this,"utf8OffsetToUtf16");let a=t.length,r=e._utf8ByteLength(t),o=r!==a,n=o?new Uint32Array(a+1):null;o&&(n[a]=r);let s=o?new Uint32Array(r+1):null;o&&(s[r]=a);let i=new Uint8Array(r),l=0;for(let u=0;u<a;u++){let d=t.charCodeAt(u),c=d,f=!1;if(d>=55296&&d<=56319&&u+1<a){let p=t.charCodeAt(u+1);p>=56320&&p<=57343&&(c=(d-55296<<10)+65536|p-56320,f=!0)}o&&(n[u]=l,f&&(n[u+1]=l),c<=127?s[l+0]=u:c<=2047?(s[l+0]=u,s[l+1]=u):c<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),c<=127?i[l++]=c:c<=2047?(i[l++]=192|(c&1984)>>>6,i[l++]=128|(c&63)>>>0):c<=65535?(i[l++]=224|(c&61440)>>>12,i[l++]=128|(c&4032)>>>6,i[l++]=128|(c&63)>>>0):(i[l++]=240|(c&1835008)>>>18,i[l++]=128|(c&258048)>>>12,i[l++]=128|(c&4032)>>>6,i[l++]=128|(c&63)>>>0),f&&u++}this.utf16Length=a,this.utf8Length=r,this.utf16Value=t,this.utf8Value=i,this.utf16OffsetToUtf8=n,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let a=0;for(let r=0,o=t.length;r<o;r++){let n=t.charCodeAt(r),s=n,i=!1;if(n>=55296&&n<=56319&&r+1<o){let l=t.charCodeAt(r+1);l>=56320&&l<=57343&&(s=(n-55296<<10)+65536|l-56320,i=!0)}s<=127?a+=1:s<=2047?a+=2:s<=65535?a+=3:a+=4,i&&r++}return a}createString(t){let a=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,a),a}},$a=class He{constructor(t){if(ie(this,"id",++He.LAST_ID),ie(this,"_onigBinding"),ie(this,"content"),ie(this,"utf16Length"),ie(this,"utf8Length"),ie(this,"utf16OffsetToUtf8"),ie(this,"utf8OffsetToUtf16"),ie(this,"ptr"),!ce)throw new la("Must invoke loadWasm first.");this._onigBinding=ce,this.content=t;let a=new ja(t);this.utf16Length=a.utf16Length,this.utf8Length=a.utf8Length,this.utf16OffsetToUtf8=a.utf16OffsetToUtf8,this.utf8OffsetToUtf16=a.utf8OffsetToUtf16,this.utf8Length<1e4&&!He._sharedPtrInUse?(He._sharedPtr||(He._sharedPtr=ce.omalloc(1e4)),He._sharedPtrInUse=!0,ce.HEAPU8.set(a.utf8Value,He._sharedPtr),this.ptr=He._sharedPtr):this.ptr=a.createString(ce)}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===He._sharedPtr?He._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};ie($a,"LAST_ID",0);ie($a,"_sharedPtr",0);ie($a,"_sharedPtrInUse",!1);var _i=$a,po=class{constructor(t){if(ie(this,"_onigBinding"),ie(this,"_ptr"),!ce)throw new la("Must invoke loadWasm first.");let a=[],r=[];for(let i=0,l=t.length;i<l;i++){let u=new ja(t[i]);a[i]=u.createString(ce),r[i]=u.utf8Length}let o=ce.omalloc(4*t.length);ce.HEAPU32.set(a,o/4);let n=ce.omalloc(4*t.length);ce.HEAPU32.set(r,n/4);let s=ce.createOnigScanner(o,n,t.length);for(let i=0,l=t.length;i<l;i++)ce.ofree(a[i]);ce.ofree(n),ce.ofree(o),s===0&&Lp(ce),this._onigBinding=ce,this._ptr=s}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,a,r){let o=0;if(typeof r=="number"&&(o=r),typeof t=="string"){t=new _i(t);let n=this._findNextMatchSync(t,a,!1,o);return t.dispose(),n}return this._findNextMatchSync(t,a,!1,o)}_findNextMatchSync(t,a,r,o){let n=this._onigBinding,s=n.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(a),o);if(s===0)return null;let i=n.HEAPU32,l=s/4,u=i[l++],d=i[l++],c=[];for(let f=0;f<d;f++){let p=t.convertUtf8OffsetToUtf16(i[l++]),m=t.convertUtf8OffsetToUtf16(i[l++]);c[f]={start:p,end:m,length:m-p}}return{index:u,captureIndices:c}}};function Cp(e){return typeof e.instantiator=="function"}function Sp(e){return typeof e.default=="function"}function yp(e){return typeof e.data<"u"}function bp(e){return typeof Response<"u"&&e instanceof Response}function kp(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 za;function Tp(e){if(za)return za;async function t(){ce=await wp(async a=>{let r=e;return r=await r,typeof r=="function"&&(r=await r(a)),typeof r=="function"&&(r=await r(a)),Cp(r)?r=await r.instantiator(a):Sp(r)?r=await r.default(a):(yp(r)&&(r=r.data),bp(r)?typeof WebAssembly.instantiateStreaming=="function"?r=await vp(r)(a):r=await Pp(r)(a):kp(r)?r=await fo(r)(a):r instanceof WebAssembly.Module?r=await fo(r)(a):"default"in r&&r.default instanceof WebAssembly.Module&&(r=await fo(r.default)(a))),"instance"in r&&(r=r.instance),"exports"in r&&(r=r.exports),r})}return za=t(),za}function fo(e){return t=>WebAssembly.instantiate(e,t)}function vp(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Pp(e){return async t=>{let a=await e.arrayBuffer();return WebAssembly.instantiate(a,t)}}async function Oi(e){return e&&await Tp(e),{createScanner(t){return new po(t.map(a=>typeof a=="string"?a:a.source))},createString(t){return new _i(t)}}}var Xa=Mi({langs:ia,themes:Di,engine:()=>Oi(import("../wasm-EOPKAILK.js"))}),{codeToHtml:Ap,codeToHast:Rp,codeToTokens:Mp,codeToTokensBase:Fp,codeToTokensWithThemes:Bp,getSingletonHighlighter:Ep,getLastGrammarState:Dp}=Fi(Xa,{guessEmbeddedLanguages:bi});var Ni=new Set(Object.keys(ia)),mo=new Map,ho=new Map,vt=new Map,_p=(e,t)=>`${e}-${t[0]}-${t[1]}`,Op=(e,t,a)=>{let r=e.slice(0,100),o=e.length>100?e.slice(-100):"";return`${t}:${a[0]}:${a[1]}:${e.length}:${r}:${o}`},Np=(e,t)=>{let a=_p(e,t);if(mo.has(a))return mo.get(a);let r=Xa({themes:t,langs:[e]});return mo.set(a,r),r};function Up(e={}){var t;let a=(t=e.themes)!=null?t:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(r){return Ni.has(r)},getSupportedLanguages(){return Array.from(Ni)},getThemes(){return a},highlight({code:r,language:o,themes:n},s){let i=Op(r,o,n);return ho.has(i)?ho.get(i):(s&&(vt.has(i)||vt.set(i,new Set),vt.get(i).add(s)),Np(o,n).then(l=>{let u=l.getLoadedLanguages().includes(o)?o:"text",d=l.codeToTokens(r,{lang:u,themes:{light:n[0],dark:n[1]}});ho.set(i,d);let c=vt.get(i);if(c){for(let f of c)f(d);vt.delete(i)}}).catch(l=>{console.error("[Streamdown Code] Failed to highlight code:",l),vt.delete(i)}),null)}}}var Ui=Up();import{memo as Gp}from"react";import{useEffect as Hp,useRef as Ka,useState as qp}from"react";var Wp=5,Hi=400;function qi(e,t,a={}){let{msPerChar:r=Wp}=a,[o,n]=qp(t?"":e),s=Ka(e),i=Ka(t?0:e.length),l=Ka(0),u=Ka(null);return(e.length<i.current||!e.startsWith(o.slice(0,i.current)))&&(i.current=t?0:e.length),s.current=e,Hp(()=>{if(!t){u.current!==null&&(cancelAnimationFrame(u.current),u.current=null),i.current=e.length,n(e);return}if(s.current.length-i.current>Hi&&(i.current=s.current.length-Hi),u.current!==null)return;let c=f=>{let p=s.current;if(i.current>=p.length){u.current=null;return}l.current===0&&(l.current=f);let m=f-l.current;if(m>=r){let x=Math.min(Math.floor(m/r),p.length-i.current);i.current+=x,n(p.slice(0,i.current)),l.current=f}u.current=requestAnimationFrame(c)};return u.current=requestAnimationFrame(c),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,r]),o}import{jsx as Qa}from"react/jsx-runtime";var go=({className:e,from:t,children:a,...r})=>Qa("div",{className:k("ww-message ww:group ww:flex ww:w-full",t==="user"?"ww-message-user is-user ww:ml-auto ww:flex-col ww:items-end ww:[max-width:var(--ww-msg-max-width,80%)]":"ww-message-assistant is-assistant ww:flex-col",e),...r,children:Qa("div",{className:k("ww:flex ww:min-w-0 ww:flex-col ww:gap-2","ww:w-full"),children:a})}),wo=({children:e,className:t,...a})=>Qa("div",{className:k("ww-bubble ww:flex ww:w-fit ww:min-w-0 ww:max-w-full ww:flex-col ww:gap-2 ww:overflow-hidden","ww:[font-size:var(--ww-font-size,1rem)] ww:[line-height:var(--ww-line-height,1.5)]","ww:group-[.is-user]:ml-auto ww:group-[.is-user]:bg-user-bubble ww:group-[.is-user]:[color:var(--ww-color-user-bubble-text)] ww:group-[.is-user]:[border-radius:var(--ww-msg-radius,8px)] ww:group-[.is-user]:[padding:var(--ww-msg-pad-y,12px)_var(--ww-msg-pad-x,16px)]","ww:group-[.is-assistant]:text-foreground",t),...a,children:e}),Vp={cjk:Nr,code:Ui},zp={cjk:Nr},jp={enabled:!1};function $p({className:e,linkSafety:t,isStreaming:a,children:r,...o}){let s=qi(typeof r=="string"?r:"",!!a),i=typeof r=="string"?s:r;return Qa(Ft,{className:k("ww:size-full ww:[&>*:first-child]:mt-0 ww:[&>*:last-child]:mb-0",e),linkSafety:t??jp,plugins:a?zp:Vp,...o,children:i})}var Ja=Gp($p,(e,t)=>e.children===t.children&&e.isStreaming===t.isStreaming);Ja.displayName="MessageResponse";import{jsx as Wi,jsxs as Xp}from"react/jsx-runtime";function Gi(e){return e.type==="text"||e.type==="reasoning"||e.type==="file"||"toolCallId"in e}function Vi(e){return e.parts.some(Gi)}function zi(e,t,a){if(t!=="submitted"&&t!=="streaming")return!1;let r=e[e.length-1];return!r||r.role!=="assistant"?!0:!r.parts.some(n=>!(!Gi(n)||a?.ignoreToolParts&&"toolCallId"in n||a?.ignoreReasoningParts&&n.type==="reasoning"))}function ji({className:e,...t}){let{t:a}=V();return Xp("div",{"aria-live":"polite",className:k("ww:mb-4 ww:flex ww:w-full ww:items-center ww:gap-2 ww:text-sm ww:text-muted-foreground",e),style:{animation:"ww-fade-in 0.2s ease-out"},...t,children:[Wi(Gt,{className:"ww:size-4 ww:shrink-0"}),Wi(Be,{duration:1.6,children:a.workingIndicator.default})]})}import{jsx as ua,jsxs as Kp}from"react/jsx-runtime";function $i({icon:e,title:t,description:a,suggestions:r,onSuggestionSelect:o}){return Kp("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&&ua("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}),ua("h2",{className:"ww:text-lg ww:font-semibold ww:text-foreground",children:t}),a&&ua("p",{className:"ww:mt-1 ww:text-sm ww:text-muted-foreground ww:max-w-sm",children:a}),r&&r.length>0&&ua("div",{className:"ww:mt-6 ww:w-full ww:max-w-md ww:flex ww:flex-col ww:gap-2",children:r.map((n,s)=>ua("button",{type:"button",onClick:()=>o?.(n),className:k("ww:w-full ww:text-left ww:rounded-xl ww:border ww:border-border ww:bg-background ww:px-4 ww:py-3 ww:text-sm","ww:text-foreground ww:hover:bg-accent ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})]})}import{Component as Qp}from"react";import{jsx as xo,jsxs as Yp}from"react/jsx-runtime";function Jp({onRetry:e}){let{t}=V();return Yp("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:[xo("span",{children:t.widgetErrorBoundary.failedToLoad}),xo("button",{type:"button",onClick:e,className:"ww:text-xs ww:font-medium ww:text-primary ww:hover:underline",children:t.widgetErrorBoundary.retry})]})}var Ya=class extends Qp{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(t){console.warn("[Waniwani] Widget failed to render:",t.message)}render(){return this.state.hasError?xo(Jp,{onRetry:()=>this.setState({hasError:!1})}):this.props.children}};import{Fragment as Zp,jsx as J,jsxs as at}from"react/jsx-runtime";function Io(e){return e?e.replace(/[-_]/g," ").replace(/^\w/,t=>t.toUpperCase()):"Tool"}function Xi(e){return e&&/search|find|lookup|query|web|browse|google/i.test(e)?Ut:nt}function Ki({messages:e,status:t,welcomeMessage:a,welcome:r,onSuggestionSelect:o,resourceEndpoint:n,chatSessionId:s,isDark:i,onFollowUp:l,onCallTool:u,onWidgetDisplayModeChange:d,fullscreenToolCallId:c,debug:f,showToolCalls:p=!0,toolDefinitions:m,messageClassNames:x}){let{t:L}=V(),h=e[e.length-1],I=e.length>0,g=c!=null,C=!g&&zi(e,t,{ignoreToolParts:p===!1,ignoreReasoningParts:p===!1});return at(Zp,{children:[!g&&(!I&&r?J($i,{...r,onSuggestionSelect:o}):a&&J(go,{from:"assistant",children:J(wo,{children:J(Ja,{children:a})})})),e.map(S=>{let v=S.parts.filter(T=>T.type==="text"),A=S.parts.filter(T=>T.type==="reasoning"),P=S.parts.filter(T=>T.type==="file"),D=S.parts.filter(T=>"toolCallId"in T),b=S.parts.filter(T=>T.type==="reasoning"||"toolCallId"in T),E=S===h&&S.role==="assistant",M=v.length>0,$=g?D.some(T=>T.toolCallId===c):!1,H=p!==!1&&!$&&b.length>=2;return g&&!$?J("div",{style:{display:"none"}},S.id):S.role==="assistant"&&!Vi(S)?J("div",{style:{display:"none"}},S.id):p===!1&&S.role==="assistant"&&!M&&P.length===0&&D.every(T=>{let y="output"in T?T.output:void 0;return y===void 0||!n||!Vt(T.toolName,y,m)})?J("div",{style:{display:"none"}},S.id):at(go,{from:S.role,className:x?.message,children:[p!==!1&&!$&&!H&&A.map((T,y)=>at($t,{isStreaming:T.state==="streaming",children:[J(Xt,{}),J(Kt,{children:T.text})]},`reasoning-${S.id}-${y}`)),H&&(()=>{let T=b[b.length-1],y=T.type==="reasoning"?{icon:Ge,label:L.reasoning.thinking}:{icon:Xi(T.toolName),label:T.title??Io(T.toolName)};return at(ns,{isWorking:E&&(t==="streaming"||t==="submitted"),activeStep:y,children:[J(ss,{workingLabel:L.chainOfThought.working,label:L.chainOfThought.done}),J(is,{children:b.map((F,Me)=>{let be=Me===b.length-1;if(F.type==="reasoning")return J(us,{isStreaming:F.state==="streaming",isLast:be,children:F.text},`reasoning-${S.id}-${Me}`);let q=F.title??Io(F.toolName),xe=Xi(F.toolName);if(p==="titles-only")return J(Dr,{icon:xe,title:q,state:F.state,isLast:be},F.toolCallId);let fe="output"in F?F.output:void 0;return at(Dr,{icon:xe,title:q,state:F.state,isLast:be,children:[J(kr,{input:F.input,debug:f}),fe!==void 0&&J(Tr,{output:fe,errorText:"errorText"in F?F.errorText:void 0,debug:f})]},F.toolCallId)})})]})})(),p!==!1&&!$&&!H&&D.length===1&&(()=>{let T=D[0],y=T.title??Io(T.toolName);if(p==="titles-only")return J(vn,{title:y,state:T.state});let F="output"in T?T.output:void 0;return at(kn,{children:[J(Tn,{title:y,state:T.state}),at(Pn,{children:[J(kr,{input:T.input,debug:f}),F!==void 0&&J(Tr,{output:F,errorText:"errorText"in T?T.errorText:void 0,debug:f})]})]})})(),D.map(T=>{let y="output"in T?T.output:void 0,F=Vt(T.toolName,y,m),Me=Mn(T.toolName,y,m),be=T.toolCallId===c;return F&&n&&y!==void 0?J("div",{style:be?{position:"absolute",inset:0,zIndex:10,display:"flex",flexDirection:"column",overflow:"hidden",background:"var(--ww-color-background)"}:void 0,children:F&&n&&y!==void 0&&J(Ya,{children:J(Pr,{isFullscreen:be,resourceUri:F,toolInput:T.input??{},toolResult:{content:y.content,structuredContent:y.structuredContent,_meta:y._meta},resourceEndpoint:n,chatSessionId:s,isDark:i,autoHeight:Me,toolDefinitions:m,onFollowUp:l,onCallTool:u,onDisplayModeChange:d?q=>d(q,{toolCallId:T.toolCallId,resourceUri:F,toolInput:T.input??{},toolResult:{content:y.content,structuredContent:y.structuredContent,_meta:y._meta},autoHeight:Me}):void 0})})},T.toolCallId):null}),!$&&J("div",{children:at(wo,{className:k(S.role==="user"?x?.userBubble:x?.assistantBubble),children:[P.length>0&&J(Zn,{files:P}),M?v.map((T,y)=>{let F=E&&t==="streaming"&&y===v.length-1;return J(Ja,{isStreaming:F,children:T.type==="text"?T.text:""},`${S.id}-${y}`)}):null]})})]},S.id)}),C&&J(ji,{})]})}import{jsx as Qi,jsxs as am}from"react/jsx-runtime";var em="https://app.waniwani.ai/assets/waniwani-logo.svg",tm="https://waniwani.ai";function Ji(){let{t:e}=V();return am("a",{href:tm,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:em,alt:"Waniwani",width:72,height:10,"data-waniwani-logo":"",className:"ww:h-2.5 ww:w-auto"})]})}import{jsx as Za}from"react/jsx-runtime";function Yi({suggestions:e,isLoading:t,onSelect:a,className:r,...o}){return e.length===0&&!t?null:Za("div",{className:k("ww:px-4 ww:py-2",r),...o,children:Za("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl ww:flex ww:flex-wrap ww:gap-2",children:t?[0,1,2].map(n=>Za("div",{className:"ww:h-8 ww:rounded-full ww:bg-accent ww:animate-pulse",style:{width:`${60+n*20}px`}},n)):e.map((n,s)=>Za("button",{type:"button",onClick:()=>a(n),className:k("ww:rounded-full ww:border ww:border-border ww:bg-accent ww:px-3.5 ww:py-1.5 ww:text-sm","ww:text-foreground ww:hover:bg-border ww:hover:border-primary/30","ww:transition-all ww:duration-200 ww:ease-out ww:cursor-pointer","ww:animate-[ww-fade-in_0.2s_ease-out_both]"),style:{animationDelay:`${s*50}ms`},children:n},n))})})}import{useEffect as rm,useRef as om,useState as nm}from"react";import{jsx as te,jsxs as pt}from"react/jsx-runtime";var Zi=20;function sm({label:e}){return pt("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 im({label:e}){return pt("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 lm({label:e}){return pt("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 el({threads:e,activeThreadId:t,onNewThread:a,onSelectThread:r,onDeleteThread:o}){let{locale:n,t:s}=V(),[i,l]=nm(!1),u=om(null);rm(()=>{if(!i)return;let f=p=>{let m=u.current;m&&(p.composedPath().includes(m)||l(!1))};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[i]);let d=e.slice(0,Zi),c=Math.max(0,e.length-Zi);return pt("div",{ref:u,className:"ww:relative ww:flex ww:items-center ww:gap-1",children:[te("button",{type:"button",onClick:a,title:s.threadMenu.newChat,"aria-label":s.threadMenu.newChat,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:te(sm,{label:s.threadMenu.newChat})}),te("button",{type:"button",onClick:()=>l(f=>!f),title:s.threadMenu.threadHistory,"aria-label":s.threadMenu.threadHistory,"aria-expanded":i,className:"ww:p-1.5 ww:rounded-md ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/5 ww:transition-colors ww:cursor-pointer",children:te(im,{label:s.threadMenu.threadHistory})}),i&&pt("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:[d.length===0&&te("div",{className:"ww:px-3 ww:py-3 ww:text-xs ww:text-muted-foreground",children:s.threadMenu.noPreviousChats}),d.map(f=>{let p=f.threadId===t,m=Date.parse(f.updatedAt);return pt("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:[pt("button",{type:"button",onClick:()=>{r(f.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:f.title}),te("div",{className:"ww:text-[10px] ww:text-muted-foreground",children:Number.isNaN(m)?"":Lr(m,n)})]}),te("button",{type:"button",onClick:x=>{x.stopPropagation(),o(f.threadId)},title:s.threadMenu.deleteThread,"aria-label":s.threadMenu.deleteThread,className:"ww:p-1 ww:rounded ww:text-muted-foreground hover:ww:text-foreground hover:ww:bg-foreground/10 ww:transition-colors ww:cursor-pointer",children:te(lm,{label:s.threadMenu.deleteThread})})]},f.threadId)}),c>0&&te("div",{className:"ww:px-3 ww:py-2 ww:text-[10px] ww:text-muted-foreground ww:border-t ww:border-border",children:s.threadMenu.hiddenThreads(c)})]})]})}import{createContext as um,useContext as dm}from"react";function tl(e){let t=new Set;return{subscribe(a){return t.add(a),()=>{t.delete(a)}},emit(a){let{sessionId:r,...o}=a,n=a.name==="session.started"?a.properties.sessionId:void 0,s={...o,mode:e.mode,sessionId:Object.hasOwn(a,"sessionId")?r:n??e.getSessionId?.(),timestamp:Date.now()};for(let i of[...t])try{i(s)}catch(l){console.warn("[Waniwani] onEvent subscriber threw:",l)}}}}function al(){return{subscribe(){return()=>{}},emit(){}}}var rl=um(al());function er(){return dm(rl)}var ol=rl.Provider;import{useCallback as cm,useRef as fm}from"react";function nl(e){let t=fm(e);return t.current=e,cm(async a=>{let{api:r,headers:o,onCallTool:n,sessionId:s}=t.current;if(n)return n(a);let i=`${r??"/api/waniwani"}/tool`,l=typeof s=="string"&&s.trim().length>0?s.trim():void 0,u=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",...l?{"X-Session-Id":l}:{},...o},body:JSON.stringify(a)});if(!u.ok)throw new Error(`Tool call failed: ${u.status} ${u.statusText}`);return u.json()},[])}import{useChat as Am}from"@ai-sdk/react";import{useCallback as we,useEffect as Re,useRef as le,useState as mt}from"react";function Pt(e,t,a){let[r,o=""]=e.split("?"),n=r.replace(/\/$/,""),s=new URLSearchParams(o);if(a)for(let[l,u]of Object.entries(a))s.set(l,u);let i=s.toString();return`${n}${t}${i?`?${i}`:""}`}import{DefaultChatTransport as pm,uiMessageChunkSchema as mm}from"ai";function hm(e){let t=e?.cause,a=t?.issues??t?.errors;if(!Array.isArray(a))return null;let r=a.find(o=>o.code==="invalid_union");if(!r?.errors)return null;for(let o of r.errors){if(!Array.isArray(o)||o.some(i=>(i.code==="invalid_value"||i.code==="invalid_literal")&&i.path?.[0]==="type"))continue;let s=o.filter(i=>i.code==="unrecognized_keys").flatMap(i=>i.keys??[]);if(s.length>0)return s}return null}var tr=class extends pm{processResponseStream(t){let a="",r=mm(),o=r.validate?.bind(r);return t.pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({async transform(n,s){a+=n;let i=a.split(`
|
|
16
|
+
`);a=i.pop()??"";for(let l of i){let u=l.trim();if(!u.startsWith("data:"))continue;let d=u.slice(5).trim();if(d!=="[DONE]")try{let c=JSON.parse(d);if(!o){s.enqueue(c);continue}let f=await o(c);if(f.success){s.enqueue(f.value);continue}let p=hm(f.error);if(p?.length){let m={...c};for(let L of p)delete m[L];let x=await o(m);x.success&&s.enqueue(x.value)}}catch{}}}}))}};var gm="waniwani-memory";var Ae="threads",ar="by_memoryUserId",wm="by_updatedAt";var il="memoryUserId",sl="waniwani-memory-user-id",Lo=null;function Co(){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 xm(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(ar,"memoryUserId",{unique:!1}),a.createIndex(wm,"updatedAt",{unique:!1})}}async function So(){return new Promise((e,t)=>{let a=indexedDB.open(gm,2);a.onupgradeneeded=r=>{xm(a.result,r.oldVersion)},a.onsuccess=()=>e(a.result),a.onerror=()=>t(a.error)})}async function Im(){return So()}async function Lm(e){return new Promise((t,a)=>{let n=e.transaction("ids","readonly").objectStore("ids").get(il);n.onsuccess=()=>t(typeof n.result=="string"?n.result:null),n.onerror=()=>a(n.error)})}async function Cm(e,t){return new Promise((a,r)=>{let s=e.transaction("ids","readwrite").objectStore("ids").put(t,il);s.onsuccess=()=>a(),s.onerror=()=>r(s.error)})}async function Sm(){if(typeof indexedDB>"u")return null;try{let e=await Im();try{let t=await Lm(e);if(t)return t;let a=Co();return await Cm(e,a),a}finally{e.close()}}catch{return null}}function ym(){try{let e=localStorage.getItem(sl);if(e)return e;let t=Co();return localStorage.setItem(sl,t),t}catch{return null}}async function ll(){let e=await Sm();if(e)return e;let t=ym();return t||(Lo||(Lo=Co()),Lo)}var ul=50,dl=1e3;function rr(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 or(e){if(typeof indexedDB>"u")return null;let t=null;try{return t=await So(),await e(t)}catch{return null}finally{try{t?.close()}catch{}}}function yo(e){return new Promise((t,a)=>{e.onsuccess=()=>t(e.result),e.onerror=()=>a(e.error)})}async function bo(e){return await or(async a=>{let n=a.transaction(Ae,"readonly").objectStore(Ae).index(ar),i=(await yo(n.getAll(e))??[]).filter(rr);return i.sort((l,u)=>l.updatedAt<u.updatedAt?1:-1),i})??[]}async function nr(e){return await or(async a=>{let o=a.transaction(Ae,"readonly").objectStore(Ae),n=await yo(o.get(e));return rr(n)?n:null})??null}async function ko(e){if(!rr(e))return;let t=e.messages.length>dl?{...e,messages:e.messages.slice(e.messages.length-dl)}:e;await or(async a=>{await new Promise((l,u)=>{let d=a.transaction(Ae,"readwrite");d.oncomplete=()=>l(),d.onerror=()=>u(d.error),d.onabort=()=>u(d.error),d.objectStore(Ae).put(t)});let r=a.transaction(Ae,"readwrite"),o=r.objectStore(Ae),n=o.index(ar),i=(await yo(n.getAll(t.memoryUserId))??[]).filter(rr);if(i.length>ul){i.sort((u,d)=>u.updatedAt<d.updatedAt?-1:1);let l=i.slice(0,i.length-ul);for(let u of l)o.delete(u.threadId)}return await new Promise((l,u)=>{r.oncomplete=()=>l(),r.onerror=()=>u(r.error),r.onabort=()=>u(r.error)}),null})}async function cl(e){await or(async t=>(await new Promise((a,r)=>{let o=t.transaction(Ae,"readwrite");o.oncomplete=()=>a(),o.onerror=()=>r(o.error),o.onabort=()=>r(o.error),o.objectStore(Ae).delete(e)}),null))}async function To(e){return(await bo(e))[0]?.threadId??null}function fl(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 vo="waniwani-visitor-id";function ml(e,t){return e.match(t)?.[1]??null}function bm(e){let t=[["Edge",/Edg(?:e|A|iOS)?\/(\S+)/],["Opera",/(?:OPR|Opera)\/(\S+)/],["Samsung Internet",/SamsungBrowser\/(\S+)/],["Firefox",/Firefox\/(\S+)/],["Chrome",/Chrome\/(\S+)/],["Safari",/Version\/(\S+).*Safari/]];for(let[a,r]of t){let o=ml(e,r);if(o)return{name:a,version:o}}return null}function km(e){let t=[["iOS",/(?:iPhone|iPad|iPod).+?OS (\d+[_.\d]*)/],["Android",/Android (\d+[.\d]*)/],["macOS",/Mac OS X (\d+[_.\d]*)/],["Windows",/Windows NT (\d+[.\d]*)/],["ChromeOS",/CrOS \S+ (\d+[.\d]*)/],["Linux",/Linux/]];for(let[a,r]of t){let o=ml(e,r);if(o)return{name:a,version:o.replace(/_/g,".")};if(a==="Linux"&&r.test(e))return{name:a,version:""}}return null}function Tm(e){return typeof navigator<"u"&&"userAgentData"in navigator&&navigator.userAgentData?.mobile?"mobile":/iPad|tablet|PlayBook/i.test(e)?"tablet":/Mobi|Android.*Mobile|iPhone|iPod/i.test(e)?"mobile":"desktop"}function vm(){try{if(typeof crypto<"u"){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();if(typeof crypto.getRandomValues=="function"){let e=crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e,a=>a.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}}}catch{}return`v-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function rt(){try{let t=localStorage.getItem(vo);if(t)return t}catch{}let e=vm();try{localStorage.setItem(vo,e)}catch{}return e}function pl(e){let t=typeof e=="string"?e.trim():"";if(!t)return rt();try{localStorage.setItem(vo,t)}catch{}return t}function Pm(e){return e!=null&&typeof e.then=="function"}function hl(e){let t=!1,a=()=>{t=!0};if(e==null)return a;let r;try{r=typeof e=="function"?e():e}catch{return a}return Pm(r)?r.then(o=>{t||pl(o??"")},()=>{}):pl(r??""),a}async function da(){let e=navigator.userAgent,t=rt(),a=await ll();return{userAgent:e,browser:bm(e),os:km(e),deviceType:Tm(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 Rm="x-session-id",Mm=250,Fm=200;function gl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():zt()}function sr(){return new Date().toISOString()}function wl(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}async function Bm(e,t){let a=Pt(e,"/tools"),r=await fetch(a,{method:"GET",headers:t?{...t}:void 0});if(!r.ok)throw new Error(`[Waniwani] Failed to fetch /tools: ${r.status} ${r.statusText}`);let o=await r.json();if(!o||!Array.isArray(o.tools))return{};let n={};for(let s of o.tools)s&&typeof s.name=="string"&&(n[s.name]=s);return n}function xl(e){let{api:t="/api/waniwani",headers:a,body:r,onMessageSent:o,onResponseReceived:n,enableThreadHistory:s=!1,activeThreadId:i,onThreadChange:l}=e,u=e.visitorId;Re(()=>hl(u),[u]);let d=er(),c=le(a),f=le(r),p=le(s);Re(()=>{p.current=s},[s]);let m=le(void 0),x=le(null),[L,h]=mt(void 0),I=le(L),[g,C]=mt(i),S=le(g),[v,A]=mt([]),[P,D]=mt(!s),b=le(void 0),E=le(void 0),M=le(void 0),$=le(void 0),H=le(0),T=le(l);Re(()=>{T.current=l},[l]);let y=we(w=>{S.current=w,C(w),w&&(T.current?.(w),d.emit({name:"thread.changed",sessionId:I.current,properties:{threadId:w}}))},[d]),F=we(async()=>{if(!s)return;let w=x.current?.memoryUserId;if(!w)return;let B=await bo(w);A(B)},[s]),Me=we(()=>I.current,[]),be=we(w=>{let B=wl(w);if(!B||I.current===B)return;let _=I.current===void 0;I.current=B,h(B),_&&d.emit({name:"session.started",properties:{sessionId:B}})},[d]),q=we(()=>{I.current=void 0,h(void 0)},[]);Re(()=>{c.current=a},[a]),Re(()=>{f.current=r},[r]),Re(()=>{let w=!1,B=H.current;return(async()=>{try{let Y=await da();if(w)return;x.current=Y}catch{}if(!s)return;let _=x.current?.memoryUserId;if(!_){D(!0);return}try{let Y=i??await To(_);if(w||B!==H.current)return;if(Y){let de=await nr(Y);if(w||B!==H.current)return;de&&de.memoryUserId===_&&(S.current=de.threadId,C(de.threadId),b.current=de.createdAt,E.current=de.title,de.sessionId&&(I.current=de.sessionId,h(de.sessionId)),W(de.messages))}await F()}finally{w||D(!0)}})(),()=>{w=!0}},[]);let xe=le(new tr({api:t,headers:()=>({...c.current}),body:()=>{let w={...f.current??{}},B=Object.hasOwn(w,"sessionId"),_=wl(w.sessionId);if(_)be(_),w.sessionId=_;else if(B)q(),delete w.sessionId;else{let mr=Me();mr&&(w.sessionId=mr)}Lt(m.current)&&(w.modelContext=m.current);let Y=x.current,de=rt();Y&&(w.visitorContext={timezone:Y.timezone,language:Y.language,languages:Y.languages,deviceType:Y.deviceType,referrer:Y.referrer,visitorId:de});let re=typeof w.visitor=="object"&&w.visitor!==null?w.visitor:{},cu=typeof re.client=="object"&&re.client!==null?re.client:{};w.visitor={...re,id:de,client:{...cu,...Y&&{memoryUserId:Y.memoryUserId}}};let Xo=typeof w.extra=="object"&&w.extra!==null&&!Array.isArray(w.extra)?w.extra:void 0,Ko=x.current?.memoryUserId,Qo=x.current?.language,pa={};if(Ko&&(pa.memoryUserId=Ko),Qo&&(pa.locale=Qo),(Object.keys(pa).length>0||Xo)&&(w.extra={...pa,...Xo??{}}),p.current)if(Object.hasOwn(w,"threadId"))typeof w.threadId=="string"&&(S.current=w.threadId);else{let ma=S.current;ma||(ma=gl(),b.current=sr(),E.current=void 0,y(ma)),w.threadId=ma}return w},fetch:(async(w,B)=>{let _=await fetch(w,B);return m.current=void 0,be(_.headers.get(Rm)),_})})),fe=le(null),ke=le(null),pe=le({}),[$e,Z]=mt(0),Xe=e.skipRemoteConfig===!0,Ie=we(async()=>{if(!Xe)try{let w=await Bm(t,c.current);pe.current=w,Z(B=>B+1)}catch(w){console.warn("[Waniwani] Failed to fetch tool definitions:",w instanceof Error?w.message:w)}},[t,Xe]);Re(()=>{Ie()},[Ie]);let{messages:j,sendMessage:ne,setMessages:W,status:O}=Am({messages:e.initialMessages,transport:xe.current,onFinish({message:w,isAbort:B,isDisconnect:_,isError:Y}){n?.(),!B&&!_&&!Y&&d.emit({name:"message.received"}),fe.current&&(ke.current=w)},onError(w){console.warn("[Waniwani] Chat error:",w.message),d.emit({name:"chat.error",properties:{message:w.message.slice(0,Fm)}}),fe.current&&(fe.current.reject(w),fe.current=null)}}),U=le(j);Re(()=>{U.current=j},[j]);let N=le(s);Re(()=>{if(!s||N.current||(N.current=!0,U.current.length>0))return;let w=!1,B=H.current;return D(!1),(async()=>{try{let _=x.current;if(!_)try{_=await da(),x.current=_}catch{}let Y=_?.memoryUserId;if(!Y||w||B!==H.current){w||D(!0);return}let de=i??await To(Y);if(w||B!==H.current)return;if(de){let re=await nr(de);if(w||B!==H.current)return;re&&re.memoryUserId===Y&&(S.current=re.threadId,C(re.threadId),b.current=re.createdAt,E.current=re.title,re.sessionId&&(I.current=re.sessionId,h(re.sessionId)),W(re.messages))}await F()}finally{w||D(!0)}})(),()=>{w=!0}},[s]),Re(()=>{if(O==="ready"&&fe.current&&ke.current){let w=fe.current,B=ke.current;fe.current=null,ke.current=null,w.resolve(B)}},[O]);let[ae,X]=mt(""),[me,Le]=mt([]),Te=O==="submitted"||O==="streaming",Ke=we(w=>{Le(B=>B.filter(_=>_.id!==w))},[]),fa=Te&&me.length>0,R=we(w=>{let B=!!w.text?.trim(),_=!!w.files?.length;if(B||_){if(Te){if(me.length>0)return;Le(Y=>[...Y,{id:zt(),text:w.text||"",files:w.files??[],modelContext:w.modelContext}]),X("");return}m.current=w.modelContext,ne({text:w.text||"",files:w.files}),o?.(w.text||""),d.emit({name:"message.sent"}),X("")}},[ne,o,Te,me.length,d]),G=we(w=>new Promise((B,_)=>{fe.current={resolve:B,reject:_},ne({text:w}),o?.(w),d.emit({name:"message.sent"})}),[ne,o,d]);Re(()=>{if(O!=="ready"||me.length===0)return;let[w,...B]=me;Le(B),m.current=w.modelContext,ne({text:w.text,files:w.files.length>0?w.files:void 0}),o?.(w.text),d.emit({name:"message.sent"})},[O,ne,o,me,d]);let se=we(()=>{W([]),Le([]),q(),X(""),pe.current={},Z(w=>w+1),Ie()},[W,q,Ie]),ye=we(()=>{if(!p.current)return;let w=x.current?.memoryUserId,B=S.current,_=U.current;if(!(!w||!B||_.length===0)){if(b.current||(b.current=sr()),!E.current){let Y=_.find(re=>re.role==="user"),de=Y?Y.parts.map(re=>"text"in re&&typeof re.text=="string"?re.text:"").join(" "):"";E.current=fl(de)}return{threadId:B,memoryUserId:w,title:E.current,messages:_,sessionId:I.current,createdAt:b.current,updatedAt:sr()}}},[]),qe=we(async()=>{let w=ye();w&&(await ko(w),await F())},[ye,F]);Re(()=>{if(s&&P&&!(O==="submitted"||O==="streaming")&&j.length!==0)return M.current&&clearTimeout(M.current),M.current=setTimeout(()=>{M.current=void 0;let w=qe().finally(()=>{$.current===w&&($.current=void 0)});$.current=w},Mm),()=>{M.current&&clearTimeout(M.current)}},[s,P,j,O,qe]);let We=we(()=>{let w=$.current,B=M.current,_=B?ye():void 0;return B&&(clearTimeout(B),M.current=void 0),(async()=>{w&&await w,_&&(await ko(_),await F())})()},[ye,F]),fr=we(()=>{H.current+=1,We(),W([]),Le([]),q(),X("");let w=gl();return b.current=sr(),E.current=void 0,y(w),F(),w},[W,q,y,F,We]),pr=we(async w=>{H.current+=1;let B=H.current;if(await We(),B!==H.current)return;let _=await nr(w);B===H.current&&_&&(_.sessionId?(I.current=_.sessionId,h(_.sessionId)):q(),y(_.threadId),b.current=_.createdAt,E.current=_.title,W(_.messages),Le([]),X(""))},[W,q,y,We]),iu=we(async w=>{if(S.current===w){H.current+=1,M.current&&(clearTimeout(M.current),M.current=void 0);let B=$.current;B&&await B}await cl(w),await F(),S.current===w&&(W([]),Le([]),q(),X(""),S.current=void 0,C(void 0),b.current=void 0,E.current=void 0)},[W,q,F]);Re(()=>{s&&P&&i!==void 0&&i!==S.current&&pr(i)},[i,s,P,pr]);let lu=we(w=>{X(w.target.value)},[]),jo=j[j.length-1],$o=j.length>0,uu=Te&&(!$o||jo.role==="user"),du=pe.current;return{messages:j,status:O,text:ae,setText:X,handleSubmit:R,handleTextChange:lu,isLoading:Te,showLoaderBubble:uu,lastMessage:jo,hasMessages:$o,sendMessage:ne,sendMessageAndWait:G,reset:se,queuedMessages:me,queueFull:fa,removeQueuedMessage:Ke,sessionId:L,toolDefinitions:du,refreshToolDefinitions:Ie,threads:v,activeThreadId:g,isThreadHistoryReady:P,startNewThread:fr,switchThread:pr,deleteThread:iu}}import{useCallback as Dm,useEffect as Ro,useMemo as Mo,useRef as _m,useState as Sl}from"react";function At(e){return e.map(t=>({id:null,text:t}))}function Po(e){let{flow:t,followup:a,page:r,channel:o}=e;return t!==null?{origin:"flow",suggestions:t}:a?.length?{origin:"followup",suggestions:a}:r?.length?{origin:"page",suggestions:r}:o?.length?{origin:"channel",suggestions:o}:null}var Ao="waniwani/suggestions";function Rt(e){return typeof e=="object"&&e!==null}function Il(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function Em(e){if(!Rt(e)||!("toolCallId"in e)||!("output"in e))return null;let t=e.output;if(!Rt(t)||!Rt(t._meta))return null;let a=t._meta[Ao];return!Rt(a)||!Il(a.suggestions)?null:a.suggestions}function Ll(e){let t=null;for(let a of e.parts){let r=Em(a);r!==null&&(t=r)}return t}function Cl(e){for(let t of e.parts){if(!Rt(t)||t.type!=="data-suggestions")continue;let a=t.data;if(Rt(a)&&Il(a.suggestions)&&a.suggestions.length>0)return a.suggestions}return null}function Om(e){return"page"in e||"channel"in e}function Nm(e){return typeof e!="object"||e===null?{}:Om(e)?{rungs:e}:{initial:e.initial}}function yl(e){let{messages:t,status:a,suggestions:r}=e,o=r!==!1,{rungs:n,initial:s}=Nm(r),i=Mo(()=>({page:null,channel:At(s??[])}),[s]),l=n??i,u=Mo(()=>o?Po({flow:null,followup:null,...l}):null,[o,l]),d=Mo(()=>u?.suggestions.map(g=>g.text)??[],[u]),[c,f]=Sl(d),[p,m]=Sl(u?.origin??"channel"),x=_m(a),L=Dm(()=>{f([])},[]),h=t.length>0;Ro(()=>{h||(f(d),m(u?.origin??"channel"))},[d,u,h]);let I=t[t.length-1];return Ro(()=>{I?.role==="user"&&L()},[I,L]),Ro(()=>{let g=x.current;if(x.current=a,g!=="streaming"||a!=="ready"||!o)return;let C=[...t].reverse().find(P=>P.role==="assistant");if(!C)return;let S=Ll(C),v=Cl(C),A=Po({flow:S===null?null:At(S),followup:v===null?null:At(v),page:null,channel:null});f(A?A.suggestions.map(P=>P.text):[]),m(A?.origin??"channel")},[a,o,t]),{suggestions:c,source:p,isLoading:!1,clear:L}}import{useEffect as Um,useRef as Hm,useState as qm}from"react";var Wm=80,Gm=50,Vm=15e3,bl=500;function kl(e,t=!0){let[a,r]=qm(""),o=Hm(void 0);return Um(()=>{if(!t){r("");return}let n=0,s=!1,i=!1,l=()=>{i||(s?(n--,r(e.slice(0,n)),n<=0?(s=!1,o.current=setTimeout(l,bl)):o.current=setTimeout(l,Gm)):(n++,r(e.slice(0,n)),n>=e.length?(s=!0,o.current=setTimeout(l,Vm)):o.current=setTimeout(l,Wm)))};return o.current=setTimeout(l,bl),()=>{i=!0,clearTimeout(o.current)}},[e,t]),a}function Tl(e,t){let a=t?.Authorization,r=typeof a=="string"&&a.startsWith("Bearer ")?a.slice(7):null;return Pt(e,"/resource",r?{token:r}:void 0)}var vl={primaryColor:"#6366f1",primaryForeground:"#1f2937",backgroundColor:"#ffffff",textColor:"#1f2937",mutedColor:"#6b7280",borderColor:"#e5e7eb",borderWidth:0,boxShadow:"none",assistantBubbleColor:"#f3f4f6",userBubbleColor:"#f4f4f4",inputBackgroundColor:"#f9fafb",borderRadius:16,messageBorderRadius:8,fontFamily:"system-ui, -apple-system, 'Segoe UI', sans-serif",headerBackgroundColor:"#ffffff",headerTextColor:"#1f2937",statusColor:"#22c55e",toolCardColor:"#f4f4f5",userBubbleTextColor:"#1f2937",assistantBubbleTextColor:"#1f2937",messagePaddingX:16,messagePaddingY:12,messageMaxWidth:"80%",fontSize:16,lineHeight:"1.5",glassTint:"transparent",glassTintStrength:"0"},zm={backgroundColor:"#212121",headerBackgroundColor:"#1e1e1e",headerTextColor:"#ececec",textColor:"#ececec",primaryForeground:"#ffffff",mutedColor:"#8e8ea0",borderColor:"#444444",assistantBubbleColor:"#2f2f2f",userBubbleColor:"#303030",inputBackgroundColor:"#2f2f2f",primaryColor:"#6366f1",statusColor:"#22c55e",toolCardColor:"#262626",userBubbleTextColor:"#ffffff",assistantBubbleTextColor:"#ececec"},jm={primaryColor:["--ww-primary","--ww-color-primary"],primaryForeground:["--ww-primary-fg","--ww-color-primary-foreground"],backgroundColor:["--ww-bg","--ww-color-background"],textColor:["--ww-text","--ww-color-foreground","--ww-color-accent-foreground"],mutedColor:["--ww-muted","--ww-color-muted-foreground"],borderColor:["--ww-border","--ww-color-border"],borderWidth:["--ww-border-width"],boxShadow:["--ww-shadow"],assistantBubbleColor:["--ww-assistant-bubble","--ww-color-accent"],userBubbleColor:["--ww-user-bubble"],inputBackgroundColor:["--ww-input-bg","--ww-color-input"],borderRadius:["--ww-radius"],messageBorderRadius:["--ww-msg-radius"],fontFamily:["--ww-font"],headerBackgroundColor:["--ww-header-bg"],headerTextColor:["--ww-header-text"],statusColor:["--ww-status"],toolCardColor:["--ww-tool-card","--ww-color-tool-card"],userBubbleTextColor:["--ww-user-bubble-text"],assistantBubbleTextColor:["--ww-assistant-bubble-text"],messagePaddingX:["--ww-msg-pad-x"],messagePaddingY:["--ww-msg-pad-y"],messageMaxWidth:["--ww-msg-max-width"],fontSize:["--ww-font-size"],lineHeight:["--ww-line-height"],glassTint:["--ww-glass-tint"],glassTintStrength:["--ww-glass-tint-opacity"]};function $m(e){return{...vl,...e}}function Fo(e){let t={};for(let[a,r]of Object.entries(jm)){let o=e[a];if(o===void 0)continue;let n=typeof o=="number"?`${o}px`:String(o);for(let s of r)t[s]=n}return t}import{jsx as ue,jsxs as ot}from"react/jsx-runtime";var Bo=Pl(function(t,a){let{locale:r,messages:o}=t;return ue(Ir,{locale:r,messages:o,children:ue(Km,{...t,ref:a})})}),Km=Pl(function(t,a){let{t:r,ready:o}=V(),{appearance:n,className:s,classNames:i,allowAttachments:l=!1,welcomeMessage:u,welcome:d,placeholder:c=r.promptInput.placeholder,triggerEvent:f="triggerDemoRequest",api:p,mcp:m,debug:x=!1,readOnly:L=!1,title:h,headerActions:I,hideHeader:g=!1,enableThreadHistory:C=!1,showToolCalls:S=!0,initializing:v=!1,onScreen:A=!0,disclaimer:P}=t,D=n?.theme,b=n?.variables,E=n?.assistantBubble??!1,M=b?Fo(b):{},[$,H]=lr(!1);je(()=>{if(D!=="auto"||typeof window>"u")return;let R=window.matchMedia("(prefers-color-scheme: dark)");H(R.matches);let G=()=>H(R.matches);return R.addEventListener("change",G),()=>R.removeEventListener("change",G)},[D]);let T=D==="dark"||D==="auto"&&$,y=xl({...t,api:p}),F=er(),Me=nl({...t,api:p,sessionId:y.sessionId,onCallTool:m?.onCallTool}),be=m?.resourceEndpoint??Tl(p,t.headers),q=kl(c,!y.text),[xe,fe]=lr(null),[ke,pe]=lr(null),$e=ht(null),Z=ht(null),Xe=ht(null),Ie=ht(null),[j,ne]=lr(!0),W=ht(j);W.current=j;let O=ir(()=>{let R=$e.current;if(!R)return;let G=R.querySelector("textarea");G&&G.focus()},[]),U=ir((R="smooth")=>{let G=Z.current;G&&G.scrollTo({top:G.scrollHeight,behavior:R})},[]);je(()=>{let R=Ie.current,G=Z.current;if(!R||!G)return;let se=new IntersectionObserver(([ye])=>ne(ye.isIntersecting),{root:G,rootMargin:"0px 0px 200px 0px",threshold:0});return se.observe(R),()=>se.disconnect()},[]),je(()=>{let R=Z.current;if(!R)return;let G=se=>{let qe=(se.target instanceof Element?se.target:null)?.closest("a");qe?.href&&F.emit({name:"link.clicked",properties:{url:qe.href}})};return R.addEventListener("click",G),()=>R.removeEventListener("click",G)},[F]),je(()=>{(y.messages[y.messages.length-1]?.role==="user"||W.current)&&U("smooth")},[y.messages.length,y.messages[y.messages.length-1]]),je(()=>{U("auto")},[U]),je(()=>{if(typeof ResizeObserver>"u")return;let R=Z.current,G=Xe.current;if(!R&&!G)return;let se=R?.scrollHeight??0,ye=R?.clientHeight??0,qe=new ResizeObserver(()=>{let We=Z.current;if(!We)return;let fr=We.scrollTop+ye>=se-5;se=We.scrollHeight,ye=We.clientHeight,fr&&U("auto")});return R&&qe.observe(R),G&&qe.observe(G),()=>qe.disconnect()},[U]);let N=yl({messages:y.messages,status:y.status,suggestions:t.suggestions}),ae=ht(null);je(()=>{let R=N.suggestions;!A||R.length===0||ae.current===R||(ae.current=R,F.emit({name:"suggestions.shown",properties:{texts:R,origin:N.source}}))},[N.suggestions,N.source,F,A]);let X=d?.suggestions,me=ht(null);je(()=>{!A||y.messages.length>0||!X?.length||me.current===X||(me.current=X,F.emit({name:"suggestions.shown",properties:{texts:X,origin:"channel"}}))},[X,y.messages.length,F,A]);let Le=ir(R=>{let G=R.content.map(se=>se.text??"").join("").trim();G&&y.handleSubmit({text:G,files:[],modelContext:R.modelContext})},[y.handleSubmit]),Te=ir(R=>{let G=N.suggestions.indexOf(R),se=G>=0?G:d?.suggestions?.indexOf(R)??-1,ye=G>=0?N.source:"channel";F.emit({name:"suggestion.clicked",properties:{text:R,index:se,origin:ye}}),N.clear(),y.handleSubmit({text:R,files:[]})},[N.suggestions,N.source,N.clear,y.handleSubmit,d,F]);Xm(a,()=>({sendMessage:R=>{y.handleSubmit({text:R,files:[]}),O()},sendMessageAndWait:R=>y.sendMessageAndWait(R),reset:y.reset,focus:O,get messages(){return y.messages},get sessionId(){return y.sessionId}}),[y.handleSubmit,y.sendMessageAndWait,y.reset,y.messages,y.sessionId,O]),je(()=>{if(!f)return;let R=G=>{let se=G.detail,ye=typeof se?.message=="string"?se.message:void 0;ye&&y.handleSubmit({text:ye,files:[]}),O()};return window.addEventListener(f,R),()=>window.removeEventListener(f,R)},[f,y.handleSubmit,O]);let Ke=!g&&!!(h||C||I),fa=v||!o;return ot("div",{ref:$e,style:{...M,maxHeight:"inherit",...xe&&ke?{height:ke}:{},opacity:fa?0:1,transition:"opacity 220ms ease-out"},"data-waniwani-chat":"","data-waniwani-layout":"embed","data-assistant-bubble":E?"true":void 0,"data-color-scheme":D==="auto"?"auto":void 0,...fa?{"data-waniwani-initializing":""}:{},...T?{"data-waniwani-dark":""}:{},className:k("ww:relative ww:w-full ww:h-full ww:flex ww:flex-col ww:bg-background ww:text-foreground ww:font-[family-name:var(--ww-font)] ww:overflow-hidden",D==="dark"&&"dark",s,i?.root),children:[Ke&&ot("div",{className:k("ww-header ww:shrink-0 ww:flex ww:items-center ww:gap-2 ww:pl-4 ww:pr-3 ww:py-3 ww:border-b ww:border-border",i?.header),style:{backgroundColor:"var(--ww-color-card-header)",color:"var(--ww-color-card-header-foreground)"},children:[h&&ue("div",{className:"ww:text-sm ww:font-semibold ww:truncate ww:flex-1 ww:min-w-0",children:h}),!h&&ue("div",{className:"ww:flex-1"}),C&&ue(el,{threads:y.threads,activeThreadId:y.activeThreadId,onNewThread:y.startNewThread,onSelectThread:R=>{y.switchThread(R)},onDeleteThread:R=>{y.deleteThread(R)}}),I]}),ot("div",{ref:Z,className:k("ww:relative ww:flex-1 ww:min-h-0",xe?"ww:overflow-hidden":"ww:overflow-y-auto"),children:[ot("div",{ref:Xe,className:k("ww:mx-auto ww:w-full ww:max-w-3xl ww:px-4 ww:py-6 ww:flex ww:flex-col ww:gap-6",xe&&"ww:!py-0"),children:[ue(Ki,{messages:y.messages,status:y.status,welcomeMessage:u,welcome:d,onSuggestionSelect:Te,resourceEndpoint:be,chatSessionId:y.sessionId,isDark:T,onFollowUp:Le,onCallTool:Me,fullscreenToolCallId:xe,debug:x,showToolCalls:S,toolDefinitions:y.toolDefinitions,messageClassNames:{message:i?.message,userBubble:i?.userBubble,assistantBubble:i?.assistantBubble},onWidgetDisplayModeChange:(R,G)=>{if(R==="fullscreen"){let se=$e.current?.getBoundingClientRect().height??0;pe(se>0?se:null),fe(G.toolCallId)}else pe(null),fe(null)}}),ue("div",{ref:Ie,"aria-hidden":!0,style:{height:1}})]}),!j&&!xe&&ue("div",{className:"ww:sticky ww:bottom-2 ww:flex ww:justify-center ww:pointer-events-none",children:ue(Oe,{type:"button",onClick:()=>U("smooth"),size:"icon",variant:"outline",className:"ww:rounded-full ww:shadow ww:pointer-events-auto","aria-label":"Scroll to latest",children:ue(Bt,{className:"ww:size-4"})})})]}),!L&&ot("div",{className:"ww:shrink-0 ww:bg-background",style:xe?{display:"none"}:void 0,children:[ue(Yi,{suggestions:N.suggestions,isLoading:N.isLoading,onSelect:Te}),ue(Jn,{queuedMessages:y.queuedMessages,onRemove:y.removeQueuedMessage}),ue("div",{className:"ww:px-4 ww:pb-2 ww:pt-2",children:ot("div",{className:"ww:mx-auto ww:w-full ww:max-w-3xl",children:[ue(Nn,{onSubmit:y.handleSubmit,globalDrop:l,multiple:l,className:k("ww-input ww:rounded-2xl ww:border-border ww:bg-input",i?.input),children:ot("div",{className:"ww:flex ww:items-center ww:gap-1 ww:pl-4 ww:pr-3 ww:py-2.5",children:[l&&ue(qn,{}),ue(Un,{onChange:y.handleTextChange,value:y.text,placeholder:q,className:"ww:min-h-0 ww:py-1 ww:px-0"}),ue(Hn,{status:y.status,disabled:y.queueFull})]})}),ot("div",{className:"ww:pt-2 ww:pb-1 ww:flex ww:flex-nowrap ww:justify-center ww:items-center ww:gap-1.5",children:[ue(Ji,{}),ue(Gn,{text:P})]})]})})]})]})});import{forwardRef as Vh,useEffect as cr,useImperativeHandle as zh,useMemo as Vo,useRef as zo,useState as ou}from"react";var Qm="https://app.waniwani.ai/api/mcp/chat",Jm={api:Qm};function Ym(){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 Zm(){let e=Ym();if(!e)return{};let t=b=>e.getAttribute(b)??void 0,a=b=>{let E=e.getAttribute(b);if(E==null)return;let M=E.trim().toLowerCase();if(M==="true"||M==="1"||M==="")return!0;if(M==="false"||M==="0")return!1},r={},o=t("data-api");o&&(r.api=o);let n=t("data-token");n&&(r.token=n);let s=t("data-visitor-id");s&&(r.visitorId=s);let i=t("data-title");i&&(r.title=i);let l=t("data-welcome-message");l&&(r.welcomeMessage=l);let u=t("data-placeholder");u&&(r.placeholder=u);let d=t("data-mcp-server-url");d&&(r.mcpServerUrl=d);let c=t("data-channel-id");if(c&&(r.channelId=c),t("data-show-tool-calls")?.trim().toLowerCase()==="titles-only")r.showToolCalls="titles-only";else{let b=a("data-show-tool-calls");b!==void 0&&(r.showToolCalls=b)}let p=t("data-css");p&&(r.css=p);let m=t("data-suggestions");m&&(r.suggestions=m.split(",").map(b=>b.trim()).filter(Boolean));let x=a("data-enable-thread-history");x!==void 0&&(r.enableThreadHistory=x);let L=a("data-disable-page-view");L!==void 0&&(r.disablePageView=L);let h=a("data-hide-header");h!==void 0&&(r.hideHeader=h);let I=t("data-theme");(I==="light"||I==="dark"||I==="auto")&&(r.appearance={...r.appearance,theme:I});let g=a("data-assistant-bubble");g!==void 0&&(r.appearance={...r.appearance,assistantBubble:g});let C=t("data-locale");(C==="en"||C==="fr"||C==="es")&&(r.locale=C);let S=t("data-mode");(S==="inline"||S==="floating"||S==="composer")&&(r.mode=S);let v=t("data-height");v&&(r.height=v);let A=t("data-launcher-text");A&&(r.launcherText=A);let P=t("data-appear-delay");if(P!==void 0){let b=Number.parseInt(P.trim(),10);Number.isFinite(b)&&b>=0&&(r.appearDelay=b)}let D=t("data-disclaimer");if(D!==void 0){let b=D.trim(),E=b.toLowerCase();E==="false"||E==="0"?r.disclaimer=!1:b&&(r.disclaimer=b)}return r}function Eo(e){if(!e)return{};let t={};for(let a in e)e[a]!==void 0&&(t[a]=e[a]);return t}function Do(e,t,a){let r=a??Zm(),o=eh(t,r,e),n={token:"",...Jm,...Eo(t),...Eo(r),...Eo(e),...o?{appearance:o}:{}};if(!n.token)throw new Error("[Waniwani] Missing required config: `token`. Set data-token on the script tag or pass it to Waniwani.chat.init().");return n}function eh(e,t,a){let r=a?.appearance?.theme??t.appearance?.theme??e?.appearance?.theme,o={...e?.appearance?.variables??{},...t.appearance?.variables??{},...a?.appearance?.variables??{}},n=Object.keys(o).length>0,s=a?.appearance?.assistantBubble??t.appearance?.assistantBubble??e?.appearance?.assistantBubble;if(!r&&!n&&s===void 0)return;let i={};return r&&(i.theme=r),n&&(i.variables=o),s!==void 0&&(i.assistantBubble=s),i}import{useEffect as Yy,useState as Zy}from"react";function th(){if(typeof window>"u")return!1;try{return window.WANIWANI_DEBUG?!0:!!window.localStorage?.getItem("WANIWANI_DEBUG")}catch{return!1}}function gt(...e){th()&&console.log("[Waniwani]",...e)}var _o=new Set;function ah(e,t,a){return`${e}|${t}|${a??""}`}function ca(e){try{return`${new URL(e).origin}/api/mcp/events/v2/batch`}catch{return e.replace(/\/$/,"").replace(/\/chat$/,"/events/v2/batch")}}async function Oo(e){let{api:t,token:a,channelId:r,mode:o,source:n}=e;if(typeof window>"u"||!t||!a)return;if(!r&&!n){gt("page.viewed skipped: no channelId or source to attribute it");return}let s=ah(t,a,r);if(!_o.has(s)){_o.add(s);try{let i=await da(),l=new Date().toISOString(),u=JSON.stringify({sentAt:l,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:"page.viewed",source:n,timestamp:l,correlation:{visitorId:i.visitorId},properties:{channelId:r,mode:o,url:window.location.href,referrer:i.referrer,deviceType:i.deviceType,language:i.language,timezone:i.timezone},metadata:{}}]});await fetch(ca(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:u,keepalive:!0})}catch{_o.delete(s)}}}import{useMemo as fh}from"react";import{useEffect as sh,useSyncExternalStore as ih}from"react";function rh(e){return e?.patterns??e?.rules??[]}var Al="\0\0";function oh(e){let a=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/\\\*\\\*/g,Al).replace(/\\\*/g,"[^/]*").split(Al).join(".*");return new RegExp(`^${a}$`)}function nh(e,t){try{return oh(e).test(t)}catch{return!1}}function Rl(e,t){if(!e)return!0;let a=!1;for(let r of rh(e))if(nh(r.glob,t)){if(r.action==="hide")return!1;a=!0}return a?!0:(e.default??"show")!=="hide"}var No="waniwani:locationchange",Ml=!1;function lh(){if(!(Ml||typeof history>"u")){Ml=!0;for(let e of["pushState","replaceState"]){let t=history[e];history[e]=function(...r){let o=t.apply(this,r);return window.dispatchEvent(new Event(No)),o}}}}function uh(e){return lh(),window.addEventListener(No,e),window.addEventListener("popstate",e),()=>{window.removeEventListener(No,e),window.removeEventListener("popstate",e)}}function dh(){return window.location.pathname}function ch(){return"/"}function Uo(){return ih(uh,dh,ch)}function Fl(e,t){let a=Uo(),r=t&&Rl(e,a);return sh(()=>{gt("visibility gate",{pathname:a,ready:t,visible:r,rules:e})},[a,t,r]),r}var ph=3,mh=["low","medium","high"];function Ho(e){if(e.length===0)return;let t=Math.floor(Math.random()*e.length),[a]=e.splice(t,1);return a}function hh(e){let t=new Map,a=[];for(let n of e)if(n.tier){let s=t.get(n.tier)??[];s.push(n),t.set(n.tier,s)}else a.push(n);let r=[];for(let n of mh){let s=Ho(t.get(n)??[])??Ho(a);s&&r.push(s)}let o=[...t.values()].flat().concat(a);for(;r.length<Math.min(ph,e.length);){let n=Ho(o);if(!n)break;r.push(n)}return r}function Bl(e){let t;try{t=new URL(e,"http://localhost").pathname}catch{t="/"}let a=t.replace(/\/+$/,"");return(a===""?"/":a).toLowerCase()}function El(e){return Array.isArray(e)?e.flatMap(t=>{let a=t;if(typeof a?.url!="string"||a.url.length===0||!Array.isArray(a.prompts))return[];let r=a.prompts.flatMap(o=>{let n=o;return typeof n?.text!="string"||n.text.length===0?[]:[{id:typeof n.id=="string"?n.id:null,text:n.text,tier:n.tier==="low"||n.tier==="medium"||n.tier==="high"?n.tier:void 0}]});return r.length>0?[{url:a.url,prompts:r}]:[]}):[]}function Dl(e){let{pageSuggestions:t,suggestions:a}=e,r=Uo();return fh(()=>{let o=Bl(r),n=t?.find(i=>Bl(i.url)===o),s=n?hh(n.prompts).map(({id:i,text:l})=>({id:i,text:l})):null;return gt("configured suggestions resolve",{pathname:o,matched:!!n,count:s?.length??0}),{page:s,channel:At(a??[])}},[r,t,a])}var gh="waniwani:config:";function _l(e,t,a){return`${gh}${e}|${t}|${a??""}`}function ur(e,t,a){if(typeof window>"u")return null;try{let r=window.sessionStorage.getItem(_l(e,t,a));if(!r)return null;let o=JSON.parse(r);return o&&typeof o=="object"?o:null}catch{return null}}function Ol(e,t,a,r){if(!(typeof window>"u"))try{window.sessionStorage.setItem(_l(e,t,a),JSON.stringify(r))}catch{}}async function Nl(e,t,a,r){try{let o=Pt(e,"/config",r?{channel:r}:void 0),n=await fetch(o,{method:"GET",headers:{Authorization:`Bearer ${t}`},signal:a});if(!n.ok)return{};let s=await n.json(),i=s&&typeof s=="object"&&"data"in s&&s.data?s.data:s;return i?wh(i):{}}catch{return{}}}function wh(e){let t={};e.source!=null&&(t.source=e.source),e.channelId!=null&&(t.channelId=e.channelId),e.title!=null&&(t.title=e.title),e.welcomeMessage!=null&&(t.welcomeMessage=e.welcomeMessage),e.placeholder!=null&&(t.placeholder=e.placeholder),e.suggestions!=null&&e.suggestions.length>0&&(t.suggestions=e.suggestions);let a=El(e.pageSuggestions);return a.length>0&&(t.pageSuggestions=a),typeof e.enableThreadHistory=="boolean"&&(t.enableThreadHistory=e.enableThreadHistory),e.toolCallDisplay==="full"?t.showToolCalls=!0:e.toolCallDisplay==="titles-only"?t.showToolCalls="titles-only":e.toolCallDisplay==="hidden"&&(t.showToolCalls=!1),e.visibility&&(t.visibility=e.visibility),t}import{useEffect as xh,useRef as Ih}from"react";function qo(e,t){return e.find(a=>a.text===t)?.id??null}async function Ul(e){let{api:t,token:a,name:r,source:o,sessionId:n,properties:s}=e;if(!(typeof window>"u"||!t||!a))try{let i=new Date().toISOString(),l=JSON.stringify({sentAt:i,source:{sdk:"@waniwani/sdk",version:"0.1.0"},events:[{id:crypto.randomUUID(),type:"mcp.event",name:r,source:o,timestamp:i,correlation:{visitorId:rt(),sessionId:n},properties:{...s,url:window.location.href},metadata:{}}]});await fetch(ca(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${a}`},body:l,keepalive:!0})}catch{}}async function Hl(e){let{api:t,token:a,channelId:r,mode:o,source:n,sessionId:s,promptId:i,origin:l,text:u,index:d}=e;await Ul({api:t,token:a,name:"suggestion.clicked",source:n,sessionId:s,properties:{promptId:i,origin:l,text:u,index:d,channelId:r,mode:o}})}function ql(e,t){return t.map(a=>({id:qo(e,a),text:a}))}async function Wl(e){let{api:t,token:a,channelId:r,mode:o,source:n,sessionId:s,prompts:i,origin:l}=e;i.length!==0&&await Ul({api:t,token:a,name:"suggestion.shown",source:n,sessionId:s,properties:{prompts:i,count:i.length,origin:l,channelId:r,mode:o}})}function Gl(e){let{widgetEvents:t,api:a,token:r,channelId:o,source:n,mode:s,pagePrompts:i}=e,l=Ih(e.getSessionId);l.current=e.getSessionId,xh(()=>{if(!(!a||!r))return t.subscribe(u=>{if(u.name==="suggestion.clicked"){let{text:d,origin:c,index:f}=u.properties;Hl({api:a,token:r,channelId:o,mode:s,source:n,sessionId:l.current(),promptId:qo(i??[],d),origin:c,text:d,index:f});return}if(u.name==="suggestions.shown"){let{texts:d,origin:c}=u.properties;Wl({api:a,token:r,channelId:o,mode:s,source:n,sessionId:l.current(),prompts:ql(i??[],d),origin:c})}})},[t,a,r,o,n,s,i])}function Mt(e,t){for(let a of t){let r=e[a];if(typeof r=="string"&&r.length>0)return r}}var Lh=["waniwani/sessionId","openai/sessionId","openai/session","sessionId","conversationId","mcp-session-id"],Ch=["waniwani/requestId","openai/requestId","requestId","mcp/requestId"],Sh=["waniwani/traceId","openai/traceId","traceId","mcp/traceId","openai/requestId","requestId"],yh=["waniwani/userId","openai/userId","externalUserId","userId","actorId"],bh=["waniwani/visitorId","visitorId"],kh=["correlationId","openai/requestId"];function Vl(e){return e?Mt(e,Lh):void 0}function zl(e){return e?Mt(e,Ch):void 0}function jl(e){return e?Mt(e,Sh):void 0}function $l(e){return e?Mt(e,yh):void 0}function Xl(e){return e?Mt(e,bh):void 0}function Kl(e){return e?Mt(e,kh):void 0}var Th=[{key:"openai/sessionId",source:"chatgpt"},{key:"openai/session",source:"chatgpt"}],vh=[{needle:"claude",source:"claude"},{needle:"chatgpt",source:"chatgpt"},{needle:"openai",source:"chatgpt"},{needle:"gemini",source:"gemini"}];function Ql(e,t){if(e){let r=e["waniwani/source"];if(typeof r=="string"&&r.length>0)return r;for(let{key:o,source:n}of Th){let s=e[o];if(typeof s=="string"&&s.length>0)return n}}let a=t?.name;if(typeof a=="string"&&a.length>0){let r=a.toLowerCase();for(let{needle:o,source:n}of vh)if(r.includes(o))return n}}var Ph="@waniwani/sdk";function Jl(e,t={}){let a=t.now??(()=>new Date),r=t.generateId??Ah,o=Fh(e),n=dr(e.meta),s=dr(e.metadata),i=Bh(e,n),l=_e(e.eventId)??r(),u=Eh(e.timestamp,a),d=_e(e.source)??Ql(n)??t.source??Ph,c=Wo(e)?{...e}:void 0,f={...s};return Object.keys(n).length>0&&(f.meta=n),c&&(f.rawLegacy=c),{id:l,type:"mcp.event",name:o,source:d,timestamp:u,correlation:i,properties:Rh(e,o),metadata:f,rawLegacy:c}}function Ah(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?`evt_${crypto.randomUUID()}`:`evt_${Math.random().toString(36).slice(2,10)}_${Date.now().toString(36)}`}function Rh(e,t){if(!Wo(e))return dr(e.properties);let a=Mh(e,t),r=dr(e.properties);return{...a,...r}}function Mh(e,t){switch(t){case"tool.called":{let a={};return _e(e.toolName)&&(a.name=e.toolName),_e(e.toolType)&&(a.type=e.toolType),a}case"link.clicked":{let a={};return _e(e.linkUrl)&&(a.url=e.linkUrl),a}default:return{}}}function Fh(e){return Wo(e)?e.eventType:e.event}function Bh(e,t){let a=_e(e.requestId)??zl(t),r=_e(e.sessionId)??Vl(t),o=_e(e.traceId)??jl(t),n=_e(e.externalUserId)??$l(t),s=_e(e.visitorId)??Xl(t),i=_e(e.correlationId)??Kl(t)??a,l={};return r&&(l.sessionId=r),o&&(l.traceId=o),a&&(l.requestId=a),i&&(l.correlationId=i),n&&(l.externalUserId=n),s&&(l.visitorId=s),l}function Eh(e,t){if(e instanceof Date)return e.toISOString();if(typeof e=="string"){let a=new Date(e);if(!Number.isNaN(a.getTime()))return a.toISOString()}return t().toISOString()}function dr(e){return!e||typeof e!="object"||Array.isArray(e)?{}:e}function _e(e){if(typeof e=="string"&&e.trim().length!==0)return e}function Wo(e){return"eventType"in e}function Yl(e){return{priceShown:({amount:t,currency:a,itemId:r,label:o,...n})=>e({event:"price_shown",properties:{amount:t,currency:a,itemId:r,label:o},...n}),pricesCompared:({options:t,...a})=>e({event:"prices_compared",properties:{options:t},...a}),optionSelected:({id:t,amount:a,currency:r,...o})=>e({event:"option_selected",properties:{id:t,amount:a,currency:r},...o}),leadQualified:t=>{let{externalId:a,email:r,name:o,...n}=t??{};return e({event:"lead_qualified",properties:{externalId:a,email:r,name:o},...n})},converted:({amount:t,currency:a,occurredAt:r,...o})=>e({event:"converted",properties:{amount:t,currency:a,occurredAt:r},...o})}}var Dh="/api/mcp/events/v2/batch";var Zl="@waniwani/sdk";var _h=new Set([401,403]),Oh=new Set([408,425,429,500,502,503,504]),Nh=(e,t)=>globalThis.fetch(e,t);function eu(e){return new Go(e)}var Go=class{endpointUrl;flushIntervalMs;maxBatchSize;maxBufferSize;maxRetries;retryBaseDelayMs;retryMaxDelayMs;shutdownTimeoutMs;sdkVersion;fetchFn;logger;now;sleep;apiKey;buffer=[];flushTimer;flushScheduled=!1;flushScheduledTimer;flushInFlight;inFlightCount=0;isStopped=!1;isShuttingDown=!1;constructor(t){this.endpointUrl=qh(t.apiUrl,t.endpointPath??Dh),this.flushIntervalMs=t.flushIntervalMs??1e3,this.maxBatchSize=t.maxBatchSize??20,this.maxBufferSize=t.maxBufferSize??1e3,this.maxRetries=t.maxRetries??3,this.retryBaseDelayMs=t.retryBaseDelayMs??200,this.retryMaxDelayMs=t.retryMaxDelayMs??2e3,this.shutdownTimeoutMs=t.shutdownTimeoutMs??2e3,this.fetchFn=t.fetchFn??Nh,this.logger=t.logger??console,this.now=t.now??(()=>new Date),this.sleep=t.sleep??(a=>new Promise(r=>setTimeout(r,a))),this.apiKey=t.apiKey,this.sdkVersion=t.sdkVersion,this.flushIntervalMs>0&&(this.flushTimer=setInterval(()=>{this.flush()},this.flushIntervalMs)),this.registerBrowserTeardown()}enqueue(t){if(this.isStopped||this.isShuttingDown){this.logger.warn("[Waniwani] Tracking transport is stopped, dropping event %s",t.id);return}if(this.buffer.length>=this.maxBufferSize){let a=this.buffer.length-this.maxBufferSize+1;this.buffer.splice(0,a),this.logger.warn("[Waniwani] Tracking buffer overflow, dropped %d oldest event(s)",a)}if(this.buffer.push(t),this.buffer.length>=this.maxBatchSize){this.flush();return}this.scheduleMicroFlush()}pendingEvents(){return this.buffer.length+this.inFlightCount}async flush(){return this.flushInFlight?this.flushInFlight:(this.flushInFlight=this.flushLoop().finally(()=>{this.flushInFlight=void 0}),this.flushInFlight)}async shutdown(t){this.isShuttingDown=!0,this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=void 0),this.flushScheduledTimer&&(clearTimeout(this.flushScheduledTimer),this.flushScheduledTimer=void 0,this.flushScheduled=!1);let a=t?.timeoutMs??this.shutdownTimeoutMs,r=this.flush();if(!Number.isFinite(a)||a<=0)return await r,this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()};let o=Symbol("shutdown-timeout");return await Promise.race([r.then(()=>"flushed"),this.sleep(a).then(()=>o)])===o?(this.isStopped=!0,{timedOut:!0,pendingEvents:this.pendingEvents()}):(this.isStopped=!0,{timedOut:!1,pendingEvents:this.pendingEvents()})}registerBrowserTeardown(){if(typeof document>"u"||typeof window>"u")return;let t=()=>{document.visibilityState==="hidden"&&this.keepaliveFlush()};document.addEventListener("visibilitychange",t),window.addEventListener("pagehide",()=>this.keepaliveFlush())}keepaliveFlush(){if(this.isStopped||this.buffer.length===0)return;let t=this.buffer.splice(0,this.buffer.length);this.sendKeepaliveChunk(t)}sendKeepaliveChunk(t){let a=JSON.stringify(this.makeBatchRequest(t));if(a.length>6e4&&t.length>1){let r=Math.ceil(t.length/2);this.sendKeepaliveChunk(t.slice(0,r)),this.sendKeepaliveChunk(t.slice(r));return}try{this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:a,keepalive:!0}).catch(()=>{})}catch{}}requestHeaders(){let t={"Content-Type":"application/json","X-WaniWani-SDK":Zl};return this.apiKey&&(t.Authorization=`Bearer ${this.apiKey}`),t}scheduleMicroFlush(){this.flushScheduled||(this.flushScheduled=!0,this.flushScheduledTimer=setTimeout(()=>{this.flushScheduledTimer=void 0,this.flushScheduled=!1,this.flush()},0))}async flushLoop(){for(;this.buffer.length>0&&!this.isStopped;){let t=this.buffer.splice(0,this.maxBatchSize);await this.sendBatchWithRetry(t)}}async sendBatchWithRetry(t){let a=0,r=t;for(;r.length>0&&!this.isStopped;){this.inFlightCount=r.length;let o=await this.sendBatchOnce(r);switch(this.inFlightCount=0,o.kind){case"success":return;case"auth":this.stopTransportForAuthFailure(o.status,r.length);return;case"permanent":this.logger.error("[Waniwani] Dropping %d event(s) after permanent failure: %s",r.length,o.reason);return;case"retryable":if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d event(s) after retry exhaustion: %s",r.length,o.reason);return}await this.sleep(this.backoffDelayMs(a)),a+=1;continue;case"partial":if(o.permanent.length>0&&this.logger.error("[Waniwani] Dropping %d event(s) rejected as permanent",o.permanent.length),o.retryable.length===0)return;if(a>=this.maxRetries){this.logger.error("[Waniwani] Dropping %d retryable event(s) after retry exhaustion",o.retryable.length);return}r=o.retryable,await this.sleep(this.backoffDelayMs(a)),a+=1;continue}}}async sendBatchOnce(t){let a;try{a=await this.fetchFn(this.endpointUrl,{method:"POST",headers:this.requestHeaders(),body:JSON.stringify(this.makeBatchRequest(t))})}catch(n){return{kind:"retryable",reason:Wh(n)}}if(_h.has(a.status))return{kind:"auth",status:a.status};if(Oh.has(a.status))return{kind:"retryable",reason:`HTTP ${a.status}`};if(!a.ok)return{kind:"permanent",reason:`HTTP ${a.status}`};let r=await Hh(a);if(!r?.rejected||r.rejected.length===0)return{kind:"success"};let o=this.classifyRejectedEvents(t,r.rejected);return o.retryable.length===0&&o.permanent.length===0?{kind:"success"}:{kind:"partial",retryable:o.retryable,permanent:o.permanent}}makeBatchRequest(t){return{sentAt:this.now().toISOString(),source:{sdk:Zl,version:this.sdkVersion??"0.0.0"},events:t}}classifyRejectedEvents(t,a){let r=new Map(t.map(s=>[s.id,s])),o=[],n=[];for(let s of a){let i=r.get(s.eventId);if(i){if(Uh(s)){o.push(i);continue}n.push(i)}}return{retryable:o,permanent:n}}backoffDelayMs(t){let a=this.retryBaseDelayMs*2**t;return Math.min(a,this.retryMaxDelayMs)}stopTransportForAuthFailure(t,a){this.isStopped=!0;let r=this.buffer.length;this.buffer.splice(0,r),this.logger.error("[Waniwani] Auth failure (HTTP %d). Stopping tracking transport and dropping %d queued event(s)",t,a+r)}};function Uh(e){if(e.retryable===!0)return!0;let t=e.code.toLowerCase();return t.includes("timeout")||t.includes("temporary")||t.includes("unavailable")||t.includes("rate_limit")||t.includes("transient")||t.includes("server")}async function Hh(e){let t=await e.text();if(t)try{return JSON.parse(t)}catch{return}}function qh(e,t){let a=e.endsWith("/")?e:`${e}/`,r=t.startsWith("/")?t.slice(1):t;return`${a}${r}`}function Wh(e){return e instanceof Error?e.message:String(e)}function tu(e){let{apiUrl:t,endpointPath:a}=Gh(e.endpoint),r=eu({apiUrl:t,apiKey:e.token,endpointPath:a,flushIntervalMs:e.flushIntervalMs}),o,n=i=>typeof i=="function"?i():i,s=async i=>{let l=e.identity?.()??{},u=n(e.channelId),d=u===void 0?i.properties:{channelId:u,...i.properties},c=Jl({sessionId:l.sessionId,visitorId:l.visitorId,externalUserId:l.externalUserId??o,traceId:l.traceId,...i,properties:d,metadata:{...e.metadata,...i.metadata}},{source:n(e.source)});return r.enqueue(c),{eventId:c.id}};return{track:Object.assign(s,Yl(s)),identify(i,l){return o=i,s({event:"user.identified",externalUserId:i,properties:l})},flush:()=>r.flush(),shutdown:i=>r.shutdown(i)}}function Gh(e){let t=new URL(e);return{apiUrl:t.origin,endpointPath:`${t.pathname}${t.search}`}}function au(e){return tu({endpoint:ca(e.api),token:e.token,channelId:e.channelId,source:e.getSource,identity:()=>({sessionId:e.getSessionId(),visitorId:rt()})})}function ru(e){let t=!1,a=async()=>(t||(t=!0,console.warn(`[Waniwani] track() is disabled: ${e}`)),{eventId:""});return{track:Object.assign(a,{priceShown:a,pricesCompared:a,optionSelected:a,leadQualified:a,converted:a}),identify:a,flush:async()=>{},shutdown:async()=>({timedOut:!1,pendingEvents:0})}}import{jsx as su}from"react/jsx-runtime";var jh=600,nu="https://app.waniwani.ai/api/mcp/chat",$h=Vh(function(t,a){let{token:r,channelId:o,className:n,visitorId:s,overrides:i,onEvent:l}=t,u=zo(null),d=zo(null),c=Vo(()=>tl({mode:"inline",getSessionId:()=>u.current?.sessionId}),[]);cr(()=>{if(l)return c.subscribe(l)},[l,c]);let f=Vo(()=>({token:r,channelId:o,api:i?.api,mcpServerUrl:i?.mcpServerUrl,title:i?.title,hideHeader:i?.hideHeader,welcomeMessage:i?.welcomeMessage,placeholder:i?.placeholder,suggestions:i?.suggestions,enableThreadHistory:i?.enableThreadHistory,showToolCalls:i?.showToolCalls,appearance:i?.appearance,disclaimer:i?.disclaimer,locale:i?.locale}),[r,o,i?.api,i?.mcpServerUrl,i?.title,i?.hideHeader,i?.welcomeMessage,i?.placeholder,i?.suggestions,i?.enableThreadHistory,i?.showToolCalls,i?.appearance,i?.disclaimer,i?.locale]),p=i?.api??nu,[m,x]=ou({}),[L,h]=ou(!1),I=zo(!1);cr(()=>{L&&!I.current&&(I.current=!0,c.emit({name:"chat.ready"}))},[L,c]);let g=i?.disablePageView;cr(()=>{if(!r){h(!0);return}let P=M=>{g||Oo({api:p,token:r,channelId:o??M.channelId,mode:"inline",source:M.source})},D=ur(p,r,o);D&&(x(D),h(!0),P(D));let b=new AbortController,E=setTimeout(()=>h(!0),jh);return Nl(p,r,b.signal,o).then(M=>{b.signal.aborted||(Object.keys(M).length>0&&(Ol(p,r,o,M),x(M)),h(!0),P(M))}).catch(M=>{console.error("[Waniwani] Remote config fetch failed:",M),h(!0)}).finally(()=>clearTimeout(E)),()=>{b.abort(),clearTimeout(E)}},[p,r,o,g]);let C=Vo(()=>Do(f,m,void 0),[f,m]),S=Dl(C);Gl({widgetEvents:c,api:C.api??p,token:C.token??r,channelId:C.channelId??o,source:C.source,mode:"inline",pagePrompts:S.page,getSessionId:()=>u.current?.sessionId}),cr(()=>{if(!r)return;let P=au({api:p,token:r,channelId:()=>o??ur(p,r,o)?.channelId,getSource:()=>ur(p,r,o)?.source??void 0,getSessionId:()=>u.current?.sessionId});return d.current=P,()=>{d.current=null,P.shutdown()}},[p,r,o]),zh(a,()=>{let P=()=>d.current??ru("no public token configured"),D=Object.assign(b=>P().track(b),{priceShown:b=>P().track.priceShown(b),pricesCompared:b=>P().track.pricesCompared(b),optionSelected:b=>P().track.optionSelected(b),leadQualified:b=>P().track.leadQualified(b),converted:b=>P().track.converted(b)});return{sendMessage:b=>u.current?.sendMessage(b),sendMessageAndWait:b=>u.current?u.current.sendMessageAndWait(b):Promise.resolve(void 0),reset:()=>u.current?.reset(),focus:()=>u.current?.focus(),get messages(){return u.current?.messages??[]},get sessionId(){return u.current?.sessionId},track:D,identify:(b,E)=>P().identify(b,E)}},[]);let v=Fl(C.visibility,L),A={mode:"inline"};return C.mcpServerUrl&&(A.mcpServerUrl=C.mcpServerUrl),C.channelId&&(A.channelId=C.channelId),v?su(ol,{value:c,children:su(Bo,{ref:u,api:C.api??nu,headers:{Authorization:`Bearer ${C.token}`},visitorId:s,skipRemoteConfig:!0,body:A,appearance:C.appearance,classNames:i?.classNames,title:C.title,hideHeader:C.hideHeader,welcomeMessage:C.welcomeMessage,welcome:i?.welcome,placeholder:C.placeholder,suggestions:S,enableThreadHistory:C.enableThreadHistory,showToolCalls:C.showToolCalls,disclaimer:C.disclaimer,allowAttachments:i?.allowAttachments,locale:C.locale,messages:i?.messages,className:n,initializing:!L})}):null});export{Bo as ChatEmbed,zm as DARK_THEME,vl as DEFAULT_THEME,Pr as McpAppFrame,$h as WaniwaniChat,$m as mergeTheme,Fo as themeToCSSProperties};
|
|
17
17
|
/*! Bundled license information:
|
|
18
18
|
|
|
19
19
|
lucide-react/dist/esm/shared/src/utils/mergeClasses.js:
|